1、描述Linux发行版的系统目录名称命名规则以及用途。
/bin:所有用户可用的基本命令程序文件;
/sbin:供系统管理使用的工具程序;
/boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;
/dev:存储特殊文件或设备文件;
设备有两种类型:字符设备(线性设备)、块设备(随机设备);
/etc:系统程序的配置文件,只能为静态;
/home:普通用户的家目录的集中存放位置;
/root:管理员的家目录;可选;
/lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块
libc.so.*:动态链接的C库;
ld*:运行时链接器/加载器
modules:用于存储内核模块的目录;
/lib64:64位系统特有的存放64位共享库的路径;
/media:便携式设备的挂载点,cdrom,floppy等;
/mnt:其他文件系统的临时挂载点;
/opt:附加应用程序的安装位置;可选路径;
/srv:当前主机为服务提供的数据;
/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所有用户执行写入操作;有特殊权限;
/usr:usr Hierarchy,全局共享的只读数据层级结构;
/var:var Hierarchy,存储经常发生变化的数据层级结构;
/proc:虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核参数,例如net.ipv4.ip_forward,虚拟为/net/ipv4/forward,存储于/proc/sys/
/sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;其主要作用在于为管理Linux设备提供一种统一模型的接口;
2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
- 时间戳:access time、modify time、change time
- 查看:
stat命令:
显示文件或文件系统的状态
stat FILE… 修改:
touch [OPTION]… FILE…
-c:指定的文件路径不存在时不予创建; -a:仅修改access time; -m:仅修改modify time; -t STAMP [[CC]YY]MMDDhhmm[.ss]
3、总结软链接和硬链接区别,并用实例操作说明。
硬链接:
- 创建硬链接会增加额外的记录项以引用文件
- 对应于同一文件系统上一个物理文件
- 每个目录引用相同的inode号
- 创建时链接数递增
- 删除文件时:
- rm命令递减计数的链接
- 文件要存在,至少有一个链接数
- 当链接数为零时,该文件被删除
- 不能跨越驱动器或分区
语法:
`ln filename [linkname ]`
符号(或软)链接:
- 一个符号链接指向另一个文件
- ls - l的 显示链接的名称和引用的文件
- 一个符号链接的内容是它引用文件的名称
- 可以对目录进行
- 可以跨分区
- 指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数
语法:
`ln -s filename [linkname]`
硬链接示例:
[[email protected] ~]# touch aa [[email protected] ~]# ln aa aa.link [[email protected] ~]# ll -i aa aa.link 50808392 -rw-r--r--. 2 root root 0 Mar 1 08:15 aa //可以看到源文件和硬链接文件inode号、权限、时间一致 50808392 -rw-r--r--. 2 root root 0 Mar 1 08:15 aa.link //文件类型为普通文件 [[email protected] ~]# ll total 0 -rw-r--r--. 2 root root 0 Mar 1 08:15 aa -rw-r--r--. 2 root root 0 Mar 1 08:15 aa.link [[email protected] ~]# rm -rf aa //把源文件删除后,硬链接文件可以正常访问 [[email protected] ~]# echo "xxxx" >> aa.link [[email protected] ~]# cat aa.link xxxx
软链接示例:
[[email protected] ~]# touch bb [[email protected] ~]# echo "xxxxxxxxxxxxx" >> bb [[email protected] ~]# ln -s bb bb.link [[email protected] ~]# ll -i bb bb.link 50339518 -rw-r--r--. 1 root root 14 Mar 1 08:23 bb 50808392 lrwxrwxrwx. 1 root root 2 Mar 1 08:22 bb.link -> bb [[email protected] ~]# ll total 4 -rw-r--r--. 1 root root 14 Mar 1 08:23 bb lrwxrwxrwx. 1 root root 2 Mar 1 08:22 bb.link -> bb [[email protected] ~]# cat bb.link xxxxxxxxxxxxx [[email protected] ~]# rm -rf bb //删除源文件之后,软连接不可以正常访问 [[email protected] ~]# cat bb.link cat: bb.link: No such file or directory //可以看到inode号不相同,大小不一致,软连接的文件权限为777,但实际是由源文件决定 //文件类型变成符号链接,也就是(l)
总结软链接和硬链接的区别
- 本质:硬链接:同一个inode号多个文件名字,软连接不同文件
- 跨分区:硬链接不支持跨分区,软链接支持跨分区
- 硬链接不支持目录创建,软连接支持目录创建
- 硬链接没有依赖关系,软连接和源文件有依赖关系
- 硬链接不会增长连接数,软链接会增长连接数
- 路径:软连接的原始路径要相对软连接的相对路径
- 文件类型:硬链接根据文件创建的类型指定,软连接会变成l
4、Linux上的文件管理类命令都有哪些,其常用的使用方法及相关示例演示。
- cp命令
cp命令:copy
常用选项:
-i:交互式复制,即覆盖之前提醒用户确认;
-f:强制覆盖目标文件;
-r,-R:递归复制目录;
-d:复制符号链接文件本身,而非其指向的源文件;
-a:用于实现归档;单源复制:cp [OPTION]… [-T] SOURCE DEST
多源复制:cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…单源复制:cp [OPTION]… [-T] SOURCE DEST
如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中;
如果DEST存在:
如果DEST是非目录文件:则覆盖目标文件;
如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;多源复制:cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
如果DEST不存在:错误;
如果DEST存在:
如果DEST是非目录文件:错误;
如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名; mv命令
mv命令:move
mv [OPTION]… [-T] SOURCE DEST
mv [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…常用选项:
-i:交互式 -f:force
rm命令
rm命令:remove
rm [OPTION]… FILE…常用选项:
-i:interactive -f:force -r:recursive 删除目录:rm -rf /PATH/TO/DIR 危险操作:rm -rf /*
注意:所有不用的文件建议不要直接删除,而是移动至某个专用目录;(模拟回收站)
5、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的红白字符
[[email protected] data]#cp /etc/profile /tmp/
[[email protected] data]#vim /tmp/profile :%s/^[[:space:]]\+//
6、在vim中设置tab缩进为4个字符
[[email protected] data]#vim vim ~/.vimrc
在文件中添加:
set ts=4
set noexpandtab