趣文网 > 作文大全

Linux 一些重点知识 整理的很全面 有必要收藏

2020-12-05 15:00:01
相关推荐

我们都知道Linux是一个多用户,多任务的系统。这也是它的最优秀的特性,也就是说,可能有很多人同时在系统上工作,因此请不要强行关机。

同时,为了保护每个人的隐私和工作环境,对于某个文档(文件,目录),Linux系统定义了三个身份,即拥有者(owner)、群组(group)、其他人(others)。每个身份对应三种类型的权限:可读和可写,可执行(Excutable),通过这种设计可以确保每个用户拥有的数据的隐私性。

文档属性

使用命令ls -al --full-time,或者此命令的缩写ll可以查看文件或目录的所有属性。如下:

从上面可以看到,每一行都有7列,分别是:

第一列

总共有10位。第一位表示文件类型,d表示目录,-表示文件,l表示链接的文件,d表示可以随机访问的设备(例如U盘),c表示一次性读取的设备,例如 作为鼠标或键盘等等。

后9位数字按顺序对应于三个身份所拥有的权限,身份顺序为:所有者,组,其他,并且权限顺序为:可读,可写和可执行。例如:-r-xr-x ---表示当前文档是文件,所有者是可读写的,并且同一组中的用户是可读写的,其他用户没有任何权限。

第二列

表示链接数,表示有多少个文件链接到inode号码。

第三列

表示拥有者

第四列

表示所属群组

第五列

表示文档的大小,以字节为单位

第六列

表示文档的最后修改时间。请注意,这不是文档的创建时间。

第七列

表示文档名称。以点(.)开头的是隐藏文档

变更拥有者(owner)

位置

cat /etc/passwd

注意:它必须是此位置中已经存在的帐户。也就是说,/ etc / passwd中有记录的拥有者才可以更改它。

语法

chown [-R] [帐号名称] [文件或目录]chown [-R] [帐号名称]:[群组名称] [文件或目录]备注:此命令也可以顺便变更文档群组,但是仍然建议使用chgrp命令更改文档组。

选项

-R 递归变更,即连同次目录下的所有文件(夹)都要变更。

用法

chown daemon test 变更文件夹test账号为daemon。

chown daemon:root test 变更文件夹test群组为root。

chown root.users test 变更文件夹的账号为root,群组为users

chown .root test 单独变更群组为root

备注:尽管可以在拥有者与群组间加小数点(.),但为了避免有的友友在命名中带点,所以还是建议使用冒号“:”来隔开拥有者与群组,以避免误判。

变更群组(group)

位置

etc/group

备注:你可以从这里查看到所有群组

语法

chgrp [-options] [群组名] [文档路径]备注:关于options,可以通过man chgrp、info chgrp、chgrp --help等命令可以查询详细用法。

用法

chgrp -R users test 命令:改变test文件夹及其所有子文件(夹)的群组为users。

注意:群组名称不在位置内,将会报错invalid group。

变更权限

Linux文档只有三种基本权限,分别是read/write/execute,加上身份owner/group/others也一共有九个。更改权限的方法有两种,即符号方法和数值方法。

符号法

使用u,g,o来分别代表三种身份,a表示全部身份;分别使用r、w、x表示三种权限;分别使用+、-、=表示操作行为

语法

chmod | u g o a | +(加入) -(除去) =(设置) | r w x | 文档路径 设置权限(=)

如:变更目录test的权限为任何人都可读、写、执行。

chmod u=rwx,g=rwx,o=rwx test --或chmod ugo=rwx test --或chmod a=rwx test

去掉权限(-)

去掉目录test执行权限

chmod u-x,g-x,o-x test --或chmod ugo-x test --或chmod a-x test

备注:执行权限(x),对目录而已就是其他用户是否可以通过cd test成为工作目录。

添加权限(+)

增加目录test执行权限

chmod u+x,g+x,o+x test --或chmod ugo+x test --或chmod a+x test

备注:如果我们编写完一个shell文件test.sh后,通过chmod a+x test.sh就添加了文件执行权限。

数字法

顾名思义,它使用数字表示权限,并且r,w和x分别为4、2和1。三种权限累加就可以得出一种身份的权限。

把目录test的权限设置为任何人都可读、写、执行。如下:

chmod 777 test

目录test的权限设置为任何人都可读与写。

chmod 666 test

赋予一个shell文件test.sh可执行权限,拥有者可读、写、执行,群组账号和其他人可读、执行。

chmod 755 test 备注:是不是发现数字法更简单啊

文件和目录权限差异

文档权限对于文件和目录有巨大的差异

文件

针对的是该文件内容

readable 可读取该文件的实际内容writable 可以编辑、新增或者是修改该文件的内容executable 有可以被系统执行的权限备注:拥有w权限并不意味着您可以删除文件。删除文件是目录权限控制的范围。

这是因为目录的相关权限和属性记录在目录的inode中,并且目录中所有文件的名称和相应的索引文件(inode)号都记录在目录所属的块中,因此当我们 读取某个文件读取文件时,必须先读取目录的索引节点,然后读取目录的块信息,然后获取要读取的文件的索引信息。

也就是说,在哪个块上存储文件,最后可以读取文件内容(此内容需要了解Linux文件系统,例如Ext2 / Ext3 / Ext4,我们将在后面详细介绍)。请记住,文件权限仅对文件内容有效。

示例说明

使用root身份读取目录test001下的文件test001-1

查看目录物理全路径:pwd

列出有关的目录和文件:ll -di / /root /root/test001 /root/test001/test001-1

通过man ls 查看-i,全称inode,即 print the index number of each file

目录/的inode:通过挂载点的信息找到inode号码为2的block。目录/的block:通过上一步骤找到的block,找到root/目录的inode号码为131073。目录root/的inode:读取编号为131073的inode找到目录的block。目录root/的block:通过上一步骤找到的block,找到root/test001/目录的inode号码为527524。目录root/test001/的inode:读取编号为527524的inode找到目录的block。目录root/test001/的block:通过上一步骤找到的block,找到文件test001-1目录的inode号码为527526。文件test001-1的inode:读取编号为527526的inode找到文件的block。文件test001-1的block:通过上一步骤找到的block,读取文件内容。由于是root用户,因此有权阅读任何文档。如果使用一般帐户,则上述每个步骤的读取内容也会与权限匹配。

目录

针对的是该目录下的文件对象

readable 拥有读取目录结构列表的权限,即可以通过ls命令查询目录清单writable 具有变动该目录结构清单的权限,即可以在该目录中创建,迁移,删除和重命名文件。executable 拥有进入此目录的权限,您可以使用cd命令成为工作目录。备注:从上面可以得出结论,当打开目录供任何人浏览时,至少需要授予r或x权限。要读取目录文件的内容,至少需要目录权限x和文件权限r。

总结

可以为Linux的每个文档分配三种类型的身份的rwx权限。 chgrp命令更改文件组,chmod命令更改文件权限,chown更改文件所有者;然后请记住使用文件权限来保护数据的安全性。

以上是本文的全部内容,希望对大家的学习有帮助,也希望大家多多支持php自学中心

阅读剩余内容
网友评论
相关内容
延伸阅读
小编推荐

大家都在看

初中亲情作文600字叙事 介绍徐州家乡的作文 榜样的力量作文500字 关于伤心的作文600字 带着希望出发作文 细节见人品作文 我的小台灯作文 被忽略的爱作文 小学开学第一天作文 怎样学习英语的英语作文 高考语文作文题目大全 你是我的太阳满分作文 毕业了作文600字 关于诚信友善的作文 难忘的教诲作文 保护大熊猫的英语作文 以看见为题目的作文 美丽安徽作文 我喜欢中秋节作文 作文小事不小400字 美丽的什么作文600字 描写天门山景色的作文 那件事真让我什么作文 感受大自然的美好作文 享受友谊作文500字 观察食物的作文 学骑车作文400字 爱国是一种责任作文 吃亏是福的作文 走出困境的作文