一、linux用户管理
linux中管理员帐户:root 超级用户 提示符号: #
(普通用户 提示符号:$)
1、创建用户
在当前普通用户创建新用户: 使用root 权限
(当前用户需要在sudo用户组,并且你要知道当前用户的密码)
步骤:(法一) sudo adduser 用户名称
输入当前用户名密码
输入新用户密码
其他的操作可以直接按回车用默认值
最后输入 Y 说明输入信息正确
(sudo命令不仅可以添加用户到系统还会默认新用户创建home目录)
(法二) sudo useradd 选项 用户名
(在这里没有选项的话 系统只是建立了一个用户就返回了 没有像法一样的操作 )
选项 :
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可 以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号
以上是在sudo用户组的普通用户创建新用户的方法,因为默认情况下在sudo用户组的用户使用sudo命令获得root权限,若是超级用户直接输入 adduser/useradd命令就好
2、切换用户
法一: su<用户名>
输入目标用户密码
法二: su - 用户名
输入用户名密码
(两法区别:法二的环境变量也会变成目标用户的)
3、查看用户的用户组
用户组: 相同身份(权限)的人。
法一: groups 用户
注意:在创建用户的时候若不指定用户组则系统默认创建一个和用户名相同的用户组。
法二:cat /etc/group | sort
( cat:读取指定文件内容并且在终端打印输出
| sort: 内容进行字典排序)
cat /etc/group |grep -E "用户名":过滤掉不想看到的
4、将其他用户加入sudo用户组
(默认情况新建用户不在sudo用户组)
并且当前用户还得具有用户权限:你是管理员,或者你是sudo用户组的一员使用sudo命令实现
以管理员为例 步骤:$ groups 目标用户名
$ usermod -G sudo 目标用户名
5、查看用户
who am i 或者 who mom likes :输出 当前伪终端用户名 pt/伪终端序号 (再打开一个终端,伪终端序号会变)
whoami :输出登录用户名
who命令其他常用参数:
who -a 能打印的都打印
-d 打印死掉的进程
-m 和 who am i 作用一样
-q 打印当前登录用户数及用户名
-u 打印当前登录用户的登录信息
-r 打印运行等级
6、删除用户
$ sudo deluser 目标用户 --remove-home
$ deluser 目标用户 --remove-home(管理员)
二、文件权限
1、ls 查看目录中内容
ls 常见选项:
ls -a 显示所有文件包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 人性化显示文件大小
-i 显示inode
-Ad 显示目录完整属性
-AsSh 显示所有文件大小 并且以人性化方式呈现
2、linux中一切皆文件
文件权限解释:共10位
----------
第一位:文件类型
-:普通文件
d :目录
l :软连接文件(相当于快捷方式)
b :块设备
c :字符设备
s :socket套接字文件
p :管道文件
(后四种文件为系统的特殊文件,一般不用普通用户去操作,不需特别掌握)
后九位三位一组,分别代表 拥有者、所属用户组、其他用户 的权限
权限:
r:读 w:写 x:执行
eg:-rwx-w---x
注意:一个目录同时有读和执行权限才可以打开并查看内部文件,一个目录要有写的权限才可以在其中创建文件
3、变更文件所有者
创建文件 touch 文件名
切换用户 su -l 目标用户
cd /home/原用户
查看创建文件 ls 文件名
sudo chown 目标用户 文件名
再查看文件 发现已经更改所有者: ll 文件名
4、修改文件权限
法一:二进制数字表示法
eg: rwx :1*(2的平方)+1*(2的1次方)+1*(2的0次方)=7
(在这里有对应权限就用“1”乘,没有乘以0)
eg:
原来 -rwx-w-r--
修改权限:chmod 600 文件名
结果:-rw-------
法二:
举例 :
原来 -rwxrwxrwx
修改 chmod ugo-x 文件名
结果 -rw-rw-rw-
(u代表拥者 g代表所属组,o代表其他用户,+和-代表增减权限)