使用 usermod 更改用户名后的 rvm 问题
rvm problems after changing user name with usermod
我使用以下命令更改了我的用户名、主目录和组名:
usermod -l newname oldname
usermod -d /home/newname -m newname
groupmod -n newname oldname
进行此更改会产生一些影响,但(看似)最后一个问题是 Ruby,我通过 rvm
安装了它。具体来说,我的 Ruby 代码中的 none 现在将 运行 因为找不到各种需要的资源。示例错误消息:
/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
?还是我只需要 uninstall/reinstall 一切?
我不敢尝试用 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.
我建议重新安装 rvm
。
您可以使用 rvm implode
擦除您的 rvm
数据。或者您可以将 ~/.rvm
目录重命名为另一个名称,这样 rvm
就看不到它,然后安装 rvm
和您的 rubies。
在任何给定的 rvm
ruby 安装中,您可以将 $GEM_HOME 目录递归复制到新位置,这样您就不会必须重新安装您的 gem(或记住要安装的 gem)。
我使用以下命令更改了我的用户名、主目录和组名:
usermod -l newname oldname
usermod -d /home/newname -m newname
groupmod -n newname oldname
进行此更改会产生一些影响,但(看似)最后一个问题是 Ruby,我通过 rvm
安装了它。具体来说,我的 Ruby 代码中的 none 现在将 运行 因为找不到各种需要的资源。示例错误消息:
/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
?还是我只需要 uninstall/reinstall 一切?
我不敢尝试用 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.
我建议重新安装 rvm
。
您可以使用 rvm implode
擦除您的 rvm
数据。或者您可以将 ~/.rvm
目录重命名为另一个名称,这样 rvm
就看不到它,然后安装 rvm
和您的 rubies。
在任何给定的 rvm
ruby 安装中,您可以将 $GEM_HOME 目录递归复制到新位置,这样您就不会必须重新安装您的 gem(或记住要安装的 gem)。