从头开始积累centos7系统运用

大牛博客:

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

https://blog.oldboyedu.com/

文件的权限

rw-r--r-- 1 root root   aduser.txt

r:read 读  4

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--.  1 root root  15K Oct  3  2017 epel-release-latest-7.noarch.rpm
100663373 crw-r--r--   1 root root 5, 1 Aug 12 16:49 erictse
100663393 brw-r--r--   1 root root 5, 1 Aug 12 16:50 erictseb
   420853 drwxr-xr-x   2 root root   37 Aug 12 11:43 honortone
   690709 drwxr-xr-x   7 root root  171 Jul 11 11:23 oldboy
 33575402 drwxr-xr-x  26 root root 4.0K Jun 18 10:50 test

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

链接的概念:

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

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

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

  实践直观演示理解。

  硬链接:ln  源文件 目标文件

  软链接: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系统中,删除静态文件(没有进程调用)(目录也是文件)的条件是与之相关的所有硬链接文件均被删除。

1.2软链接:

  软链接(Soft Link)也称为符号链接(Symbolic Link)。linux里的软链接文件就类似windows系统中的快捷方式。

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不一样,文件类型不一样,文件权限也不一样,指向源文件

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

ln -s /application/apache2.2.17  /application/apache

[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/
apache2.2.17  apache2.4.2
[root@python01 /]# ln -s /application/apache2.4.2  /application/apache
[root@python01 /]# ls -ld /application/apache       
lrwxrwxrwx 1 root root 24 Aug 13 16:15 /application/apache -> /application/apache2.4.2

目录的小结:

目录没有硬链接,只有软链接

示例:创建硬链接

[root@python01 oldboy]# mkdir oldboygirl
[root@python01 oldboy]# ls
123.log  file       jeacen      oldboy      test     xiaodong  xingfujie
ext      file_soft  nginx.conf  oldboygirl  wodi.gz  xiaofan   yingsui.gz
[root@python01 oldboy]# ln oldboygirl  oldboygirl_hard_link
ln: ‘oldboygirl’: hard link not allowed for directory

原因:目录的硬链接不能跨越文件系统(从硬链接原理可以理解,)

. 点是当前目录的硬链接

..点点是上级目录的硬链接

统计目录的硬链接

[root@python01 oldboy]# ll -lhid /etc/
67156609 drwxr-xr-x.

示例:创建软链接:

[root@python01 oldboy]# ln -s oldboygirl  oldboygirl_hard_link

描述linux下软链接和硬链接的区别

1.默认不带参数情况,ln命令创建的是硬链接,带-s参数的ln命令创建的是软链接。

2.硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点与源文件不同。

3.ln命令不能对目录创建硬链接,但可以创建软链接,对目录的软链接会经常被用到。

4.删除软链接文件,对源文件及硬链接文件无任何影响;

5.删除文件的硬链接文件,对源文件及软链接文件无任何影响;

6.删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状);

7.同时删除源文件及硬链接文件,整个文件才会被真正的删除。

8.很多硬件设备中的快照功能,使用的就是类似硬链接的原理。

9.软链接可夸文件系统,硬链接不可以跨文件系统。

思路1:

1.介绍软链接的概念。

2.如何创建软链接

3.对于文件的软硬链接区别

4.对于目录的软硬链接区别

5.画图解释(逻辑题)

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

  1. 26.centos7基础学习与积累-012-文件和目录的属性

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.文件的属性(文件的信息描述): [root@python01 ~]# ls -l ...

  2. 25.centos7基础学习与积累-011-课前考试二-命令练习

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 取IP地址: 6的命令:ifconfig eth0 7的命令 [root@pytho ...

  3. 23.centos7基础学习与积累-009-linux目录

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 linux目录的特点: 1. /是所有目录的顶点. 2. 目录结构像一颗倒挂的树. ...

  4. 20.centos7基础学习与积累-006-软实力-画图

    从头开始积累centos7系统运用 亿图是用指南 安装亿图软件 修改基础配置 路径:文件==>选项==>常规 需要修改的参数: 撤销次数:256 自动保存间隔:2分钟 路径:文件==> ...

  5. 17.centos7基础学习与积累-003-命令练习01

    1.从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 linux命令的学习: 创建目录:mkdir mkdir /data mkdir ...

  6. 24.centos7基础学习与积累-010-上机考核命令练习

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然 ...

  7. 22.centos7基础学习与积累-008-系统调优及安全设置

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.关闭selinux功能: SELinux(Securety-EnhancedLi ...

  8. 19.centos7基础学习与积累-005-命令总结01

    从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.查看命令帮助的方法: --help 适用于一般命令,非内置命令 man  适用于 ...

  9. 18.centos7基础学习与积累-004-分区理论

    1.从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.常规分区:数据不是特别重要的业务(集群的某个节点) /boot  引导分区 ...

随机推荐

  1. jQuery 标单验证

    jQuery Validate jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方 ...

  2. Flask 学习(三)路由介绍

    Flask路由规则都是基于Werkzeug的路由模块的,它还提供了很多强大的功能. 两种添加路由的方式 方式一: @app.route('/xxxx') # @decorator def index( ...

  3. springboot docker 部署

    1.新建一个最简单的springboot项目 https://code.aliyun.com/859143303/hello-world.git 2.src/main/docker下新建Dockerf ...

  4. 【Spring Boot学习之二】WEB开发

    环境 Java1.8 Spring Boot 1.3.2 一.静态资源访问 动静分离:动态服务和前台页面图片分开,静态资源可以使用CDN加速;Spring Boot默认提供静态资源目录位置需置于cla ...

  5. 一段隐藏文字的css代码,记录下

    <span style="width:1px; height:1px; color:#fff; outline-width:hidden; overflow:hidden; displ ...

  6. 【jquery】【jqGrid】设置不能多选

    onSelectAll:function(rowids,statue){ layui.layer.msg("请选择单条记录"); $("#jqGrid").jq ...

  7. [转帖]Proof Of Work 工作量证明

    Proof Of Work 工作量证明 https://www.cnblogs.com/zhang-qc/p/10451817.html 借鉴了 哈希现金(Hashcash)-1997年 英国密码学专 ...

  8. OpenLayers加载高德地图离线瓦片地图

    本文使用OpenLayers最新版本V5.3.0演示:如何使用OpenLayer加载谷歌地球离线瓦片地图.OpenLayers 5.3.0下载地址为:https://github.com/openla ...

  9. Word章 节标题自动编号并由此自动生成目录 -- 含视频教程(1)

    1. 写论文之前事先调好 写论文的时候,难免要用到章节,如何实现下图的效果呢? 其实结合用好两个功能就行了: >> 视频教程链接:B站,速度快,清晰 事先调好,可以给后续工作带来很多便利, ...

  10. @FeignClient 调用另一个服务的test环境,实际上却调用了另一个环境testone的接口,这其中牵扯到k8s容器外容器内的问题,注册到eureka上的是容器外的旧版本

    今天遇到了很奇葩的问题,我本机的是以test环境启动的,调用另一个服务接口的时候返回参数却不同,调用接口是没错,怎么会这样,排查了很久,发现在eureka上注册的另一个服务是testone环境,而这个 ...