使用usermod

时间:2018-02-09 18:26:58

标签: ruby linux rvm

我使用以下命令更改了我的用户名,主目录和组名:

usermod -l newname oldname
usermod -d /home/newname -m newname
groupmod -n newname oldname

进行此更改有一些后果,但(看似)最终的问题是Ruby,我通过rvm安装。具体来说,我的Ruby代码都不会立即运行,因为无法找到各种所需的资源。示例错误消息:

/home/newname/.rvm/rubies/ruby-2.4.1/bin/ruby: error while loading shared libraries: libruby.so.2.4: cannot open shared object file: No such file or directory

/home/newname/.rvm内部oldname加注,有很多(10,000+)个结果。

是否有安全的方法(可能有一些rvm命令)来更新各种文件中列出的所有文件路径(例如,.installed.list出现了oldname的相当多的文件路径在我的.rvm目录中反映newname而不是oldname?或者我只需要卸载/重新安装所有内容?

我害怕尝试使用sed进行修复,因为grep返回的结果如

Binary file src/ruby-2.4.1/regerror.o matches

但我在这个二进制文件中的任何地方都看不到oldname。所以,我认为sed可能会让我处于比现在更糟糕的位置。

我正在使用Linux Mint 18.3,rvm 1.29.3和Ruby 2.4.1。

1 个答案:

答案 0 :(得分:1)

我建议重新安装rvm

您可以使用rvm删除rvm implode数据。或者您可以将~/.rvm目录重命名为其他名称,以便rvm无法查看,然后安装rvm和您的红宝石。

在任何给定的rvm ruby​​安装中,您可以放弃将$ GEM_HOME目录递归复制到新位置,这样您就不必重新安装宝石(或者记住哪些安装)。