大家好,在日常 Linux 使用和服务器运维中,有几个高频操作是绕不开的:文件压缩与解压 、用户与权限管理 、软件包安装管理 ,以及远程连接服务器。本文将系统性地梳理这些知识点,配合实操示例,帮助你快速掌握。
一、文件压缩与归档:tar 与 zip
1.1 tar:归档打包工具
tar(Tape Archive)是 Linux 中最常用的归档工具,用于将多个文件/目录打包成单个归档文件(.tar)。
基本语法:
tar [选项] 归档文件名 源文件/目录
第一个参数(必选其一):
| 选项 | 说明 |
|---|---|
-c |
创建归档包(create) |
-x |
解压归档包(extract) |
-t |
查看归档包内容(list) |
-r |
向已有归档包追加文件 |
第二个参数(压缩选项):
| 选项 | 说明 |
|---|---|
-v |
显示详细信息(verbose) |
-f |
指定文件名(必须放在最后面) |
-C |
切换到指定目录后再操作 |
# 1. 创建归档包(不压缩)
tar -cvf archive.tar myfolder/
# archive.tar: 归档文件名
# myfolder/: 要归档的目录
# 2. 查看归档包内容
tar -tvf archive.tar
# 3. 解压归档包
tar -xvf archive.tar
# 4. 解压到指定目录
tar -xvf archive.tar -C /target/path/
# 5. 向已有归档追加文件
tar -rvf archive.tar newfile.txt
# 6. 不显示详细信息
tar -cf archive.tar myfolder/
1.2 gzip:压缩归档包
gzip 用于压缩 .tar 归档包,生成 .tar.gz 文件。
| 命令 | 说明 |
|---|---|
gzip 归档名 |
压缩为 .tar.gz 格式 |
gzip -d 压缩包名 |
解压还原为 .tar 归档包 |
# 压缩归档包
gzip archive.tar # 生成 archive.tar.gz,原归档包被删除
# 解压压缩包(还原为归档包)
gzip -d archive.tar.gz # 还原为 archive.tar,压缩包被删除
# 一步到位:创建并压缩
tar -czvf archive.tar.gz myfolder/ # -z 表示使用 gzip 压缩
# 一步到位:解压
tar -xzvf archive.tar.gz # 解压 .tar.gz 文件
1.3 zip / unzip
zip 是跨平台的压缩格式,在 Windows 和 Linux 间通用。
# 压缩文件
zip archive.zip file1.txt file2.txt
# 压缩目录(-r 递归)
zip -r archive.zip myfolder/
# 解压
unzip archive.zip
# 解压到指定目录
unzip archive.zip -d /target/path/
1.4 tar 与 zip 对比
| 特性 | tar + gzip | zip |
|---|---|---|
| 常用扩展名 | .tar.gz、.tgz |
.zip |
| 是否保留权限 | ✅ 保留 | ❌ 不保留 |
| 跨平台兼容性 | Linux 主流 | Windows/Linux/macOS 通用 |
| 压缩率 | 较高 | 较低 |
| 速度 | 较慢 | 较快 |
二、用户与用户组管理
2.1 用户信息文件
| 文件路径 | 说明 |
|---|---|
/etc/passwd |
存储用户信息 |
/etc/group |
存储用户组信息 |
# 查看用户信息
cat /etc/passwd
# 格式:用户名:密码占位符:UID:GID:描述:家目录:Shell
# 查看组信息
cat /etc/group
# 格式:组名:密码占位符:GID:组成员
2.2 创建用户:useradd
| 选项 | 说明 |
|---|---|
-m |
自动创建用户家目录 |
-s |
指定 Shell 工具(如 /bin/bash) |
-g |
指定用户组 |
# 创建用户(自动创建家目录,指定 bash)
useradd -m -s /bin/bash zhangsan
# 创建用户并指定组
useradd -m -s /bin/bash -g temp zhangsan
# 查看用户是否创建成功
id zhangsan
2.3 设置密码:passwd
# 修改指定用户密码
passwd zhangsan
# 修改当前用户密码(root 用户执行时修改 root 密码)
passwd
2.4 删除用户:userdel
| 选项 | 说明 |
|---|---|
-r |
同时删除用户家目录 |
# 删除用户(保留家目录)
userdel zhangsan
# 删除用户并删除家目录
userdel -r zhangsan
2.5 切换用户:su
# 切换到指定用户
su zhangsan
# 切换到 root 用户
su
# 切换用户并加载环境变量
su - zhangsan
# 退出当前用户 / 退出终端
exit
2.6 用户组管理
# 添加组
groupadd devops
# 删除组
groupdel devops
# 查看用户所属组
groups zhangsan
# 将用户添加到组
usermod -a -G devops zhangsan
三、软件包管理:apt
3.1 apt 基本命令
apt(Advanced Package Tool)是 Debian/Ubuntu 系列的包管理工具。
| 命令 | 说明 |
|---|---|
apt update |
更新软件源索引 |
apt install 软件名 |
安装软件 |
apt remove 软件名 |
卸载软件(保留配置文件) |
apt purge 软件名 |
彻底卸载(删除配置文件) |
apt list --installed |
列出已安装的软件 |
# 更新软件源
apt update
# 安装软件
apt install nginx
apt install python3-pip
# 卸载软件
apt remove nginx
apt purge nginx
# 搜索软件
apt search python
3.2 安装 Jupyter Notebook
Jupyter Notebook 是交互式开发环境,支持代码、文档、图表等混排。
# 安装 Jupyter
pip install jupyter
# 启动 Jupyter Notebook(允许 root 运行,指定 IP 和端口)
jupyter notebook --allow-root --ip=0.0.0.0 --port=8899
四、远程连接与服务管理
4.1 SSH 远程连接
SSH(Secure Shell)是远程连接 Linux 服务器的标准协议。
安装 SSH 服务端:
sudo apt install openssh-server
连接格式:
ssh 用户名@服务器IP
# 示例
ssh root@192.168.1.100
ssh zhangsan@example.com -p 22
第一次连接:
ssh root@192.168.1.100
# The authenticity of host '192.168.1.100' can't be established.
# Are you sure you want to continue connecting (yes/no)? yes
# 输入密码即可登录
4.2 服务管理:service 与 systemctl
service 和 systemctl 都是 Linux 服务管理工具:
| 命令 | 说明 |
|---|---|
service ssh status |
查看 SSH 服务状态 |
service ssh start |
启动 SSH 服务 |
service ssh stop |
停止 SSH 服务 |
service ssh restart |
重启 SSH 服务 |
systemctl status ssh |
查看服务状态(新版) |
systemctl start ssh |
启动服务(新版) |
systemctl enable ssh |
设置开机自启(新版) |
# 查看 SSH 服务状态
service ssh status
# 或
systemctl status ssh
# 启动 SSH 服务
service ssh start
# 重启 SSH 服务
service ssh restart
# 设置 SSH 开机自启
systemctl enable ssh
五、常用命令速查表
压缩与归档
| 命令 | 说明 |
|---|---|
tar -cvf archive.tar dir/ |
创建归档包 |
tar -xvf archive.tar |
解压归档包 |
tar -tvf archive.tar |
查看归档包内容 |
tar -czvf archive.tar.gz dir/ |
创建并压缩 |
tar -xzvf archive.tar.gz |
解压 .tar.gz |
gzip archive.tar |
压缩归档包 |
zip -r archive.zip dir/ |
压缩为 .zip |
unzip archive.zip |
解压 .zip |
用户管理
| 命令 | 说明 |
|---|---|
useradd -m -s /bin/bash 用户名 |
创建用户 |
passwd 用户名 |
设置密码 |
userdel -r 用户名 |
删除用户及家目录 |
su 用户名 |
切换用户 |
exit |
退出当前用户 |
groupadd 组名 |
添加组 |
groupdel 组名 |
删除组 |
软件安装与远程连接
| 命令 | 说明 |
|---|---|
apt update |
更新软件源 |
apt install 软件名 |
安装软件 |
ssh 用户名@IP |
远程连接 |
service ssh status |
查看 SSH 状态 |
systemctl enable ssh |
设置开机自启 |
六、总结
| 分类 | 核心命令 |
|---|---|
| 压缩归档 | tar、gzip、zip、unzip |
| 用户管理 | useradd、passwd、userdel、su、groupadd |
| 软件管理 | apt update、apt install、apt remove |
| 远程连接 | ssh、service、systemctl |
Linux 操作系统的学习需要大量实践。建议在自己的服务器或虚拟机中反复练习这些命令,逐步形成操作习惯。掌握这些基础技能,是迈向运维开发、服务部署和自动化管理的重要一步。
如果觉得这篇内容对你有帮助,欢迎收藏备用。