鸟哥Linux复习总结
学期结束,写一个复习总结,为了考试。逢考必过,加油!!!
第0章
1.电脑的五大单元?
输入单元、输出单元、CPU内部的控制单元、算术逻辑单元、记忆单元(内存和存储)
2.CPU的架构
精简指令集和复杂指令集
3.X86架构
x86指的是特定微处理器执行的一些计算机语言指令集,定义了芯片的基本使用规则
X86指令集架构是CPU用来控制和计算指令的一种规范,它属于复杂指令集运算(CISC)系列
4.内存分为
只读内存Rom,挥发性内存RAM
5.BIOS
BIOS是一个程序是写死在主板上面的一个内存芯片中,这个内存芯片在没有通电时也能够将数据记录下来,那就是只读存储器
6.操作系统
操作系统其实也是一组程序,这组程序的重点在于管理电脑的所有活动以及驱动系统中的所有硬件。
操作系统在电脑里的角色就是:内核与系统调用
第二章
1.各硬件设备在Linux中的文件名
*磁盘驱动器:/dev/sd[a-p]
*U盘:/dev/sd[a-p]
*Virtio接口:/dev/vd[a-p]
软盘驱动器:/dev/fd[0-7]
鼠标:/dev/mouse
2.假设你的虚拟机里有一个Virtio接口的磁盘,设备名为:
/dev/vda
3.PC机上有两个SATA磁盘以及一个USB磁盘,主板上有六个SATA插槽。这两个分别安插在主板的SATA1、SATA5插槽上,请问三个磁盘的设备文件名。
使用检测到的顺序来决定设备文件名,并非和实际插槽有关,因此文件名为
SATA1:/dev/sda
SATA2:/dev/sdb
U盘:/dev/sdc
4.磁盘的第一个扇区主要记录了哪两个重要信息
1.主引导记录:可以安装启动引导程序的地方,有446字节
2.分区表:记录整块硬盘的分区状态
5.MBR主要分区、扩展分区和逻辑分区
主要分区加扩展分区最多可以有四个(硬盘的限制)
扩展分区最多只能有1个(操作系统的限制)
逻辑分区是由扩展分区持续划分出来的分区
能够被格式化后作为数据存取的分区是主要分区与逻辑分区,扩展分区无法格式化
6.假如有两块SATA硬盘,想在第二块硬盘划分出六个可用分区,那么每个分区在Linux系统下的设备文件名?分区类型?至少两种方式。
7.自定义安装“Custom”
A:初次接触Linux:只需要划分“/”以及“交换分区”即可!
B:建议分区的方法:预留一个备用的剩余磁盘容量
第四章
1.基础命令操作
1.显示日期命令:date
以年月日显示日期:date +%Y/%m/%d
2.显示日历命令:cal
显示2020.7月日历:cal 7 2020
3.计算器:bc
4.求助命令:–help和man page
5.关机命令:shutdown
shutdown -h now:现在关机
重新启动,关机:reboot、halt、poweroff
6.更换运行级别:init 0~6
2.重要的几个热键
1.tab键:命令、文件补齐
接在一串命令的第一个字段后面是命令补全
接在一串命令的第二个字段后面是文件补齐
2.ctrl-c :中断命令
3.ctrl -d:离开相当于exit
4.shift+Page up Page Down:向上向下翻页
3.题:我想要知道2010年5月2日是星期几?该咋办?
参数说明:date
- -d datestr : 显示 datestr 中所设定的时间 (非系统时间)
第五章
1.Linux文件属性
2.若有一个文件的类型和权限数据为【-rwxr-xr–】,请说明其意义是什么?
该文件名是一个文件
所有者权限为可读可写可执行
所有者所在用户组的权限为可读可执行
其他用户只读
3.假设test1,test2,test3同属于testgroup这个用户组,如果有下面的两个文件,请说明两个文件的拥有者与其相关的权限是什么?
-rw-r–r-- 1root root 238 jun 18 17:22 test.txt
-rwxr-xr-- 1test1 testgroup 5238 jun 19 10:25 ping_tsai
第一个文件的拥有者是root用户,拥有者root可读可写权限,root所在的用户组可读权限,其他用户可读权限。
第二个文件的拥有着是test1用户,拥有者test1可读可写可执行,用户组testgroup里的用户test2,test3的权限是可读可执行,其他用户只能执行。
4.承上一题如果我的目录为下面的样式,请问test group这个用户组的成员与其他人是否可以进入本目录
drwxr-xr-- 1test1 testgroup 5238 Jun 19 10:25 groups/
文件拥有者test1可以在本目录中进行任何工作
testgroup用户组里的用户可以进入这个目录,但是不能进行写入的操作
其他用户是不能进入的,因为没有x权限。
5,如何更改文件属性和权限
chgrp:修改文件所属的用户组
将ls.txt的用户组改为root
chagrp root ls.txt
chown:修改文件拥有者
将ls.txt的拥有者改为root
chown root ls.txt
chmod:修改文件的权限
数字类型修改文件权限
将ls.txt的权限改为777
chmod 777 ls.txt
符号类型修改文件权限(u:拥有者,g:用户组,o:其他)
将ls.txt的权限改为-rwxrw-r–
chmod u=rwx,g=rw,o=r ls.txt
6.rwx对于文件和目录权限意义
文件的权限:r:可读取文件的实际内容;w:可以编辑、新增或是修改该文件的内容(不含删除该文件);x:该文件可以被系统执行
目录的权限:r:表示具有读取目录结构列表的权限,可以查询该目录下的文件名数据(ls)
w:表示你具有改动改目录结构列表的权限,1,建立新的文件和目录。2,删除已经存在的文件和目录。3,将已经存在的目录进行改名。4,移动该目录内的文件、目录的位置
x:用户能否进入到这个目录
7.题:假设有个账号名为dmtsai,他的家目录在/home/dmtsai/,dmtsai对此目录具有rwx的权限,在此目录下有一个文件dmtsai的权限为—,dmtsai问能不能删除这个文件?
可以删除,这个目录具有x权限,可以进行删除操作
8.目录配置(考一个,最好看看书):
/bin:存放单人维护模式下还能够被使用的命令
/etc:系统的主要配置文件几乎都放在这个目录
/boot:主要放置启动会用到的文件
/sbin:设置系统环境的,里面包含了启动、修复、还原系统所需要的命令
9:绝对路径与相对路径(必考)
绝对路径:由根目录(/)开始写起的文件名或目录名称
相对路径:相对于目前路径的文件名写法
.:代表当前的目录,也可以用./来表示
…:代表上一层目录,也可以用…/代表
第六章
1.目录命令
cd:切换目录
pwd:显示当前目录
mkdir:建立一个新目录
mkdir -p:递归创建
rmdir:删除一个空目录(目录里不能存在其他的目录或文件)
ls:文件与目录的查看
复制、删除、移动(改名):cp(cp 源文件 目标文件)、rm(rm -r 文件(递归删除))、mv(mv 源文件 目标文件)(mv 原名 现名)
2.文件内容查看
cat:由第一行显示文件内容
tac:从最后一行开始显示
nl:显示的时候同时输出行号
more:一页一页地显示文件内容
less:和more一样,但可以向前翻页
head:只看前几行
tail:只看后面几行
od:以二进制查看
3.修改文件时间或创建新文件:touch
创建新文件ls.txt
touch ls.txt
修改文件时间
touch -a:自定义修改atime
touch -m:只修改mtime
touch -t:后面接自定义时间
4.文件默认权限:umask
文件默认权限:-rw-rw-rw- 666
目录默认权限:drwxrwxrwx 777
umask指的是该默认值需要减掉的权限
eg:umask=022
那么建立文件的默认权限为:-rw-r–r-- 644
建立目录的默认权限为:drwxr-xr-x 755
5.题:让一个用户dmtsai能够进行cp /dir1/file1 /dir2的命令时,请说明dir1、file1、dir2的最小所需权限是什么?
对于dir1最低肯定需要能够进入的权限x
对于file1肯定要有能读取的权限r
对于dir2肯定要有能创建的权限w以及能进入的权限x
第七章
1.题:假设ext2文件系统使用4k区块,而该文件系统中有10000个小文件,每个文件大小均为50B,请问此时磁盘浪费资源多少容量。
一个区块浪费:4*1024-50=4046B
共用10000个小文件,那么会浪费10000*4046B=40460000B
1B=9.54*10负七
40460000*9.54乘10负七=38.6M
2.磁盘与目录的容量
df:列出文件系统的整体磁盘使用量;
-h:以人们较易阅读的格式自行显示
-i:不用磁盘容量,而以inode的数量来显示
-aT:将系统内的所有特数文件格式及名称都列出来
du:查看文件系统的磁盘使用量(常用在查看目录所占磁盘空间);
-s:仅列出总量,而不列出每个各别的目录占用容量
-S:不包含子目录下的总计
3.硬链接和符号链接
硬链接:ln
inode码是一样的,如果将任何一个文件名删除,inode与区块都还是存在的。
符号链接(快捷方式):ln -s
当源文件被删除后,符号链接的文件就会打不开了。
4.磁盘分区,格式化,检验,挂载
待总结,必考大题之一
第八章
1.压缩命令
gzip所建立的压缩文件名为*.gz
gzip 文件名:压缩
gzip -d 文件名:解压
bzip2所建立的压缩文件名为*.bz2
bzip2 文件名:压缩
bzip2 -d 文件名:解压
2.打包命令
tar -jcv -f 文件名:解压
tar -jxv -f 文件名:解压缩
第九章
期中练习题一
一:此处可以使用[;]直接把创建、拷贝命令全部写完增快速度;在拷贝/etc/manpath.config这个文件时可以使用[tab]补全键,使用vim打开时也可以使用[tab]补全,增加速度。
1、在/tmp目录下建立一个名为vitest的目录;进入vitest目录中;将/etc/man_db.conf复制到当前目录下面;使用vim编辑器打开本目录下man_db.conf文件;
二:后面的操作就是那几种快捷方式,只要熟悉掌握就好。
<1>:5、在vim中设置一下行号,记录总共多少行;
:set nu
<2>:6、移动第43行,向右移动59个字符,请问是什么字母;
43G 59 l
<3>:7、移动到第1行,并向下搜索【gzip】这个字符串,请问它在第几行?
gg /gzip
<4>:8、将29-41行之间小写的【man】改为大写的【MAN】,并且一个一个挑选是否修改? 并且一直按【y】,结果会在最后一行出现改变了几个man;
29,41s/man/MAN/gc
<5>:复制66-71行内容(含有MANDB_MAP)到最后一行;
66G 6yy G p
<6>:把113-128行之间开头的注释【#】删除;
113G 16dd
<7>:12、将档案另存为man_db-xxx.conf(xxx为自己姓名拼音);
:w man.test.config
<8>:13、到25行,删除15个字符,结果出现的第一个字符是什么;
25G 15x
<9>:14、在第1行新增一行,该行内容【I am a student!】
gg O
下面的四道题自行练习:必考一题
期中练习题二
\1. (1~4步)先进root用户因为权限不够
5、添加行号
6、移动第45行,向右移动38个字符,请问是什么字母?
7、移动到第1行,并向下搜索【gzip】这个字符串,请问它在第几行?
8、将66-71行之间小写的【man】改为大写的【MAN】,并且一个一个挑选是否修改? 并且一直按【y】,结果会在最后一行出现改变了几个man;
9、修改后突然反悔,请恢复文件原状;
10、复制29-41行内容(含有MANDB_MAP)到最后一行;
11、把78-93行之间开头的注释【#】删除;
12、到25行,删除20个字符,结果出现的第一个字符是什么;
13、在第1行新增一行,该行内容【My name is XXX!】(xxx为自己名字拼音);
14、将档案另存为man_db-new.conf;
答案:
1~4:
mkdir /home/vitest;
cd /home/vitest;
cp /etc/manpath.config .
vim manpath.config
5. :set nu
6. 45G 38->
7. gg /gzip
8.:66,71s/man/MAN/gc
9.uuuuuu
10.29G 13yy G p
11.78G 15dd
12.25G 20x
13.gg O
14.:w man_db-new.conf
期中练习题三
1、在~目录下建立一个名为vitest的目录;
2、进入vitest目录中;
3、将/etc/man_db.conf复制到当前目录下面;
4、使用vim编辑器打开本目录下man_db.conf文件;
5、在vim中设置一下行号,记录总共多少行;
6、移动第45行,向右移动42个字符,请问是什么字母?
7、移动到第1行,并向下搜索【gzip】这个字符串,请问它在第几行?
8、将29-41行之间小写的【man】改为大写的【MAN】,并且一个一个挑选是否修改? 并且一直按【y】,结果会在最后一行出现改变了几个man;
9、修改后突然反悔,请恢复文件原状;
10、复制29-41行内容(含有MANDB_MAP)到最后一行;
11、把78-93行之间开头的注释【#】删除;
12、到25行,删除20个字符,结果出现的第一个字符是什么;
13、在第1行新增一行,该行内容【My nameis XXX!】(xxx为自己名字拼音);
14、将档案另存为man_db-xxx.conf(xxx为自己姓名拼音);
15、保存离开
1.cd ~;mkdir vitest;
2.cd vitest;
3.cp /etc/man_db.conf .
4.vim man_db.conf
5.:set nu
6.45G 42->
7.gg /gzip
8.:29,41s/man/MAN/gc
9.uuuuuuu
10.29G 13yy G p
11.78G 16dd
12.25G 20x
13.gg O
14.:w man_db-xxx.conf
15.:wq
期中练习题四
1、在/建立一个名为vitest的目录;
2、进入vitest目录中;
3、将/etc/man_db.conf复制到当前目录下面;
4、使用vim编辑器打开本目录下man_db.conf文件;
5、在vim中设置一下行号,记录总共多少行;
6、移动第10行,向右移动10个字符,请问是什么字母?
7、移动到第1行,并向下搜索【gzip】这个字符串,请问它在第几行?
8、将66-71行之间小写的【man】改为大写的【MAN】,并且一个一个挑选是否修改? 并且一直按【y】,结果会在最后一行出现改变了几个man;
9、修改后突然反悔,请恢复文件原状;
10、复制66-71行内容(含有MANDB_MAP)到最后一行;
11、把78-93行之间开头的注释【#】删除;
12、到25行,删除25个字符,结果出现的第一个字符是什么;
13、在第1行新增一行,该行内容【My nameis XXX!】(xxx为自己名字拼音);
14、将档案另存为man_db-new.conf;
1.cd /;mkdir vitest;
2.cd vitest;
3.cp /etc/man_db.conf .
4.vim man_db.conf
5.:set nu
6.45G 42->
7.gg /gzip
8.:29,41/man/MAN/gc
9.uuuuuuuu
10.66G 5yy G p
11.78G 16dd
12.25G 20x
13.gg O
14.:w man_db-new.conf
15.:wq
期中练习题五
1、在/目录下建立一个名为vitest的目录;
2、进入vitest目录中;
3、将/etc/man_db.conf复制到当前目录下面;
4、使用vim编辑器打开本目录下man_db.conf文件;
5、在vim中设置一下行号,记录总共多少行;
6、移动第45行,向右移动42个字符,请问是什么字母?
7、移动到第1行,并向下搜索【gzip】这个字符串,请问它在第几行?
8、将29-41行之间小写的【man】改为大写的【MAN】,并且一个一个挑选是否修改? 并且一直按【y】,结果会在最后一行出现改变了几个man;
10、复制66-71行内容(含有MANDB_MAP)到最后一行;
11、把78-93行之间开头的注释【#】删除;
12、到25行,删除20个字符,结果出现的第一个字符是什么;
13、在第1行新增一行,该行内容【My nameis XXX!】(xxx为自己名字拼音);
14、将档案另存为man_db-new.conf;
15、保存离开
1.cd /;mkdir vitest;
2.cd vitest;
3.cp /etc/man_db.conf .
4.vim man_db.conf
5.:set nu
6.10G 10->
7.gg /gzip
8.:66,71s/man/MAN/gc
9.uuuuuuuuu
10.66G 5yy G p
11.78G 16dd
12.25G 25x
13.gg O
14.:w man_db-new.conf
15.:wq
第十章、十一、十二章
重点中的重点,这里就不总结了,必定有一个大题!!!
老师划题为生日的那个题。
详细总结请自行下载:
shell脚本重点:
链接:https://pan.baidu.com/s/1c_J7D6jbro_ypxuSOzx8jg
提取码:5jn4