在 Linux 服务器上无需 sudo 权限解压/打包 .7z 的方法(实用命令)

  • 7z的压缩比很高,可以把100G的文件压到3-5G,在大文件传输上很有优势
  • 但是一般服务器上是只有tar解压,用户没法(没有权限)直接安装7z工具来解压
  • 因此使用conda安装p7zip库可以很好地解决这个问题~

关于7z的相关背景知识,可参考:一些关于上传数据-p7zip-full-压缩包的经验------深度学习·科研实践·从0到1-CSDN博客

Linux安装7zip

由于我们没有管理员权限,可通过conda解决

先conda activate 进到咱的环境里,执行:

bash 复制代码
conda install -c conda-forge p7zip

看看效果:

bash 复制代码
(base) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ conda activate sparseocc
(sparseocc) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ conda install -c conda-forge p7zip
Retrieving notices: ...working... done
Channels:
 - conda-forge
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
 - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
 - defaults
Platform: linux-64
Collecting package metadata (repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /hpc2hdd/home/schen744/.conda/envs/sparseocc

  added / updated specs:
    - p7zip


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    p7zip-16.02                |    h9c3ff4c_1001         2.2 MB  conda-forge
    ------------------------------------------------------------
                                           Total:         2.2 MB

The following NEW packages will be INSTALLED:

  p7zip              conda-forge/linux-64::p7zip-16.02-h9c3ff4c_1001 


Proceed ([y]/n)? y


Downloading and Extracting Packages:
                                                                                                                         
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
(sparseocc) schen744@mgmt-4:~/code/sparseocc/data/nuScenes-Occupancy$ 

成功安装!

实用7zip解压命令

bash 复制代码
7z x nuScenes-Occupancy-v0.1.7z  # 解压到当前目录

或指定输出目录:

bash 复制代码
7z x nuScenes-Occupancy-v0.1.7z -o./extracted_data  # 解压到 ./extracted_data

其它解压命令:

bash 复制代码
# 解压标准包
7z x archive.7z

# 解压加密包
7z x secret.7z -p'MySecurePassword'

# 合并分卷解压
7z x split_archive.7z.001

压缩(打包)相关的命令:

bash 复制代码
7z a [压缩文件名] [要打包的目录路径]
  • a:表示"添加"文件到压缩包 (archive)

示例:

bash 复制代码
7z a archive.7z /path/to/directory

实用压缩命令

  1. 标准压缩(推荐):

    bash 复制代码
    7z a -t7z -mx=9 -m0=lzma2 archive.7z /path/to/directory
    复制代码
  2. 加密压缩(密码保护):

    bash 复制代码
    7z a -p'MySecurePassword' -mhe=on secret.7z /path/to/sensitive-data
    复制代码
  3. 分卷压缩(适合大文件传输):

    bash 复制代码
    7z a -v500m split_archive.7z /path/to/large_directory
    复制代码

    将生成:split_archive.7z.001, split_archive.7z.002

相关推荐
xu_yule1 小时前
Linux_12(进程信号)内核态和用户态+处理信号+不可重入函数+volatile
linux·运维·服务器
虾..1 小时前
Linux 环境变量&&进程优先级
linux·运维·服务器
i***t9191 小时前
Linux下MySQL的简单使用
linux·mysql·adb
偶像你挑的噻1 小时前
11-Linux驱动开发-I2C子系统–mpu6050简单数据透传驱动
linux·驱动开发·stm32·嵌入式硬件
稚辉君.MCA_P8_Java2 小时前
DeepSeek 插入排序
linux·后端·算法·架构·排序算法
数据库学啊3 小时前
团队小希望运维简单,时序数据库选型有什么推荐?
运维·数据库·时序数据库
霍格沃兹软件测试开发3 小时前
Playwright MCP浏览器自动化指南:让AI精准理解你的命令
运维·人工智能·自动化
郝学胜-神的一滴4 小时前
Linux命名管道:创建与原理详解
linux·运维·服务器·开发语言·c++·程序人生·个人开发
宾有为4 小时前
【Linux】Linux 常用指令
linux·服务器·ssh
wanhengidc4 小时前
云手机性能如何?
运维·服务器·科技·智能手机·云计算