1、描述描述Linux发行版的系统目录名称命名规则以及用途
(1)命令规则
文件名最长255个字节
包括路径在内文件名称最长4095个字节
蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
颜色设置/etc/DIR_COLORS
除了斜杠和NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们
标准Linux文件系统(如ext4),文件名称大小写敏感
例如:MAIL, Mail, mail, mAiL
(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:第三方应用程序的安装位置
bin, sbin, lib, lib64, etc, share
/var: variable data files
cache: 应用程序缓存数据目录
lib: 应用程序状态信息数据
local:专用于为/usr/local下的应用程序存储可变数据
lock: 锁文件
log: 日志目录及文件
opt: 专用于为/opt下的应用程序存储可变数据
run: 运行中的进程相关数据,通常用于存储进程pid文件
spool: 应用程序数据池
tmp: 保存系统两次重启之间产生的临时数据
/proc: 用于输出内核与进程信息相关的虚拟文件系统
/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置
2、描述文件的元数据信息有哪些?分别表示什么含义?如何查看?如何修改文件的时间戳信息?
(1).文件的元数据是指文件的属性、大小、创建时间、访问时间、属主属组等信息.
File 文件名称;
Size 文件大小;
Blocks 占用的磁盘块数;
IO Block IO块大小;
regular file 这里是显示文件的类型,这是一个普通文件
Device 所在设备;
Inode Inode节点号;
Links 被链接的次数;
Access【第一个】访问权限;
Uid uid号和属主;
Gid gid号和属组;
Access【第二个】 文件最近一次的访问时间;
Modify 文件的修改时间;
Chang 文件的改变时间。
(2).三个时间戳:
access time:访问时间,简写atime,读写文件内容
modify time: 修改时间,mtime,改变文件内容(数据)
change time:改变时间,ctime,元数据发生改变
(3).修改文件的时间戳:touch
touch - change file timestamps
-c: 指定的文件路径不存在时不予创建;
-a: 仅修改access time;
-m:仅修改modify time;
-t: 指定日期时间,而非现在的时间
3、总结软链接和硬链接区别,并用实例操作说明
(1)本质区别:硬链接是同一个多个文件名,软链接是不同的文件;
(2)跨分区的区别:硬链接不支持跨分区,软链接支持跨分区
(3)硬链接不支持对目录创建,软链接支持
(4)硬链接文件与原始文件是相互平等独立的关系,软链接文件依赖于原始文件
(5)硬链接i文件与原始文件inode编号相同,软件文件与原始文件inode编号不一样
(6)软链接的原始文件路径相对的是软链接文件的路径,硬链接的原始文件路径相对的是当前工作目录
4、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示
(1)目录管理命令
ls命令
ls /etc、 ls -a /etc/ 、ls -l /etc 、ls -lh /etc 、ls -i /etc 、ls -lt /etc、 ls -R /etc/sysconfig/ 、ls -F1 /run 、ls -ld /etc
mkdir命令
mkdir -pv /testdir/dir1/{x,y}/{a,b}、mkdir -pv /testdir/{dir3,dir4,dir5/{dir6,dir7}}、mkdir -pv /testdir/dir2/{x/{a,b},y}
rmdir命令
rmdir -pv /testdir/dir1/{x,y}/{a,b}
pwd命令
[root@Centos7 bin]# cd /bin/
[root@Centos7 bin]# pwd -P /usr/bin
[root@Centos7 bin]# pwd /bin
[root@Centos7 bin]# pwd -L /bin
[root@Centos7 bin]# pwd -P /usr/bin
(2)文件管理命令
cp命令
-i 覆盖前提示
-n 不覆盖,注意两者顺序
-r, -R 递归复制目录及内部的所有内容
-a 归档,相当于-dR --preserv=all
-d --no-dereference --preserv=links 不复制原文件,只复制链接名
-p 等同--preserv=mode,ownership,timestamp
-v --verbose
-f --force
--preserv[=ATTR_LIST]
mode: 权限
ownership: 属主属组
timestamp:
links
xattr
context
all
-u --update 只复制源比目标更新文件或目标不存在的文件
-b 目标存在,覆盖前先备份,形式为 filename~
--backup=numbered 目标存在,覆盖前先备份加数字后缀
5、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的行首的空白字符
cp /etc/profile /tmp
sed -r 's@^[[:space:]]+@@;/^$/d' /tmp/profile
6、在vim中设置tab缩进为4个字符
[root@Centos7 data]# cat <<-EOF > ~/.vimrc
> set tabstop=4
> EOF