我使用这个命令来更改我的主目录:
sudo usermod -d new-path -m myname
但是我收到了这个错误:
usermod: user myname is currently logged in
我怎样才能更改自己的主目录并将所有文件移动到新路径?该服务器是一台远程虚拟机,并通过 putty(Ubuntu 12.04)连接。
答案1
从您的超级用户帐户创建一个新的超级用户帐户。最简单的方法是使用 X-windows 桌面中的用户管理器应用程序。(https://help.ubuntu.com/community/AddUsersHowto)只需填写空白并选中管理员框。
退出用户管理器应用程序并关闭所有其他打开的窗口。注销您的用户帐户并使用桌面自带的标准登录应用程序登录到新超级用户帐户。(首次使用时您可能需要填写帐户名称。)
作为新超级用户,登录到终端并输入以下命令:(您可能可以使用文件管理器应用程序,但我的系统基于 i7 CPU 和 M.2 NVMe SSD,速度比大多数系统快 90 倍。很抱歉,您不能确定鼠标拖放过程中没有出现任何问题。)
3.a 更改到根主文件夹:cd /home
3.b. 创建主文件夹的备份:sudo cp /home/MyUserName /home/MyUserName.bak
3.c 创建新的主文件夹位置并删除旧的主文件夹:sudo cp /home/MyUserName /media/MyUserName/MyDisk/MyUserName && sudo rm -R /home/MyUserName
3.d 将您的用户名配置文件更改为新的主文件夹:sudo usermod -d /media/MyUserName/MyDisk/MyUserName MyUserName
3.e 将用户所有者和组更改为您的用户名和组:sudo chown -R MyUserName:MyUserName media/MyUserName/MyDisk/MyUserName
3.f 在根主文件夹中创建指向新文件夹的链接:sudo ln -s /media/MyUserName/MyDisk/MyUserName /home/MyUserName
&& sudo chown -R MyUserName:MyUserName /home/MyUserName每次执行后,您可能希望验证每个命令。我个人最喜欢的终端命令是一次性验证文件和链接的安全/所有者信息:ls -ltr path/folder。您也可以从文件应用程序中进行验证(可能需要先重新启动)。
退出所有打开的窗口并注销新的超级用户帐户。
重新登录您的帐户并验证链接是否有效以及系统主文件夹是否已更改。
(可选)删除新的超级用户帐户和备份副本。