用户和文件权限

1.Linux中用户角色划分

*在linux中用户角色是通过UID和GID时别的
*注:root超级用户UID和DID都为0
*id username :查看username的UID和GID
[root@XMJ ~]# id xmj
uid=500(xmj) gid=500(xmj) groups=500(xmj)
*注root的UID和GID都为0
[root@XMJ ~]# id root
uid=0(root) gid=0(root) groups=0(root)
[root@XMJ ~]# 
*在生产环境中,一般会禁止root账户通过SSH远程连接服务器,当然了也会修改ssh默认的端口,以加强系统的安全(root账户在每台linux/unix操作系统中都是真实唯一存在的,通过它可以登陆系统,可以操作系统中的任何命令,拥有最高的管理权限)。
*在企业工作中:没有特殊要求,应尽量在普通用户下操作,而不是root
[注意]
在linux系统中,UID为0的用户就是超级用户(系统识别的是UID),但是通常不这么做,而是通过sudo来管理


*普通用户
仅具备操作自己家目录中的为文件及目录的权限(UID:500-65535)
*虚拟用户
在系统安装时,默认存在,但是不能登陆,满足响应的系统对文件属主的要求(UID:1-499)


*-u指定UID|-g指定GID(前提是这个组必须要存在)
[root@XMJ ~]# useradd dch -u 666 
[root@XMJ ~]# id dch
uid=666(dch) gid=666(dch) groups=666(dch)
[root@XMJ ~]# 

2.普通用户的环境变量

[root@XMJ dch]# ls -a
.  ..  .bash_logout  .bash_profile  .bashrc
[root@XMJ dch]# su - dch
[dch@XMJ ~]$ su - root
Password: 
[root@XMJ ~]# cd /home/dch/
[root@XMJ dch]# rm -fr .bash_logout .bash_profile .bashrc
[root@XMJ dch]# ls -a
.  ..
[root@XMJ dch]# su - dch    #用户切换时,实则是在用户的环境变量里面切换
-bash-4.1$ 
-bash-4.1$ 
-bash-4.1$ 
*解决办法
[root@XMJ dch]# cp -a /etc/skel/.bash* /home/dch/
[root@XMJ dch]# ls -al /home/dch/
total 20
drwx------  2 dch  dch  4096 Jul 16 11:13 .
drwxr-xr-x. 4 root root 4096 Jul 16 11:04 ..
-rw-r--r--  1 root root   18 Sep 23  2015 .bash_logout
-rw-r--r--  1 root root  176 Sep 23  2015 .bash_profile
-rw-r--r--  1 root root  124 Sep 23  2015 .bashrc
[root@XMJ dch]# chown -R dch.dch /home/dch/ #修改所属用户和组
[root@XMJ dch]# ls -al /home/dch/
total 20
drwx------  2 dch  dch  4096 Jul 16 11:13 .
drwxr-xr-x. 4 root root 4096 Jul 16 11:04 ..
-rw-r--r--  1 dch  dch    18 Sep 23  2015 .bash_logout
-rw-r--r--  1 dch  dch   176 Sep 23  2015 .bash_profile
-rw-r--r--  1 dch  dch   124 Sep 23  2015 .bashrc
[root@XMJ dch]# su - dch
[dch@XMJ ~]$ 
[dch@XMJ ~]$ 
[dch@XMJ ~]$ 

3.用户组

*用户和用户组的关系:一对一|一对多|多对一|多对多

4.显示时间

*显示的是文件的修改时间
[root@XMJ xmj]# ls --full-time
total 4
-rw-r--r-- 1 root root    0 2017-07-16 08:44:53.000000000 +0800 linux2
drwxr-xr-x 2 root root 4096 2017-07-11 14:46:35.000000000 +0800 shell
[root@XMJ xmj]# ls -l --time-style=long-iso
total 4
-rw-r--r-- 1 root root    0 2017-07-16 08:44 linux2
drwxr-xr-x 2 root root 4096 2017-07-11 14:46 shell
[root@XMJ xmj]# stat linux2     #显示文件详细时间
  File: `linux2'
  Size: 0           Blocks: 0          IO Block: 4096   regular empty file
Device: fc01h/64513d    Inode: 401424      Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2017-07-16 08:44:53.000000000 +0800
Modify: 2017-07-16 08:44:53.000000000 +0800
Change: 2017-07-16 08:55:43.000000000 +0800
[root@XMJ xmj]# 

5.文件权限

r:read读
w:writex:执行
特殊权限位:t|T|s|S
[root@XMJ xmj]# ls -ld /tmp/
drwxrwxrwt. 3 root root 4096 Jul 16 10:20 /tmp/
*文件有执行权限x的前提,必须要有读r权限|root除外,root只要有x权限就可以执行

[关于文件删除的说明]
*除文件看的是文件上层目录的权限,和文件本身权限无关
(删除文件时,删除的是上级文件的block,因此要查看上级目录inode的属性,看其是否有执行权限)

6.目录权限

r:浏览目录及下面文件的权限(不能进到目录里,即无法:cd dir)
w:删除或修改目录内文件的权限(一般是指文件名,需要x权限配合)
x:进入目录的权限
-:无任何权限

7.权限控制

[改变文件访问权限]
(1)数字格式
chmod XXX filenema
r-4|w-2|x-1
-R:递归改变目录及子目录的权限
(2)字符格式
u:user(所属用户)
g:group(所属组)
o:other(其它)
a:all(所有)
*在原有的基础上执行
+:添加X权限
-:键去X权限
=:等于X权限,取消之前所赋有的权限

8.默认权限 umask

[root@XMJ xmj]# umask   #查看系统默认umask
0022
[xmj@XMJ ~]$ umask
0002
[root@XMJ xmj]# 
*在umask之下:
目录起始权限:777
文件起始权限:666
root下:目录默认权限:755|文件644
创建目录时符合:777-umask|但是创建文件时不符合
设置umask:
[root@XMJ xmj]# umask 0444
[root@XMJ xmj]# umask
0444
[root@XMJ xmj]# 

9.改变文件所属关系

chown user.|:group filename
chgrp group filename
userdel username (-r) #删除用户|-r删除家目录
*当用户被删掉时,所属用户和组那块会出现数字
*修改前提是组要存在

[root@XMJ xmj]# ll
total 4
drwxr-xr-x 2 root root 4096 Jul 16 14:42 nihao
[root@XMJ xmj]# chown xmj nihao
[root@XMJ xmj]# ll
total 4
drwxr-xr-x 2 xmj root 4096 Jul 16 14:42 nihao
[root@XMJ xmj]# 

10.锁定关键文件

chattr +|- i filename
lsattr filename     #查看文件是否被锁定
i:锁定
a:允许增加内容
*适当时候也可以讲chattr改名

[root@XMJ xmj]# touch test
[root@XMJ xmj]# ll
total 0
-rw-r--r-- 1 root root 0 Jul 16 14:55 test
[root@XMJ xmj]# chattr +i test 
[root@XMJ xmj]# lsattr test 
----i---------- test
[root@XMJ xmj]# rm -fr test 
rm: cannot remove `test': Operation not permitted
[root@XMJ xmj]# chattr -i test 
[root@XMJ xmj]# lsattr test 
--------------- test
[root@XMJ xmj]# rm -fr test 
[root@XMJ xmj]# ll
total 0
[root@XMJ xmj]# 

—–END—–

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值