linux用户管理
用户管理
一个用户拥有一个主组
一个用户可以拥有多个附属组
一个组 可以拥有多个用户
useradd 添加用户
/etc/passwd下面会产生一条记录
创建一个用户的同时会在/etc/group 下 新增一条用户名为命名的信息
root:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologinzpc:x:1000:1000:zpc,,,:/home/zpc:/bin/bashzpc666: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)?:/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