用户管理终端命令
1 用户操作
tips 创建、删除、修改其他用户密码的命令都需要通过sudo执行
useradd -m -g 组 新建用户名 添加新用户 -m自动建立用户家目录 -g 指定用户所在的组 ,否则会建立一个和同名的组 passwd 用户名 设置用户密码 userdel -r 用户名 cat/etc/passwd|grep 用户名 确认用户信息 新建用户之后 ,用户信息会保存在/etc/passwd 文件夹中
创建用户并修改密码
tips :用户信息保存在/etc/passwd文件中,创建用户时,默认会创建一个和用户名同名的组名
2 查看用户信息
id [用户名] 查看用户UID和GID信息 who 查看当前所有登录的用户列表 whoami 查看当前登陆用户的账户名
passwd文件
etc/passwd文件存放用户信息,由6个分号组成的7个信息,分别是
1.用户名
2.密码(x,表示加密的密码)
3.UID(用户标识)
4.GID(组标识)
5.用户全名或本地帐号
6.家目录
7.登录使用的shell,就是登陆之后,使用的终端命令,Ubuntu默认是dash
usermod
usermod可以用来设置用户的主组/附加组和登录shell
主组:通常在新建用户时指定,在etc/passwd的第四列GID对应的组
附加组:在etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限
tips设置了用户的附加组之后,需要重新登陆才能生效
#修改用户的主组 (passwd中的GID) usermod -g 组 用户名 # 修改用户的附加组 usermod -G 组 用户名 # 修改用户登录 Shell usermod -s /bin/bash 用户名
tips 默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用以下命令,将用户添加到sudo附加组中
usermod -G sudo 用户名
win10下通过putty进入Linux系统的其他用户,非默认用户情况下,会经常出现不知名代码。命令的使用受到限制
例如
解决方法
usermod -s /bin/bash 用户名
解决之后
3 which命令
tips:/etc/passwd 是用于保存用户信息的文件
/usr/bin/passwd 是用于修改用户密码的程序
whic命令可以查看执行命令所在位置
例如 which ls 输出 /bin/ls
在Linux中绝大多数文件是保存在/bin /sbin /usr/bin /usr/sbin /bin是二进制执行文件目录,主要用于具体应用 /sbin是系统管理员专用的二进制代码存放目录,主要用于系统管理 /usr/bin 后期安装的一些软件 /usr/sbin 超级用户的一些管理程序
4 su命令
su 切换用户
su - 用户名 切换用户并切换目录 这个-号如果加了,-可以切换到用户家目录,否则保持位置不变
exit 退出当前登录用户
tips :su不接任何用户名 可以切换到root、 不推荐使用!
exit返回的是切换用户之前的上一个用户
5 修改文件权限命令
chown 修改拥有者 chgrp 修改组 chmod 修改权限
命令格式如下
#修改文件|目录的拥有者 chown 用户名 文件名|目录名 # 递归修改文件|目录的组 chgrp -R 组名 文件名|目录名 #递归修改文件权限 chmod -R 755 文件名|目录名
修改拥有者的用户
修改组
tips:在设置权限时,可以简单使用三个数字分别对应拥有者/组 和其他用户的权限
# 直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他 chmod +/- rwx 文件名|目录名
*组合数字代表权限
拥有者(用户) | 组 | 其他 | ||||||
r | w | x | r | w | x | r | w | x |
4 | 2 | 1 | 4 | 2 | 1 | 4 | 2 | 1 |
将01.py权限修改为用户rwx,组rw ,其他r
将test 目录及目录下的所有文件权限修改为 用户rwx,组rwx,其他rw