27.centos7基础学习与积累-013-文件和目录的权限

匿名 (未验证) 提交于 2019-12-02 23:54:01

从头开始积累centos7系统运用

大牛博客:

https://blog.51cto.com/yangrong/p5

https://blog.oldboyedu.com/

文件的权限

w:write 写 2

x:execute 执行 1

-:没有权限 0

当selinux开启是创建文件及文件夹会有点,关闭则没有。

[root@python01 ~]# ls -lhi
total 24K
100663363 -rw------- 1 root root 1.6K May 24 23:28 anaconda-ks.cfg
101300544 -rw-r--r--.




[root@python01 ~]# ls -lhi /etc/

链接的概念:

在linux系统中,链接可分为两种:一种为硬链接(Hard Link),另一种为软链接或符号链接(Symbolic Link or Soft link)。

ln这个命令就是创建链接文件的,在默认不带参数的情况下,执行ln命令创建的链接就是硬链接。

  如果使用ln -s创建链接则为软链接,前面文件类型为l(字母L)的是软链接。

  实践直观演示理解。

  软链接:ln -s 源文件 目标文件(目标文件不能事先存在)

  

1.1硬链接

  硬链接是指通过索引节点(Inode)来进行链接。在linux文件系统中,保存在磁盘分区中的文件

不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号(Index Inode)简称Inode,

即在系统中文件的编号。

[root@python01 oldboy]# echo 1 >a
[root@python01 oldboy]# ls -l a
-rw-r--r-- 1 root root 2 Aug 13 11:17 a
[root@python01 oldboy]# ln a b
[root@python01 oldboy]# ls -l a
-rw-r--r-- 2 root root 2 Aug 13 11:17 a
[root@python01 oldboy]# cat a
1
[root@python01 oldboy]# cat b

[root@python01 oldboy]# ls -hil a b
690706 -rw-r--r-- 2 root root 2 Aug 13 11:17 a
690706 -rw-r--r-- 2 root root 2 Aug 13 11:17 b

硬链接是文件的入口:当一个文件被删了后源文件还是存在的并且可以查看文件内容

[root@python01 oldboy]# \rm a
[root@python01 oldboy]# ls -hil a b
ls: cannot access a: No such file or directory
690706 -rw-r--r-- 1 root root 2 Aug 13 11:17 b
[root@python01 oldboy]# cat b
1

文件名与源文件是引用指向的关系,当两个文件名都被删了,那么源文件就只有等待被系统回收的命运,

类似开发的引用数据类型,

在linux系统中,删除静态文件(没有进程调用)(目录也是文件)的条件是与之相关的所有硬链接文件均被删除。

linux里面的软链接实际上是一个特殊的文件,文件类型是l。软链接文件实际上可以理解为一个文本文件,

这个文件中包含有软链接指向另一源文件的位置消息内容,因此,通过访问这个快捷方式就可以迅速定位到软链接所指向的源文件实体。

[root@python01 oldboy]# echo 1 >file
[root@python01 oldboy]# ln -s file file_soft
[root@python01 oldboy]# ls -li file file_soft
690706 -rw-r--r-- 1 root root 2 Aug 13 15:44 file
690728 lrwxrwxrwx 1 root root 4 Aug 13 15:44 file_soft -> file

区别:inode不一样,文件类型不一样,文件权限也不一样,指向源文件

面试题:给用户唯一的入口

[root@python01 /]# ls -ld /application/apache
lrwxrwxrwx 1 root root 25 Jul 12 09:12 /application/apache -> /application/apache2.2.17
[root@python01 /]# \rm -f /application/apache
[root@python01 /]# ls -ld /application/apache
ls: cannot access /application/apache: No such file or directory
[root@python01 /]# mkdir -p /application/apache2.4.2
[root@python01 /]# ls /application/



lrwxrwxrwx 1 root root 24 Aug 13 16:15 /application/apache -> /application/apache2.4.2

来源: https://www.cnblogs.com/ericchengge677/p/11349753.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!