Linux文件权限及管理(一)

什么是文件的权限?

  • 我个人的理解:权限是什么?就是限定你能做的事,其载体是文件本身,但是其限制的对象却是使用文件的对象,比如某个用户。
  • 书面的解释:保证文件可以被可用的用户做相关的操作,
  • 权限的作用:当然是安全!保障了系统底层的稳定性。

这也是为什么大多数服务器采用Linux或者Unix系统,相比于windows更安全可靠,当然其权限的设定也是安全性保障的一部分。

怎么使用文件权限?

  • 知道了what,更要知道how。怎么使用文件权限也非常重要,使用的第一步当然是查看。
查看文件权限

#查看权限指令:
ls -l 文件名 ===============>表示查看文件属性
ls -ld 目录名 ===============>表示查看目录属性
ll 文件名 ===============>表示查看文件属性 同方法一
ll -d 目录名 ===============>表示查看目录属性 同方法二

对目录来说可以用参数  -R 表示递归显示

示例:

[kiosk@foundation2 Desktop]$ ls -l file 
-rw-rw-r--. 1 kiosk kiosk 0 Mar 31 22:04 file
[kiosk@foundation2 Desktop]$ ls -ld /home/
drwxr-xr-x. 3 root root 19 Mar 24 21:27 /home/
[kiosk@foundation2 Desktop]$ ll file 
-rw-rw-r--. 1 kiosk kiosk 0 Mar 31 22:04 file
[kiosk@foundation2 Desktop]$ ll -d /home/
drwxr-xr-x. 3 root root 19 Mar 24 21:27 /home/
文件权限的解释
  • 那么我们查看出来的这些属性又分别是什么意思呢?
[kiosk@foundation2 Desktop]$ ll -d /home/
drwxr-xr-x. 3 root root 19 Mar 24 21:27 /home/

我们对上面的这段属性进行切割介绍:

  drwxr-xr-x. 3 root root 19 Mar 24 21:27 /home
d	|	rwxr-xr-x	| 3  | root | root 	| 19 | Mar 24 21:27 |  /home
1  		2			  3		 4		5	   6		7			8

上图中的1-8分别代表不同的属性:

  1. 文件的类型
    	-   	表示空文件/文本文件
    	d 		表示目录
    	l		表示软连接/或者说快捷方式
        s		socket套接字—————>一种通信机制,可以通过其进入程序内部进行交流
        b 		block块设备—————>例如硬盘、软盘
        c 		字符设备
    
  2.  文件的权限
     rwx|r-x|r-x
      分成三部分:
      分别是对用户[u]的权限,组[g]的权限,其他用户[o]的权限
      r 代表可读,w代表可写,x代表可执行			
    
  3.  这个数字3表示文件硬链接次数:也就是文件内容被系统记录的次数
     如果是目录,表示其子目录数,可以用 ls -a查看其子目录数,示例如下:
    
[kiosk@foundation2 Desktop]$ ls -a /home/
.  ..  kiosk

这里可以看到有三个子目录。

  1.  文件属于的用户
    
  2.  文件属于的用户组
    
  3.  文件大小或目录大小
    
  4.  文件被修改时间
    
  5.  文件名或目录名
    
修改文件的所属用户或所有组
 1. 修改文件所属用户
 	chown 用户名 文件名 	-------->将某文件的所有人修改

示例:

[root@foundation2 ~]# ll -d /haha/
drwxr-xr-x. 2 root root 6 Mar 31 22:54 /haha/
[root@foundation2 ~]# chown tom /haha/
[root@foundation2 ~]# ll -d /haha/
drwxr-xr-x. 2 tom root 6 Mar 31 22:54 /haha/

成功将/haha/ 目录的所有者从root修改为tom

 2. 修改文件所属用户组
	chgrp 组名 文件名 	-------->将某文件的所有组修改

示例:

[root@foundation2 ~]# ll -d /haha/
drwxr-xr-x. 2 tom root 6 Mar 31 22:54 /haha/
[root@foundation2 ~]# chgrp tom /haha/
[root@foundation2 ~]# ll -d /haha/
drwxr-xr-x. 2 tom tom 6 Mar 31 22:54 /haha/

成功将/haha/ 目录的所有组从root修改为tom

修改文件的权限
chmod <u|g|o><+|-|=><r|w|x或数字>		文件
r代表数字为4,w代表数字为2,x代表数字为1,所以
权限字母表示数字表示
rwx7
rw-6
r-x5
r- -4
-wx3
-w-2
- -x1
那么就可以用数字表示其权限,例如rwxr-xr--可以根据上面的说明表示为754,
有没有更方便一些呢?

注意
上表中是理论上所有情况,但实际上,有些权限并不常见或存在。

一般最常见的是读权限,其次是执行权限,最后才是写权限。
因为写的风险是最高的,所以必须建立在rx的基础上,所以只能写其实也就算rwx。

这里思考起来比较麻烦,建议可以联想现实生活的例子:比如在公司,老板是相当于root,各个部门是用户组,我一个技术部的开发相当于普通用户,我的读权限相当于可以进技术部,但不能随笔进财务部,假如财务部没有对其他用户赋予读权力的话,执行权限相当于可以对部门的事物执行,写权力就算是修改部门内容。

说了那么多,做个实验更明了。

实验要求:
新建一个目录/public,所有用户都可以读写执行
[root@foundation2 Desktop]# mkdir public
[root@foundation2 Desktop]# ls -ld public/
drwxr-xr-x. 2 root root 6 Apr  1 20:41 public/
[root@foundation2 Desktop]# chmod g+w,o=rwx public/
[root@foundation2 Desktop]# ls -ld public/
drwxrwxrwx. 2 root root 6 Apr  1 20:41 public/
新建另一个目录/private,只能所属组员可以写入
[root@foundation2 Desktop]# mkdir private
[root@foundation2 Desktop]# ls -ldR private/
drwxr-xr-x. 2 root root 6 Apr  1 20:44 private/
[root@foundation2 Desktop]# chmod 770 private/
[root@foundation2 Desktop]# ls -ldR private/
drwxrwx---. 2 root root 6 Apr  1 20:44 private/
当然,这里的组是root,你也可以用chgrp修改所属组

注意,chmod后面可以用多种写法,按照上面说过的规范即可。

umask系统预留权限

这个其实就算系统新建文件时你文件显示的权限

对目录来说默认建立,上面也有例子,可以发现,新目录建立是drwxr-xr-x,也就是755
对文件来说,默认没有x属性,保证安全,所以文件默认建立是-rw-r--r--,也就是644

umask临时设定系统预留权限为077
可以通过vim /etc/profilevim /etc/bashrc 更改mask,

/etc/profile 	是系统配置文件,就是在系统中产生的新文件的umask由他管
/etc/bashrc		是shell配置文件,shell中产生的文件umask由他管
 55 # By default, we want umask to get set. This sets it for login shell
 56 # Current threshold for system reserved uid/gids is 200
 57 # You could check uidgid reservation validity in
 58 # /usr/share/doc/setup-*/uidgid file
 59 if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
 60     umask 002
 61 else
 62     umask 022

最后别忘了修改完使其生效
当然要source一下,

source /etc/profile
source /etc/bashrc
可能需要重启或重新进入系统或重开shell

今天因为时间原因下写到这里,明天写有关特殊权限的使用acl权限列表的使用,更适用于生产环境哦,并且有些实验题可以讲解一下操作步骤!明天见~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值