1、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别
linux的发行版:
RedHat、Fedora、suse、红旗、debian、Ubuntu、centos
不同发行版之间的联系和区别:
Red Hat ,是redhat自己的发行的企业版。
Fedore是一款基于linux的操作系统,也是一组维持计算机正常运行的软件集合。由红帽公司赞助。
suse linux,针对个人用户。
红旗linux的发行版,包括桌面版、工作站版、数据中心服务器版、HA集群版和红旗嵌入式linux等产品,是中国较大、较成熟的linux发行版之一。
Debian,三大发行版中唯一以社区形式运作,不以商业公司形式运作。是一个致力于创建自由操作系统的合作组织。而且debian开发者所创建的操作系统中绝大部分基础工具来自于GNU工程。
Ubuntu,是一个以桌面应用为主的linux操作系统。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。
Centos,是一个基于redhat linux 提供的可自由使用源代码的企业级linux发行版本。目前Centos已被收购,成为redhat旗下的一个组织。
#2、安装Centos7.9和ubuntu操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
已成功安装此处略过
3、配置环境变量,实现执行history的时候可以看到执行命令的时间。
(1)在~/.bash_profile文件中新增一行,写入:export HISTTIMEFORMAT="”%F %T ",保存退出。
(2)使更新后的配置文件生效,执行:source ~/.bash_profile。
4、总结Linux哲学思想。
a.一切皆文件。便于管理和定义。
b.众多单一功能的小程序。多个程序组合完成复杂任务。
c.使用文本文件保存配置信息。
d.提供机制,而非策略。给用户充分的可调配性。
e.KISS(keep it simple, stupid)。
5、总结Linux常用命令使用格式,并用实例说明。例如echo、screen、date、ifconfig、export等命令
命令格式:cmd 选项 参数
实例:
a.date -d '-2 day' +%F 输出两天前的时间
b.创建新screen会话: screen -S seo
加入screen会话: screen -x seo
c.touch `hostname`-`date +%F`.log
d.echo 输出信息 -e 启用\字符的解释功能 echo -e 'a\x0Ab' 输出:
a
b
6、描述Linux发行版的系统目录名称命名规则以及用途。
命名规则:
1)严格区分字符的大小写;
2)文件名可以使用除斜线和NUL以外的任意字符;
3)文件名不能超过255个字节;包括路径在内文件名最长4095个字节。
4)以点号开头的文件为隐藏文件,一个点:表示当前目录和还有一个是点点(..):这表示当前目录的上一级目录。
目录功能:
/boot :引导文件存放目录,内核文件、grub、BootLoader都存放于此目录
/bin: 所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin: 管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib: 启动时程序依赖的基本共享库文件及内核模块文件
/lib64: 专用于x86_64系统上的辅助共享库文件存放位置
/etc: 配置文件目录
/home/USERNAME: 普通用户家目录
/root: 管理员的家目录
/media: 移动设备挂载点
/mnt: 临时文件系统挂载点
/dev: 设备文件及特殊文件存储位置(b:block device,随机访问;c: character device ,线性访问)
/opt: 第三方应用程序的安装位置
/srv: 系统上运行的服务用到的数据
/tmp: 临时文件存储位置
/usr: 系统默认的软件存放位置
/var: 可变化的数据文件存储位置
/proc: 用于输出内核与进程信息相关的虚拟文件系统
/sys: 用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: selinux相关的安全策略等信息的存储位置
7、常用基础命令总结:
查看CPU:lscpu
cat /proc/cpuinfo | grep “processor”| wc -l
nproc –all (显示的数字是逻辑CPU核数)
hostname -I 查看IP
sudo -i 普通用户切换root权限
free -h 查看内存占用 cat /proc/meminfo
关闭图形界面:init 3 开启:init 5
who 查看当前所有登录账户及终端
w查看当前所有登录账户及终端及用户正在做的操作
type 查看命令类型(内部还是外部及外部路径)eg: type hostname
enable 管理内部命令 enable -n 查看所有禁用的内部命令 enable cmd 启用内部命令
whereis cmd 查看外部命令路径
hash 显示hash缓存
hash -r 清除缓存
alias 设置别名 alias host='hostnamectl set-hostname' unalias host 取消别名
lsblk 查看硬盘和分区情况
扫描新添加的磁盘:echo '- - -' > /sys/class/scsi_host/host0/scan
arch 查看系统架构
uname -r 查看内核版本
查看发行版本:cat /etc/redhat-release cat /etc/os-release lsb_release -a
date 显示和设置系统时间
clock 硬件时钟时间 hwclock clock -s #以硬件时钟为准,校正系统时间;clock -w # 以系统时间为准,校正硬件时钟
ll /etc/localtime #ubuntu: cat /etc/timezone 时区. timedatectl list-timezones ; timedatectl set-timezone Asia/Shanghai
cal -y 显示日历
echo 输出信息
-e 启用\字符的解释功能 echo -e 'a\x0Ab' 输出:a b
echo $PATH 输出的是路径,echo '$PATH'输出是$PATH 字符串
dos2unix .txt 将Windows文件转换成Linux文件编码方式
` ` 反向单引号或$() ,引用命令输出。把一个命令大的输出打印给另一个命令的参数 echo “my hostname is `hostname`”
#单引号:强引用,变量和命令都不识别,都当成普通字符串
#双引号:弱引用,不能识别命令,可以识别变量
#反向单引号:里面的内容必须是能执行的命令并且有输出信息,变量和命令都识别,并且会将反向单引号的内容当成命令执行后再交给调用反向单引号的命令继续。
touch `hostname`-`date +%F`.log
{ } 可以实现打印重复字符串的简化形式 #:echo file{1,3,5} #: touch file{1..3}结果创建fiel1,file2,file3
history 查看历史命令,history -c 清空历史命令 history -w 保存历史列表到指定的历史文件
!n 执行history命令输出对应序号n的命令
#快捷键:
Ctrl + u 删除光标之前的命令
Ctrl + k 删除光标之后的命名
Ctrl + s 锁定屏幕
Ctrl + q 解锁屏幕
#获得帮助:
whatis 显示命令的简短描述
help cmd 内部命令帮助
cmd --help 外部命令帮助
date -d '-2 day' +%F 输出两天前的时间
man帮助 man cmd /keyword 可以搜索关键词
8、Screen工具
Screen安装:
使用ISO rpm安装:rpm -ivh /mnt/Packages/screen-
Screen命令:
创建新screen会话: screen -S seo
加入screen会话: screen -x seo
退出并关闭screen会话: exit
剥离当前screen会话:Ctrl+a+d
显示所有已经打开的screen会话:screen -ls
恢复某screen会话: screen -r seo