Linux用户管理

简介:

一、与用户管理相关的配置文件;

1、/etc/passwd有关账户的信息,包括UID、GID、用户名、用户目录及用户SHELL;
   /etc/shadow包含用户密码
   /etc/groups用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组。
/etc/gshadow是/etc/group的加密资讯文件,比如用户组(Group)管理密码就是存放在这个文件。

2、超级权限控制 sudo 的配置文件/etc/sudoers

beinan  ALL=(root)    /bin/chown, /bin/chmod

如果我们把第一个实例中的那行去掉,换成这行;表示的是beinan 可以在任何可能出现的主机名的主机中,可以切换到root下执行 /bin/chown ,可以切换到任何用户招执行/bin/chmod 命令,通过sudo -l 来查看beinan 在这台主机上允许和禁止运行的命令;

beinan  ALL=(root)   NOPASSWD:    /bin/chown,/bin/chmod

如果换成这个例子呢?表示的是beinan 可以在任何可能出现的主机名的主机中,可以切换到root下执行 /bin/chown ,不需要输入beinan用户的密码;并且可以切换到任何用户下执行/bin/chmod 命令,但执行chmod时需要beinan输入自己的密码;通过sudo -l 来查看beinan 在这台主机上允许和禁止运行的命令;

3、添加用户规则文件 /etc/login.defs 和 /etc/default/useradd

二、添加用户工具和方法

1、添加用户工具有useradd和adduser ,这两个工具所达到的目的都是一样的。

useradd 不加参数选项时,后面直接跟所添加的用户名时,系统时读取添加用户配置文件/etc/login.defs和/etc/default/useradd文件,然后读取/etc/login.defs和/etc/default/useradd中所定义的规则添加用户;并向/etc/passwd和/etc/groups文件添加用户和用户组记录;当然/etc/passwd和/etc/groups的加密资讯文件也同步生成记录;同时发生的还有系统会自动在/etc/add/default中所约定的目录中建用户的家目录,并复制/etc/skel中的文件(包括隐藏文件)到新用户的家目录中;

如:useradd beinanlinux 通过more /etc/passwd | grep beinanlinux查询是否添加成功
useradd  -c ChinaCpu  -d /opt/longcpu   -G linuxsir,root,beinan -s /bin/tcsh  longcpu 添加用户longcpu ,真实名是ChinaCpu ,家目录设置在 /opt/longcpu ,是linuxsir,root,beinan 用户组成员, SHELL是tcsh 
 useradd  -e 11/04/2005 cooler  注:添加用户cooler,并设置其有效期为2005年11月04日;

2、还可以通过修改/etc/passwd /etc/groups的办法来实现。

在/etc/passwd 中,每一行都表示的是一个用户的信息;一行有7个段位;每个段位用:号分割,比如下面是我的系统中的/etc/passwd 的两行;

beinan:x:500:500:beinan sun:/home/beinan:/bin/bash
linuxsir:x:505:502:linuxsir open,linuxsir office,13898667715:/home/linuxsir:/bin/bash
beinan:x:500:500:beinan sun:/home/beinan:/bin/bash
linuxsir:x:501:502::/home/linuxsir:/bin/bash

第一字段:用户名(也被称为登录名);在上面的例子中,我们看到这两个用户的用户名分别是 beinan 和linuxsir;
第二字段:口令;在例子中我们看到的是一个x,其实密码已被映射到/etc/shadow 文件中;
第三字段:UID ;请参看本文的UID的解说;
第四字段:GID;请参看本文的GID的解说;
第五字段:用户名全称,这是可选的,可以不设置,在beinan这个用户中,用户的全称是beinan sun ;而linuxsir 这个用户是没有设置全称;
第六字段:用户的家目录所在位置;beinan 这个用户是/home/beinan ,而linuxsir 这个用户是/home/linuxsir ;
第七字段:用户所用SHELL 的类型,beinan和linuxsir 都用的是 bash ;所以设置为/bin/bash ;

3、添加用户组命令 groupadd

  groupadd -g 666 google

三、passwd 设置或修改用户密码;

1、passwd 简单说明

passwd 命令后面不接任何参数或用户名,则表示修改当前用户的密码;请看下面的例子;

[root@localhost ~]# passwd   注:没有加任何用户,我是用root用户来执行的passwd 表示修改root用户的密码;下面也有提示;
Changing password for user root.
New UNIX password:  注:请输入新密码;
Retype new UNIX password:  注:验证新密码;
passwd: all authentication tokens updated successfully.  注:修改root密码成功;

如果是普通用户执行passwd 只能修改自己的密码;

如果新建用户后,要为新用户创建密码,则用 passwd 用户名 ,注意要以root用户的权限来创建;

[root@localhost ~]# passwd beinan  注:更改或创建beinan用户的密码;
Changing password for user beinan.
New UNIX password:  注:请输入新密码;
Retype new UNIX password:  注:再输入一次;
passwd: all authentication tokens updated successfully.  注:成功;

2、chage 修改用户密码有效期限的命令

chage [-l] [-m 最小天数] [-M 最大天数] [-W 警告] [-I 失效日] [-E 过期日] [-d 最后日] 用户

四、删除用户和用户组的工具, userdel和 groupdel 介绍;

1、userdel

userdel很简单,只有一个参数可选 -r ;如果加参数-r ,表示在删除用户的同时,一并把用户的家目录及本地邮件存储的目录或文件也一同删除;比如我们现在有两个用户bnnb和lanhaitun,其家目录都位于/home目录中,现在我们来删除这两个用户;


[root@localhost ~]# userdel bnnb  注:删除用户bnnb,但不删除其家目录及文件;
[root@localhost ~]# ls -ld /home/bnnb  注:查看其家目录是否存在;
drwxr-xr-x  14 501 501 4096  8月 29 16:33 /home/bnnb    注:存在;

[root@localhost ~]# ls -ld /home/lanhaitun   注:查看lanhaitun家目录是否存在;
drwx------  4 lanhaitun lanhaitun 4096 11月  5 14:50 /home/lanhaitun   注:存在;

[root@localhost ~]# userdel -r  lanhaitun  注:删除用户lanhaitun,其家目录及文件一并删除;

[root@localhost ~]# ls -ld /home/lanhaitun  注:查看是否在删除lanhaitun 用户的同时,也一并把其家目录和文件一同删除;
ls: /home/lanhaitun: 没有那个文件或目录  注:已经删除;

2、groupdel的用法:groupdel 用户组

五、修改用户的工具介绍;

1、chfn 修改用户信息工具

chfn 用户名


[root@localhost ~]# chfn beinanlinux  注:更改用户beinanlinux的信息;
Changing finger information for beinanlinux. 
Name []: BeiNan.Linux  注:用户全名BeiNan.Linux ,随便写一个就行;
Office []: ChinaDL
Office Phone []: 66666666
Home Phone []: 99999999

Finger information changed.  注:更改完成;通过finger beinanlinux查看修改结果

2、chsh 改变用户的SHELL类型;

finger beinanlinux |grep Shell  注:查看用户beinanlinux 所用的SHELL类型;
chsh -s /bin/ksh beinanlinux  注:更改beinanlinux所用的shell 为ksh

3、usermod 用户修改工具(极其强大)

usermod 不仅能改用户的SHELL类型,所归属的用户组,也能改用户密码的有效期,还能改登录名。usermod 如此看来就是能做到用户帐号大转移;比如我把用户A改为新用户B;

警告: usermod 最好不要用它来改用户的密码,因为他在/etc/shadow中显示的是明口令;修改用户的口令最好用passwd ;

4、userinfo 图形介面的修改工具;

userinfo 系统普通用户都能调用,但都是修改当前操作用户的;还是点鼠标完成吧,多点几下就OK了。

5、id工具 查看用户、用户所归属的用户组、UID 和GID 的查看
6、finger 用户名、电话、家目录、登录SHELL类型、真实姓名、空闲时间等的查询
7、goups 查询用户组
8、su切换到超级用户:su (su - root)
     切换到普通用户:su - feisky


本文转自feisky博客园博客,原文链接:http://www.cnblogs.com/feisky/archive/2009/11/22/1607931.html,如需转载请自行联系原作者


相关文章
|
26天前
|
存储 Linux 数据安全/隐私保护
Linux文件权限及用户管理
Linux文件权限及用户管理
14 0
|
3月前
|
Linux Shell 数据安全/隐私保护
Linux用户管理
简单说一下 Linux的用户管理
61 1
|
4月前
|
Linux 程序员 Shell
Linux编辑器,开机重启,用户注销,用户管理 常用命令
Linux编辑器,开机重启,用户注销,用户管理 常用命令
96 0
|
4月前
|
Linux Go 数据安全/隐私保护
linux常用命令手册 用户管理useradd 文件权限管理chmod 搜索管理find grep
linux常用命令手册 用户管理useradd 文件权限管理chmod 搜索管理find grep
63 2
|
7月前
|
安全 Linux Shell
Linux用户管理指南:创建、删除、权限、最佳实践,全面掌握用户管理技巧
Linux用户管理指南:创建、删除、权限、最佳实践,全面掌握用户管理技巧
545 0
|
4月前
|
大数据 Linux 数据安全/隐私保护
linux语法复习-01天-用户管理-关机和重启
linux语法复习-01天-用户管理-关机和重启
|
1月前
|
缓存 Unix Linux
Linux 常用命令汇总(四):信息显示 & 用户管理
hostname是一个 Unix/Linux 命令行工具,用于显示或设置系统的主机名dmesg是一个在 Unix-like 系统中常用的命令行工具,用于显示内核缓冲区的消息uptime是一个在 Unix 和类 Unix 系统(如 Linux)中常用的命令,用于显示系统已经运行了多长时间,以及当前有多少用户登录和系统负载的平均值stat是一个在 Unix 和类 Unix 系统(如 Linux)中常用的命令行工具,用于显示文件或文件系统的状态信息du。
21 4
|
3月前
|
网络协议 Linux 网络安全
Linux服务器配置指南:网络、用户管理、共享服务及DNS配置详解
Linux服务器配置指南:网络、用户管理、共享服务及DNS配置详解
142 0
|
3月前
|
Linux 数据安全/隐私保护
Linux的用户管理与文件权限
Linux的用户管理与文件权限
|
Linux Shell 数据安全/隐私保护
Linux关机重启以及用户(组)管理
关机&重启命令&用户登录注销&用户管理&用户组&用户和组相关的文件
22 0