linux组的管理及权限

用户及组

#useradd gangyao这个命令一般会做以下动作
#vi /etc/passwd,保存用户信息的
#vi /etc/shadow,保存密码信息的
#vi /etc/group,保存组信息的
#vi /etc/gshadow,保存组密码信息的
#mkdir /home/gangyao #cp -r /etc/skel/.* /home/gangyao #chown -R gangyao.gangyao /home/gangyao递归向下赋予gangyao下文件夹权限,-R递归向下继承
#passwd gangyao 改密码
#userdel gangyao 删除账号
#groupadd
#gpasswd
#groupdel

#vi /etc/passwd
gangyao:x:501:501::/home/gangyao:/bin/bash
linux一般是以:为分隔符的第一个:和第二个:中间的x表示这个账号有密码因启有了shadow所以保存在shadow里面,如果把x去掉,那么这个账号登陆就不需要密码
第一个501表示用户的uid号(相当于身体证号一样)第二个501表示这个账号所属组的gid编号(linxu的uid和gid默认都是从500开始,500之前的系统设置的账号组)第三个:和第四个:中间没有东西是说明这个账号的注释没有写,所以为穿,如果写了是yaogang,那么就会是501:yaogang:
/home/gangyao是指这个账号主目录,最后/bin/bash说明这个账号登陆时shell文件,/bin/下面有很多shell,有rsh等 ,默认是时/bin/bash

#vi /etc/shadow
gangyao:$1$KUMSIOWJTLISGJZ&*LSIOJFS/:15683:0:99999:7:::
第一个:和第二个:之间是密码MD5算法的,15683(linux time)是linux诞生之日1970年1月1日到建立这个账号日期之间的天数
0表示密码的最短历史,即当即就可能改,如果是1就要隔一天后才能更改.99999指密码存在最长历史,如果99999换成30,那就是说这个密码在30(15683+30)天后过期.7表示过期前7天通知。
最后两个::中间夹的也是linux time,如果是:1:表示1970年1月1号就禁用了,指禁用天数

#vi /etc/group 记录组和组id
gangyao:x:501:
最后一个:后面就是这个组的成员,要加哪个账号进去,直接在:后面加就行了gangyao:x:501:todd,zhuboya
如果把gangyao加到root组
root:x:0:root,gangyao
那么gangyao这个账号也不是管理员,因为linux里面只区分两个账号,一个是uid为0的为管理员。一个是uid不为0的都为普通账号。 
gangyao的uid为500,所以不为管理员,只能访问的权限更大些,但不为管理员

#vi /etc/gshadow 用的比较少,保存组密码的,基本很少用。但是我们用户和组必须要有的一个文件,没有不行的。

问题:要想把linux里面一台机器的用户,复制到另一台机器上去,怎么办?
即把四个文件(/etc/passwd,/etc/passwd,/etc/group,/etc/gshadow)先复制过去#scp -r /home/* 192.168.0.2:/home/
如果把新增账号,把与udi和gid(密码策略信息)相关的默认模板更改生效,改文件#vi /etc/login.defs
#userdel gangyao 只是删除账号,但主目录和邮件没有删除,要想彻底删除加-r
#userdel -r gangyao
把用户属性
#usermod 回车有很多参数,包括改密码,uid,gid 主目录等等
如果把gangyao(单个)账号加入到很多个组root组bin组todd组
#usermode -G root,bin,todd gangyao 这个命令是指定到某个组,你再用这个命令指定到其它不同的组(zhu,liu)的话,先前这个组这不存在,只属于(zhu,liu),要想存在就要加上这三个组root,bin,todd,zhu,liu

如果把多个用户加入到一个root组
#gpasswd -M gangyao,bin.todd root
看shadow属性,默认是5 #man 5 shadow
#mesg y 打开消息
#write root pts/2
sfsfsf
#wall sfsfsfslfjslfjslfjls 向所有用的用户发信息
#last 看谁登陆了你的系统,什么时候登陆的。用户登陆日志
#lastlog 查看每个用户最后登陆的民情况
#finger 查看用户信息,用法#finger gangyao

权限

a所有 u用户 g组 o其它  w写 x执行 r执行 +加权限 -减权限

#chmod a+x testdir 即给所有人执行权限

#chown gangyao.ttt b
#ls -l /tmp/b
-rw-r--r-- 2 gangyao ttt   0  Dec 10 20:03 b
#chown -R gangyao.ttt /tmp/ 把这个文件夹及以下的文件的拥有者和组都改掉(.可换成:效果一样)
#chown .ttt /tmp/b  单独改拥有组
#chgrp ttt /tmp/b 同上一样效果,改拥有组

r-w-x 对应数字 4-2-1

#vi /etc/login.defs 改密码策略

你可能感兴趣的:(linux组的管理及权限)