1-Linux系统基本操作
一.linux内核
1.啥是内核
内核约等于操作寄存器,但是内核不能被用户直接操作,而是要通过调用
2.内核下载
谁都能用内核源码封装一个操作系统
3.远程连接
finalshell ->ssh ->ip地址
wsl
二.基础命令
1.基本命令
ls
默认打开home
ls -ahl /
cd
默认进去home目录
注意相对绝对路径
可以使用特殊路径符
pwd(print work directory)
查看当前目录
mkdir(make directory)
新建目录
mkdir -p 路径 一次性创建多层目录
注:在home下做命令是可以不考虑权限
2.文件操作命令
touch
创建文件
cat
查看文件内容
more
查看文件内容,支持翻页比cat更牛逼,可查看内容多的文档
空格翻页
cp
复制文件
cp -r 路径 复制文件夹
mv
移动文件
文件改名
rm
删除
强制删除需要更高的权限,root用户下删除文件会提示询问是否删除,加上-f后直接不弹出
3.查找命令
which
查找命令存放的地方
find
两种搜索方式,同时可以使用通配符
查找文件
4.
echo
在命令行输出指定内容
可以用双引号“”包围,如果内容比较复杂,有空格或特殊符号的时候
可以用反引号``包围,被包围的内容会被作为命令执行
任何可以产生结果的东西可以通过重定向符写入到文件中,这里由于echo可以直接将文字打印出来方便理解放在这里
tail
从后往前看文件的东西
当持续追踪后,可以再开一个命令窗,对文件进行修改,在追踪中的窗口中会一直执行追踪,可以看到现象,ctrl+c结束
5.
grep
在文件把想要找到的字输出出来
标红的意思是不填内容,搭配管道符使用
wc
文件内容的统计
默认输出 行数 单词数 字节数
管道符 |
三.vi\vim文本编辑器
直接打开是命令模式,并以其作为中转
三.用户权限
1.root用户(超级管理员)
普通用户只在自己的home是是有权限,例如在根目录下无法创建文件夹
2.用户、用户组
3.权限信息
4.修改权限控制
修改权限信息
修改所属的用户、用户组
四.快捷键
五.linux文件管理
Linux 系统中的 7 种文件类型,包括:普通文件、目录、字符设备文件、块设备文件、符号链接文件、管道文件以及套接字文件。
5.1静态文件与inode
文件没打开前儿是存放在磁盘里如u盘,他以一种固定的形式进行存放,我们叫他静态文件。
硬盘的最小储存单位是扇区(512字节,0.5kb)。
多个扇区组成块,他是文件存取的最小单位,通常是4kb八个扇区。
由于一个个读取扇区效率太低,而是一次读取一个块
硬盘在分区或格式化是会有俩区域,数据区和inode区
后者存放 inode table (inode表),他存放一个个inode节点,每个文件对应一个inode,相当于一个结构体,记录文件不同信息
在windows下快速格式化是只清理inode区
打开一个文件,系统内部会将这个过程分为三步:
系统找到这个文件名所对应的 inode 编号;
通过 inode 编号从 inode table 中找到对应的 inode 结构体;
根据 inode 结构体中记录的信息,确定文件数据所在的 block,并读出数据。
文件被打开后,内核会申请一段内存(缓存区),他从静态文件变成了动态文件,我们在对其进行操作是对动态文件操作,在结束操作时内核会自动同步到磁盘中。
5.2空洞文件
使用lseek()可以修改文件读写位置的偏移量,当偏移字节大于文件字节,会形成空洞文件。
这样做是有好处的,比如在下载文件时,还没下完就已经有内存占用,我们可以开启多个线程从不同位置写入,这样可以提高下载速度。