Linux 用户和用户组

/etc/group  存储当前系统中所有用户组信息
0
1~499组号是系统预留
用户创建的是从500开始
 
 /etc/gshadow  存储当前系统中用户组的密码信息
0
 组密码如果为空,*,!的话说明组密码为空
 
/etc/passwd  存储当前系统中所有用户的信息
0
分为7段,每一行对应一个用户的信息
创建用户之后系统会在/home目录下生成一个和用户名称一样的个人文件夹
 
/etc/shadow  存储当前系统中所有用户的密码信息
0
 
创建用户组
    groupadd [name]     创建用户组
    groupmod -n [新组名] [旧组名]    更改组名
    groupmod -g [组编号] [组名]    更改组编号
    groupadd -g [组编号] [组名]     创建用户组的时候同时创建组名
    groupdel [组名]    删除用户组
 
创建用户
    useradd -g [用户组] [用户名]    创建用户并且将用户添加到指定用户组
    useradd -d /home/xxx [用户名]    使用 -d 参数指定个人用户文件夹名称,如果没有指定 -d 参数,系统会自动在 /home 目录下创建一个和用户名一样的个人文件夹
    usermod -c [描述] [用户名]    -c参数用来给用户添加描述信息
    usermod -l [新用户名] [旧用户名]    -l参数用来修改用户名
    userdel [用户名]    删除用户    添加 -r 参数连带个人文件夹一起删除
    touch /etc/nologin    禁止除了root账户的其他账户登陆
 
  • -c<备注>  加上备注文字。备注文字会保存在passwd的备注栏位中。
  • -d<登入目录>  指定用户登入时的起始目录。
  • -D  变更预设值.
  • -e<有效期限>  指定帐号的有效期限。
  • -f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。
  • -g<群组>  指定用户所属的群组。
  • -G<群组>  指定用户所属的附加群组。
  • -m  自动建立用户的登入目录。
  • -M  不要自动建立用户的登入目录。
  • -n  取消建立以用户名称为名的群组.
  • -r  建立系统帐号。
  • -s   指定用户登入后所使用的shell。 要拒绝系统用户登录,可以将其 shell 设置为 /usr/sbin/nologin 或者 /bin/false
  • -u  指定用户ID。
 
更改用户密码
    passwd  [用户名]
 
锁定帐号
    passwd -l [用户名]    锁定帐号
    passwd -u [用户名]   解锁帐号
    passwd -d [用户名]   清除账户密码
 
主要组与附属组
用户可以同时属于多个组
    一个主要组
    多个附属组
0
 gpasswd -a [用户名] [附属组名]    为指定用户添加附属组
 newgrp [用户名]   切换附属组
 gpasswd -d [用户名] [附属组名]    从附属组删除指定用户
 useradd -g [主要组] -G [附属组名],[附属组名] ,[附属组名] ...   添加用户的同时添加主要组和附属组
 gpasswd [组名]   设置组密码
 
其他命令
whoami 显示当前登录用户名
    id [用户名]    -显示指定用户信息,包括用户编号、用户名、主要组编号及名称、附属组列表
    groups [用户名]    -显示指定用户所在的所有组
    chfn [用户名]    -设置用户资料,依次输入用户资料
    finger [用户名]    -显示用户详细资料
 
#添加一个不能登录的用户
要拒绝系统用户登录,可以将其 shell 设置为 /usr/sbin/nologin 或者 /bin/false。
usermod -s | --shell /usr/sbin/nologin username
或者
usermod -s | -shell /bin/false username
说明及比较:
/bin/false
/bin/false 什么也不做只是返回一个错误状态,然后立即退出。将用户的 shell 设置为 /bin/false,用户会无法登录,并且不会有任何提示。
/usr/sbin/nologin
nologin 会礼貌的向用户显示一条信息,并拒绝用户登录:
This account is currently not available.
有一些软件,比如一些 ftp 服务器软件,对于本地非虚拟账户,只有用户有有效的 shell 才能使用 ftp 服务。这时候就可以使用 nologin 使用户即不能登录系统,还能使用一些系统服务,比如 ftp 服务。/bin/false 则不行,这是二者的重要区别之一。
/etc/nologin
如果存在 /etc/nologin 文件,则系统只允许 root 用户登录,其他用户全部被拒绝登录,并向他们显示 /etc/nologin 文件的内容。
 
 
创建拥有root权限的账户
创建用户admin
1 [root@vm7 ~]# useradd -g root admin # -g指定admin用户的所属组为root

 

 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
admin ALL=(ALL) ALL   #添加这一行

修改完毕,现在可以用admin帐号登录,然后在命令前加 sudo ,即可使用root权限执行命令。

 
1 [admin@vm7 ~]$ su - root
2 密码:

使用su - root 切换到root用户

posted @ 2020-11-26 16:59  局域网外  阅读(128)  评论(0编辑  收藏  举报