ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Linux:用户及组管理初步

Linux:用户及组管理初步

原创 Linux操作系统 作者:果果的空间 时间:2013-08-14 17:43:00 0 删除 编辑
inux系统用户和组管理
添加删除用户和组
useradd 添加用户
passwd
userdel  不会删除主目录
groupadd 添加用户组
gpasswd
groupdel

添加用户后影响到的文件:useradd a1 同时出现a1的组,同时创建/home/a1,并将/etc/skel.*所有隐含文件(文件夹)copy到 /home/a1/下。

1. vi /etc/passwd  用户账号信息文件
   vi /etc/shadow  用户密码文件,man 5 shadow
   vi /etc/group  用户组账号信息文件
  vi /etc/gshadow  组密码文件

mkdir /home/a1
cp -r /etc/skel.*   /home/a1/
chown -R a1.a1 /home/a1  将文件及文件夹的组改到a1下

查看/etc/passwd文件
如:添加a1用户
1.使用:分割
2.创建的账号 uid = 500 , 组ID gid = 501, 500之前的都是系统自动创建的id

查看/etc/shadow文件,如:a1:$1$BsMdkfjkKLJFdfdfd./ :13822:0:99999:7:::
1.用户密码:使用md5加密密码,是单向加密
2.密码之后是一个Unix time,如:13822是一个天数,从1970-1-1号开始计算
3.0代表密码的最短历史,立刻可以更改密码
4.99999代表密码可以使用的最长时间,密码永不过期
5.7代表密码过期后7天后通知你
6.如:a1:$1$BsMdkfjkKLJFdfdfd./ :13822:0:99999:7::: 在最后一个:号前加1,如:a1:$1$BsMdkfjkKLJFdfdfd./ :13822:0:99999:7::1:,表示密码1970-1-1号过期

查看/etc /group
1.显示组,组ID,如:a1:x:501:其他用户
2.Linux只区分两种用户,uid = 0 和 uid != 0, 所以在root:x:0:root 后,加,用户名,加入的用户名并不是管理员,没有root用户权限

问题:
1.创建两个机器A,B,如何在B机器上使用A机器创建的所有用户名和密码?
答:复制4个文件,并且复制home目录下的文件和文件夹
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
scp -r /home/* 192.168.0.254: /home/  scp意思是SSH copy

tail /etc/passwd
tail /etc/shadow

修改密码使用时间
vi /etc/login.defs 下的PASS_MAX_DAYS ,UID等

删除用户
usedel a1
userdel -r a1 删除他的目录
使用usermod 修改 用户的属性,如:主目录等,如果不知道usermod命令去修改密码,怎么办?
1.vi /etc/passwd 来修改密码

将用户a1指定到其他多个组,如:root组,bin组,如何做?,使用-G参数
usermod -G root bin weixl ,使用参数 -G
查看:/etc/group 是否已经更改,修改成功。
id a1  可以看到a1所属的组
注意;usermod -G ttt xinyuqing,此时,a1只在ttt和xinyuqing组里,就不存在上次指定的组里了

groupadd 
groupdel
修改组密码,用来切换当前组的时候使用,将多个用户加到一个组里,使用参数 -M,将weixl,xinyuqing加到root组里,Shell编程中使用
gpasswd -M weixl,xinyuqing  root

 
技巧:如果把passwd,shadow,group,gshadow文件删除,如何恢复?
使用单一模式进入,这四个文件已经备份了
ls /etc/passwd 存在passwd  passwd-,passwd-是passwd的备份,将这个文件复制到相关文件下,就可以恢复了

 
使用authconfig命令可以将口令放回/etc/passwd文件中
etc/passwd文件用“:”分割七段
account     password     UID     GID     GECOS     directory     Shell
root          x                   0          0         root     /root          /bin/bash
sync          x                   5          5         sync     /sbin          /bin/sync
account:用户命令账号
Passwd:用户口令,安全性考虑用“X”代替该字段,密码保存在shadow文件中
UID:用户号
GID:用户所属的组号
GECOS:可选的用户信息说明
Directory:用户的主目录
Shell:用户所使用的Shell,乳沟该字段为空,则使用/bin/sh

 
当前系统当中登录的用户:
users 显示当前系统登录的用户,只显示列表
who  显示当前登录在本机的用户及来源,tty1,第一个控制台,pts/0 虚拟控制台,就是一个shell
w 当前登录本机的用户及运行的程序,包括 远程登录的用户,
write 给当前联机的用户发送消息
wall 给所有登录在本机的用户广播消息
last 查看每个用户的登录日志,时间,来源等
lastlog 查看每个用户最后登录的情况
finger 查看用户信息,每一个用户登录的邮件信息等

 
使用who显示:
tty1第一个用户名
pts/0 指打开的控制台,终端
echo AAAAAAAAAA > dev/pts/2
echo AAAAAAAABBBB > dev/pst/1

 
w 远程登录的用户,如 远程登录用户
ssh 192.168.0.11 
w
杀掉远程登录的进程,如:pts/3
skill -9 pts/3

write 给当前联机的用户发送消息,write有一个开关,mesy(message),修改为y
mesg
mesg y
write root pts/2
jaadfafadf
adfdfadaf
打开pst/2终端,就可以看到输入的内容了

 
wall所有人后台前台登录的用户都能看到内容
wall aaaaaaaaaaaaaaaaaaaaaaaaaaaaa

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29056818/viewspace-768511/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2013-07-18

  • 博文量
    60
  • 访问量
    117451