在Unix / Linux发行版,命令“usermod命令 ”是用来修改或通过命令行更改已创建用户帐户的任何属性。 命令'usermod命令 '类似于'useradd的 '或' 的adduser',但授予现有的用户登录。
15 usermod命令示例
命令'useradd的 '或' 的adduser“用于在Linux系统中创建用户帐户。 要了解有关如何创建系统用户的更多信息,请参阅我们的完整指南:
创建用户帐户后,在某些情况下,我们需要更改现有用户的属性,例如更改用户的主目录,登录名,登录shell,密码到期日等,在这种情况下使用“usermod”命令。
当我们在终端执行'usermod'命令时,使用和影响以下文件。
- / etc / passwd文件 -用户帐户信息。
- / etc / shadow中 -安全帐户信息。
- / etc / group中 -组帐户信息。
- 在/ etc / gshadow中 -安全组帐户信息。
- /etc/login.defs的 -影子密码套件配置..
命令的基本语法是:
usermod [options] username
要求
- 我们必须有现有的用户帐户才能执行usermod命令。
- 只有超级用户(root)允许执行usermod命令。
- usermod命令可以在任何Linux发行版上执行。
- 必须有usermod命令的基本知识与选项
Usermod的选项
在“usermod命令 ”命令很简单,有很多选项用来更改现有用户。 让我们看看如何使用usermod命令通过修改一些现有的用户在Linux盒中的帮助下面的选项。
- C =我们可以为useraccount添加注释字段。
- -d =要修改目录的任何现有的用户帐户。
- -e =使用此选项,我们可以在特定时期的帐户到期。
- -g =更改主组用户。
- -G =添加补充组。
- -a =要添加该组的任何一个次要组。
- -l =从youcl更改登录名称youcl_admin。
- -L =锁定用户帐户。 这将锁定密码,所以我们不能使用该帐户。
- -m =从现有的家目录到新的目录移动主目录的内容。
- -p =要为新密码使用未加密的口令。 (不是安全的)。
- -s =创建新帐户指定的外壳。
- -u =可用于为999 0之间的用户帐户分配UID。
- -U =要解锁的用户帐户。 这将删除密码锁,并允许我们使用用户帐户。
在这篇文章中,我们将看到“15 usermod命令命令 '用自己的实际例子和使用在Linux中,这将有助于您学习和使用这些选项来增强你的命令行技能。
1.向用户帐户添加信息
在'-c'选项用来设置有关用户帐号的一个简短的评论(信息)。 例如,让我们添加上“youcl'用户信息,使用下面的命令。
# usermod -c "This is youcl" youcl
添加的用户信息后,同样的评论可以在/ etc / passwd文件中查看。
# grep -E --color 'youcl' /etc/passwd youcl:x:500:500:This is youcl:/home/youcl:/bin/sh
向用户添加信息
2.更改用户主目录
在上面的步骤中,我们可以看到,我们的主目录是在/ home / youcl /,如果我们需要将其更改为我们可以用-d选项与usermod命令更改其他目录。
例如,我想改变我们的主目录到/ var / www /,脚本但改变之前,我们先检查用户的当前主目录,使用以下命令。
# grep -E --color '/home/youcl' /etc/passwd youcl:x:500:500:This is youcl:/home/youcl:/bin/sh
现在,从/家/ youcl变化home目录到/ var / WWW /和改变后确认家里主任。
# usermod -d /var/www/ youcl # grep -E --color '/var/www/' /etc/passwd youcl:x:500:500:This is youcl:/var/www:/bin/sh
更改用户主目录
3.设置用户帐户到期日期
选项'-e'是用来设置到期日与日期格式YYYY-MM-DD的用户帐户。 之前,设置一个用户的到期日期,让我们先检查采用“ 恰克 ”(更改用户密码过期信息)命令将当前账户到期的状态。
# chage -l youcl Last password change : Nov 02, 2014 Password expires : never Password inactive : never Account expires : Dec 01, 2014 Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7
一个“youcl”用户到期状态为2014年12月1日 ,让我们用“usermod命令-e'选项将其更改为2014年11月1日 ,确认截止日期与” 恰克 “命令。
# usermod -e 2014-11-01 youcl # chage -l youcl Last password change : Nov 02, 2014 Password expires : never Password inactive : never Account expires : Nov 01, 2014 Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7
设置用户帐户到期日期
4.更改用户主组
要设置或更改用户主组,我们使用选项“-g”与usermod命令。 之前,更改用户的主组,首先一定要检查当前组为用户youcl_test。
# id youcl_test uid=501(youcl_test) gid=502(youcl_test) groups=502(youcl_test)
现在,设置巴宾组作为主要组用户youcl_test并确认更改。
# usermod -g babin youcl_test # id youcl_test uid=501(youcl_test) gid=502(babin) groups=502(youcl_test)
更改用户主组
5.向现有用户添加组
如果你想添加一个名为“youcl_test0”新组“youcl'用户,可以使用选项'-G'与usermod命令,如下图所示。
# usermod -G youcl_test0 youcl # id youcl
向用户添加组
注意 :要小心,同时增加了一个新的群体单独“-G”选项中的现有用户,将删除该用户所属的所有现有组。 因此,随时添加的“-a”(附加)以“-G”选项,添加或追加新组。
6.向用户添加补充和主组
如果您需要将用户添加到补充组中的任何一个,你可以使用选项“-a”和“-G”。 例如,在这里我们要添加一个用户帐户youcl_test0与车轮的用户。
# usermod -a -G wheel youcl_test0 # id youcl_test0
因此,用户youcl_test0保持其主要组,并在中学组( 轮 )。 这将使我的正常用户帐户在Linux框中执行任何root权限命令。
eg : sudo service httpd restart
向用户添加多个组
7.更改用户登录名
要更改任何现有用户的登录名,我们可以用“-L”(新登录)选项。 在下面的例子中,我们更改登录名称youcl到youcl_admin。 因此,用户名youcl已被重命名使用新的名称youcl_admin。
# usermod -l youcl_admin youcl
现在检查youcl用户,因为我们已经改变了它youcl_admin它不会出现。
# id youcl
检查youcl_admin帐户将与相同的UID并与现有的东西,我们之前添加组那里。
# id youcl_admin
更改用户登录名
8锁定用户帐户
锁定任何系统用户账号,我们可以用“-L”(锁定)选项,帐户被锁定后,我们不能使用密码登录,您将看到一个!在/ etc / shadow文件中的加密密码前加入,表示禁用密码。
# usermod -L babin
检查锁定的帐户。
# grep -E --color 'babin' cat /etc/shadow
锁定用户帐户
9.解锁用户帐户
在'-U'选项用于解锁任何锁定的用户,这将加密的密码之前删除!
# grep -E --color 'babin' /etc/shadow # usermod -U babin
解锁后验证用户。
# grep -E --color 'babin' /etc/shadow
解锁用户帐户
10.将用户主目录移动到新位置
比方说,你已经一个用户帐户为“ 小指 ”与主目录“/家/小指 ”,要移动到新的位置说' 在/ var /小指 “。 你可以使用选项“-d”和“-m”从目前的主目录中的现有用户文件移动到新的主目录。
检查帐户和它的当前主目录。
# grep -E --color 'pinky' /etc/passwd
然后列出用户pinky拥有的文件。
# ls -l /home/pinky/
现在,我们必须摆脱的/ home /小指到/ var /小指的主目录。
# usermod -d /var/pinky/ -m pinky
接下来,验证目录更改。
# grep -E --color 'pinky' /etc/passwd
检查下一个'/ home /小指 “的文件。 在这里,我们使用-m选项,这样就不会有文件移动的文件。 小指用户文件现在将在/ var /小指 。
# ls -l /home/pinky/ # ls -l /var/pinky/
移动用户主目录
11.为用户创建未加密的密码
要创建一个未加密的口令,我们使用选项“-p”(密码)。 出于演示的目的,我设置一个新密码说'redha T'上的用户小指 。
# usermod -p redhat pinky
设置密码后,现在检查影子文件,以查看其是加密格式还是未加密。
# grep -E --color 'pinky' /etc/shadow
创建未加密的用户密码
注意 :你看到上面的图片中,密码是每个人都清晰可见。 所以,这个选项不推荐使用,因为密码会对所有用户可见。
12.更改用户Shell
用户登录shell可以更改或用户创建与useradd命令时定义,或者使用选项“usermod命令 ”命令“-S”(壳)的变化。 例如,用户的巴宾 '有默认的/斌/ bash shell 的 ,现在我想将其更改为/ bin / sh的 。
# grep -E --color 'babin' /etc/passwd # usermod -s /bin/sh babin
更改用户shell后,使用以下命令验证用户shell。
# grep -E --color 'babin' /etc/passwd
更改用户登录Shell
13.更改用户ID(UID)
在下面的例子中,你可以看到我的用户帐户“ 巴宾 ”持有502 UID,现在我想将其更改为888作为我的UID。 我们可以0之间分配的UID为999。
# grep -E --color 'babin' /etc/passwd OR # id babin
现在,让我们使用“-u”(UID)选项更改为用户巴宾的UID和验证的变化。
# usermod -u 888 babin # id babin
更改用户UID
14.使用多个选项修改用户帐户
在这里,我们有一个用户接口 ,现在我想一次使用的所有选项中的一个单独的命令,因为我们上面讨论修改他的home目录,外壳,有效期,标签,UID和组。
用户杰克有默认的主目录/ home /插孔 ,现在我想将其更改到/ var / www / html等 ,并指定他的壳为bash中 ,设定到期日为2014年12月10日,加入新的标签为这是千斤顶 ,改UID到555,他将成为苹果集团的成员。
让我们看看如何修改杰克帐户使用多个选项现在。
# usermod -d /var/www/html/ -s /bin/bash -e 2014-12-10 -c "This is Jack" -u 555 -aG apple jack
然后检查UID和主目录的更改。
# grep -E --color 'jack' /etc/passwd
帐户到期检查。
# chage -l jack
检查所有插孔已成为的组。
# grep -E --color 'jack' /etc/group
在usermod中使用多个选项
15.更改用户的UID和GID
我们可以更改当前用户的UID和GID。 要更改为新的GID,我们需要一个现有的组。 这里已经有一个命名为橙色的777 GID帐户。
现在我的杰克用户账号要与666 UID和Orange的GID(777)进行分配。
在修改之前检查当前的UID和GID。
# id jack
修改UID和GID。
# usermod -u 666 -g 777 jack
检查更改。
# id jack
更改用户UID和GID
结论
这里我们已经看到了如何以非常详细的方式使用usermod命令及其选项。在知道usermod命令之前,应该知道'useradd'命令及其使用usermod的选项。 如果我错过了文章中的任何一点,请通过评论让我知道,不要忘记添加您宝贵的意见。