홈 폴더를 두 번째 드라이브로 이동


65

컴퓨터에 2 개의 HDD 드라이브가 있습니다. 현재 두 번째 드라이브는로 장착됩니다 /media/storage.

사용자 데이터를에서 /home로 이동 하려면 /media/storage/home어떻게 해야 합니까?

데이터를 저기로 옮긴 다음 다시 심볼릭 링크를 할 수 있습니까?


usermod를 사용하는 답이 가장 쉽습니다. 임시 관리자를 만들고 해당 계정으로 전환하고 usermod -m -d /path/to/non_existent_home_dir username계정 (사용자 이름)으로 다시 전환하고 임시 관리자를 제거하십시오. 여전히 5 단계이지만 다른 답변보다 훨씬 적고 덜 위험하며 더 간단한 단계입니다.
Oliver

답변:


31

홈 디렉토리 (예 : / home / your-username) 를 이동하려면 홈 디렉토리를 다른 파티션으로 복사 한 다음 시스템-> 관리-> 사용자 및 그룹을 사용하여 사용자 설정 대화 상자를여십시오. 키 아이콘을 클릭하여 본인 인증

대체 텍스트

그런 다음 변경하려는 사용자를 선택하고 속성을 클릭 한 후 고급 탭으로 이동하십시오.

대체 텍스트

홈 디렉토리를 새 디렉토리 (예 : 다른 파티션에 복사 한 디렉토리)로 변경하십시오.


3
과연. 특정 사용자의 홈 디렉토리 위치를 쉽게 변경할 수있는 좋은 방법입니다. 질문을 읽는 동안 나는 이것이 / home 디렉토리에 대한 것이 었음을 이해하고있었습니다. 이 경우 다른 장치에서 파티션을 만들고 모든 파일을 수동으로 이동 한 다음 / etc / fstab 파일 자체에서 마운트 지점의 장치를 변경할 수 있습니다.
jfmessier

3
@ jfmessier : 당신은 주석이 아니라 대답을해야합니다!
Skizz

1
명령 행에서 'cp'를 사용하여 홈 디렉토리를 복사하는 경우 'cp -rPa *': r을 재귀에 사용하고, 링크를 따르지 않는 경우 P, 소유권 및 권한 플래그를 보존하는 것이 좋습니다.
drevicko 2013

1
13.04의 Unity에는 "사용자 및 그룹"이 없으며 이러한 옵션이 포함되지 않은 "사용자"설정 만 있습니다. 13.04에서 Unity에 해당하는 용어를 언급 할 수 있습니까?
Torben Gundtofte-Bruun

Ubuntu 12.04 이상을 사용하는 경우 GUI 방법을 사용하는 옵션을 사용하지 못할 수 있습니다. 적어도 나에게는 그렇지 않습니다. 여기에있는이 방법을 사용해야했습니다. help.ubuntu.com/community/Partitioning/Home/Moving
Kyle Coots

84

명령 행에서 HOME 이동

그래픽 환경에서 작업하는 동안 부작용을 피하려면 Ctrl+ Alt+ 로 터미널에서 HOME을 이동하는 모든 조치를 수행해야합니다 F1.

새 파티션을 임시로 마운트하십시오.

sudo mkdir /mnt/tmp
sudo mount /dev/sdb1 /mnt/tmp

/ sdb1 이 HOME의 새 파티션 이라고 가정

HOME을 새 위치로 복사하십시오.

sudo rsync -avx /home/ /mnt/tmp

그런 다음 새 파티션을 HOME으로 마운트 할 수 있습니다.

sudo mount /dev/sdb1 /home

모든 데이터가 존재하는지 확인하십시오. 가장 쉬운 방법은 /home이 시점에서 이전 버전을 삭제하는 것입니다 (나중에 수행 할 수 있지만 이전 시스템을 보려면 라이브 시스템을 부팅해야합니다).

sudo umount /home  #unmount the new home first!
rm -rf /home/*  #deletes the old home

HOME을 영구적으로 만들기

다음 fstab항목에서 볼 수 있는 새 파티션의 UUID를 알아야합니다 .

sudo blkid

참고하거나 복사 / 당신을 편집 할 수있는 올바른 UUID 붙여 넣기 fstab로를

sudo nano /etc/fstab   #or any other editor

끝에 다음 줄을 추가하십시오.

UUID=<noted number from above>    /home    ext4    defaults   0  2

여기에서 적절한 파일 시스템을 선택하도록주의하십시오 (예 : ext3ext3 형식)

재부팅

재부팅 하여 /home새 드라이브에있는 공간을 많이 가지고.


1
나를 위해 일하지 않았다.
corev

2
이동할 프로필에서 로그 아웃하는 것이 좋습니다. 그런 다음 usermod이 작업 과 같은 배포 도구를 사용할 수도 있습니다 .
LiveWireBT

효과가 있었다! 감사. /mnt/tmp재부팅 후 제거 할 수 있습니까 ?
e9t

@ e9t : HOME을 임시로 마운트 할 수 있도록 만든 마운트 지점 일뿐입니다. 이 마운트 지점을 제거 할 수는 있지만 그대로 두는 것이 해가되지 않으며 안전 할 수도 있습니다. 어떤 이유로 당신은 아직도 그것을 제거하려면 여분를 확인하시기 바랍니다 하지 (그렇지 않으면 당신은 비가 역적 당신이에 장착 한 모든 데이터를 삭제하는 위험 거기에 아무것도 장착있다 /mnt/tmp).
Takkat

1
서버에 대해이 지침을 따르고 이제 SSH를 통해 서버에 액세스 할 수 없습니다 (Permission denied (publickey) :( :( :(
Khue

13

공식적인 자세한 절차는 Ubuntu 도움말 위키에 있습니다.


파티션의 UUID 찾기

sudo blkid

Fstab 설정

sudo -H gedit /etc/fstab 

이 라인을 추가하십시오

UUID=????????   /media/home    ext4    defaults    0  2 

????????원하는 /home파티션 의 UUID 번호로 대체하십시오 .

fstab파일을 저장하고 닫은 후 다음 명령을 입력하십시오.

sudo mkdir /media/home

/home새 파티션으로 복사

sudo rsync -aXS --progress --exclude='/*/.gvfs' /home/. /media/home/.

복사 확인

sudo diff -r /home /media/home -x ".gvfs/*"

참고 : 찾을 수없는 파일에 대한 오류가 나타날 수도 있습니다. 이는 현재 존재하지 않는 장소를 가리키는 심볼릭 링크 때문입니다 (다시 부팅 한 후에 수행됨). 당신은 이것을 무시할 수 있지만 다른 것을 확인하십시오.

스위치를위한 fstab 준비

sudo -H gedit /etc/fstab

이제 이전에 추가 한 줄을 편집하여 다음과 같이 /media/home부품을 간단히 말 /home하십시오.

UUID=????????   /home   ext4    defaults     0  2 

이동 /home/old_home

cd / && sudo mv /home /old_home && sudo mkdir /home

재부팅 또는 모두 다시 마운트

다음을 사용하여 재부팅하거나 다시 마운트하십시오.

sudo mount -a

10
Ask Ubuntu에 오신 것을 환영합니다! 이 이론적으로 질문에 대답 할 수 있습니다 동안, 바람직 할 것이다 여기에 대한 대답의 본질적인 부분을 포함하고 참조 할 수 있도록 링크를 제공합니다.
Eliah Kagan

7

과연. 특정 사용자의 홈 디렉토리 위치를 쉽게 변경할 수있는 좋은 방법입니다. 질문을 읽는 동안 나는 이것이 / home 디렉토리에 대한 것이 었음을 이해하고있었습니다. 이 경우 다른 장치에서 파티션을 만들고 수동으로 모든 파일을 이동 한 다음 / etc / fstab 파일 자체에서 마운트 지점의 장치를 변경할 수 있습니다


2

좋아, 이것이 내가 작동하는 유일한 방법은 다른 사용자를 만들고 관리자 권한을 부여하고 주 ID를 로그 오프 한 다음 새 ID로 로그온 한 다음 usermod 명령을 사용하는 것입니다.


0

태스크:

  • 가용성을 확인하고 "WD Purple"및 "WD Gold"두 개의 HDD를 포맷하십시오.
  • 두 개의 HDD를 Ubuntu 파일 시스템에 마운트하십시오.
  • HOME 폴더를 "WD Gold"HDD로 이동하십시오.

관련된 링크들:

디스크 포맷

필요한 모든 SATA 및 전원 케이블을 HDD에 플러그인하십시오. 우분투를로드하십시오. 키보드를 누르고 "디스크"를 입력하십시오. "디스크"유틸리티가 열립니다 : 여기에 이미지 설명을 입력하십시오

이 유틸리티에서 HDD를 Ext4 파일 시스템으로 포맷 할 수 있습니다. 그렇지 않으면 디스크를 포맷하려면 다음 명령을 사용하십시오.

  1. fdisk (man fdisk);
  2. 이별 (사람이 이별);
  3. mkfs (man mkfs)

예를 들어 GUI "디스크"를 사용했기 때문에 매개 변수를 잘 모르겠습니다.

sudo mkfs.ext4 -L purple /dev/sdb  # not sure with parameters
sudo mkfs.ext4 -L gold   /dev/sdc  # not sure with parameters

것을 명심 서식을 대상 하드 디스크에있는 모든 파일을 삭제합니다 . 하드 디스크에 데이터가 있고 손실하지 않으려면이 단계를 건너 뛸 수 있습니다.

느린 포맷은 4TB 디스크의 경우 16 시간에서 20 시간까지 많은 시간이 걸립니다.

디스크를 영구적으로 마운트

# Press CTRL+ALT+T and open a console.
# Check your /dev/sdb and /dev/sdc discs are visible:
lsblk
# Create directories for the new HDD WD Purple and WD Gold
sudo mkdir /hdd_purple
sudo mkdir /hdd_gold  # temporary directory
# Temporary mount to the new mount point
sudo mount /dev/sdb1 /hdd_purple
sudo mount /dev/sdc1 /hdd_gold
# Unmount drives
sudo umount /dev/sdb1
sudo umount /dev/sdc1

# Configuration file /etc/fstab has list of all partitions that will be mounted at boot.
# 1. Show and copy UUID of the HDD with this command:
sudo blkid
# My data is:
#     /dev/sdb1: LABEL="purple" UUID="6ce9ec1f-3bf5-420f-8502-1b4f55f2fc60" TYPE="ext4" PARTUUID="a14c8357-a8ce-42e4-9772-64ccfad3e226"
#     /dev/sdc1: LABEL="gold" UUID="1d049c7c-4565-480b-a181-2459e8ff8c1b" TYPE="ext4" PARTUUID="4c691b21-b4e3-4dab-ab91-d7bf7272b2b5"
# Make a backup of that file to be able to revert changes.
sudo cp /etc/fstab /etc/fstab.2018.11.29.bak
# 2. Add a new partitions by editing /etc/fstab file as root:
sudo nano /etc/fstab
# 3. At the bottom of fstab file add 2 lines similar to this:
UUID=6ce9ec1f-3bf5-420f-8502-1b4f55f2fc60   /hdd_purple   ext4   defaults           0  2
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b   /hdd_gold     ext4   defaults           0  2
# Your UUID have to be different!
# Write the file with keys <Ctrl+O> then <Return>. Quit the editor with <Ctrl+X>.
# If you have Midnight Commander running, then save before quitting with <Ctrl+X>,
# because <Ctrl+O> will switch from nano editor to your MC.

# To see if the drive is mounted correctly we can simulate the mount process at boot with:
sudo mount -a

명령 행에서 HOME 이동

# To avoid side effects while working in a graphical, environment
# we should perform all actions to move HOME from a terminal with Ctrl+Alt+F3.

# Press <Ctrl+Alt+F3> and swidth to console mode.
# Login in the console mode.

# Copy HOME to the new location:
sudo rsync -avx /home/ /hdd_gold

# Delete everything in the HOME directory.
# Be careful with this command, make sure you have a backup.
rm -rf /home/*

# Make HOME permanent -- edit /etc/fstab configuration file
sudo nano /etc/fstab
# Change string
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b  /hdd_gold  ext4  defaults  0  2
# to string
UUID=1d049c7c-4565-480b-a181-2459e8ff8c1b  /home      ext4  defaults  0  2
# /hdd_golds change to /home directory

# After a reboot, your /home resides on the new drive having plenty of space.
sudo reboot
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.