Ubuntu文件系统压缩空间的常用方法
tar命令打包并压缩文件/目录tar是Ubuntu中最常用的归档工具,可结合gzip(.tar.gz)、bzip2(.tar.bz2)或xz(.tar.xz)等压缩算法,将多个文件/目录打包成一个压缩包,有效减少存储占用。
gzip压缩(速度快,压缩率适中):sudo tar -czvf 压缩包名称.tar.gz /路径/到/目标(如sudo tar -czvf home_backup.tar.gz /home)。-c创建归档、-z用gzip压缩、-v显示进度、-f指定文件名。bzip2压缩(压缩率高,速度慢):sudo tar -cjvf 压缩包名称.tar.bz2 /路径/到/目标(如sudo tar -cjvf data_backup.tar.bz2 /var/log)。-j用bzip2压缩。xz压缩(最高压缩率,速度最慢):sudo tar -cJvf 压缩包名称.tar.xz /路径/到/目标(如sudo tar -cJvf full_system.tar.xz /)。-J用xz压缩。dd命令备份磁盘并压缩dd命令可创建磁盘的完整镜像(包括未使用的空间),再通过管道将输出传递给压缩工具(如gzip、bzip2),适合备份整个系统或磁盘。
gzip压缩镜像:sudo dd if=/dev/sdX | gzip > /路径/到/备份.img.gz(如sudo dd if=/dev/sda | gzip > full_disk.img.gz)。if指定输入文件(磁盘设备)、of省略(输出到管道)、gzip实时压缩。bzip2压缩镜像:sudo dd if=/dev/sdX | bzip2 > /路径/到/备份.img.bz2(如sudo dd if=/dev/sdb | bzip2 > external_disk.img.bz2)。rsync同步并压缩文件rsync可同步文件系统到指定目录,再通过管道将同步后的内容压缩,适合增量备份(仅备份变化的文件)。
gzip压缩同步:sudo rsync -a --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /路径/到/备份 | gzip > /路径/到/备份.tar.gz。-a归档模式(保留权限、时间等)、--exclude排除无需备份的系统目录(避免压缩无效文件)。bzip2压缩同步:gzip替换为bzip2即可(如... | bzip2 > backup.tar.bz2)。对于不需要频繁访问的大文件(如旧日志、视频、备份文件),可直接使用压缩工具单独压缩,节省空间。
gzip压缩单个文件:gzip /路径/到/大文件(如gzip /var/log/syslog.1),生成文件名.gz。zip压缩目录:zip -r 压缩包名称.zip /路径/到/目录(如zip -r photos_backup.zip /home/user/Pictures),-r表示递归压缩。7z高压缩率压缩:p7zip-full:sudo apt update && sudo apt install p7zip-full,再执行:7z a 压缩包名称.7z /路径/到/目录(如7z a documents.7z /home/user/Documents),.7z格式压缩率高于zip和tar.gz。gzip速度快,适合频繁访问的文件;bzip2和xz压缩率高,适合长期存储的大文件;zip兼容性好,适合跨平台传输。sudo apt clean清理APT缓存、sudo journalctl --vacuum-time 30d删除30天前日志),提升压缩率。/)时,建议进入恢复模式或Live CD,避免文件被修改导致压缩包损坏。