coding@DESKTOP-5MQ0I0D:/tmp$ mkdir test
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc test test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ cp test2 .
cp: -r not specified; omitting directory ‘test2’
coding@DESKTOP-5MQ0I0D:/tmp$ cp /etc/services .
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc services test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ mv 20190304test001.txt test2
coding@DESKTOP-5MQ0I0D:/tmp$ ls
all.tar.xz bashrc services test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ ls test2
20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$ rm test2
rm: cannot remove ‘test2’: Is a directory
coding@DESKTOP-5MQ0I0D:/tmp$ rm test2/20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$ ls test2
coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test2
coding@DESKTOP-5MQ0I0D:/tmp$ ls
all.tar.xz bashrc services testing
coding@DESKTOP-5MQ0I0D:/tmp$
SUID(SetUID) :将user的x权限变成s 如:-rwsr-xr-x
SGID(SetGID):将group的x权限变成s 如:-rwxr-sr-x
whatis 指令 : 表示这指令是做什么的
which 指令 :指令所在的目录
whereis 指令:指令的位置
coding@DESKTOP-5MQ0I0D:/tmp$ whatis ls
ls (1) - list directory contents
coding@DESKTOP-5MQ0I0D:/tmp$ which ls
/bin/ls
coding@DESKTOP-5MQ0I0D:/tmp$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz
coding@DESKTOP-5MQ0I0D:/tmp$
文件系统通常会将这两部
份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data block 区块中。
Hard Link:
通过文件系统的 inode 链接来产生新文件名,而不是产生新文件!这种称为实体链接
Symbolic Link
Symbolic link 就是在创建一个独立的文件,而这个文件会让
数据的读取指向他 link 的那个文件的文件名!由于只是利用文件来做为指向的动作, 所以,当来源文件被删除之后,symbolic link
的文件会“开不了”, 会一直说“无法打开某文件!”
Hard Link 和Symbolic Link的区别:Hard Link是对源文件的inode取了一个新的名称,通过源文件或链接文件都可以访问到inode存储的内容,也就是说源文件和链接文件对应的inode是一样的。所以即使删掉了源文件,通过链接文件还是可以访问的。而Symbolic Link 会产生一个新的文件记录下源文件的位置,访问链接文件,实际上是通过读取里面的信息从而找到源文件进行访问。也就是说源文件和链接文件的iNode是不一样的,并且当文件删除后,再次访问链接文件会报错找不到源文件的。
coding@DESKTOP-5MQ0I0D:/tmp$ ln testing/20190304test001.txt .
coding@DESKTOP-5MQ0I0D:/tmp$ ls -li . testing/
.:
total 24
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.tar.xz
10696049115236520 -rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
55732045388840168 -rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
27021597764376606 drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing
testing/:
total 0
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$
coding@DESKTOP-5MQ0I0D:/tmp$ ln -s testing/20190304test001.txt 20190304tets002.txt
coding@DESKTOP-5MQ0I0D:/tmp$ ls -li
total 24
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
23362423067085188 lrwxrwxrwx 1 coding coding 27 Mar 5 16:17 20190304tets002.txt -> testing/20190304test001.txt
25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.tar.xz
10696049115236520 -rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
55732045388840168 -rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
27021597764376606 drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing
coding@DESKTOP-5MQ0I0D:/tmp$
文件压缩
gzip
bzip2
xz
三者的语法基本都差不多,gzip 效率最差,但是速度最快
xz效率最高,但是耗时最长。
选项与参数:
-c :将压缩的数据输出到屏幕上,可通过数据流重导向来处理;
-d :解压缩的参数;
-t :可以用来检验一个压缩文件的一致性~看看文件有无错误;
-v :可以显示出原文件/压缩文件的压缩比等信息;
-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!默认是 -6
打包指令 tar
选项与参数:
-c :创建打包文件,可搭配 -v 来察看过程中被打包的文件名(filename)
-t :察看打包文件的内容含有哪些文件名,重点在察看“文件名”就是了;
-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开
特别留意的是, -c, -t, -x 不可同时出现在一串命令行中。
-z :通过 gzip 的支持进行压缩/解压缩:此时文件名最好为 *.tar.gz
-j :通过 bzip2 的支持进行压缩/解压缩:此时文件名最好为 *.tar.bz2
-J :通过 xz 的支持进行压缩/解压缩:此时文件名最好为 *.tar.xz 特别留意, -z, -j, -J 不可以同时出现在一串命令行中
-v :在压缩/解压缩的过程中,将正在处理的文件名显示出来!
-f filename:-f 后面要立刻接要被处理的文件名!建议 -f 单独写一个选项啰!(比较不会忘记)
-C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
其他后续练习会使用到的选项介绍:
-p(小写) :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
-P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
–exclude=FILE:在压缩的过程中,不要将 FILE 打包!
**其实最简单的使用 tar 就只要记忆下面的方式即可
.bz2结尾的
压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
查 询:tar -jtv -f filename.tar.bz2
解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
.gz结尾的
压 缩:tar -zcv -f filename.tar.bz2 要被压缩的文件或目录名称
查 询:tar -ztv -f filename.tar.bz2
解压缩:tar -zxv -f filename.tar.bz2 -C 欲解压缩的目录
**
coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 services
coding@DESKTOP-5MQ0I0D:/tmp$ ll
total 12
drwxrwxrwt 1 root root 512 Mar 5 16:26 ./
drwxr-xr-x 1 root root 512 Feb 27 14:33 …/
-rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
-rw-r–r-- 1 coding coding 7108 Mar 5 15:38 services.bz2
drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing/
coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 -kd services.bz2
coding@DESKTOP-5MQ0I0D:/tmp$ ll
total 44
drwxrwxrwt 1 root root 512 Mar 5 16:27 ./
drwxr-xr-x 1 root root 512 Feb 27 14:33 …/
-rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
-rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
-rw-r–r-- 1 coding coding 7108 Mar 5 15:38 services.bz2
drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing/
coding@DESKTOP-5MQ0I0D:/tmp$
coding@DESKTOP-5MQ0I0D:/tmp$ tar -jcv -f testing.bz2 testing/
testing/
testing/20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$ ll
total 44
drwxrwxrwt 1 root root 512 Mar 5 16:28 ./
drwxr-xr-x 1 root root 512 Feb 27 14:33 …/
-rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
-rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
-rw-r–r-- 1 coding coding 7108 Mar 5 15:38 services.bz2
drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing/
-rw-rw-rw- 1 coding coding 271 Mar 5 16:28 testing.bz2
coding@DESKTOP-5MQ0I0D:/tmp$ tar -jxv -f testing.bz2 -C test2
tar: test2: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
48)]
[外链图片转存中…(img-61XH4H2r-1714503276648)]
[外链图片转存中…(img-AeHSks0Y-1714503276648)]
[外链图片转存中…(img-T2viKADq-1714503276648)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新