1. tar
实用程序的作用与使用
作用:
tar
(Tape Archive)是一个用于将多个文件或目录打包成单一文件的工具。它本身不压缩文件,但可以与其他压缩工具结合使用,生成压缩归档文件。
核心功能:
-
归档:将多个文件合并为一个文件(如将日志目录打包为
logs.tar
)。 -
保留元数据:保持文件的权限、时间戳等信息。
-
支持压缩:通过参数调用不同压缩算法(如
gzip
、bzip2
、xz
)。
常用命令示例:
# 打包文件(不压缩)
tar -cvf archive.tar /path/to/directory # 打包并压缩为 gzip 格式
tar -czvf archive.tar.gz /path/to/directory # 解包
tar -xvf archive.tar
tar -xzvf archive.tar.gz # 解压 gzip 压缩包
2. 不同压缩方式的区别
gzip
、bzip2
、xz
的对比:
压缩工具 | 压缩速度 | 压缩率 | 适用场景 | 文件扩展名 |
---|---|---|---|---|
gzip | 快 | 一般 | 日常快速压缩 | .tar.gz |
bzip2 | 较慢 | 高 | 需要较小文件的压缩 | .tar.bz2 |
xz | 最慢 | 最高 | 极致压缩(如发布软件包) | .tar.xz |
选择建议:
-
速度优先:使用
gzip
(例如压缩临时文件)。 -
压缩率优先:使用
xz
(例如分发大型安装包)。
示例:
# 使用 gzip 压缩
tar -czvf project.tar.gz project/ # 使用 xz 压缩
tar -cJvf project.tar.xz project/
3. 独立压缩与解压命令
压缩命令:
-
gzip
:快速压缩,生成.gz
文件。gzip file.txt # 压缩为 file.txt.gz
-
bzip2
:高压缩率,生成.bz2
文件。bzip2 file.txt # 压缩为 file.txt.bz2
-
xz
:最高压缩率,生成.xz
文件。xz file.txt # 压缩为 file.txt.xz
解压命令:
-
gunzip
:解压.gz
文件。gunzip file.txt.gz # 解压为 file.txt
-
bunzip2
:解压.bz2
文件。bunzip2 file.txt.bz2
-
unxz
:解压.xz
文件。unxz file.txt.xz
注意
-
这些命令默认会删除原始文件,如需保留,需添加
-k
参数(如gzip -k file.txt
)。
4. 文件传输工具对比
SFTP(SSH File Transfer Protocol):
-
特点:基于 SSH 加密,支持交互式操作(如上传、下载、删除、目录浏览)。
-
适用场景:需要安全传输且需交互操作的场景。
-
示例:
sftp user@server_ip sftp> put local_file.txt # 上传文件 sftp> get remote_file.txt # 下载文件 sftp> ls # 列出远程目录
SCP(Secure Copy Protocol):
-
特点:基于 SSH 加密,命令简单,适合脚本中使用。
-
适用场景:快速传输单个文件或目录。
-
示例:
scp file.txt user@server_ip:/remote/path # 上传 scp -r directory/ user@server_ip:/remote/ # 递归上传目录 scp user@server_ip:/remote/file.txt ./ # 下载
Rsync:
-
特点:增量传输(仅同步变化部分),支持断点续传,保留文件属性。
-
适用场景:定期备份或同步大量数据。
-
示例:
rsync -avz /local/dir/ user@server_ip:/remote/dir # 同步目录 rsync -avz --delete /source/ /backup/ # 同步并删除目标端多余文件
5. 系统调优(Tuned)
调优配置集的两种应用方式:
-
静态调优:直接应用预设配置(如
throughput-performance
),配置后立即生效,不随系统负载变化。 -
动态调优:根据系统负载自动调整参数(如
balanced
模式),适用于负载波动较大的场景。
配置文件 /etc/tuned/tuned-main.conf
:
-
关键参数:
dynamic_tuning=1 # 启用动态调优(1=启用,0=禁用) update_interval=60 # 动态调优检测间隔(秒)
配置集分类:
-
性能型:
-
throughput-performance
:最大化吞吐量(禁用节能,CPU 高性能模式)。 -
network-latency
:优化网络延迟(调整内核网络参数)。
-
-
节能型:
powersave
(降低 CPU 频率,减少功耗)。 -
虚拟机专用:
virtual-guest
(优化虚拟化环境下的资源分配)。
配置集存储位置:
-
系统预设:
/usr/lib/tuned/
-
用户自定义:
/etc/tuned/
创建自定义配置集:
-
在
/etc/tuned/
下新建目录(如my-profile
)。 -
创建
tuned.conf
文件,定义调优参数。[main] include=throughput-performance # 继承现有配置集 [sysctl] vm.swappiness=10 # 自定义内核参数
恢复调优设置:
tuned-adm profile throughput-performance # 重新应用配置集
tuned-adm active # 查看当前生效的配置集
6. 进程优先级(Nice值)
Nice值的作用:
-
定义:调整进程的 CPU 调度优先级,范围从
-20
(最高优先级)到19
(最低优先级)。 -
通俗理解:类似排队时的 VIP 通道,Nice 值越小,进程越容易获得 CPU 资源。
修改 Nice 值:
-
启动时设置:
nice -n -10 /path/to/command # 以高优先级(-10)运行命令
-
修改运行中进程:
renice -n -5 -p 1234 # 将 PID 1234 的 Nice 值改为 -5
查看 Nice 值:
ps -eo pid,ni,comm # 显示所有进程的 Nice 值
top # 在 `NI` 列查看实时 Nice 值