在没有 root 用户访问权限的情况下安装 Midnight Commander

在没有 root 用户访问权限的情况下安装 Midnight Commander

我使用非 root 非 sudo 权限帐户获得了 RedHat 系统访问权限。我想安装 Midnight Commander (mc),但 yum 需要 root 权限。如何将 mc 安装到我的本地家庭而不重建它,仅使用 RPM 文件?

答案1

可以做到这一点,并在没有 root 访问权限的情况下获得完全正常工作的 Midnight Commander。归结为以下步骤:

  1. 获取所需版本的 RPM 文件。
  2. 解压 RPM 文件。意识到 RPM 只是一个 gzip 存档,它又包含 CPIO 文件,这是另一个存档。您可能会在网上找到许多关于如何执行此操作的参考资料。查找“rpm2cpio”命令。搜索“从 RPM 包的 cpio 存档中提取文件”。所以,我假设您可以解压 mc-*.rpm 并获得 2 个目录:“etc”和“usr”。将它们放在主目录下的目录中,例如“mc”,因此您将得到“~/mc/etc”和“~/mc/usr”。
  3. 如果未设置,请设置 ~/mc/usr/bin 中文件的可执行权限。 (使用“chmod”)
  4. 如果您现在运行 ~/mc/usr/bin/mc,它应该可以工作(至少它可以在我的 RHEL 7.4 上运行),但是您会收到关于找不到文件的警告,并且它的功能有限。但尽管如此,运行一次即可让它创建本地目录。
  5. 使用“export MC_DATADIR=~/mc/usr/share/mc”设置环境变量 MC_DATADIR。您还应该将其添加到您的 .bashrc 文件中。 (如“echo text_to_add >> ~/.bashrc”)。
  6. 向 .bashrc 文件添加别名“alias mc=/home/vladimir.shutow/mc/usr/bin/mc”。您可能需要使用“source ~/.bashrc”应用更改。
  7. 现在,让我们进行一些复制。将 ~/mc/etc/mc 的内容复制到 ~/mc/usr/share/mc 。
  8. 将 ~/mc/usr/libexec/mc 的内容复制到 ~/.local/share/mc 。
  9. 将文件 ~/mc/usr/share/mc/syntax/Syntax 复制到 ~/.config/mc/mcedit 目录。
  10. 如果您希望查看器扩展正常工作,请为 ~/mc/usr/libexec/mc/ext.d 目录中的所有 *.sh 文件设置可执行权限,并编辑 ~/mc/usr/share/mc/mc.ext 文件引用 /usr/libexec/mc/ext.d/*.sh 文件的所有行都指向 ~/mc/usr/libexec/mc/ext.d/*.sh 。

现在,启动“mc”应该会为您带来午夜指挥官。

相关内容