暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

linux操作系统-用户和用户组管理以及解压常用命令

原创 喵呜 2025-02-12
118

## 五、用户和用户组管理
### 1. 命令:id
1. 功能描述:显示用户的ID,以及所属群组的ID。
2. 语法:id 选项 用户名
3. 选项:
```
-u 显示用户ID;
-g 显示用户所属群组的ID;
-r 显示实际ID;
```
4. 范例:
```
1.[root@Study ~]# id
uid=0(root) gid=0(root) 组=0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
2.[root@Study ~]# id -u
0
3.[root@Study ~]# id -u abc
1000
```
### 2. 命令:useradd
1. 功能描述:添加新用户。
2. 执行权限:root
3. 语法:useradd [选项] 用户名
4. 选项:
```
-r 建立系统帐号,但无家目录不可登录系统。
-g 指定用户所属的主组。
-G 指定用户所属的附属组。
-u 指定用户ID即UID。
-s 指定用户登入后使用的shell。
-s /sbin/nologin 和 -s /bin/false都是不允许该用户登录系统,
但是/bin/false最严格,一切服务都不能用,而/sbin/nologin仅不能登系统,可以登录ftp等服务。
```
5. 范例:
```
1.添加一个名为cui的用户
[root@Study ~]# useradd cui

2.新建用户harry,其附属组为admins
[root@Study ~]# useradd -G admins harry

3.新建用户alice,没有可交互的登录Shell
[root@Study ~]# useradd -s /sbin/nologin alice

4.创建用户tammy,其用户ID为2020,此用户的密码应当是redhat。
[root@Study ~]# useradd -u 2020 tammy
[root@Study ~]# echo redhat | passwd --stdin tammy

5.创建用户mysql设置其主组为mysql且不可登录系统
[root@Study ~]# useradd -r -s /sbin/nologin mysql -g mysql
```
### 3. 命令:usermod
1. 功能描述:用来修改用户的基本信息。
2. 执行权限:root
3. 语法:usermod [选项] 用户名
4. 选项:
```
-a 把用户追加到某些组中,和-G一起使用。
-G 把用户追加到某些组(附加组)中,和-a一起使用。
-g 修改用户的所属组(即修改/etc/passwd中目标用户信息的第4个字段(GID))。
-l 修改用户名称,即/etc/passwd的第一栏。
-u 修改用户的UID
-L 暂时将用户冻结(等同于passwd -l 用户名)
-U 将用户解冻—(等同于passwd -u 用户名)
```
5. 范例:
```
1.将用户abc加入到wheel组
[root@Study ~]# usermod -a -G wheel abc

[root@Study ~]# gpasswd -a abc wheel

2.将用户abc从wheel组中移出。
[root@Study ~]# gpasswd -d abc wheel

3.将用户test的所属组修改为root
[root@Study ~]# usermod -g root test
```
### 4. 命令:passwd
1. 功能描述:设置用户密码
2. 执行权限:root
3. 语法:passwd [选项] 用户名
4. 选项:
```
-l --lock 锁定指定账户(仅限root用户);
-u --unlock 解锁指定用户(仅限root用户);
--stdin 从标准输入读取。
```
5. 范例:
```
1.为上述添加的新用户study1设置密码。
[root@Study ~]# passwd study1
2.为用户test设置密码为123456
[root@Study ~]# echo "123456" |passwd --stdin test
3.另外,直接输入passwd可以修改当前用户的密码。
```
### 5. 命令:userdel
1.功能描述:删除用户账户和相关文件
2.语法:userdel [选项] 用户名
3.选项
```
-r 删除用户登入目录以及目录中所有文件。
```
4. 范例:
```
1.删除用户study1及所有文件。
[root@Study ~]# userdel -r study1
```
### 6. 命令:groupadd
1. 功能描述:创建一个新的用户组。
2. 语法:groupadd 组名
3. 范例:
```
1.把用户test添加到wheel组中
[root@Study ~]# gpasswd -a test wheel

[root@Study ~]# usermod -a -G wheel test

2.把用户test从wheel组中移除
[root@Study ~]# gpasswd -d test wheel
```
### 7. 命令:groupdel
1. 功能描述:删除用户组。
2. 语法:groupdel 组名
3. 范例:
```
[root@Study ~]# groupdel students
```
### 8. 命令:gpasswd
1. 功能描述:把用户添加到组里或从组中删除。
2. 语法:gpasswd 选项 用户名 用户组名
3. 选项:
```
-a 用户名 把用户添加到组 -a 即add
-d 用户名 把用户从组中删除 -d 即delete
```
4. 范例:
```
1.把用户test添加到wheel组
[root@Study ~]# gpasswd -a test wheel
```
### 9. 命令:groups
1. 功能描述:查看指定用户的所属组。
2. 语法:groups 用户名
3. 范例:
```
[root@Study ~]# groups root
root : root
[root@Study ~]# groups omm
omm : dbgrp
```
## 六、备份压缩命令
### 1. 命令:zip
1. 功能描述:压缩文件或目录。
2. 压缩后文件格式:.zip
3. 语法:zip 选项 压缩后文件/目录名 要压缩的文件/目录名
4. 选项:
```
-r 递归处理,压缩目录时用,将目录下的所有文件和子目录一并处理。
-q 不显示指令执行过程。
```
5. 说明:压缩后保留源文件。
6. 范例:
```
1.压缩目录newcapec
[root@Study opt]# zip -r newcapec.zip newcapec
2.压缩文件aa.cfg
[root@Study opt]# zip aa.cfg.zip aa.cfg
```
### 2. 命令:unzip
1. 功能描述:解压缩
2. 语法:unzip 选项 压缩文件
3. 选项:
```
-d 指定文件解压缩后所要存储的目录。
-q 执行时不显示任何信息。
```
4. 说明:解压后保留源文件。
5. 范例:
```
1.解压缩newcapec.zip
[root@Study opt]# unzip newcapec.zip
2.将newcapec.zip解压到/tmp
[root@Study opt]# unzip newcapec.zip -d /tmp
```
### 3. 命令:gzip
1. 功能描述:仅压缩文件,不可以压缩目录。
2. 语法:gzip 文件
3. 压缩后文件格式:.gz
4. 说明:压缩/解压后不保留源文件。
5. 解压缩命令:gunzip 压缩文件
6. 范例:
```
[root@Study opt]# gzip aa.cfg
[root@Study opt]# ll
总用量 4
-rw-r--r--. 1 root root 35 1月 22 10:06 aa.cfg.gz
```
### 4. 命令:tar
1. 功能描述:打包文件/目录;打包并压缩文件/目录。
2. 压缩后文件格式:.tar.gz
3. 语法:tar 选项 打包压缩后文件/目录名 要压缩的文件/目录
4. 选项:
```
-c 打包
-C 解压到指定目录
-f 指定文件名
-t 列出打包文件的内容
-v 显示详细信息
-x 解包
-z 打包同时压缩或解压
--exclude 排除打包压缩时不需要的文件
```
5. 说明:压缩/解压后保留源文件。
6. 范例:
```
1.将目录newcapec打包并压缩
[root@Study opt]# tar -zcf newcapec.tar.gz newcapec
2.查看log.tar.gz打包了哪些内容
[root@Study opt]# tar -tf log.tar.gz
3.解压缩newcapec.tar.gz文件
[root@Study opt]# tar -zxf newcapec.tar.gz
4.将newcapec.tar.gz解压到/tmp目录
[root@Study opt]# tar -zxf newcapec.tar.gz -C /tmp
5.压缩k12tomcat目录,并排除k12tomcat/logs目录、k12tomcat/eam-logs目录和k12tomcat/temp/spring.log*文件
[root@Study opt]# tar -zcf k12tomcat.tar.gz k12tomcat --exclude=k12tomcat/logs --exclude=k12tomcat/eam-logs --exclude=k12tomcat/temp/spring.log*
注意:建议要压缩的文件和要排除的文件都使用相对路径且使用./则会失败。
```

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论