技术解析

没有 root 权限,怎样能够轻松方便地装软件呢?
0
2021-06-11 21:10:13
idczone
没有 root 登陆了一台 linux 服务器,没有 docker 也没有 singularity 、proot 、chroot 等。但需要使用大量 github 的开源软件,请问这种抗投诉服务器情况下有什么轻松方便的方法呢?
这问题是 null 啊
装软件和 root 本来也没什么关系

添加用户到 sudoer 列表中
编译安装

nix 可以免 root 使用。

我以前会自己编译,需要什么就下载什么的源码从头编译。
直到我成为了服务器的管理员

可能没说清楚,情况是这样的
有一个公共的服务器,自然普通用户就没有 root 权限。要想装软件编译是最好的,但问题是安装的量比较多,依赖也多,全部手动编译就很痛苦。找管理员也不太现实,因为我 3 天两头装一个,总不能老是麻烦人家。
理想是找个方法,无须 root 权限就能够模拟出 root 的环境,这样我就可以对着软件安装说明书无脑装软件了

Oracle 有些就不用 root 安装, 选择安装的时候指定个安装位置就行了, 不往系统目录里写入内容就用不上 root.

开个 docker,啥都在里面跑,不知道行不行

绝大多数软件安装也不需要 root 权限,make install 的时候指定你能写的 DESTDIR 就行

最简单的,利用不需要 root 权限的包管理器,比如 homebrew for Linux 。
麻烦一点就得从头开始编译了,在自己的家目录下建立一个文件夹,然后在里面建立 usr,lib,share 之类的文件夹,然后把很多软件编译,安装到这个文件夹就好了

感觉这种情况好像在我读书的时候在学校用超算,超算机器从不更新编译器,防止挖矿病毒还不给你连外网,这种情况一般都是手动编译程序,不过遇到编译器版本问题简直想哭。话说装 docker 本身就需要管理员权限吧。

需要具体情况具体分析
考虑到不同的软件需要的环境可能会不同,可以用 conda 管理各个软件的运行环境。
只需要安装一个 miniconda

都开源了,那就全部自己编译安装呗。绝大多数开源项目可以在 configure 或者 install 阶段指定安装位置。
主要是连着依赖一起全要自己编译很麻烦而已,远不如包管理器一行命令解决问题那样省事。

谢谢,安装 miniconda 已经是最实际的解决办法了,但很多软件就给你个"apt-get"的包,我还得搜搜如何用 conda install 来安装这个包,而且还容易出问题,太难了

根据 ?
podman ?

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服