文件系统
数据区按相同块数,分多个块组,块组包含数据和inode,每组有自己信息保存gdt,所有信息保存在超级块,超级块会备份在各组中
inode:索引节点(不包括文件名)
地址指针
直接指针:直接指定文件存储在哪些块上(会限制文件大小)
间接指针
三级指针
inode bitmap(位图索引):以二进制对应标识每个inode是否空闲
数据块位图:以二进制对应标识每个块是否空闲
ls -i:显示文件inode号
目录:路径映射文件,用于存储此目录下所有文件及对应inode信息
访问/var/log/messages文件过程:先有/的inode-查找到/所在的块-查找到var的inode-var所在块-log的inode-log所在块-me的inode-me所在的块
硬链接:多个文件使用相同的inode信息,创建硬链接即添加一个引用路径,会增加其引用计数,ll查看文件引用多次
不能对目录创建,不能跨分区,目录2次引用另一个为.
ln 源文件 链接文件名
软链接:软链接文件inode里存放为源文件路径,文件大小为路径占的大小
ln -s 源文件 链接文件名(软链接文件默认为777权限)
文件管理操作对文件的影响
文件删除:减少inode引用计数,为0时表示可用,块标记为可用;对于软链接直接删除inode路径信息
文件复制:创建空文件,读出写入到新文件
文件移动:跨分区时先复制再删除源文件,同分区时更改目录信息块上文件对应inode信息
bash脚本编程之用户交互
read 变量名1 变量名2 变量名3...:由键盘输入变量值
多个变量时,键盘输入多个以空白分开的值;值少于变量数量时后面变量为空,大于变量数量时多余的值都添加到最后一个变量
read -p '提示字符' 变量:显示提示字符
-t #:等待输入多少秒后命令超时结束,未输入时变量值为空
脚本语法检查
bash -n 脚本名:检查语法错误
bash -x 脚本名:调试执行
数据区按相同块数,分多个块组,块组包含数据和inode,每组有自己信息保存gdt,所有信息保存在超级块,超级块会备份在各组中
inode:索引节点(不包括文件名)
地址指针
直接指针:直接指定文件存储在哪些块上(会限制文件大小)
间接指针
三级指针
inode bitmap(位图索引):以二进制对应标识每个inode是否空闲
数据块位图:以二进制对应标识每个块是否空闲
ls -i:显示文件inode号
目录:路径映射文件,用于存储此目录下所有文件及对应inode信息
访问/var/log/messages文件过程:先有/的inode-查找到/所在的块-查找到var的inode-var所在块-log的inode-log所在块-me的inode-me所在的块
硬链接:多个文件使用相同的inode信息,创建硬链接即添加一个引用路径,会增加其引用计数,ll查看文件引用多次
不能对目录创建,不能跨分区,目录2次引用另一个为.
ln 源文件 链接文件名
软链接:软链接文件inode里存放为源文件路径,文件大小为路径占的大小
ln -s 源文件 链接文件名(软链接文件默认为777权限)
文件管理操作对文件的影响
文件删除:减少inode引用计数,为0时表示可用,块标记为可用;对于软链接直接删除inode路径信息
文件复制:创建空文件,读出写入到新文件
文件移动:跨分区时先复制再删除源文件,同分区时更改目录信息块上文件对应inode信息
bash脚本编程之用户交互
read 变量名1 变量名2 变量名3...:由键盘输入变量值
多个变量时,键盘输入多个以空白分开的值;值少于变量数量时后面变量为空,大于变量数量时多余的值都添加到最后一个变量
read -p '提示字符' 变量:显示提示字符
-t #:等待输入多少秒后命令超时结束,未输入时变量值为空
脚本语法检查
bash -n 脚本名:检查语法错误
bash -x 脚本名:调试执行