Linux第二周学习笔记
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux第二周学习笔记相关的知识,希望对你有一定的参考价值。
Linux第二周学习笔记(8)
2.14 文件或目录权限chmod
(1). 权限表示
[[email protected] ~]# ls -l
总用量 12
-rw-------. 1 root root 1418 1月 22 08:19 anaconda-ks.cfg
-rw-r--r-- 1 root root 4358 1月 29 23:24 anaconda-ks.cfg.1
文件的权限是和所有者、所属组有关系的,一个文件总共有三个权限位总共有9位分成三段,加上第一位表示设备类型总共十位,一下进行解析:
-rw-r--r--
第一位“-”:表示设备类型
d:表示目录
-:表示普通文件(包含文本文档及带色标记的二进制文档)
c: 表示字符串的设备(如:鼠标、键盘)
l:软件连接或者硬连接文件(软连接相当于一个快捷方式)
s:通讯文件(如:进程相互间的通讯)
rw-r--r--(从第二位开始表示权限)
w:是否可写(-不可写);r:是否可读(-不可读);x:是否可执行;
-:不可执行。
第一组rw-:表示所有者(root),文件是谁所有。
rw-表示:r可读,w可写,-不可执行。
第二组-r--:表示所属组(root),文件是属于那一个用户组。
r--表示:r可读,-不可写,-不可执行。
第三组r--:表示其它用户,除了所有者、所有组以外的其它用户
r--表示:r可读,-不可写,-不可执行。
权限使用数字表示:
r=4 w=2 x=1
rwx=7(三个数字相加之和)表示可读可写可执行
rw-=6可读可写不可执行
--x=1只可执行
rw-r--r--=664
rw-r-xr-x=655
-rw-------.:在这权限当中最后一位有一个“.”是代表什么意思,意味着这个文件受制于seLinux,如果seLinux开启的话创建的目录最后一位就会有一个“.”。可使用getenforce命令暂时关闭,如果要完全关闭的话需要更改配置文件vi /etc/seLinux/config
-----------------------------------------------------------------------------------------
"/etc/selinux/config" 14L, 547C
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing(更改为disabled即可)这节课这里只做了解,不做任何更改
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
"/etc/selinux/config" 36L, 1133C
-----------------------------------------------------------------------------------------
(2.).chmod命令:chmod命令用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。
chmod-R命令:chmod命令只是对文件或者目录生效的仅仅只是指定的这个目录本身,如果要把目录下面的子目录还有子文件全部一次性批量更改的权限,就要使用-R参数
---------------------------------------------------------------------------------------
chmod命令更改权限:新建123.txt文件进行权限更改,权限更改为:所有者可读、可写、可执行,用户组不可读、不可写、不可执行,其它用户不可读、不可写、不可执行;权限表示如下:rwx------=700
[[email protected] ~]# touch 123.txt
[[email protected] ~]# ls
123.txt anaconda-ks.cfg anaconda-ks.cfg.1
[[email protected] ~]# ls -l
总用量 12
-rw-r--r-- 1 root root 0 1月 30 20:53 123.txt
-rw-------. 1 root root 1418 1月 22 08:19 anaconda-ks.cfg
-rw-r--r-- 1 root root 4358 1月 29 23:24 anaconda-ks.cfg.1
[[email protected] ~]# chmod 700 123.txt
[[email protected] ~]# ls -l
总用量 12
-rwx------ 1 root root 0 1月 30 20:53 123.txt
-rw-------. 1 root root 1418 1月 22 08:19 anaconda-ks.cfg
-rw-r--r-- 1 root root 4358 1月 29 23:24 anaconda-ks.cfg.1
更改daizhihong3权限表示如下:drwxr-xr-x
u (User):即文件或目录的拥有者;
g( Group):即文件或目录的所属群组;
o (Other):除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxr-x--x 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
-rw-------. 1 root root 0 1月 22 08:14 yum.log
[[email protected] tmp]# chmod u=wxr,g=xr,o=rx daizhihong3(在录入的时候是不能加“-”)
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxr-xr-x 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
使用chmod三组权限全部加权限:
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
d-wx--x--- 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
[[email protected] tmp]# chmod a+r daizhihong3(三组权限全部加r,a代表全部)
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxr-xr-- 3 root root 24 1月 28 21:58 daizhihong3(全部都加上了r)
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
使用chmod三组权限全部减权限:
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxr-xr-- 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
[[email protected] tmp]# chmod a-r daizhihong3(三组权限全部减r,a代表全部)
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
d-wx--x--- 3 root root 24 1月 28 21:58 daizhihong3(三组权限全部减r)
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
也可以这样使用:
chmod u+r daizhihong3
chmod u-r daizhihong3
chmod g+r daizhihong3
chmod g-r daizhihong3
chmod o+r daizhihong3
chmod o-r daizhihong3
--------------------------------------------------------------------------------
在前面讲密钥认证的时候,在做密钥认证的时候就用到过如下:
[[email protected] ~]# chmod 700 /root/.ssh
[[email protected] ~]# ls -ld /root/.ssh/
drwx------. 2 root root 48 1月 26 04:29 /root/.ssh/
--------------------------------------------------------------------------------------------
chmod-R命令: chmod命令只是对文件或者目录生效的仅仅只是指定的这个目录本身,如果要把目录下面的子目录还有子文件全部一次性批量更改的权限,就要使用-R参数
未加R参数:
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxr-xr-x 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
[[email protected] tmp]# ls -l daizhihong3
总用量 0
[[email protected] tmp]# chmod 770 daizhihong3(更改daizhihong3权限成770rwxrwx---)
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxrwx--- 3 root root 24 1月 28 21:58 daizhihong3(更改成功)
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
[[email protected] tmp]# ls -l daizhihong3
总用量 0
drwxr-xr-x 2 root root 20 1月 28 21:58 daizhihong(但是在daizhihong3下面的子目录权限并未更改)
加R参数:
[[email protected] tmp]# chmod -R 770 daizhihong3
[[email protected] tmp]# ls -l
总用量 8
-rw-r--r-- 1 root root 2564 1月 29 23:22 anaconda-ks.cfg.1
drwxr-xr-x 2 root root 20 1月 29 13:36 daizhihong
drwxrwx--- 3 root root 24 1月 28 21:58 daizhihong3
drwxr-xr-x 5 root root 53 1月 29 11:43 daizhong
[[email protected] tmp]# ls -l daizhihong3
总用量 0
drwxrwx--- 2 root root 20 1月 28 21:58 daizhihong(加入-R参数后连着子目录或者子文件的权限一起更改)
--------------------------------------------------------------------------------------
以上是关于Linux第二周学习笔记的主要内容,如果未能解决你的问题,请参考以下文章