Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103653647
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-29 13:22:25

 

usermod 不仅能改用户的SHELL类型,所归属的用户组,也能改用户密码的有效期,还能改登录名。

usermod [-u uid [-o]] [-g group] [-G group,...]
                 [-d 主目录 [-m]] [-s shell] [-c 注释] [-l 新名称]
                 [-f 失效日] [-e 过期日] [-p 密码] [-L|-U] 用户名
-c comment
       更新用户帐号password档中的注解栏,一般是使用chfn(1)来修改。
-d home_dir
   更新用户新的登入目录。如果给定-m选项,用户旧目录会搬到新的目录去,如旧目录不存在则建个新的。
-e expire_date 加上用户帐号停止日期。日期格式为MM/DD/YY.
-f inactive_days 帐号过期几日后永久停权。当值为0时帐号则立刻被停权。而当值为-1时则关闭此功能。预设值为-1
-g initial_group 更新用户新的起始登入用户组。用户组名须已存在。用户组ID必须参照既有的的用户组。用户组ID预设值为1
-G group,[...] 定义用户为一堆groups的成员。每个用户组使用","区格开来,不可以夹杂空白字元。用户组名同-g选项的限制。如果用户现在的用户组不再此列,则将用户由该用户组中移除。
-l login_name 变更用户login时的名称为login_name。其它不变。特别是,用户目录名应该也会跟着更动成新的登入名。
-s shell 指定新登入shell。如此栏留白,系统将选用系统预设shell
-u uid用户ID值。必须为唯一的ID值,除非用-o选项。数字不可为负值。预设为最小不得小于/etc/login.defs中定义的UID_MIN值。0UID_MIN值之间是传统上保留给系统帐号使用。用户目录树下所有的档案目录其userID会自动改变。放在用户目录外的档案则要自行手动更动。
警告:usermod不允许你改变正在线上的用户帐号名称。当usermod用来改变userID,必须确认这名user没在电脑上执行任何程序。你需手动更改用户的crontab档。也需手动更改用户的at工作档。采用NISserver须在server上更动相关的NIS设定。

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

4、添加用户组命令groupadd

语法格式:

groupadd [-g gid [-o]] [-r] [-f] 组名

-g 后接GID值,除非使用-o参数不然该值必须是唯一,不可相同,数值不可为负,预设值以/etc/login.defs为准;
-r  此参数是用来建立系统帐号的GID会比定义在系统档文件上/etc/login.defs GID_MIN来的小。注意useradd此用法所建立的帐号不会建立使用者目录,也不会纪录在/etc/login.defs.的定义值。如果你想要有使用者目录须额外指定-m参数来建立系统帐号,它会自动帮你选定一个小于的GID_MIN的值,不需要再加上-g参数。
-f This is force flag.新增一个已经存在的用户组帐号,系统会出现错误讯息然后结束groupadd

5groupdel的用法;

groupdel 是用来删除用户组的;

语法格式:groupdel 用户组

6passwd命令;

我们已经学会如何添加用户了,所以我们还要学习设置或修改用户的密码;passwd命令的用法也很多,我们只选如下的几个参数加以说明;想了解更多,请参考man passwdpasswd --help


passwd [OPTION...]

passwd 作为普通用户和超级权限用户都可以运行,但作为普通用户只能更改自己的用户密码,但前提是没有被root用户锁定;如果root用户运行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 用户名 ,注意要以root用户的权限来创建;

passwd 几个比较重要的参数

[root@localhost]# passwd --help
Usage: passwd [OPTION...]
   -k, --keep-tokens keep non-expired authentication tokens
                          注:保留即将过期的用户在期满后能仍能使用;
   -d, --delete delete the password for the named account (root only)
                          注:删除用户密码,仅能以root权限操作;
   -l, --lock lock the named account (root only)
                          注:锁住用户无权更改其密码,仅能通过root权限操作;
   -u, --unlock unlock the named account (root only)
                          注:解除锁定;
   -f, --force force operation
                          注:强制操作;仅root权限才能操作;
   -x, --maximum=DAYS maximum password lifetime (root only)

注:两次密码修正的最大天数,后面接数字;仅能root权限操作;
   -n, --minimum=DAYS minimum password lifetime (root only)

注:两次密码修改的最小天数,后面接数字,仅能root权限操作;
   -w, --warning=DAYS number of days warning users receives before

注:在距多少天提醒用户修改密码;仅能root权限操作;
                           password expiration (root only)
   -i, --inactive=DAYS number of days after password expiration when an

注:在密码过期后多少天,用户被禁掉,仅能以root操作;
                           account becomes disabled (root only)
   -S, --status report password status on the named account (root only)

注:查询用户的密码状态,仅能root用户操作;
                            --stdin read new tokens from stdin (root only)

注意: 当我们清除一个用户的密码时,登录时就无需密码;这一点要加以注意;

7chage 修改用户密码有效期限的命令;

chage 用语法格式:

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

8chfn 修改用户信息工具;

chfn 这个工具主要是用来改用户的全名,办公室地址,电话之类的;用法如下:

chfn [ -f full-name ] [ -o office ] [ -p office-phone ] [ -h home-phone ] [ -u ] [ -v ] [ username ]

[root@localhost]# chfn linux 注:更改用户linux的信息;
Changing finger information for linux.
Name []: jekay Linux 注:用户全名jekay Linux ,随便写一个就行;
Office []: benet
Office Phone []: 44444444
Home Phone []: 88888888
Finger information changed. 注:更改完成;

9chsh 改变用户的SHELL类型;

[root@localhost]# chsh --help
Usage: chsh [ -s shell ] [ --list-shells ] [ --help ] [ --version ] [ username ]

如果chsh 不加任何参数及用户名的情况下,默认为更改当前操作用户的SHELL类型;

举例说明:

[root@localhost]# chsh --list-shells 注:列出当前系统中所有的SHELL
/bin/sh
/bin/bash
/sbin/nologin 注:这个是不允许用户登录系统所用,是极为有用的;您可以通过查看/etc/passwd 中看哪些用户是nologin
/bin/ksh
/bin/tcsh
/bin/csh
/bin/zsh
[root@localhost]# chsh -s /bin/ksh linux 注:更改linux所用的shellksh
Changing shell for linux.
Shell changed. 注:更改完成;
 
阅读(206) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~