Linux 查看所有用户 和 修改用户 的方法

查看所有用户:

getent passwd

cat /etc/passwd | awk -F : '{print $1}'

帐号建立或更新使用者的资讯

useradd

语 法

useradd [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-s shell]
[-u uid [ -o]] [-n] [-r] login
useradd -D [-g default_group] [-b default_home]
[-f default_inactive] [-e default_expire_date]
[-s default_shell]

新帐号建立

当不加 -D 参数, useradd 指令使用命令列来指定新帐号的设定值 and 使用系统上的预设
值 .新使用者帐号将产生一些系统档案,使用者目录建立,拷备起始档案等,这些
均 可以利用命令列选项指定。此版本为RedHatLinux提供,可帮每个新加入的使用者
建立个别的 group ,毋须添加-n选项。useradd 可使用的选项为

-c comment
新帐号password档的说明栏。

-d home_dir
新帐号每次登入时所使用的 home_dir。预设值为 default_home 内 login 名称,并当成
登 入时目录名称。

-e expire_date
帐号终止日期。日期的指定格式为 MM/DD/YY 。

-f inactive_days
帐号过期几日后永久停权。当值为0时帐号则立刻被停权。而当值为-1时则关
闭此功能,预设值为-1
-g initial_group
group 名称或以数字来做为使用者登入起始群组(group)。群组名须为现有存在
的名称。群组数字也须为现有存在的群组。预设的群组数字为1。

-G group,[...]
定义此使用者为此一堆 groups 的成员。每个群组使用","区格开来,不可以夹
杂空白字元。
群组名同-g选项的限制。定义值为使用者的起始群组。

-m 使用者目录如不存在则自动建立。如使用-k选项 skeleton_dir 内的档案将复制至
使用者目录下。然而在 /etc/skel 目录下的档案也会复制过去取代。任何在 skele-
ton_dir or /etc/skel 的目录也相同会在使用者目录下一一建立。The-k同-m不建立
目录以及不复制任何档案为预设值。

-M 不建立使用者目录,即使 /etc/login.defs 系统档设定要建立使用者目录。

-n 预设值使用者群组与使用者名称会相同。此选项将取消此预设值。

-r 此参数是用来建立系统帐号。系统帐号的UID会比定义在系统档上
/etc/login.defs. 的 UID_MIN 来 的 小。注意useradd此用法所建立的帐号不会建立使用
者目录,也不会在乎纪录在 /etc/login.defs. 的定义值。如果你想要有使用者目录
须额外指定-m参数来建立系统帐号。这是REDHAT额外增设的选项。

-s shell
使用者登入后使用的shell名称。预设为不填写,这样系统会帮你指定预设的
登 入shell。

-u uid
使用者的ID值。必须为唯一的ID值,除非用-o选项。数字不可为负值。预设为
最小不得小于999而逐次增加。0~999传统上是保留给系统帐号使用 。

改变预设值
当 -D 选项出现时,useradd秀出现在的预设值,或是藉由命令列的方式更新预设值。
可 用选项为∶

-b default_home
定义使用者所属目录的前一个目录。使用者名称会附加在default_home后面用来
建立新使用者的目录。当然使用-d后则此选项无效。
-e default_expire_date
使用者帐号停止日期。

-f default_inactive
帐号过期几日后停权。

-g default_group
新帐号起始群组名或ID。群组名须为现有存在的名称。群组ID也须为现有存
在的群组。

-s default_shell
使用者登入后使用的 shell 名称。往后新加入的帐号都将使用此 shell.

如不指定任何参数,useradd 显示目前预设的值。


修改用户帐号的各项设定

usermod

语  法:

usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s <shell>][-u <uid>][用户帐号]

参  数:

  • -c<备注>  修改用户帐号的备注文字。
  • -d登入目录>  修改用户登入时的目录。
  • -e<有效期限>  修改帐号的有效期限。
  • -f<缓冲天数>  修改在密码过期后多少天即关闭该帐号。
  • -g<群组>  修改用户所属的群组。
  • -G<群组>  修改用户所属的附加群组。
  • -l<帐号名称>  修改用户帐号名称。
  • -L  锁定用户密码,使密码无效。
  • -s  修改用户登入后所使用的shell。
  • -u  修改用户ID。
  • -U  解除密码锁定。linuxso.com linux安全网

usermod 不 允 许 你 改 变 正 在线 上 的 使 用 者 帐 号 名 称 。 当 usermod 用 来 改 变 user ID, 必 须 确 认 这 名 user 没 在 电 脑 上 执 行 任 何 程 序。 你 需 手 动 更 改 使 用 者 的 crontab 档 。 也 需 手 动 更 改 使 用 者 的 at 工 作 档 。 采 用 NIS server 须 在 server 上 更 动 相 关 的 NIS 设 定 。

应用举例:

1、将 newuser2 添加到组 staff 中

# usermod -G staff newuser2

2、修改 newuser 的用户名为 newuser1

# usermod -l newuser1 newuser

3、锁定账号 newuser1

# usermod -L newuser1

4、解除对 newuser1 的锁定

# usermod -U newuser1
若您觉得我的博文对您有帮助,欢迎点击下方按钮对我打赏
打赏