我使用以下命令更改了我的用户名,主目录和组名:
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。
答案 0 :(得分:1)
我建议重新安装rvm
。
您可以使用rvm
删除rvm implode
数据。或者您可以将~/.rvm
目录重命名为其他名称,以便rvm
无法查看,然后安装rvm
和您的红宝石。
在任何给定的rvm
ruby安装中,您可以放弃将$ GEM_HOME目录递归复制到新位置,这样您就不必重新安装宝石(或者记住哪些安装)。