文章目录
一、描述Linux发行版的系统目录名称命名规则以及用途。
1、命名规则
⁃ 文件和目录被组织成一个单根倒置树结构
⁃ 文件系统从根目录下开始,用“/”表示
⁃ 根文件系统(rootfs): root filesystem
⁃ 标准Linux文件系统(如: ext4),文件名称大小写敏感,例如:MAIL,Mail,mail,mAiL以,开头的文件为隐藏文件
⁃ 路径分隔的/
⁃ 文件名最长255个字节
⁃ 包括路径在内文件名称最长4095个字节
⁃ 蓝色—>目录,绿色—>可执行文件,红色—>压缩文件,浅蓝色—>链接文件,灰色—>其他文件
⁃ 除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用
⁃ 每个文件都有两类相关数据:元数据:metadata,即属性,数据:data,即文件内容
⁃ Linux的文件系统分层结构:FHS Filesystem Hierarchy Standard:参考文档:http://www.pathname.com/fhs/
2、用途
⁃ /boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader,grub)都存放于此目录
⁃ /bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
⁃ /sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
⁃ /lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
⁃ /lib64:专用于x86_64系统上的辅助共享库文件存放位置
⁃ /etc:配置文件目录
⁃ /home/USERNAME:普通用户家目录
⁃ /root:管理员的家目录
⁃ /media:便携式移动设备挂载点
⁃ /mnt:临时文件系统挂载点
⁃ /dev:设备文件及特殊文件存储位置
⁃ b: block device,随机访问
⁃ c: character device,线性访问
⁃ /opt:第三方应用程序的安装位置
⁃ /srv:系统上运行的服务用到的数据
⁃ /tmp:临时文件存储位置
⁃ /usr: universal shared, read-only data
⁃ bin:保证系统拥有完整功能而提供的应用程序
⁃ sbin:管理类的基本命令
⁃ lib:32位使用
⁃ lib64:只存在64位系统
⁃ include:C程序的头文件(header files)
⁃ share:结构化独立的数据,例如doc,man等
⁃ local:第三方应用程序的安装位置
⁃ /var: variable data files
⁃ cache:应用程序缓存数据目录
⁃ lib:应用程序状态信息数据
⁃ local:专用于为/usr/local下的应用程序存储可变数据
⁃ lock:锁文件
⁃ log:日志目录及文件
⁃ opt:专用于为/opt下的应用程序存储可变数据
⁃ run:运行中的进程相关数据,通常用于存储进程pid文件
⁃ spool:应用程序数据池
⁃ tmp:保存系统两次重启之间产生的临时数据
⁃ /proc: 用于输出内核与进程信息相关的虚拟文件系统
⁃ /sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
⁃ /selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
二、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
1、描述文件的元数据信息有哪些,分别表示什么含义?
⁃ inode number节点号
⁃ 文件类型
⁃ 权限
⁃ UID
⁃ GID
⁃ 链接数(指向这个文件名路径名称个数)
⁃ 该文件的大小和不同的时间戳
⁃ 指向磁盘上文件的数据块指针
⁃ 有关文件的其他数据
2、如何查看?
stat 文件
3、如何修改文件的时间戳信息?
⁃ 格式:touch [OPTION]... FILE...
⁃ 选项说明:
⁃ -a 仅改变 atime和ctime
⁃ -m 仅改变 mtime和ctime
⁃ -t [[CC]YY]MMDDhhmm[.ss] 指定atime和mtime的时间戳
⁃ -c 如果文件不存在,则不予创建
三、总结软链接和硬链接的区别,并用实例操作说明。
1、区别
1.本质:
硬链接:本质是同一个文件
软链接:本质不是同一个文件
2.跨设备
硬链接:不支持
软链接:支持
3.inode
硬链接:相同
软链接:不同
4.链接数
硬链接:创建新的硬链接,链接数会增加,删除硬链接,链接数减少
软链接:创建或删除,链接数不会变化
5.文件夹
硬链接:不支持
软链接:支持
6.相对路径
硬链接:原始文件相对路径是相对于当前工作目录
软链接:原始文件的相对路径是相对于链接文件的相对路径
7.删除源文件
硬链接:只是链接数减一,但链接文件的访问不受影响
软链接:链接文件将无法访问
8.文件类型
硬链接:和源文件相同
软链接:链接文件,和源文件无关
2、实例操作说明
⁃ 可以发现创建硬链接后,源文件和硬链接文件的inode相同,每多创建一个硬链接,源文件和硬链接文件的链接数都会加一。并且硬链接文件和源文件大小相同(因为指向的磁盘区域都是相同的,本质上是同一个文件)。
⁃ 当创建软链接后,可以看出软链接文件的inode和源文件的inode不同,并且大小也不同(软链接文件的大小就是软链接文件的文件名大小),并且创建软链接文件后源文件链接数不变,软链接文件的链接数为1.
⁃ 当删除源文件后,源文件的硬链接文件依然可以访问。但是源文件的软链接文件无法访问。
四、Linux上的文件管理类命令有哪些,其常用的使用方法及及其相关示例演示。
⁃ pwd命令:显示当前工作目录的的绝对路径
• -P 显示真实物理路径
• -L 显示链接路径(默认)
⁃ cd命令:更改目录
• -P 切换至物理路径,而非软链接目录
• 切换至父目录:cd ..
• 切换至当前用户主目录:cd
• 切换至以前的工作目录:cd -
⁃ ls命令:列出目录内容
• -a 包含隐藏文件
• -l 显示额外的信息
• -R 目录递归
⁃ stat命令:查看文件状态
⁃ file命令:查看文件类型
⁃ touch命令:用来创建文件或刷新文件的时间
⁃ cp命令:复制文件和目录
• 用法:
⁃ cp [OPTION] SOURCE DEST
⁃ cp [OPTION] SOURCE… DIRECTORY
• -i 如果目标已存在,覆盖前提示是否覆盖
• -r,-R 递归复制目录及内部的所有内容
• -a 归档,相当于-dR -preserv=all,常用于备份功能
• -v 可以看到整个备份的过程
⁃ mv命令:移动和重命名文件
• 格式:
⁃ mv [OPTION] SOURCE DEST
⁃ mv [OPTION] SOURCE… DIRECTORY
• OPTION
⁃ -i 交互式
⁃ -f 强制
⁃ -b 目标存在,覆盖前先备份
⁃ rename命令:批量修改文件名
• 格式:rename [options] <expression> <replacement> <file>...
• 例子:为所有conf文件加上.bak后缀
⁃ rename ‘conf’ ‘conf.bak’ f*
⁃ rm命令:删除文件
• -i 交互式
• -f 强制删除
• -r 递归
⁃ tree命令:显示目录树
• -d 只显示目录
• -L level 指定显示的层级数目
⁃ mkdir命令:创建目录
⁃ rmdir命令:删除空目录
• -p 递归删除父空目录
• -v 显示详细信息
六、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符
⁃ cp -a /etc/profile /tmp/
⁃ vim /tmp/profile
⁃ :%s/^[[:blank:]]\+//
七、在vim中设置tab缩进为4个字符
⁃ 在~/中创建.vimrc
⁃ 在.vimrc中输入set tabstop=4并保存