1、描述Linux发行版的系统目录名称命名规则以及用途。
1).文件名最长255个字节
2).包括路径在内文件名称最长4095个字节
3).
蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
黄色-->块设备
粉色-->套接字文件,用于网络通讯
棕色-->p开头,管道文件,实现两个同一台电脑,不用进程,互相发送信息,传送信息。
4).除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们
5).标准Linux文件系统(如ext4),文件名称大小写敏感
例如:MAIL, Mail, mail, mAiL
6)用途
1./boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
2./bin:所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
3./sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
4./lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)
5./lib64:专用于x86_64系统上的辅助共享库文件存放位置
6./etc:配置文件目录
7./home/USERNAME:普通用户家目录
8./root:管理员的家目录
9./media:便携式移动设备挂载点
10./mnt:临时文件系统挂载点
11./dev:设备文件及特殊文件存储位置
b: block device,随机访问
c: character device,线性访问
12./opt:第三方应用程序的安装位置
13./srv:系统上运行的服务用到的数据
14./tmp:临时文件存储位置
文件系统结构
15./usr: universal shared, read-only data
1)bin: 保证系统拥有完整功能而提供的应用程序
2)sbin:
3)lib:32位使用
4)lib64:只存在64位系统
5)include: C程序的头文件(header files)
6)share:结构化独立的数据,例如doc, man等
7)local:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share
16./var: variable data files
1)cache: 应用程序缓存数据目录
2)lib: 应用程序状态信息数据
3)local:专用于为/usr/local下的应用程序存储可变数据
4)lock: 锁文件
5)log: 日志目录及文件
6)opt: 专用于为/opt下的应用程序存储可变数据
7)run: 运行中的进程相关数据,通常用于存储进程pid文件
8)spool: 应用程序数据池
9)tmp: 保存系统两次重启之间产生的临时数据
17./proc: 用于输出内核与进程信息相关的虚拟文件系统
18./sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
19./selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
File:文件名
Size:文件大小(单位:byte)
Blocks:文件占用的数据块个数
IO Block:文件所占用数据块的块容量(单位:byte)
regular file:普通文件(文件类型)
Device:设备号(十六进制/十进制)
Inode:索引节点
Links:硬连接数(1代表没有其它的硬连接)
Access:第一个Access,权限(八进制/rwx格式)
Uid:所属主(ID号/名称)
Gid:所属组(ID号/名称)
Access:第二个Access,最近访问时间
Modify:最近数据修改时间
Change:最近元数据修改时间
Birth:创建时间
三个时间戳:
access time:访问时间,简写atime,读写文件内容
modify time: 修改时间,mtime,改变文件内容(数据)
change time:改变时间,ctime,元数据发生改变
修改文件的时间戳:touch
1.touch命令
2.格式:touch [OPTION]... FILE...
-a 仅改变 atime和ctime
-m 仅改变 mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss]
指定atime和mtime的时间戳
-c 如果文件不存在,则不予创建
3、总结软连接和硬链接的区别,并用实例操作说明
1).本质:
硬链接:同一个文件,多个名字
软连接:不同文件
2).跨分区:硬链接不支持跨分区
3).目录:硬链接不支持对目录创建
4).相互关系:
硬链接相互之间是平等独立的关系,如果删除一个硬链接,只是少个名而已,对文件没有影响,只是连接数减1
软连接原始文件和软连接之间有相互关系,如果原始数据删除,那么软连接失效
5).inode号:硬链接inode是相同的,软链接是不同的
6).链接数不同:硬链接的链接数会增长
7).文件类型:软连接表示为:‘l’,硬链接原来是啥就是啥
8).命令实现也不一样:
硬链接:ln 文件名 链接名
软链接:ln -s 文件名 链接名
4、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示
1).cd 改变目录
使用绝对或相对路径:
cd /home/wang/
cd home/wang
切换至父目录: cd ..
切换至当前用户主目录: cd
切换至以前的工作目录: cd -
2).ls 列出当前目录的内容或指定目录
用法:ls [options] [files_or_dirs]
示例
ls -a 包含隐藏文件
ls -l 显示额外的信息
ls -d 显示文件夹本身信息
ls -R 目录递归
ls -ld 目录和符号链接信息
ls -1 文件分行显示
ls –S 按从大到小排序
ls –t 按mtime排序
ls –u 配合-t选项,显示并按atime从新到旧排序
ls –U 按目录存放顺序显示
ls –X 按文件后缀排序
ll --time=atime 文件的读时间
3).cp 复制
-i 覆盖前提示
-n 不覆盖,注意两者顺序
-r, -R 递归复制目录及内部的所有内容
-a 归档,相当于-dR --preserv=all
-d --no-dereference --preserv=links 不复制原文件,只复制链接名
--preserv[=ATTR_LIST]
mode: 权限
ownership: 属主属组
timestamp: 保留时间戳
例:cp --preserv=timestamp /etc/fstab /data/fstab
links
xattr
context
all
-p 等同--preserv=mode,ownership,timestamp
-v --verbose,显示拷贝过程
-f --force 如果权限不够,先删除在创建新的
-u --update 只复制源比目标更新文件或目标不存在的文件
-b 目标存在,覆盖前先备份,形式为 filename~
--backup=numbered 目标存在,覆盖前先备份加数字后缀
4)mv 移动和重命名文件
-i 交互式
-f 强制
-b 目标存在,覆盖前先备份
5)rm 删除
-i 交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/
示例:
rm -rf /*
释放磁盘空间,在删除文件
(1) > /boot/t1.txt #会将文件清零
(2) df -h /boot
(3)rm -rf /boot/t1.txt
5、复制/etc/profile至/tmp ,用查找替命令删除/tmp/profile文件中的行首的空白字符。
cp -a /etc/profile /tmp
vim /tmp/profile
使用':'进入命令扩展模式
%s#^[[:space:]]*\([^[:space:]]*\)#\1#g1
6、 在vim中设置tab 缩进为4个字符
配置文件:永久有效
全局:/etc/vimrc
个人:~/.vimrc
vim ~/.vimrc
set tabstop=4