您的位置:首页 > 运维架构 > Linux

浅谈linux用户和组

2014-02-27 00:15 148 查看
在linux中,用户分为两大类,管理员(root用户)和普通用户。root用户拥有系统的所有权限,而普通用户只有一些默认的基本权限以及管理员赋予他的相关权限。

因为计算机识别数字的能力比用户名更方便,所以在linux中,每个用户都有自己的uid,也就是用户id,系统实际是以uid来区分每个用户,那root用户的uid就是0。系统默认以1-499做为系统用户的uid号,系统用户一般是不能登陆的,uid大于等于500的就是可登陆用户id。
同时,为了权限的管理方便,引入了用户属组的概念,每个用户还拥有自己的属组。同样,属组也有相应的gid。root用户属于root组,而root组的gid也是0。那属组对目录和文件拥有什么权限,属于这个属组的用户也会有相应的权限。如果root组对于/etc/fstab文件拥有读取权限,那属于root组的管理员用户root也有相应权限,如果另外一个普通用户zz也属于root组,那他也拥有读取文件的权限。
从用户角度而言,属组分为私有组和额外组,系统创建用户的时候会默认创建一个和他同名的私有组,好像root用户和root组,zz用户会自动创建zz组;额外组就是同一个用户可以同时拥有除私有组之外的其他组,好像zz用户也可以属于root组。
说到权限,在linux中,我们拥有读取,写入和可执行三种权限。
对于文件来说,读取权限也就是read 权限,通常用r表示,表示可以查看文件的内容。
写入权限,write,通常是w表示,表示可以修改文件的内容,
可执行权限,excute,通常用x表示,那如果文件是一个二进制命令,或者相应的脚本程序,就要拥有可执行权限才可以有权限运行此命令或者叫脚本。
对于目录来说,读取权限表示可以对此目录执行ls命令查看目录,但不可以用cd进入目录当中。
写入权限表示可以进入目录中创建文件,相当于windows的进入目录中新建文件或者目录。
那可执行权限表示可以对目录执行ls -l命令查看相关目录信息,可以用cd命令进入到目录中去,相当于windows下双击目录。
下面说说linux中用户和组相关的4个配置文件,每个文件都是:分号分开的几个域,每个域代表不用的意思。
/etc/passwd: 用户的属性信息; /etc/shadow: 影子口令 /etc/group: 组的属性信息; /etc/gshadow: 组的密码;
其中/etc/passwd 文件里面是每一行这样的格式,以:分号分开成7个域,每个域代表不同的意义。从第一列到最后一列依次是
用户名:密码占位符:UID:GID:注释信息:家目录:默认shell
如下图,里面有root bin daemon adm几个用户的几行数据
[root@www ~]# head -n 4 /etc/passwd
root:x:0:0:root:/root:/bin/bash<==等一下做为底下说明用
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
第一列是用户名
密码占位符 通常是x表示,因为密码是存放在shadow文件,而不是这里
注释信息指的是对用户的相应说明
在linux中为每个用户创建一个属于自己的用户目录,也就是家目录
shell是linux中你用户登录以及和系统交互使用的界面,好像windows的桌面一样。默认shell就是默认的界面,一般默认可登陆用户shell是bash 那图中是系统用户,默认shell就是/sbin/nologin 这个代表是不能登陆的文件,nologin
/etc/shadow

[root@www ~]# head -n 4 /etc/shadow
root:$1$/30QpE5e$y9N/D0bh6rAACBEz.hqo00:14126:0:99999:7:::<==底下说明用
bin:*:14126:0:99999:7:::
daemon:*:14126:0:99999:7:::
adm:*:14126:0:99999:7:::
从第一列到最后一列一次是
用户名:加密密码:最近一次密码修改时间(从1970.1.1开始经过的天数):密码最短使用期限:密码最长使用期限:密码到期警告天数:账号的非活动天数:账号过期期限:预留
用户名很简单,第二列是加密密码,那root用户就能看到长串的加密密码,其他系统用户没有密码的就是用的占位符。
最近一次密码修改时间 指的是从1970年1月1日计算机诞生第一天开始到最近修改密码的那天经过的天数
密码最短使用期限 指的是最短要经过几天才可以修改密码 默认是0 ,代表随时可以修改密码
密码使用最长期限 指的是经过多少天一定要修改密码 默认是99999,代表用不过期
密码到期警告期限 指的是再过几天就到了密码使用最长期限,要修改密码,提前通知用户
账号的非活动天数 指的是到了密码使用的最长期限,再过这个非活动天数不修改密码,那密码就过期不用了,用户也就不能登陆了。
账号过期期限 指从1970年1月1日开始后的天数后,密码过期。
保留域是没有意义的域,暂时保留,以后可能用到。
/etc/group

[root@www ~]# head -n 4 /etc/group
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
从第一列到最后一列依次是
组 名:密码占位符:GID:以此组为额外组的用户列表,用户间用逗号分隔
密码占位符和用户一样,默认以x代替,因为真实 密码保存在gshadow文件里
第4个域就是各个额外组,可以用逗号隔开,多个额外组
/etc/gshadow

[root@www ~]# head -n 4 /etc/gshadow
root:::root
bin:::root,bin,daemon
daemon:::root,bin,daemon
sys:::root,bin,adm
从第一列到最后一列依次是
组名:密码:组管理员账号:组中的用户成员
第一个域组名 root bin daemon sys
第二个域系统组默认密码为空
第三个域系统组没有设定组管理员,默认也为空
像bin组 最后一个域root bin daemon都是bin组中的成员

本文出自 “随笔” 博客,请务必保留此出处http://zilingzhan.blog.51cto.com/1166988/1364018
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: