Linux用户和组命令

Linux建立用户和组:

每个用户都有一个userID,而非用户名.每个登陆用户拥有一个指定的shell.

 

用户分为三种:

  1. root用户:---ID为0,只要ID为0,就是超级管理员账户,不一定叫root.
  2. 系统用户:---ID为1----499,作用比较单一,为一些服务用,比如打印等.
  3. 3.       普通用户:---ID为500以上.

Linux系统中的文件都有一个所属用户及所属组.

系统保存新建用户信息默认值权限文件夹: /etc/login.defs

login.defs设置用户帐号限制的文件,在这里我们可配置密码的最大过期天数,密码的最大长度约束等内容。该文件里的配置对root用户无效。如果/etc/shadow文件里有相同的选项,则以/etc/shadow里的设置为准,也就是说/etc/shadow的配置优先级高于/etc/login.defs

[[email protected] ~]# vi /etc/login.defs

MAIL_DIR        /var/spool/mail         (默认电子邮件目录)

PASS_MAX_DAYS   99999                (用户密码最长时间)

PASS_MIN_DAYS   0                    (密码修改最短时间)

PASS_MIN_LEN    5                    (密码最少多少位)

PASS_WARN_AGE   7                   (密码过期前多少天给提醒)

UID_MIN                   500        (UID值起)

UID_MAX                 60000        (UID值终)

GID_MIN                   500        (GID值起)

GID_MAX                 60000        (GID值终)

CREATE_HOME     yes                  (是不是建立用户家目录)

UMASK           077                 (默认权限)

USERGROUPS_ENAByes                  (是不是给用户创建私有组)

ENCRYPT_METHODSHA512               (密码加密)

文件默认信息设置:

该文件主要是定义默认家目录、环境配置文件目录、登入执行首个程序等等。

[[email protected] ~]# cat /etc/default/useradd

# useradd defaults file        # useradd默认文件

GROUP=100                #表示可创建普通组

HOME=/home              #用户的家目录建在/home中;用户家目录的默认创建地

INACTIVE=-1                #是否启用帐号过期停权,-1表示不启用;宽限天数,0及以下数皆为无效数字

EXPIRE=                  #帐号终止日期,不设置表示不启用;帐号失效日期(如:20081212)

SHELL=/bin/bash             #所用SHELL的类型;登录后执行的程序

SKEL=/etc/skel               #用户家目录中的环境文件,默认添加用户的目录默认文件存放位置;也就是说,当我们用adduser添加用户时,用户家目录下的文件,都是从这个目录中复制过去的;

CREATE_MAIL_SPOOL=yes     #是否创建用户邮件缓冲,yes表示创建

创建用户复制的文件:

每创建一个用户,系统会把/etc/skel下的隐藏文件复制到新用户家目录下。

[[email protected] ~]# ls -a /etc/skel

.  .. .bash_logout  .bash_profile  .bashrc .gnome2  .mozilla

[[email protected]]# ls -a

.  .. .bash_history  .bash_logout  .bash_profile .bashrc  .gnome2  .mozilla .viminfo

[[email protected]]#

.bash_logout:用户登出用的文件。

.bash_profile:用户登录用的文件。

这是因为用户家目录等信息默认指定文件:定义了创建相关默认的信息

[[email protected] default]# pwd

/etc/default

[[email protected] default]# ls

nss useradd

[[email protected] default]# less useradd

# useradd defaults file

GROUP=100

HOME=/home

INACTIVE=-1

EXPIRE=

SHELL=/bin/bash

SKEL=/etc/skel   (框架)

CREATE_MAIL_SPOOL=yes

[[email protected] default]#

用户家目录隐藏文件默认来源:

[[email protected] ~]$ ls -a

. ..  .bash_logout  .bash_profile .bashrc  .gnome2  .mozilla

[[email protected] ~]$

[[email protected] skel]$ pwd (因/etc/default/useradd文件里面设置)

/etc/skel

[[email protected] skel]$ ls -a

. ..  .bash_logout  .bash_profile .bashrc  .gnome2  .mozilla

[[email protected] skel]$

保存用户名和密码的三个文件:

1./etc/passwd (7)

保存用户信息。每一行一个用户,每行不同部分用:号隔开,分为七个部分.

[[email protected] Desktop]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

如果想用户登录名存在,不让用户登录系统的方式:更改为/sbin/nologin

[[email protected] ~]# vi /etc/passwd

zhangwu:x:505:505::/home/zhangwu:/bin/bash

改为:

zhangwu:x:505:505::/home/zhangwu:/sbin/nologin

[[email protected]~]$ su - zhangwu

密码:

This account iscurrently not available.      (这个帐户目前不可用.)

2./etc/shadow  (9)

保存用户密码(加密).

[[email protected] Desktop]# cat /etc/shadow

root:$6$VSraCuB5$PQXVywRZPi1OpfzIrgxktY18knrHf.J3imCytPq4dtiqgoeIu0:16010:0:99999:7:::

bin:*:15155:0:99999:7:::

daemon:*:15155:0:99999:7:::

adm:*:15155:0:99999:7:::

lp:*:15155:0:99999:7:::

sync:*:15155:0:99999:7:::

dbus:!!:15996::::::

第一部分为用户名,

第二部分为密码,两个!!为没有密码,

第三部分为密码最近一次的修改时间,

第四部分为密码最短使用期限,

第五部分为密码最长使用期限,

第六部分为离密码过期还有多少天开始向用户发送警告,

第七部分为用户账号的非活动期限,

第八部分为用户账号的有效期限,

第九部分为保留段,没什么用。

3./etc/group   (4)

保存组信息.

[[email protected] ~]# cat /etc/group

root:x:0:root

bin:x:1:root,bin,daemon

daemon:x:2:root,bin,daemon

sys:x:3:root,bin,adm

adm:x:4:root,adm,daemon

tty:x:5:

第一部分为组名,

第二部分为组密码,

第三部分组ID

第四部分为组用户.

添加用户账号:

命令:useradd,用于添加用户账号。

[[email protected] ~]# useradd zhang1

[[email protected] ~]# cat /etc/passwd

root:x:0:0:root:/root:/bin/bash

zhang1:x:500:500::/home/zhang1:/bin/bash

[[email protected] ~]#

-u:指定用户的UID号,要求指定的UID号未使用.

-d:指定用户的宿主目录位置。

-e:指定用户的账户失效时间,可使用YYYY-MM-DD的日期格式。

-g:指定用户的基本组名,(基本组需要存在)。

-G:指定用户的附加组名,(附加组需要存在)。

-M:不建立使用者家目录。

-s:指定用户的登录shell.

-c:指定注释信息,如有空格需要用引号引起来。

-r:创建系统用户,UID为1-499的,不能登录系统。

-u:指定用户的UID号,要求指定的UID号未使用.

例子:创建名为st02的用户账号,并将其UID号指定为505.

[[email protected]~]# useradd -u505 st02

[[email protected]~]# tail -1/etc/passwd

st02:x:505:505::/home/st02:/bin/bash

[[email protected]~]#

-d:指定用户的宿主目录位置。

例子:指定user6的家目录位置在/tmp/user6

[[email protected] ~]# useradd -d/tmp/user6 user6

[[email protected] ~]# ll -d /tmp/user6/

drwx------. 4user6 user6 4096 Dec 18 15:00 /tmp/user6/

[[email protected] ~]#

注意:用户家目录的文件夹不能存在,否则登录会:

[[email protected] ~]# ll -d /tmp/user7

drwxr-xr-x. 2 rootroot 4096 Dec 18 15:02 /tmp/user7

[[email protected] ~]# useradd -d/tmp/user7 user7

useradd: warning:the home directory already exists.  (useradd:警告:主目录存在。)

Not copying anyfile from skel directory into it.       (没有文件从skel目录复制。)

[[email protected] ~]# tail -1/etc/passwd

user7:x:510:512::/tmp/user7:/bin/bash

[[email protected] ~]#

user7登录:

-bash-4.1$ pwd

/tmp/user7

-bash-4.1$

-bash-4.1$ ls -a

.  ..

-bash-4.1$

-e:指定用户的账户失效时间,可使用YYYY-MM-DD的日期格式。

例子:指定账号user8过期时间为2014-12-19

[[email protected] ~]# useradd -e2014-12-19 user8

[[email protected] ~]# chage -l user8      (查看账户密码过期时间信息)

Last passwordchange                                   : Dec 18, 2014

Passwordexpires                                       : never

Passwordinactive                                      : never

Account expires                                        : Dec 19,2014

Minimum number ofdays between password change          : 0

Maximum number ofdays between password change          :99999

Number of days ofwarning before password expires           : 7

[[email protected] ~]#

意思:

最近一次密码修改时间                            : 1月 24, 2012

密码过期时间                                    :从不

密码失效时间                                    :从不

帐户过期时间                                    : 1月 19, 2012

两次改变密码之间相距的最小天数                  :0

两次改变密码之间相距的最大天数                  :99999

在密码过期之前警告的天数                        :7

修改用户账号过期时间的方法:

[[email protected] ~]# chage -E 2014-12-22user8

[[email protected] ~]# chage -l user8

Accountexpires                                        : Dec 22, 2014

[[email protected] ~]#

或用:

[[email protected] ~]# usermod -e2015-12-6 user8

解除用户账号失效天数,设置永远有效:

[[email protected] ~]# usermod -e"" user8         (双引号)

[[email protected] ~]# chage -l user8

Accountexpires                                        : never

[[email protected] ~]#

-g:指定用户的基本组名,(基本组需要存在)。

-G:指定用户的附加组名,(附加组需要存在)。

基本组:创建用户的时候系统会同时创建一个和这个用户名同名的组,这个组就是基本组,不可以把用户从基本组中删除。

附加组:除了基本组之外,用户所在的其他组,都是附加组。用户是可以从附加组中被删除的。

一个用户可以属于多个附加组。但是一个用户只能有一个基本组。

比如一个孩子诞生了,他的基本组就是亲生父母;他的附加组就是其他的干爹干妈。

[[email protected] ~]# grep sw /etc/group     (基本组必须先存在)

sw:x:513:

[[email protected] ~]#

[[email protected] ~]# useradd -g swuser10          (添加)

[[email protected] ~]# grep sw /etc/group            (513基本组)

sw:x:513:

[[email protected] ~]# grep user10/etc/passwd       (新建用户的基本组也是513)

user10:x:512:513::/home/user10:/bin/bash

[[email protected] ~]#

更改用户的基本组:

[[email protected] ~]# grep se /etc/group

se:x:514:

[[email protected] ~]# usermod -g seuser10

[[email protected] ~]# grep user10/etc/passwd       (用户基本组为514)

user10:x:512:514::/home/user10:/bin/bash

[[email protected] ~]#

创建用户的附加组:

[[email protected] ~]# useradd -G ituser11

[[email protected] ~]# grep it /etc/group

it:x:505:zhang2,zhang1,user11

更改用户的附加组为sw

[[email protected] ~]# grep sw /etc/group

sw:x:513:

[[email protected] ~]# usermod -G swuser11

[[email protected] ~]# grep sw/etc/group 

sw:x:513:user11

[[email protected] ~]#

-M:不建立使用者家目录。

[[email protected] ~]# useradd -M wang1

[[email protected] ~]# ll -d /home/wang1

ls: cannot access/home/wang1: No such file or directory

[[email protected] ~]#

用户wang1登录:

-bash-4.1$ pwd

/

-bash-4.1$ whoami

wang1

-bash-4.1$

为用户wang1添加家目录:

[[email protected] home]# mkdir wang1         (建立家目录)

[[email protected] home]# ll -d wang1          (注意权限为root)

drwxr-xr-x. 2 rootroot 4096 Dec 18 16:08 wang1

[[email protected] home]#

[[email protected] wang2]# cp -a /etc/skel/./home/wang1         (把隐藏文件cp过来)

[[email protected] home]# chown -Rwang1:wang1 /home/wang1    (属主属组为wang1)

[[email protected] home]# ll -d wang1

drwxr-xr-x. 3wang1 wang1 4096 Dec 18 16:40 wang1

[[email protected] home]# chmod -R go=--/home/wang1       (权限组其他没有权限)

[[email protected] home]# ll -d wang1

drwx------. 3wang1 wang1 4096 Dec 18 16:40 wang1

[[email protected] home]# usermod -d/home/wang1/ wang1   (更改用户家目录)

[[email protected] home]# grep wang1/etc/passwd

wang1:x:514:516::/home/wang1/:/bin/bash

[[email protected] home]#

用账号wang1登录:

[[email protected] ~]$ pwd

/home/wang1/

[[email protected] ~]$ whoami

wang1

[[email protected] ~]$

-s:指定用户的登录shell.

[[email protected]~]# useradd -s/bin/tcsh hao1      (创建用户指定shell为/bin/tcsh)

[[email protected] ~]# grep hao1 /etc/passwd

hao1:x:515:517::/home/hao1:/bin/tcsh

[[email protected] ~]# usermod -s /bin/bash hao1    (更改用户指定shell为/bin/bash)

[[email protected] ~]# grep hao1 /etc/passwd

hao1:x:515:517::/home/hao1:/bin/bash

[[email protected] ~]#

-c:指定注释信息,如有空格需要用引号引起来。

[[email protected] ~]#useradd yu1 -c "this is it admin"    (创建用户yu1)

[[email protected] ~]# grepyu1 /etc/passwd

yu1:x:516:518:thisis it admin:/home/yu1:/bin/bash

[[email protected] ~]#usermod -c "i‘m yu1" yu1         (更改用户注释信息)

[[email protected] ~]# grepyu1 /etc/passwd

yu1:x:516:518:i‘myu1:/home/yu1:/bin/bash

[[email protected] ~]#

-r:创建系统用户,UID为1-499的,不能登录系统。

[[email protected] ~]# useradd -r zhao -s/sbin/nologin

[[email protected] ~]# ll -d /home/zhao

ls: cannot access/home/zhao: No such file or directory

[[email protected] ~]# grep zhao/etc/passwd

zhao:x:495:492::/home/zhao:/sbin/nologin     (注意他的UID是多少)

[[email protected] ~]#

登录显示:Could not chdir to home directory/home/zhao: No such file or directory

This account iscurrently not available.

(主目录/home/zhao:没有这样的文件或目录,这个帐户目前不可用。)

创建用户密码:

命令passwd:

为用户账号设置密码.root账户可是指定用户名设置密码,普通用户不能指定用户名设置密码。只能用passwd为自己设置密码.

[[email protected]~]# passwdzhang1

Changing passwordfor user zhang1.

New password:

BAD PASSWORD: itis based on a dictionary word

BAD PASSWORD: istoo simple

Retype newpassword:

passwd: allauthentication tokens updated successfully.

[[email protected]~]#

-d:清空指定的用户密码,仅使用用户名即可登录系统。

-l:锁定用户账号。

-S:查看用户账号的状态。

-u:解锁用户账号。

--stdin :标准输入,设定密码不用重复2次。

例子:

-d:清空指定的用户密码,仅使用用户名即可登录系统。

[[email protected] ~]# passwd -d user1

Removing passwordfor user user1.

passwd: Success

[[email protected] ~]#

-l:锁定用户账号。

例子:将用户账号st02的密码锁定,查看shadow文件中的变化(密码前多了“!!”号),并检查用户密码状态。

[[email protected]~]# passwd -lst02

Locking passwordfor user st02.

passwd: Success

[[email protected]~]# grep st02/etc/shadow

st02:!!:16013:0:99999:7:::                 (注意密码前多了两个叹号)

-S:查看用户账号的状态。

[[email protected]~]# passwd -Sst02

st02 LK 2013-11-040 99999 7 -1 (Password locked.)           (锁定)

[[email protected]~]#

[[email protected] ~]# passwd -S dwzhang

dwzhang PS 2014-11-18 0 99999 7 -1(Password set, SHA512 crypt.)       (正常)

[[email protected] ~]#

-u:解锁用户账号。  (从新设置密码也是解锁)

[[email protected] ~]# passwd -S user1

user1 LK 2014-12-18 0 99999 7 -1 (Passwordlocked.)

[[email protected] ~]# passwd -u user1

Unlocking password for user user1.

passwd: Success

[[email protected] ~]# passwd -S user1

user1 PS 2014-12-18 0 99999 7 -1 (Passwordset, SHA512 crypt.)

[[email protected] ~]#

--stdin :标准输入,设定密码不用重复2次。

用命令行方式为zhang2创建密码:

[[email protected] ~]# echo ‘[email protected]‘ | passwd --stdin zhang2

Changing password for user zhang2.

passwd: all authentication tokens updated successfully.

[[email protected] ~]#    (设置zhang2密码为[email protected])

[[email protected] ~]# echo ‘[email protected]‘ | passwd --stdin zhang2 > /dev/null

[[email protected] ~]#  (不显示信息)

修改用户信息:

命令:usermod,

修改用户账号属性.修改用户信息。

-u:修改用户的UID号。

-d:修改用户的宿主目录位置。

-e:修改用户的账户失效时间。

-g:修改用户的基本组名。

-G:修改用户的附加组名。

-m:需要和-d一起用,移动用户家目录位置。

-s:指定用户的登录shell。

-l:更改用户账号的登录名称。

-L:锁定用户账户。

-U:解锁用户账户。

-c :更改注释信息,如有空格需要用引号引起来。

-u:修改用户的UID号。

例子:aaaUID改为777.

[[email protected]~]# tail -1/etc/passwd

aaa:x:506:506::/home/aaa:/bin/bash

[[email protected]~]# usermod -u777 aaa

[[email protected]~]# tail -1/etc/passwd

aaa:x:777:506::/home/aaa:/bin/bash

[[email protected]~]#

-l:更改用户账号的登录名称。

例子:aaa用户名改为bbb

格式:usermod –l 新名旧名

[[email protected]~]# usermod -lbbb aaa

[[email protected]~]# tail -1/etc/passwd

bbb:x:777:506::/home/aaa:/bin/bash

[[email protected]~]#

(注意:用户的宿主目录不会改变,需要在/home下改名.)

[[email protected]~]#mv aaa bbb

[[email protected] ~]# usermod -d /home/bbb bbb    (还需要从新指定用户宿主目录)

[[email protected] ~]#

-d:修改用户的宿主目录位置。

[[email protected] ~]# usermod -d /home/u2 u2    (修改用户u2宿主目录位置)

[[email protected] ~]#

-e:修改用户的账户失效时间。

[[email protected] ~]# chage -l user8

Account expires                                         : Dec22, 2014

[[email protected] ~]#

[[email protected] ~]# usermod -e 2015-12-6 user8

解除用户账号失效天数,设置永远有效:

[[email protected] ~]# usermod -e "" user8         (双引号)

[[email protected] ~]# chage -l user8 

Account expires                                         :never

[[email protected] ~]#

-g:修改用户的基本组名。

-G:修改用户的附加组名。

基本组:创建用户的时候系统会同时创建一个和这个用户名同名的组,这个组就是基本组,不可以把用户从基本组中删除。

附加组:除了基本组之外,用户所在的其他组,都是附加组。用户是可以从附加组中被删除的。

一个用户可以属于多个附加组。但是一个用户只能有一个基本组。

比如一个孩子诞生了,他的基本组就是亲生父母;他的附加组就是其他的干爹干妈。

[[email protected] ~]# grep sw /etc/group     (基本组必须先存在)

sw:x:513:

[[email protected] ~]#

[[email protected] ~]# useradd -g swuser10          (添加)

[[email protected] ~]# grep sw /etc/group            (513基本组)

sw:x:513:

[[email protected] ~]# grep user10/etc/passwd       (新建用户的基本组也是513)

user10:x:512:513::/home/user10:/bin/bash

[[email protected] ~]#

更改用户的基本组:

[[email protected] ~]# grep se /etc/group

se:x:514:

[[email protected] ~]# usermod -g seuser10

[[email protected] ~]# grep user10 /etc/passwd       (用户基本组为514)

user10:x:512:514::/home/user10:/bin/bash

[[email protected] ~]#

创建用户的附加组:

[[email protected] ~]# useradd -G ituser11

[[email protected] ~]# grep it /etc/group

it:x:505:zhang2,zhang1,user11

更改用户的附加组为sw

[[email protected] ~]# grep sw /etc/group

sw:x:513:

[[email protected] ~]# usermod -G swuser11

[[email protected] ~]# grep sw/etc/group 

sw:x:513:user11

[[email protected] ~]#

-s:指定用户的登录shell

[[email protected] ~]# useradd -s/bin/tcsh hao1      (创建用户指定shell为/bin/tcsh)

[[email protected] ~]# grep hao1/etc/passwd

hao1:x:515:517::/home/hao1:/bin/tcsh

[[email protected] ~]# usermod -s/bin/bash hao1    (更改用户指定shell为/bin/bash)

[[email protected] ~]# grep hao1/etc/passwd

hao1:x:515:517::/home/hao1:/bin/bash

[[email protected] ~]#

-L:锁定用户账户。

[[email protected] ~]# usermod -L user8

[[email protected] ~]#

[[email protected] ~]# passwd -S user8     (用passwd –S查看账户状态)

user8 LK2014-12-19 0 99999 7 -1 (Password locked.)  (密码锁定)

[[email protected] ~]#

-U:解锁用户账户。

[[email protected] ~]# usermod -U user8

[[email protected] ~]# passwd -S user8

user8 PS 2014-12-19 0 99999 7 -1 (Passwordset, SHA512 crypt.)

[[email protected] ~]#

删除用户命令:

命令:userdel.

(不加参数会保留用户的宿主目录)

[[email protected]~]# cat/etc/passwd

zhang1:x:500:500::/home/zhang1:/bin/bash

st02:x:505:505::/home/st02:/bin/bash

bbb:x:777:506::/home/aaa:/bin/bash

[[email protected]~]# cd /home

[[email protected]]# ll

total 12

drwx------.  4 bbb   aaa    4096 Nov  4 11:24 bbb

drwx------.  4 st02  st02   4096 Nov  4 11:01 st02

drwx------. 26zhang1 zhang1 4096 Nov  4 10:50 zhang1

[[email protected]]# userdelbbb

[[email protected]]# cat/etc/passwd

zhang1:x:500:500::/home/zhang1:/bin/bash

st02:x:505:505::/home/st02:/bin/bash

[[email protected]]# ll

total 12

drwx------.  4   777 aaa    4096 Nov  4 11:24 bbb

drwx------.  4 st02  st02   4096 Nov  4 11:01 st02

drwx------. 26zhang1 zhang1 4096 Nov  4 10:50 zhang1

[[email protected]]#

-r(同时删除用户宿主目录)

[[email protected]]# cat/etc/passwd

zhang1:x:500:500::/home/zhang1:/bin/bash

st02:x:505:505::/home/st02:/bin/bash

[[email protected]]# ll

total 12

drwx------.  4   777 aaa    4096 Nov  4 11:24 bbb

drwx------.  4 st02  st02   4096 Nov  4 11:01 st02

drwx------. 26zhang1 zhang1 4096 Nov  4 10:50 zhang1

[[email protected]]# userdel-r st02

[[email protected]]# ll

total 8

drwx------.  4   777 aaa    4096 Nov  4 11:24 bbb

drwx------. 26zhang1 zhang1 4096 Nov  4 10:50 zhang1

[[email protected]]# cat/etc/passwd

zhang1:x:500:500::/home/zhang1:/bin/bash

[[email protected]]#

组账号应用

创建组:

每个组都有一个组ID。

组信息保存在/etc/group中。

组账号的加密信息保存在/etc/gshadow中。

每个用户拥有一个主组,同时最多拥有31个附属组。

命令:groupadd-----创建组,添加组账号.

[[email protected]~]# groupadd it

[[email protected]~]# tail -2/etc/group

aaa:x:506:

it:x:507:

[[email protected]~]#

-g:指定GID号。

[[email protected] ~]# groupadd -g 678 bd

[[email protected] ~]# grep bd /etc/group

bd:x:678:

[[email protected] ~]#

-r 创建系统组1-499之间。

[[email protected] ~]# groupadd -r my

[[email protected] ~]# grep my /etc/group

my:x:491:

[[email protected] ~]#

添加删除组成员和设置组密码:

命令:gpasswd---

添加删除组成员和设置组账户密码(很少用)

-a:将用户账号添加到组账号中去。

-M:同时添加多个用户。

-d:将用户账号从组账号中删除。

例子:-a将用户账号mike加入到组账号root.

格式:gpasswd–a 用户名组名

[[email protected]~]# useradd mike

[[email protected]~]# grep"^root" /etc/group

root:x:0:root

[[email protected]~]# gpasswd -amike root   (将mike用户加入root组中)

Adding user miketo group root

[[email protected]~]# grep"^root" /etc/group

root:x:0:root,mike

[[email protected]~]#

-d:将用户账号mast从组账号root中删除.

格式:gpasswd–d 用户名组名

[[email protected]~]# useradd mast

[[email protected]~]# gpasswd -amast root

Adding user mastto group root

[[email protected]~]# grep"^root" /etc/group

root:x:0:root,mike,mast

[[email protected]~]# gpasswd -dmast root

Removing user mastfrom group root

[[email protected]~]# grep"^root" /etc/group

root:x:0:root,mike

[[email protected]~]#

-M:将用户账号wangyi,wangerwangsan同时加入it组中.

格式:gpasswd–M 用户名1,2,3 组名

[[email protected]~]# grep"^it" /etc/group

it:x:507:

[[email protected]~]# gpasswd -Mwangyi,wanger,wangsan it  (用逗号隔开)

[[email protected]~]# grep"^it" /etc/group

it:x:507:wangyi,wanger,wangsan

[[email protected]~]#

设置组账户密码(很少用)

组密码的作用:非本用户组的用户想切换到本用户组身份时,可以通过密码保证安全性。如果没有设置组密码,则只有属于本用户组的用户能够切换到本用户组的身份。

[[email protected] ~]# gpasswd bd

Changing thepassword for group bd

New Password:

Re-enter newpassword:

[[email protected] ~]# gpasswd -a user8 bd

Adding user user8to group bd

[[email protected] ~]# grep bd /etc/group

bd:x:678:user8

[[email protected] ~]#

 

切换基本组:

newgrp 组名

[[email protected] skel]$ newgrp it

Password:

[[email protected] skel]$

删除组账号命令

------groupdel

 

例子:将组账户it删除.

[[email protected]~]# grep"^it" /etc/group

it:x:507:wangyi,wanger,wangsan

[[email protected]~]# groupdel it

[[email protected]~]# grep"^it" /etc/group

[[email protected]~]#

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

修改组账户信息命令

-----------groupmod.

-n:修改组名。

-g:修改组ID。

 

例子:-n把财务组改为财务1组。

格式:groupmod–n 新组名旧组名

[[email protected]~]# tail -3/etc/group

wanger:x:504:

wangsan:x:505:

caiwu:x:507:

[[email protected]~]# groupmod -ncaiwu1 caiwu

[[email protected]~]# tail -3/etc/group

wanger:x:504:

wangsan:x:505:

caiwu1:x:507:

[[email protected]~]#

-g:修改组ID

格式:groupmod –g新GID 要修改的组名

[[email protected] ~]# grep bd /etc/group

bd:x:678:user8

[[email protected] ~]# groupmod -g 699 bd

[[email protected] ~]# grep bd /etc/group

bd:x:699:user8

[[email protected] ~]#

 

 

 

 

 

 

 

 

 

 

 

 

 

 

用户和组账号查询:

id命令-----用于查询用户的身份标识信息.

[[email protected]~]# id

uid=0(root)gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

[[email protected]~]#

说明:

uid=0(root)----------userID用户ID.

Gid=0(root)---------组ID,创建用户时自动创建一个自己的组.

groups命令------用于查询某个用户账号所属的组。

例子:分别查询当前用户rootmast所属的组.

[[email protected]~]# groups

root bin daemonsys adm disk wheel

[[email protected]~]# groups mast

mast : mast

马哥LINUX视频:

用户账号文件

/etc/passwd

字段意义:7

zhang:x:502:502::/home/zhang:/bin/bash

zhang用户名

x 密码占位符

502 UID

502 GID 用户基本组ID号

一般为空 用户的finger信息,用户的注释信息,如电话,地址等

/home/zhang家目录

/bin/bash用户默认shell

创建用户:

[[email protected] ~]# useradd zhang

[[email protected] ~]# tail -1 /etc/group (创建用户系统自动添加用户基本组ID

zhang:x:502:

[[email protected] ~]#

[[email protected] ~]# useradd -u 666 zhang1      (-u指定UID为666)

[[email protected] ~]# tail -1 /etc/passwd         (查看)

zhang1:x:666:666::/home/zhang1:/bin/bash

[[email protected] ~]# useradd zhang2            (注意:在新建用户的UID从最大的开始+1)

[[email protected] ~]# tail -3 /etc/passwd

dwzhang:x:500:500::/home/dwzhang:/bin/bash

zhang1:x:666:666::/home/zhang1:/bin/bash

zhang2:x:667:667::/home/zhang2:/bin/bash     (此UID为667)

[[email protected] ~]# useradd -u 555 zhang3

[[email protected] ~]# useradd zhang4              (从最大UID开始)

[[email protected] ~]# tail -5 /etc/passwd

dwzhang:x:500:500::/home/dwzhang:/bin/bash

zhang1:x:666:666::/home/zhang1:/bin/bash

zhang2:x:667:667::/home/zhang2:/bin/bash

zhang3:x:555:555::/home/zhang3:/bin/bash

zhang4:x:668:668::/home/zhang4:/bin/bash

[[email protected] ~]#

[[email protected] home]# useradd zhang8 -d /home2/zhang7   (指定用户家目录)

[[email protected] home]# cd /home2

[[email protected] home2]# ls

zhang7

[[email protected] home2]#

 选项:

-u :指定UID

-g :指定GID,(基本组需要存在)

-G :指定GID,指定一个或多个附加组(附加组需要存在)

-c :指定注释信息,如有空格需要用引号引起来。

-d :指定家目录位置,这个位置目录不能有。

-s :指定用户shell。一般要求在/etc/shells里面要有这个shell。

-M :不为用户创建家目录。

-r :创建系统用户,UID为1-499的,不能登录系统。

删除用户:(不加-r默认不会删除家目录的)

userdel:

[[email protected] ~]# userdel  zhang2

选项:  -r :一起删除家目录。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

用户组文件

/etc/group

 

字段意义:4

zhang:x:502:

zhang组名

x 组密码占位符

502 组ID

默认空 以此组为其额外组用户的用户列表

创建组:

[[email protected] ~]# groupadd hr

[[email protected] ~]# tail -1 /etc/group

hr:x:503:

[[email protected] ~]#

添加组:

groupadd

选项: -g :GID

-r :创建系统组1-499之间

[[email protected] ~]# groupadd hr      (创建hr组)

[[email protected] ~]# grep hr /etc/group

hr:x:668:

[[email protected] ~]#

修改组:

groupmod

选项: -g :改GID

-n :修改组名  (-n 新组名 旧组名)

[[email protected] ~]# groupadd hr

[[email protected] ~]# grep hr /etc/group

hr:x:668:

[[email protected] ~]# groupmod -g 3003 hr     (更改hr组GID为3003)

[[email protected] ~]# grep hr /etc/group

hr:x:3003:

[[email protected] ~]#

[[email protected] ~]# groupmod -n se hr    (修改组名hr为se)

[[email protected] ~]# grep hr /etc/group

[[email protected] ~]# grep se /etc/group

se:x:3003:

[[email protected] ~]#

删除组:

groupdel 组名

給组加密码:当不属于这个组切换到该组需要密码

gpasswd 组名

[[email protected] ~]# groupadd it

[[email protected] ~]# gpasswd it

Changing the password for group it

New Password:

Re-enter new password:

[[email protected] ~]#

[[email protected] skel]$ newgrp it

Password:

[[email protected] skel]$

切换基本组:

newgrp 组名

[[email protected] skel]$ newgrp it

Password:

[[email protected] skel]$

密码文件:

/etc/shadow

字段意义:9

zhang:$6$.S0KkS8y$MoPIYbgLdFywAppCSDGrXDWESYFf8RSsO3P0pRLmNrGZurvfvXuOeEPFHJmHCr8XvUHHyxhjcjbxe0uobXXSC0:16329:0:99999:7:::

zhang用户名

$6$.S0KkS8y$MoPIYbgLdFywAppCSDGrXDWESYFf8RSsO3P0pRLmNrGZurvfvXuOeEPFHJmHCr8XvUHHyxhjcjbxe0uobXXSC0密码,显示!!两个叹号表示禁用,需要临时禁用在密码前加!!。加密方式:单向加密,单向加密特性:定长输出,雪崩效应,明文一样,结果一样,不可逆。

16329密码最近一次的修改时间,从1970-1-1开始

0 密码最短使用期限,0为不限定,按天计算。

99999密码最长使用期限,按天计算

7 离密码过期还有多少天开始向用户发送警告(按天计算,0 = 未指定警告)

用户账号的非活动期限,按天计算

用户账号的有效期限,从1970-1-1开始,按天计算

保留段,没什么用。

设定密码:

[[email protected] ~]# passwd zhang

选项:

-l :锁定用户。

-u :解锁用户。

--stdin :标准输入,设定密码不用重复2次。

[[email protected] ~]# echo ‘[email protected]‘ | passwd --stdin zhang2

Changing password for user zhang2.

passwd: all authentication tokens updated successfully.

[[email protected] ~]#    (设置zhang2密码为[email protected])

[[email protected] ~]# echo ‘[email protected]‘ | passwd --stdin zhang2 > /dev/null

[[email protected] ~]#  (不显示信息)

查看用户信息:

[[email protected] ~]# id zhang

uid=502(zhang) gid=502(zhang)groups=502(zhang)

[[email protected] ~]#

[[email protected] ~]# id -g zhang    (只看GID)

502

[[email protected] ~]# id -u zhang     (只看UID)

502

[[email protected] ~]# id -G zhang     (查看附加组)

502

[[email protected] ~]# id -nG zhang    (-n和他们一起用显示名称,而不是ID号)

zhang

[[email protected] ~]#

[[email protected] ~]# finger zhang      (可以查看用户账号信息和用户最后登录信息)

Login: zhang                            Name:

Directory: /home/zhang                  Shell: /bin/bash

On since Wed Sep 17 10:51 (CST) on pts/1from 192.168.20.92

2hours 44 minutes idle

No mail.

No Plan.

[[email protected] ~]#

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

修改用户属性:

chsh 更改用户shell

[[email protected]~]# chsh zhang2

Changing shell for zhang2.

New shell [/bin/bash]: /bin/csh

Shell changed.

[[email protected] ~]# grep ‘zhang2‘ /etc/passwd

zhang2:x:503:504::/home/zhang2:/bin/csh

[[email protected] ~]#

 

chfn 更改用户finger信息。

[[email protected]~]# chfn zhang2

Changing finger information for zhang2.

Name []: zhang2 ooo

Office []: beijing

Office Phone []: 13520341659

Home Phone []: 62660566

Finger information changed.

[[email protected] ~]# grep zhang2 /etc/passwd

zhang2:x:503:504:zhang2ooo,beijing,13520341659,62660566:/home/zhang2:/bin/csh

[[email protected] ~]#

修改用户信息:

usermod :   -u :更改UID

-g :更改GID,基本组,基本组需要事先存在。

-G :更改GID,更改一个或多个附加组(附加组需要存在)

注意:如果用户有附加组,在指定附加组,之前的附加组就没有了。

如果要再加一个附加组,不删除原有附加组,需要用-a –G GID,

-G hr se不是追加,把hr组改为se组,追加是-a –G。

-c :更改注释信息,如有空格需要用引号引起来。

-d :更改家目录位置,家目录里面文件还在,一起改需用-m -d。

-s :更改用户shell。一般要求在/etc/shells里面要有这个shell。

[[email protected] ~]# cat /etc/passwd

zhang1:x:666:666::/home/zhang1:/bin/bash

[[email protected] ~]# usermod -u 567 zhang1     (修改用户zhang1的UID)

[[email protected] ~]# cat /etc/passwd

zhang1:x:567:666::/home/zhang1:/bin/bash

[[email protected] ~]#

关于su用户切换:

su和su –不同:

[[email protected] ~]# su dwzhang

[[email protected] root]$ pwd

/root

[[email protected] root]$ echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

[[email protected] root]$ exit

exit

[[email protected] ~]# su - dwzhang

[[email protected] ~]$ pwd

/home/dwzhang

[[email protected] ~]$ echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/dwzhang/bin

[[email protected] ~]$ exit

logout

[[email protected] ~]#

用户管理命令练习题:

1.创建一个用户mandriva,其ID号为2002,基本组为distro(ID3003),附加组为linux:

[[email protected]~]# groupadd -g3003 distro

[[email protected]~]# groupaddlinux

[[email protected]~]# grep‘distro‘ /etc/group

distro:x:3003:

[[email protected]~]# grep ‘linux‘/etc/group

linux:x:3004:

[[email protected]~]# useradd -u2002 -g distro -G linux mandriva

[[email protected]~]# grepmandriva /etc/passwd

mandriva:x:2002:3003::/home/mandriva:/bin/bash

[[email protected]~]#

2.创建一个用户fedora,其全名为fedora community,默认shelltcsh:

[[email protected]~]# useradd -c"fedora community" -s /bin/tcsh fedora

[[email protected]~]# grep‘fedora‘ /etc/passwd

fedora:x:2003:2003:fedoracommunity:/home/fedora:/bin/tcsh

[[email protected]~]#

3.修改mandrivaID4004,基本组为linux,附加组为distrofedora:

[[email protected]~]# usermod -u4004 -g linux -G distro,fedora mandriva

[[email protected]~]# grepmandriva /etc/passwd

mandriva:x:4004:3004::/home/mandriva:/bin/bash

[[email protected]~]# grepmandriva /etc/group

distro:x:3003:mandriva

fedora:x:2003:mandriva

[[email protected]~]#

4.fedora加密码,并设定其密码最短使用期限为2天,最长为50:

[[email protected]~]# passwd -n 2-x 50 fedora

Adjustingaging data for user fedora.

passwd:Success

[[email protected]~]#

5.fedora的默认shell改为/bin/bash:

[[email protected]~]# grep fedora/etc/passwd

fedora:x:2003:2003:fedoracommunity:/home/fedora:/bin/tcsh

[[email protected]~]# usermod -s/bin/bash fedora

[[email protected]~]# grep fedora/etc/passwd

fedora:x:2003:2003:fedoracommunity:/home/fedora:/bin/bash

[[email protected]~]#

6.添加系统用户hbase,其不允许其登录:

[[email protected]~]# useradd -r-s /sbin/nologin hbase

[[email protected]~]# grep hbase/etc/passwd

hbase:x:496:493::/home/hbase:/sbin/nologin

[[email protected]~]#

7. 新建用户jerry,然后复制/etc/skel目录至/tmp,并重命名为jerry,要求为/tmp/jerry目录指定权限,

要求如下:

(1)     属主属组均为jerry,包括内部的所有文件。

(2)     /tmp/jerry及其内部的所有文件的属组没有任何权限,其他用户也没有任何权限。

(3)     将jerry的家目录修改为/tmp/jerry,并通过登录验证。

[[email protected] ~]# useradd jerry

[[email protected] ~]# passwd jerry

Changing password for user jerry.

New password:

BAD PASSWORD: it is based on a dictionaryword

Retype new password:

passwd: all authentication tokens updatedsuccessfully.

[[email protected] ~]#

[[email protected] ~]# cp -r /etc/skel /tmp/jerry

[[email protected] ~]# ll -d /tmp/jerry/

drwxr-xr-x. 4 root root 4096 Sep 18 10:06/tmp/jerry/

[[email protected] ~]#

[[email protected] ~]# chown -R jerry:jerry /tmp/jerry/

[[email protected] ~]# ll -d /tmp/jerry/

drwxr-xr-x. 4 jerry jerry 4096 Sep 18 10:06/tmp/jerry/

[[email protected] ~]#

[[email protected] ~]# chmod -R go=--- /tmp/jerry/

[[email protected] ~]# ll /tmp/jerry/ -d

drwx------. 4 jerry jerry 4096 Sep 18 10:06/tmp/jerry/

[[email protected] ~]#

[[email protected] ~]# usermod -d /tmp/jerry/ jerry

[[email protected] ~]# grep jerry /etc/passwd

jerry:x:504:506::/tmp/jerry/:/bin/bash

[[email protected] ~]#

[[email protected] ~]$ pwd   (验证)

/tmp/jerry/

[[email protected] ~]$

Linux命令-用户密码和组密码管理

用户密码和组密码分别保存在/etc/shadow和/etc/gshadow里,下面我们对这两个文件进行分析。

首先,cat/etc/shadow

[[email protected] ~]# cat /etc/shadow

root:$6$ywmofjJsEJYHh7xr$fbqAyFiYzlrEeZpAnH5QXN63zuOPd3NW9ZUDzOwqalm7Mg5Fg0rStYBnoiVbuLmCAnOAYZLEhiMN.kG7IAiJj.:16324:0:99999:7:::

bin:*:15980:0:99999:7:::

。。。。。。。。。。。。。。。。。。。。。。。。。。。

[[email protected] ~]#

shadow里保存的内容都是分段的,每段以”:“分隔,每一段的内容如下:

用户名:加密后的密码:最近一次修改密码的日期:密码最短使用天数:密码最长使用天数:提前多少天提示用户密码即将过期:密码非活动天数:密码锁定日期:保留字段

第一段:用户名

第二段:加密后的密码

通过man 3 crypt可知:

[[email protected] ~]# man 3 crypt

ID  | Method

---------------------------------------------------------

1   | MD5

2a  | Blowfish (not in mainline glibc; added insome

| Linux distributions)

5   | SHA-256 (since glibc 2.7)

6   | SHA-512 (since glibc 2.7)

$id$salt$encrypted

id表示加密方法

salt是从[a-zA-Z0-9./]随机选取的2个字符,用来扰乱算法的

encrtpted用户真正的经过加密算法计算过的密码

第三段:最近一次修改密码的日期,这项表示的是1970-01-01距离密码修改日期共经历了多少天

第四段:密码最短使用天数,0表示没有限制

第五段:密码最长使用天数,99999表示无限制

第六段:提前多少天提示用户密码即将过期

第七段:密码非活动天数,0表示密码过期立即锁定,-1表示密码永不过期

第八段:密码锁定日期,这项表示的是1970-01-01距离密码修改日期共经历了多少天

和用户密码相关的命令有passwd,usermod,chage,接下来我们一一讲解它们的用法:

1.passwd [option] USERNAME

a.新建hadoop用户,并查看shadow

[[email protected] ~]# useradd hadoop

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:!!:16423:0:99999:7:::

[[email protected] ~]#

注意第二个字段是!!,因为还没有为hadoop设置密码,我们可以用passwd为用户设置密

格式:passwd USERNAME

[[email protected] ~]# passwd hadoop

Changing password for user hadoop.

New password:

BAD PASSWORD: it is based on a dictionaryword

Retype new password:

passwd: all authentication tokens updatedsuccessfully.

[[email protected] ~]#

b.锁定用户:

格式:passwd -l USERNAME

[[email protected] ~]# passwd -l hadoop

Locking password for user hadoop.

passwd: Success

[[email protected] ~]# passwd -S hadoop

hadoop LK 2014-12-19 0 99999 7 -1 (Passwordlocked.)

[[email protected] ~]#

查看shadow,密码段最前面多了!!,密码不对了,不能登录是正常的:

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:!!$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:0:99999:7:::

[[email protected] ~]#

c.解锁用户:

格式:passwd -u USERNAME

[[email protected] ~]# passwd -u hadoop

Unlocking password for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:0:99999:7:::

[[email protected] ~]#

d.修改密码最短使用天数:

格式:passwd -n 天数 USERNAME

[[email protected] ~]# passwd -n 2 hadoop

Adjusting aging data for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:2:99999:7:::

[[email protected] ~]#

e.修改密码最长使用天数

格式:passwd -x 天数 USERNAME

[[email protected] ~]# passwd -x 30 hadoop

Adjusting aging data for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:2:30:7:::

[[email protected] ~]#

f.修改提前多少天提示用户密码即将过期:

格式:passwd -w 天数 USERNAME

[[email protected] ~]# passwd -w 14 hadoop

Adjusting aging data for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:2:30:14:::

[[email protected] ~]#

g.修改密码非活动天数:

格式:passwd -i 天数 USERNAME

[[email protected] ~]# passwd -i 7 hadoop

Adjusting aging data for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:16423:2:30:14:7::

[[email protected] ~]#

h.使密码立即过期,并强制用户登录时更改密码:

格式:passwd -e USERNAME

[[email protected] ~]# passwd -e hadoop

Expiring password for user hadoop.

passwd: Success

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$3u2Vlvhs$kgZf/Ykne2H5B9KcfoxLbAZg8TQHDBydy.njXBJVQZg/eNMP4ztSxkvRed60p4nEB39gDlvdCoC/FGFp/OGXC.:0:2:30:14:7::

[[email protected] ~]#

2.chage [option] USERNAME

a.修改最后一次密码修改日期:

格式:chage -d YYYY-MM-DD USERNAME

hadoop最后一次修改密码是2014-12-19,第3个字段为16423;

通过chage更改了最后一次密码修改日期为为2014-04-29,所以第3个字段变为了16189

[[email protected] ~]# passwd Hadoop                (为用户设置密码)

Changing password for user hadoop.

New password:

BAD PASSWORD: it is based on a dictionaryword

Retype new password:

passwd: all authentication tokens updatedsuccessfully.

[[email protected] ~]# grep hadoop /etc/shadow         (最后一次修改密码是12-19,16423)

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16423:2:30:14:7::

[[email protected] ~]# chage -d 2014-12-18 hadoop      (修改日期改为前一天)

[[email protected] ~]# grep hadoop /etc/shadow        (最后一次修改密码是12-18,16422)

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:2:30:14:7::

[[email protected] ~]#

b.修改密码最短使用天数:

格式:chage -m  天数USERNAME

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:2:30:14:7::

[[email protected] ~]# chage -m 11 hadoop

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:30:14:7::

[[email protected] ~]#

c.修改密码最长使用天数

格式:chage -M 天数USERNAME

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:30:14:7::

[[email protected] ~]# chage -M 22 hadoop

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:14:7::

[[email protected] ~]#

d.修改提前多少天提示用户密码即将过期:

格式:chage -W 天数USERNAME

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:14:7::

[[email protected] ~]# chage -W 29 hadoop

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:29:7::

[[email protected] ~]#

e.修改密码非活动天数:

格式:chage -I 天数USERNAME     (大写I)

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:29:7::

[[email protected] ~]# chage -I 15 hadoop 

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:29:15::

[[email protected] ~]#

f.修改过期时间:

格式:chage -E YYYY-MM-DD USERNAME

现在是2014-12-19(距离1970-01-01是….天),我们修改密码2014-12-25过期,所以是16429

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:29:15::

[[email protected] ~]# chage -E 2014-12-25 hadoop

[[email protected] ~]# grep hadoop /etc/shadow

hadoop:$6$cvwKbYZE$NLeSlFMNKWy71WRe5EWFynOdMU.2GkN21PHSOA.kOIXMW1QOak0.gEm7dX/6alDZ5X7OyJ7L2UyuwXM2LGywG/:16422:11:22:29:15:16429:

[[email protected] ~]#

时间: 2024-10-12 18:29:13

Linux用户和组命令的相关文章

Linux用户和组命令总结

一.用户管理相关命令 1.useradd/adduser:创建用户 adduser命令是useradd的连接:file `whereis useradd` (1)useradd  [options]  LOGIN -u, --uid UID:指定UID: -g, --gid GROUP:指定基本组ID,该组必须事先存在: -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组 -c, --comment COMMENT:指明注释信息: -s,

Linux用户和组管理,查看软件缓存,通过命令查看硬件信息(cpu,版本,序列号,内存,主板,内核等)

 通过修改/etc/inittab.通过这个文件修改系统的启动方式. ls –l /etc/ | more   (管道),将前面的结果交给后面的命令进行处理. 在linux中遇到问题使用man命令. 查找文件信息并将文件存储到一个制定的文件中. ls –la > "a.txt" 创建组名: 创建组: 查看Linux中所有组的信息:cat /etc/group | more 其中root:x:0 root:表示组名,x:表示加密后的权限声明,0:表示root组的id号. 7创建

linux 用户和组管理相关的命令

                 linux 用户和组管理相关的命令 用户管理 useradd 建立用户帐号 语 法:useradd [options] LOGIN参 数: -u UID: [UID_MIN, UID_MAX]定义在/etc/login.defs -o 配合-u 选项,不检查UID的唯一性 -g GID:指明用户所属基本组,可为组名,也可以GID -G GROUP1[,GROUP2,...]:为用户指明附加组,组必须事先存在 -c "COMMENT":用户的注释信息 -

linux 用户和组管理命令

Linux 用户和组管理 组管理 groupadd命令:添加组 groupadd 选项 group_name -g GID :指定GID;默认是上一个组的GIDS+1 -r 创建系统组: groupmod命令修改组属性 groupmod 选项 GROUP -g 修改GID -n 修改组名 groupdel:删除组 groupdel 组名 用户管理 useradd命令 选项 登录名 -u,--uid:指定UID; -g,--gid GROUP:指定基本组ID,此组得事先存在: -G,--group

5、linux用户和组管理详解

linux用户和组管理 类Unix系统的设计初衷就是为让多用户同时工作,所以也迫使Linux系统有了极强的安全性,在前面安装红帽RHEL7操作系统时还特别要求"设置root用户密码",而root用户是存在于所有类UNIX系统中的"超级用户". 用户管理 root账户介绍(超级管理员) root用户拥有极高的系统所有权,能够管理系统的各项功能,如添加/删除用户,启动/关闭进程,开启/禁用硬件设备等权限.虽然使用root用户工作时不会受到权限的控制,但老话讲"

学习linux——用户和组的配置文件

2017-07-21  19:57:10 @惟愿此心无怨尤  原创 我有认真写,你有认真看吗 linux用户和组的主要配置文件有四个,如下: /etc/passwd: 用户及其属性信息(名称.UID.主组ID等) /etc/group: 组及其属性信息 /etc/shadow: 用户密码及其相关属性 /etc/gshadow: 组密码及其相关属性 /etc/passwd 以user普通用户为例 其中:以":"为分隔符,所以共有7个属性,从左往右依次为 login name:登陆用户名(

linux用户、组和权限——学习笔记

linux用户.组和权限--学习笔记 1.linux用户user 2.linux组group 3.用户和组的配置文件 3.1.Passwd文件格式 3.2.shadow 文件格式 3.3.group文件格式 3.4.gshdow文件格式 4.用户和组管理命令 4.1.用户管理命令 4.2.组帐号维护命令 4.3.用户创建:useradd 4.4.小实验 4.5.用户属性修改 4.6.删除用户 4.7.查看用户相关的ID 信息 4.8.切换用户或以其他用户身份执行命令 4.9.设置密码 4.10.

Linux用户与组管理(一)

Linux用户与组管理(一) 简介Linux用户与组 useradd usermod userdel groupadd groupmod groupdel 环境:CentOS 6.8 简介Linux用户与组 Linux系统在静态视角下,无非就是由诸多文件组成的一个"文件系统":从动态视角来看,无非就是一个在内核支配之下的一个"文件系统".这两种角度是有些区别的:动态角度下,内核是独立的,内核负责管控文件系统,而在静态角度下,连内核本身也是文件系统下的一个文件而已.故

linux 用户及组的管理

linux用户:有UID 管理员:root  UID:0 普通用户:UID:1-65535 系统用户:1-499  centos7 1-999 守护进程获取资源进行权限分配 登陆用户:500+     centos7  1000+ 交互式登录: linux组:GID 管理员组:root GID:0 系统组:1-499        centos7  1-999 普通组:500+          centos7   1000+ linux安全上下文: 运行中的程序:进程 以进程发起者的身份运行: