Linux用户和用户组

用户和用户组
用户在/etc/passwd中
用户组在/etc/group/中
注意:在创建用户时,系统默认生成一个用户组(组名和用户名一致)

查看用户时:cy:x:1000:1000:cy:/home/cy:/bin/bash
cy:用户名
x:加密的密码
1000:用户编号
1000:组编号
cy:用户全名称
/home/cy:所在位置
/bin/bash:可执行命令

useradd:添加用户
格式:
useradd 用户名

passwd:修改密码
格式:
passwd 用户名
注意:输入密码时,密码默认不显示

su:切换用户
格式:
su 用户
注意:root切换普通用户时,不需要输入密码。

userdel:删除用户
格式:
userdel [选项] 用户名
选项:
-f:删除登录用户
-r:删除用户和用户相关文件和目录
-rf:删除登录用户和登录用户相关文件和目录
注意:用户主目录在/home,通信文件在/var/spool/mail/
使用-f时,用户相关文件和目录不会进行删除

groupadd:创建组(普通组,由系统默认生成的叫做主组)
格式:
groupadd 组名
注意:
创建普通组不会生成用户

groupdel:删除组(普通组,不能删除主组)
格式:
groupdel 组名
注意:
不能删除主组,主组随着用户的消失而消失
区分:主组是创建用户时系统默认生成的,依赖于用户的存在而存在
手动创建的普通组用于管理多个普通用户


gpasswd:管理用户和组
格式:
gpasswd [选项] 用户 组
选项:
-a:添加
-d:删除
注意:组默认是没有任何用户的
添加一个用户到组的时候,可以添加到普通组,别的主组和本身的主组
如果是普通组,无论组下是否有用户都可以直接删除
如果是主组并且主组下面有用户,删除用户时主组不会删除(主组变成普通组)

权限:
通过ll查看详细信息时:-rw-r--r--. 1 root root 181 3月 15 15:34 test.txt
-:表示类型
rw-:当前用户权限
r--:当前用户组权限
r--:其他用户权限

r:读
w:写
x:执行

u:当前用户
g:当前组
o:其他
a:所有

权限分配
chmod:修改权限
格式1:(使用相加减表达权限)
chmod [选项] [权限修改] [文件]
格式2:(使用数字表达权限)
chmod [选项] [权限修改] [文件]
4:读
2:写
1:执行
7:全部
注意:如果只给一个数字表示修改o,两个表示修改go
选项:
-R:迭代修改

chgrp:修改用户组
格式:
chgrp [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改
注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组
如果不存在就显示编号,存在显示名称

chown:修改所属用户
格式:
chown [选项] [组名] [文件或目录]
选项:
-R:表达迭代修改

sudo:越权执行
格式:
sudo 命令
注意:sudo实际上去借root权限执行命令(root对普通用户分配了权限)

sudo -l:查看当前权限

visudo:修改配置文件进行权限分配(文件所在位置/etc/sudoers)
例如:普通用户拥有root所有权限
用户名 ALL=(ALL) ALL
用户名 ALL=(root) ALL
例如:普通用户只能执行一个命令
用户名 ALL=(root)/bin/rm

可以同过vim /etc/sudoers修改权限分配


查找
find
格式:
find 开始查找路径 [选项] [条件]
选项:
-name
*表示匹配所有
?表示匹配一个
例如:从/开始查找后缀为.txt
find / -name "*.txt"
-type
d:表示目录
f:表示文件
例如:从/开始查找文件
find / -type f
-size
ll --block-size=单位
例如:大小以k为单位进行显示
ll --block-size=k
注意:条件需要给上单位
+表示大于
-表示小于
不给就是等于
例如:从/开始查找文件大小大于2k
find / -size +2k
-user
-group

Linux常见符号
|:管道,把前面一部分的内容交给后面去处理
例如:
cat -n /etc/profile | more

grep:筛选
格式:
grep 筛选条件

>>:追加,把命令1的结果写入到命令2
格式:
命令1 >> 命令2
例如:cat profile >> test.txt
>:覆盖
格式:
命令1 > 命令2
例如:cat profile > test.txt

软件包管理
rpm:查看 管理 删除软件
格式:
rpm [选项] [软件名称] [后缀]
选项:
-q:查询
-a:所有
-qa:查询所有
-e:删除
后缀:
--nodeps:无视依赖关系
注意:直接-e时,如果有依赖关系,不能直接删除
需要加上--nodeps后缀

tar:解压和压缩
格式:
tar [选项] [包] [路径]
选项:
-c:压缩
-x:解压
-v:显示
-z:gzip
-j:bzip
-f:使用当前名称
-t:查看

解压:
-C:指定解压路径
例如:解压jdk
tar -zxvf jdk.tar.gz -C /usr/local/soft/
打包:
例如:把jdk从新打包
tar -cvf 包的所在位置加包的名称 所要打包的内容
安装包的位置/usr/local/module/
安装jdk的位置/usr/local/soft/

配置环境变量
vim /etc/profile

在最后的位置输入
export JAVA_HOME=/usr/local/soft/jdk1.8.0_171
export PATH=$PATH:$JAVA_HOME/bin
:wq保存
刷新文件:source /etc/profile

Linux用户和用户组

上一篇:Ubuntu配置


下一篇:Linux下使用fdisk扩大分区容量