magedu.N45019-第二周作业

1、描述Linux发行版的系统目录名称命名规则以及用途。
Linux的目录结构是有一定规范的,即特定的目录应该存放特定的文件。此规范由文件系统层次结构标准(Filesystem Hierarchy Standard)实现。文件系统标准旨在供Linux分发开发人员,程序包开发人员和系统实现者使用。但是它主要用于参考,而不是如何管理Linux文件系统或目录层次结构的强制标准。
Linux的文件系统特点如下:
文件和目录被组织成一个单根倒置的树形结构;文件系统从根目录下开始,用“/”表示;根文件系统为rootfs,即root filesystem;以“.”开头的文件为隐藏文件;路径中上级和下级目录之间分割使用单斜线“/”。

Linux文件系统中各目录文件的作用简介:

目录名称作用
/boot系统启动引导文件存放目录。内核文件(vmlinuxz)以及引导加载器(bootloader)都存放在此目录下
/bin存放所有用户使用的基本命令,该目录不能独立分区,OS在启动时会使用到该目录下的文件
/sbin存放管理类的基本命令,该目录不能独立分区,OS在启动时会使用到该目录下的文件
/lib存放系统启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules);还有个目录叫/lib64,他是专用于X86_64系统上的辅助共享文件存放的位置
/etc配置文件目录
/home普通用户家目录
/root管理员用户家目录
/media便携式移动设备挂载点
/mnt临时文件挂载点
/dev设备文件及特殊文件存储位置
/opt第三方引用程序的安装位置
/srv系统上运行的服务用到的数据
/tmp临时文件存储位置

2、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
在Linux系统中,可以使用stat命令查看文件的元数据信息,如下:

[root@centos7 ~]# stat initial-setup-ks.cfg 
  File: ‘initial-setup-ks.cfg’
  Size: 1979      	Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d	Inode: 201326660   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2008-08-08 08:08:08.000000000 +0800
Modify: 2008-08-08 08:08:08.000000000 +0800
Change: 2020-04-20 11:07:24.054950778 +0800
 Birth: -

各信息含义:

名称含义
File文件名
Size文件大小(字节)
Blocks文件使用的数据块总数
IO Block数据块大小
regular file文件类型(这里是指常规文件)
Device设备编号
Inode文件所在的Inode
Links硬连接次数
Access权限
Uid属主id/用户
Gid属组id/组名
Access(atime)表示文件访问时间;当文件被访问时,更新这个时间
Modify(mtime)表示文件内容的修改时间;当文件数据内容被修改时,更新这个时间
Change(ctime)表示文件的状态时间;当文件状态被修改时,更新这个时间;例如:文件的链接数,大小,权限,Blocks数

我们可以通过命令 touch -t [timestamps] [filename]来修改文件的时间戳,如下:

[root@centos7 ~]# touch -t 200808080808.08 initial-setup-ks.cfg 
[root@centos7 ~]# stat initial-setup-ks.cfg 
  File: ‘initial-setup-ks.cfg’
  Size: 1979      	Blocks: 8          IO Block: 4096   regular file
Device: 802h/2050d	Inode: 201326660   Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2008-08-08 08:08:08.000000000 +0800
Modify: 2008-08-08 08:08:08.000000000 +0800
Change: 2020-04-20 12:03:35.085793734 +0800
 Birth: -

3、总结软连接和硬连接区别,并用实例操作说明。
硬连接本质是对同一个文件起多个文件名,所以表现为一个inode号可以对应多个文件名。换而言之就是一个文件使用了多个别名,但他们的inode号相同。硬连接可使用ln命令创建。
硬连接的特性:
1.文件有相同的inode及data block
2.只能对已存在的文件进行创建
3.不能跨分区创建硬连接
4.不能对目录进行创建,只可对文件创建
5.删除一个硬连接文件并不影响其它有相同inode号的文件

[root@centos7 data]# touch 1.txt
[root@centos7 data]# echo hard > 1.txt
[root@centos7 data]# ln 1.txt 2.txt
[root@centos7 data]# ls -li
total 8
67 -rw-r--r-- 2 root root 5 Apr 20 12:04 1.txt
67 -rw-r--r-- 2 root root 5 Apr 20 12:04 2.txt
[root@centos7 data]# cat 2.txt 
hard
[root@centos7 data]# rm -f 1.txt 
[root@centos7 data]# cat 2.txt 
hard

软连接与硬连接不同,若文件用户数据块中存放的内容是另一文件的路径名指向,则该文件就是软连接。软连接就是一个普通文件,只是数据块内容有点特殊。软连接有自己的inode号以及用户数据块,因此软连接的创建与使用没有类似硬连接的诸多限制。软连接的创建方式与硬连接相似,也使用ln命令,但是需要加上“-s”选项。软连接的特性如下:
1.软连接有自己的文件属性及权限等
2.可对不存在的文件或目录创建软连接
3.软连接可跨分区创建
4.软连接可对文件或目录创建
5.创建软连接时,连接计数不会增加
6.删除软连接并不影响被指向的文件,但若被指向的源文件被删除,则相关的软连接被称为死连接,若被指向路径文件重新创建,死连接可恢复为正常的软连接

[root@centos7 data]# touch 1.txt
[root@centos7 data]# echo soft > 1.txt 
[root@centos7 data]# cd ./test/
[root@centos7 test]# ln -s /data/1.txt 2.txt
[root@centos7 test]# ls -li
total 0
33554561 lrwxrwxrwx 1 root root 11 Apr 20 12:08 2.txt -> /data/1.txt
[root@centos7 test]# cat 2.txt 
soft
[root@centos7 test]# rm -f /data/1.txt 
[root@centos7 test]# ls -li
total 0
33554561 lrwxrwxrwx 1 root root 11 Apr 20 12:08 2.txt -> /data/1.txt
[root@centos7 test]# touch /data/1.txt
[root@centos7 test]# ls -li
total 0
33554561 lrwxrwxrwx 1 root root 11 Apr 20 12:08 2.txt -> /data/1.txt

4、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
Linux文件管理类命令大致可分为两大类:管理目录类文件命令和管理文件的相关命令。

管理目录类文件相关命令:
tree:可以查看目录的树状结构

		tree
.
├── 2.txt -> /data/1.txt
├── anaconda-ks.cfg
├── Desktop
├── Documents
├── Downloads
├── initial-setup-ks.cfg
├── Music
├── Pictures
├── Public
├── Templates
└── Videos

8 directories, 3 files

mkdir:创建目录

选项说明
-m指定创建的目录的权限
-p递归创建,如父目录不存在则自动创建
-v创建目录时给出详细说明,并在创建目录时列出它们
[root@centos7 data]# mkdir -m 777 /data/d1
[root@centos7 data]# ll
total 0
drwxrwxrwx 2 root root 6 Apr 20 11:53 d1

[root@centos7 data]# mkdir -pv /data/d1/d2/d3/d4/d5
mkdir: created directory ‘/data/d1/d2’
mkdir: created directory ‘/data/d1/d2/d3’
mkdir: created directory ‘/data/d1/d2/d3/d4’
mkdir: created directory ‘/data/d1/d2/d3/d4/d5’
[root@centos7 data]# tree /data/
/data/
└── d1
    └── d2
        └── d3
            └── d4
                └── d5

5 directories, 0 files

rmdir:删除目录

选项说明
-p递归删除目录及其空的父目录
-v输出每个目录的处理信息
[root@centos7 data]# rmdir -pv /data/d1/d2/d3/d4/d5/
rmdir: removing directory,/data/d1/d2/d3/d4/d5/rmdir: removing directory,/data/d1/d2/d3/d4’
rmdir: removing directory,/data/d1/d2/d3’
rmdir: removing directory,/data/d1/d2’
rmdir: removing directory,/data/d1’
rmdir: removing directory,/data

管理文件的相关命令:
ls:查看文件列表

选项说明
-A显示除隐藏文件”.“和”…“以为的所有文件
-a显示以“.”开头的所有文件
-b将文件中不可输出字符以反斜线“”加字符编码的方式输出
-C多列显示输出结果,此项默认
-c与-lt选项连用时,按照文件状态时间排序输出目录内容,根据文件的索引节点中的ctime字段排序。与-l选项连用时,则排序的依据是文件的状态改变时间
-d仅显示目录名,而不显示目录下的内容列表。显示符号链接文件本身,而不显示其所指向的目录列表
-F在每个输出项后追加类型标识符
-i显示文件索引节点号(inode)
-l以唱歌时显示目录下的内容列表
-1与-C选项相反,单列输出所有内容
-m用“,”分割每个文件或目录名称
-n以用户识别码uid和群组识别码gid代替其名称
-R递归处理
-r以文件名反序排列并输出目录内容列表
-s显示文件和目录大小,以区块为单位
-t用文件的更改时间排序

stat:查看文件详细属性

选项说明
-b列出辨识结果时,不显示文件名称
-c详细显示指令执行过程,便于排错或分析程序执行的情形
-f FILE指定名称文件,其内容有一个或多个文件名称时,依序辨识这些文件类型
-L直接显示符号链接所指向的文件的类别
-i输出文件对应的MIME的类型
-v显示版本信息
-z尝试取解读压缩文件的内容

touch:创建文件,修改文件时间属性

选项说明
-a表示只更改访问时间atime
-c不新建任何文件
-m只更改mtime
-r把指定文件时间设成和参考文件的日期时间相同,而非当前时间
-t STAMP使用指定的时间戳,格式为CCYYMMDDhhmm.ss

cp:复制文件

选项说明
-a此参数的效果和同时指定-dpR参数相同
-b覆盖已存在的目标文件前先对之做备份
-f如果目标文件不能打开,先删除后打开
-i覆盖文件前先询问用户
-l对源文件建立硬连接,而非复制文件
-p保留源文件或目录的属性 ,包括所有者,所属组,权限与时间
-P复制软连接本身,而非复制软连接指向的源文件
-R,-r递归处理,将指定目录下的文件与子目录一并处理
-s对源文件建立符号连接,而非复制文件

mv:移动,重命名文件

选项说明
-b当文件存在时,覆盖前为其创建一个备份
-f直接覆盖不提示
-i覆盖前先询问
-u当源文件比目标文件新或者目标文件不存在时才执行

rm:删除文件

选项说明
-f强制删除文件,不提示确认,并自动忽略不存在文件
-i删除前询问
-d删除空目录,非空无法删除
-r递归删除
-v显示删除过程

ln:创建软、硬连接

选项说明
-b覆盖前先备份
-d允许超级用户制作目录的硬连接,因系统限制可能出错
-f强制执行
-i交互模式
-n把符号链接视为一般目录
-s软连接(符号连接)

5、复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符

[root@centos7 ~]# cp /etc/profile /tmp/
[root@centos7 ~]# sed -nr '/^[[:space:]]/s@^[[:space:]]+*@@p' /tmp/profile 

6、在vim中设置tab缩进为4个字符
临时生效
打开vim编辑器,命令模式下直接输入:set tabstop=4即可。
永久生效
在用户家目录中,编辑配置文件
vim .vimrc
添加一行set tabstop=4保存退出即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值