一、按系列罗列linux的发行版,并描述不同发行版之间的联系和区别
slackware:SUSE Linux Enterprise Server (SLES) , OpenSuse桌面
debian: ubuntu,deepin(深度),mint
redhat: RHEL: RedHat Enterprise Linux, 每18个月发行一个新版本 CentOS: Community Enterprise Operating System 兼容RHEL的格式 中标麒麟:中标软件 Fedora:每6个月发行一个新版本
Alpine: 一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,只有 5M左右大小
ArchLinux:轻量简洁,遵循K.I.S.S.原则( keep it simple and stupid ),Manjaro
Gentoo:极致性能,不提供传统意义的安装程序,下载源代码在本机上编译安装软件
LFS:Linux From scratch 自制Linux,只是一个说明书
Android:kernel+busybox(工具集)+java虚拟机
二、安装Centos7.6操作系统,创建一个自己名字的用户名,并可以正常登录,将主要步骤截图。
直接选择第一个安装。
选择上海时区
选择手动分配磁盘分区
选择标准磁盘模式
创建根分区/ /data分区 /boot 分区 /swap 交换分区
选择网络打开、修改主机名点击apply
创建普通用户cwz 并设置登录密码
三、配置环境变量,实现执行history的时候可以查看到执行命令的时间
vi ~/.bash_profile 声明变量并赋值 export HISTTIMEFORMAT="%F %T "
四、总结Linux哲学思想。
Linux一切皆文件(包括硬件)
小型,单一用途的程序
链接程序,共同完成复杂的任务
避免令人困惑的用户界面
配置数据存储在文本中
五、总结Linux常用命令使用格式,并用实列说明。列如echo、screen、date、ifconfig、export等命令
输出信息echo
echo [-neE] [字符串]
选项:
-E (默认)不支持\ 解释功能
-n 不自动换行
-e 启用\ 字符的解释功能
启用命令选项-e,若字符串中出现一下字符串,则特别加以处理,而不会将它当成一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
\0nnn 插入nnn (八进制)所代表的ASCII字符
\xHH 插入HH (十六进制)所代表的ASCII数字
screen:
centos7 安装:yum -y install screen
centos8 安装:dnf -y epel-release ; dnf -y install screen
创建新screen 会话 :screen -S [session]
加入screen会话:screen -x [session]
剥离当前screen会话:Ctrl+a,d
显示所有已经打开的screen会话 :screen -ls
恢复某screen会话:screen -r [session]
date:
date 显示和设置系统时间
[root@centos7 ~]# date -d @`date +%s`
Sat Jun 5 02:11:48 CST 2021
[root@centos7 ~]# date -d @1584689051
Fri Mar 20 15:24:11 CST 2020
[root@centos7 ~]# date -d @1584689051 +%F_%T
2020-03-20_15:24:11
[root@centos7 ~]# date
Sat Jun 5 02:13:45 CST 2021
ifconfig:
ifconfig 命令用于显示或设置网络设备,可设置网络设备的状态,或是显示目前的设置
启动关闭指定网卡
ifconfig eth0 down;ifconfig eth0 up
配置IP地址
ifconfig eth0 192.168.1.56 //给eth0网卡配置IP地址
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 // 给eth0网卡配置IP地址,并加上子掩码
ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255 // 给eth0网卡配置IP地址,加上子掩码,加上个广播地址
export:
export 命令用于设置或显示环境变量
export [-fnp][变量名称]=[变量设置值]
- -f 代表[变量名称]中为函数名称。
- -n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。
- -p 列出所有的shell赋予程序的环境变量。
六、描述Linux发行版的系统目录名称命名规则以及用途。
/
├── bin -> usr/bin
├── boot
├── data
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
- /bin:普通用户的命令,centos7系统 软链接至usr/bin
- /boot:引导文件存放于此目录,vimlinuz、grub
- /dev:设备以及特殊文件存放目录,/dev/zero,/dev/null..
- /etc : 系统配置文件存放目录
- /home:普通用户的家目录
- /lib :库文件存放目录
- /lib64:x86_64库文件存放目录
- /media:便携式挂载点
- /mnt:其他文件临时挂载点
- /opt:第三方程序安装目录
- /proc:统启动后,cpu映射的虚拟文件系统
- /root:root家目录
- /run:系统启动的守护进程等
- /sbin/:管理员用户命令存放目录
- /srv:当前主机为服务提供的数据
- /sys:统启动后,硬件设备映射的虚拟文件系统
- /tmp:临时文件存放目录
- /usr:系统默认的软件都会放置到/usr
- /var:常用于存放可变化的数据,比如一些日志信息等。
七、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
文件元数据信息包含 :
inode number 节点号,文件类型,权限,UID,GID,链接数(指向这个文件名路径名称个数),该文件的大小和不同的时间戳,指向磁盘上文件的数据库指针,有关文件的其他数据。
查看文件元数据的方法:stat + 文件名
[root@centos7 ~]# stat anaconda-ks.cfg
File: ‘anaconda-ks.cfg’
Size: 1576 Blocks: 8 IO Block: 4096 regular file
Device: 802h/2050d Inode: 201326671 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2021-06-05 00:57:12.927215740 +0800
Modify: 2021-06-05 00:57:12.928215746 +0800
Change: 2021-06-05 00:57:12.928215746 +0800
修改文件时间戳用touch命令,touch [OPTION]... FILE...
-a 仅改变atime和ctime
-m 仅改变mtime和ctime
-t [[CC]YY]]MMDDhhmm[.ss] 指定atime和mtime的时间戳
-c 如果文件不存在,则不予创建
[root@centos7 data]# ll
total 4
-rw-r--r--. 1 root root 23 Oct 23 2020 issue
[root@centos7 data]# touch issue
[root@centos7 data]# ll
total 4
-rw-r--r--. 1 root root 23 Jun 5 19:41 issue
[root@centos7 data]# touch -t 202105041941.00 issue
[root@centos7 data]# stat issue
File: ‘issue’
Size: 23 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d Inode: 67 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:etc_t:s0
Access: 2021-05-04 19:41:00.000000000 +0800
Modify: 2021-05-04 19:41:00.000000000 +0800
Change: 2021-06-05 19:46:28.122717285 +0800
Birth: -
八、总结软连接和硬链接的区别,并用实列操作说明。
1.本质:
硬链接:本质是同一个文件
软连接:本质不是同一个文件
2.跨设备
硬链接:不支持
软连接:支持
3.inode
硬链接:相同
软链接:不同
4.连接数
硬链接:创建新的硬链接,链接数会增加,删除硬链接,链接数减少
软链接:创建或删除,链接数不会变化
5.文件夹
硬链接:不支持
软链接:支持
6.相对路径
硬链接:原始文件相对路径是相对于当前工作目录
软链接:原始文件的相对路径是相对于链接文件的相对路径
7.删除源文件
硬链接:只是链接数减一,但链接文件的访问不受影响
软链接:链接文件将无法访问
8.文件类型
硬链接:和源文件相同
软链接:链接文件,和源文件无关
绝对路径创建软连接
ln -s /data/dir/ /data/dirlink
drwxr-xr-x. 2 root root 6 Jun 5 20:00 dir
lrwxrwxrwx. 1 root root 10 Jun 5 20:00 dirlink -> /data/dir/
相对路径创建软连接
cd /data/; ln -s ../data/dir /root/dirlink
ll /root/dirlink
lrwxrwxrwx. 1 root root 11 Jun 5 20:16 /root/dirlink -> ../data/dir
rm -rf /data/dirlink #删除软连接本身,不会删除源目录内容
rm -rf /data/dirlink/ #删除源目录的文件,不会删除链接文件
创建硬连接
ln 1.txt 11.txt
-rw-r--r--. 2 root root 0 Jun 5 20:23 11.txt
-rw-r--r--. 2 root root 0 Jun 5 20:23 1.txt