linux用户管理

用户管理

一个用户拥有一个主组

一个用户可以拥有多个附属组

一个组 可以拥有多个用户

  • useradd 添加用户

    /etc/passwd下面会产生一条记录

    创建一个用户的同时会在/etc/group 下 新增一条用户名为命名的信息

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
zpc:x:1000:1000:zpc,,,:/home/zpc:/bin/bash
zpc666:x:1003:1003::/home/zpc666:

第一部分 root: 用户名
第二部分 x : 用户密码
第三部分 0 : 用户id  
第四部分 0 : 所属组的id
第五部分 /root:用户的家目录  
第六部分 /bin/bash: 具备执行脚本的权限 简单说就是可以登录   /usr/sbin/nologin 不可以登陆的

-g 指定组名或者组id (这个组必须是已经存在的组)
-G 指定附属组
-u 指定用户的id
-m 自动创建用户的家目录
-d 指定用户的家目录
-s 指定该用户是否可以登录  

sudo useradd 用户名   #只是在/etc/passwd下面产生一条记录 /home下面并没有创建加目录  

sudo useradd -u 你的id -g 组名或者组id -md 新的目录 -s /usr/sbin/nologin或者/bin/bash

sudo useradd -u 6666 -g kangbazi(一定是已经存在的组) -md /home/kangbzi(这个目录可以不用事先存在) -s /bin/bash


  • 删除用户 userdel

如果该用户登录了 那么就不能删除 先要切换到 管理员用户或者比普通用户大的用户

userdel 用户名   #如果说指定了家目录 删除该用户的同时 并不会把家目录删除  
userdel -r 用户名 #删除用户的同时 也把家目录删除  
  • 修改用户密码 passwd

sudo passwd 用户名 

普通用户只能修改自己的密码  
管理员用户可以修改其它用户的密码
  • 修改用户的信息 usermod modify

-g 组id
-G 指定附属组
-u 指定用户的id
-a 将用户添加到附属组中
-d 指定用户的家目录
-l 用户的登录名
sudo usermod -u 777 -g 1002 -l zpc9 zpc9999


如果出现 already exists processid 100023  
直接 sudo kill -9 100023

sudo usermod -a -G zpc zpc9 #将zpc9用户加入zpc 附属组中  
/etc/passwd 组id 为主组的id

sudo usermod -l zpc8 zpc888 #将zpc888 改为 zpc8
  • 查看用户信息

id 组id #查看用户的详细信息
uid=777(zpc9) gid=1002(mysql) groups=1002(mysql),1000(zpc)

zpc@ubuntu:/home$ groups zpc9 #查看zpc9用户的组    
zpc9 : mysql zpc

whoami #查看当前登录的用户是谁
  • su sudo

Ubuntu默认 进制root 用户 我们在ssh、scp远程通过 22端口 不能使用root账户访问

安装操作系统的时候第一个用户: 介于 普通用户和 管理员用户之间 属于sudo组 有时候需要做管理员的一些工作,那么需要提升权限  sudo可以做到

sudo usermod -a -G sudo 用户名 #将指定的用户添加到sudo组中  

也可以使用 su 切换到 root 账户 弄完了再切回来  

 

组管理

  • 添加一个组 groupadd

groupadd 组名 
  • 删除一个组 groupdel

groupdel 组名 
  • 修改组名

sudo groupmod -n linlin maomao #将组名maomao改为 linlin 

 

密码信息

  • 用户信息

    /etc/passwd

  • 组信息

    /etc/group

  • 密码信息

    sudo cat /etc/shadow

原文地址:https://www.cnblogs.com/quietzpc/p/12170618.html