hos*_*ein 3 command-line default directory
最近我在我的系统上安装了 Ubuntu 和 Fedora。
每个操作系统都有自己的分区,我做了一个数据分区来保存我的个人文件。
现在在 Ubuntu 中,当我打开终端时,它的默认位置是 Ubuntu 的主文件夹,但我想将其更改为数据分区。我也想更改我的主目录。我的意思是当我输入时cd ~我想转到数据分区。
这可能吗?如果是这样,我该怎么做?
我希望新应用程序默认使用不在我旧家中的数据分区。并且还将家中的所有文件夹位置(如音乐、下载等)更改为数据分区。
查找分区的 UUID
在终端中运行此命令
sudo blkid
Run Code Online (Sandbox Code Playgroud)
你会得到这样的东西
/dev/sda1: UUID="FA286F4C286F06CB" TYPE="ntfs"
/dev/sda2: UUID="328E-CDB6" TYPE="vfat"
/dev/sda3: LABEL="7programs" UUID="01CAB88B789D7370" TYPE="ntfs"
/dev/sdb1: LABEL="TempBAKUP" UUID="EF54-7F8C" TYPE="vfat"
/dev/sdb3: LABEL="New Volume" UUID="B62A57642A5720A3" TYPE="ntfs"
/dev/sdb5: LABEL="7programs" UUID="01CAB88B789D7370" TYPE="ntfs"
Run Code Online (Sandbox Code Playgroud)
找到您之前创建的数据分区并记下 UUID
确保分区在启动时挂载
复制您的 fstab 文件:
sudo cp /etc/fstab /etc/fstab.$(date +%Y-%m-%d)
Run Code Online (Sandbox Code Playgroud)
在文本编辑器中打开原始 fstab:
gksu gedit /etc/fstab
Run Code Online (Sandbox Code Playgroud)
并将这些行添加到其中
# (identifier) (location, eg sda5) (format, eg ext3 or ext4) (some settings)
UUID=???????? /media/home ext4 nodev,nosuid 0 2
Run Code Online (Sandbox Code Playgroud)
并替换“??????????” 使用上面找到的预期 /home 分区的 UUID 号。
使用此命令仅更改 homedir
usermod -d /media/home username
Run Code Online (Sandbox Code Playgroud)
替换username为您的用户名
现在移动的所有文件中/home/,以/media/home/使用此命令:
cd / && sudo mv /home/* /media/home
Run Code Online (Sandbox Code Playgroud)
现在,删除旧的主文件夹
sudo rmdir /home --ignore-fail-on-non-empty
Run Code Online (Sandbox Code Playgroud)
资料来源:
https://help.ubuntu.com/community/Partitioning/Home/Moving
http://www.spiration.co.uk/post/1294/Unix-/-Linux-change-a-user%27s-home-directory---usermod