0
点赞
收藏
分享

微信扫一扫

CentOS 文件的属性及类型

文件的属性及类型

文件属性

root@localhost ~]# ll
total 176
d rwxr-xr-x  2 root root      6 Mar 28 01:22 family
- rw-r--r--  1 root root      0 Mar 27 02:35 wc
- rw-r--r--  1 root root    218 Mar 27 01:17 web.log
d rwxr-xr-x  2 root root      6 Mar 28 01:22 work
- rw-r--r--  1 root root      0 Mar 27 01:16 wsh
# 第一列
文件的类型
-:普通文件 touch
d:directory 目录 mkdir
l:link 软链接文件(windows快捷方式)ln

c:设备文件(char字符设备文件)和字符相关的设备,举例:打印机,终端
b:设备文件(block块设备文件)和存储相关的设备,举例:硬盘,U盘,磁盘分区
s:socket安全套接字文件,网络编程
p:pipe管道文件,父进程与子进程之间的通信文件

# 第二列:
文件的权限:Permission denied(权限被拒绝)
rw- r-- r--
rwx rwx rwx
r:read 读
w:write 写
x:exec 执行
-:该权限位上没有权限

# 三列:
指该文件的硬链接数

# 第四列:
该文件的属主

# 第五列:
该文件的属组

# 第六列:
该文件的大小

# 第七列:
文件的创建时间

最后一列:
文件名

文件类型查看命令

file
## 语法:
file   [选项]   文件...
## 举例
[root@localhost ~]# file 2.txt 
2.txt: ASCII text

[root@localhost ~]# file web.log 
web.log: ASCII text

[root@localhost ~]# file .bashrc 
.bashrc: ASCII text

[root@localhost ~]# file /dev/sdb
/dev/sdb: cannot open (No such file or directory)

[root@localhost ~]# file /dev/pts/ptmx 
/dev/pts/ptmx: character special

系统的链接文件

一个文件在Linux中,会被分为两部分:

  • 真实数据:文件中的真实内容
  • 元数据:用来形容一个文件数据

一个文件在Linux中,存储也会被分为两部分:

  • inode:用来存储文件的元数据
  • block:用来存储真实数据,一个block是4K大小

image.png

## 查看磁盘空间
df
## 选项
-h:方便阅读方式显示
-i:查看inode空间

## 举例
# 查看磁盘的block
[root@localhost ~]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        900M     0  900M   0% /dev
tmpfs           910M     0  910M   0% /dev/shm
tmpfs           910M  9.5M  901M   2% /run
tmpfs           910M     0  910M   0% /sys/fs/cgroup
/dev/sda3        18G  1.5G   17G   9% /
/dev/sda1       497M  135M  362M  28% /boot
tmpfs           182M     0  182M   0% /run/user/0

# 查看磁盘的inode
[root@localhost ~]# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
devtmpfs        230199   383  229816    1% /dev
tmpfs           232878     1  232877    1% /dev/shm
tmpfs           232878   697  232181    1% /run
tmpfs           232878    16  232862    1% /sys/fs/cgroup
/dev/sda3      9180672 32078 9148594    1% /
/dev/sda1       256000   327  255673    1% /boot
tmpfs           232878     1  232877    1% /run/user/0

链接文件的种类

  • 软链接文件

    软链接相当于windows的快捷方式,软链接文件会将inode指向源文件的block

image.png1648549801860

ls -i:查看该文件的inode号

## 创建软链接的命令
ln:link 链接,创建链接文件
-s:soft 软,创建软链接文件

ln -s 源文件 链接文件的位置
## 举例
[root@localhost ~]# ln -s /root/blog.driverzeng.com_access.log  /opt/
[root@localhost ~]# ll /opt/
total 4
lrwxrwxrwx  1 root root  36 Mar 29 23:35 blog.driverzeng.com_access.log -> /root/blog.driverzeng.com_access.log
-rw-r--r--. 1 root root 396 Mar 24 02:15 ifcfg-ens33

[root@localhost ~]# ln -s /root/blog.driverzeng.com_access.log  /opt/1.txt 
[root@localhost ~]# ll /opt/
total 4
lrwxrwxrwx  1 root root  36 Mar 29 23:39 1.txt -> /root/blog.driverzeng.com_access.log
lrwxrwxrwx  1 root root  36 Mar 29 23:35 blog.driverzeng.com_access.log -> /root/blog.driverzeng.com_access.log
-rw-r--r--. 1 root root 396 Mar 24 02:15 ifcfg-ens33

# 软链接文件,会受到源文件的影响,如果源文件删除,软链接文件也无法使用
[root@localhost ~]# rm -rf /root/blog.driverzeng.com_access.log 
[root@localhost ~]# ll /opt/
total 4
lrwxrwxrwx  1 root root  36 Mar 29 23:39 1.txt -> /root/blog.driverzeng.com_access.log
lrwxrwxrwx  1 root root  36 Mar 29 23:35 blog.driverzeng.com_access.log -> /root/blog.driverzeng.com_access.log
-rw-r--r--. 1 root root 396 Mar 24 02:15 ifcfg-ens33
[root@localhost ~]# cat /opt/blog.driverzeng.com_access.log 
cat: /opt/blog.driverzeng.com_access.log: No such file or directory

image.png

  • 硬链接文件
    若一个inode号对应多个文件名,则称这些文件为硬链接。换句话说,硬链接就是同一个文件使用了多个别名

image.png1648551226784

## 创建硬链接的命令
ln
ln 源文件 链接文件的位置

## 举例
[root@localhost ~]# ls -li 
total 176
33582691 -rw-r--r-- 2 root root     68 Mar 27 02:35 2.txt
33575033 -rw-r--r-- 1 root root 164034 Mar 26 11:33 blog.driverzeng.com_access.log
33582690 -rw-r--r-- 1 root root      0 Mar 27 02:34 cat
[root@localhost ~]# ln /root/2.txt  /opt/
[root@localhost ~]# ls -li /opt/
total 8
16784721 lrwxrwxrwx  1 root root  36 Mar 29 23:39 1.txt -> /root/blog.driverzeng.com_access.log
33582691 -rw-r--r--  2 root root  68 Mar 27 02:35 2.txt
16784673 lrwxrwxrwx  1 root root  36 Mar 29 23:35 blog.driverzeng.com_access.log -> /root/blog.driverzeng.com_access.log
16784735 -rw-r--r--. 1 root root 396 Mar 24 02:15 ifcfg-ens33

## 查看文件内容
[root@localhost ~]# cat /root/2.txt 
I'm jbs,22 years old QQ 123456789
I'm wsh,18 years old QQ 234567890
[root@localhost ~]# cat /opt/2.txt 
I'm jbs,22 years old QQ 123456789
I'm wsh,18 years old QQ 234567890

## 特性
1.硬链接文件,不会受到原文件的影响
2.所有硬链接文件的inode号与源文件相同
3.修改一个文件,其他文件都会改变
4.不允许给目录创建硬链接
## 报错
[root@localhost ~]# ln /root/family/ /opt/
ln: ‘/root/family/’: hard link not allowed for directory
5.默认情况下,新创建的目录,有两个硬链接,一个是目录本身,一个是该目录下的.目录
[root@localhost ~]# ls -lai /root/family/
total 0
51468669 drwxr-xr-x  2 root root   6 Mar 28 01:22 .
33574977 dr-xr-x---. 4 root root 240 Mar 29 23:43 ..

硬链接和软链接的区别

区别 硬链接 软链接
创建命令 ln ln -s
对象 只能对普通文件创建 普通文件和目录
是否收到源文件影响
inode号 相同 不同
跨分区创建 不可以 可以
举报

相关推荐

0 条评论