自动挂载
yum -y install autofs
systemctl start autofs
systemctl enable autofs
或者
systemctl enable --now autofs
目录 根/
/opt 第三方软件安装目录
/sys 硬件相关
/tmp 临时目录
/var 可变的数据
根文件系统 rootfs 如:ext4
/etc/DIR_COLORS定义文件颜色
文件分为两部分
数据本身 data 文件内容
元数据 metadata 即属性
Linux的文件系统分层系统FHS
linux的文件的七种类型
- 普通文件 d 目录文件
l 链接文件 b 块设备 c 字符设备
p 管道文件(单工,单通道) s 套接字文件scoket
基本命令
pwd 显示当前目录
cd 切换目录
基名 basename 只取文件名而不去路径
目录名 dirname 只取路劲,不要文件名
绝对路径 从/开始,完整的路劲
相对路经 相对于当前工作目录,不从根/开始,特殊场景下,是相对于某个位置
cd .. 切换到父目录
cd 回到家目录 cd ~
cd ~wang切换到wang的家目录
cd - 回到前一个文件夹
列出文件
ls
-ld 列出文件本身信息
-R 递归
ll --time=mtime 修改时间
ctime 改变属性时间
atime 访问时间
stat 查看文件的所有时间 Inode 文件唯一标识
文件的内容
file 可以查看文件类型 -b只看结果
win文件 回车 =回车 换行 二进制 格式
linux文件 回车 =换行
dos2unix win文件切换到unix文件格式
hexdump -C 查看文件的二进制内容
编码格式
win 7 ANSI 类似gbk
linux utf-8 (win 10)
iconv -l 查看linux支持的编码
iconv -f gb2312 text.txt -o text1.txt 装换格式 utf-8
iconv -f utf-8 t gb2312 text1.txt o text.txt utf-8装换成ansi格式win7
通配符
* 匹配零个或多个字符 (匹配不了.隐藏文件)
? 任意单个字符
~当前用户家目录
~mage 用户mage家目录
~- 当前一个工作目录(访问文件)
cd - 回到上一个目录
【0-9】 匹配数字范围
【a-z】小大字母选择 a A b B.. z
[wang] 列表中取一个字符
[^wang]匹配列表中所有字符以外的字符
{0..9} 花括号的特殊功能
[:lower:] 表示任意的小写字母 a-z 再加个[]表示取一个
[:upper:] 大写
ls -d /etc/rc[0-9]* 列出对应的文件,遇到目录时候只列出目录,而不列出里面的文件
ls -d .* 列出当前目录的所有隐藏文件= l.
ls -A 不显示. .. 其他文件
ls -d /etc/*/ 显示非隐藏的目录
touch 识别不出通配符,通配符用来过滤现有文件
touch 可以创建文件,也可以刷新3个时间
touch `date -d "-1 day" +%F_%T`.log 创建前一天的日志
cp 复制文件,复制多个文件到目录,可能会丢失部分属性 时间,拥有者
-p 保留原有文件的属性 权限 拥有者,时间
-r 复制文件夹
复制链接文件时候,复制链接原有文件的内容
-a 复制保留文件的所有属性 ,常用语备份-av (如果是普通用户拥有者任然是普通用户权限)
-i 覆盖前提示 (root用户自带-i的别名)
-v 显示复制过程
-f 强制执行(如果目标文件存在,没有权限覆盖则删除原有文件,再复制)
-b 目标存在,先备份filename~ 再覆盖,只保留一个版本
--backup=numbered 目标存在,覆盖前先备份夹数字后缀filename.~#~可以保留多个
cp -a /data backup_`date +%F_%H:%M:%S`.log 备份日志语句
mv 移动 重命名
批量换名词 rename conf conf.bak *
删除文件 rm -rf
-r递归 -f 强制
rm -rf .[^.]*删除所有隐藏文件 不包括. ..
mv代替rm
-开头的文件 以绝对路径删除或者--
rm ./-f
shred 安全的删除,避免被恢复
-zvun
shred -zvun 5 file
tree 查看目录结构
-d 只列文件夹
mkdir 创建文件夹
-p 创建父目录
rmdir 只能删空目录
文件的元数据与节点表结构
节点表 放文件的元数据meta data (属性 节点编号 :文件唯一标识)
ll -i 可以查看节点编号 /stat firename
目录是个特殊文件 ,内容存放文件的列表及inode number节点编号,一般节点编号占用磁盘空间1%
cp 命令:
分配一个空闲的inode号,在inode表中生成新条目
在目录中创建一个目录项,将名称与inode编号关联
拷贝数据生成新的文件
rm和inode
rm 命令:
链接数递减,从而释放的inode号可以被重用
把数据块放在空闲列表中
删除目录项
数据实际上不会马上被删除,但当另一个文件使用数据块时将被覆盖
mv和inode
如果mv命令的目标和源在相同的文件系统,作为mv 命令
用新的文件名创建对应新的目录项
删除旧目录条目对应的旧的文件名
不影响inode表(除时间戳)或磁盘上的数据位置:没有数据被移动!
如果目标和源在一个不同的文件系统, mv相当于cp和rm
df -i 查看节点编号的使用情况,有限资源
不同分区 可以有相同的节点编号
硬链接(hard) 链接数 节点编号一致 同一个文件 别名 索引 指向
ln file dir1/file 创建软连接 同一个分区文件 没有主次之分 删除一个,文件依然可以访问
不支持对目录创建硬链接
删除大数据文件时候,可以创建链接,然后删除文件,然后不繁忙时候删除链接文件
软连接(soft)
ln -s f1.txt f1.txt.lnk 快捷方式 有主次之分 源文件删除,软链接无法访问
原始文件的相对路径一定是相对于软连接的路径 或者直接写绝对路径
支持文件夹 支持跨分区 大小是源文件文件名大小
软件的更新 回滚 软连接更换
删除软连接 不能跟/ 跟上容易删除程序