/var, /home을 별도의 파티션으로 이동

/var, /home을 별도의 파티션으로 이동

이 가이드를 읽은 후 일부 폴더(예: /var/home)를 이동하여 파티션을 분리해 보았습니다.

3.2.1 스마트 파티셔닝 방식 선택

폴더를 성공적으로 이동할 수 있었습니다이것가이드.

그러나 여러 폴더에서는 작동하지 않는 것 같고 내 모든 폴더는 적절한 폴더 없이 파티션에 덤프됩니다.

/var, /home, 을(를) /tmp별도의 파티션에 마운트 하고 싶습니다 . 안내해 주실 수 있나요?

답변1

1. 먼저, 각 마운트 지점(/var, /home, /tmp)에 대한 파티션을 생성하려면 할당되지 않은 공간이 필요합니다. 이를 위해 Gparted를 사용하십시오.

2. 그런 다음 이러한 파티션에 대한 파일 시스템을 생성하거나(Gparted를 사용하여 수행할 수도 있음) 다음을 사용해야 합니다.

mkfs.ext4 /dev/sdaX

예를 들어 /dev/sdaX 장치에 새 ext4 파일 시스템을 생성합니다(/dev/sdaX를 자신의 장치로 교체).

3. 새 파일 시스템을 /mnt에 마운트합니다.

mkdir /mnt/var        
mount /dev/sdaX /mnt/var

4. 이 프로세스 중에 디렉터리에 rw 활동이 없도록 단일 사용자 모드로 전환합니다.

init 1

5. 루트 비밀번호를 입력하세요.

6. var에 있는 데이터만 백업합니다(/var 디렉터리 자체는 백업하지 않음).

cd /var
cp -ax * /mnt/var

7. 데이터 전송이 성공한 후 /var 디렉터리의 이름을 바꿉니다.

cd /
mv var var.old

8. 새로운 var 디렉토리 생성

mkdir var

9. 새 파티션을 마운트 해제합니다.

umount /dev/sdaX

10. /var로 다시 마운트하세요.

mount /dev/sdaX /var

11. /var를 마운트 지점으로 사용하여 새 파티션을 포함하도록 /etc/fstab 파일을 편집하여 부팅 시 자동으로 마운트되도록 합니다.

/dev/sdaX       /var     ext4    defaults    0 0

12. /home 및 /tmp에 대해 1-11단계를 반복합니다.

13.마지막으로 멀티태스킹 모드로 돌아갑니다.

init 5

답변2

동일한 파티션에서 사용하려면 LVM세 가지 간단한 바인드 마운트를 사용할 수 있습니다.

바인딩 기반 솔루션을 만들려면

  1. 파일 시스템으로 파티션 생성
  2. 복구 모드 시작(단일 사용자에게는 여전히 일부 폴더가 필요함)
  3. 다음과 같이 설치하세요./mnt/data
  4. 이동할 폴더를 모두 이동하세요. 사용하는 것이 더 안전할 수도 cp있지만 mv dir dir.old설치 후에 이 작업을 수행했기 때문에 나에게는 중요하지 않습니다.

    mv /home /mnt/data/
    mv /var  /mnt/data/
    
  5. fstab에 적절한 바인드 마운트 항목을 생성합니다. 예를 들어 다음과 같습니다.

    UUID=01234567-89abc-def0-1234-567890abcde /mnt/data         ext4          noatime,nodiratime,relatime                           0       0
    
    # Binds
    /mnt/data/opt                             /opt              none          bind                                                  0       0
    /mnt/data/home                            /home             none          bind                                                  0       0
    /mnt/data/usr                             /usr              none          bind                                                  0       0
    
  6. 재시작

답변3

개인적으로 저는 @Fabian의 바인드 마운트 솔루션을 사용하거나 심볼릭 링크를 사용합니다.

  1. /etc/fstab새 파티션에 대한 항목을 만듭니다( blkid새 파티션에 대한 올바른 UUID를 얻으려면 잊지 마세요 mkdir /mnt/data).

    UUID=01234567-89abc-def0-1234-567890abcde  /mnt/data  ext4  defaults  0 0
    
  2. mount -a또는 유사한 방법을 사용하여 새 파티션을 마운트하십시오.

  3. 원본 폴더를 새 파티션으로 이동합니다.

    mv /var /mnt/data/
    mv /home /mnt/data/
    # ... (you get the point)
    
  4. 심볼릭 링크 생성

    ln -s /mnt/data/var /var
    ln -s /mnt/data/home /home
    # ...
    

df바인드 마운트 방법이 아마도 모범 사례 솔루션일 수 있지만 불필요하게 긴 목록 과 파티션 목록이 발생하지 않기 때문에 이 방법을 선호합니다 mount.

답변4

/var 디렉토리를 다른 파티션에 마운트합니다. 먼저 새 LVM을 연결하고 필요한 파일 시스템을 분할하고 생성해 보겠습니다.

새 디스크로 LVM 생성: /dev/sdb

# pvcreate /dev/sdb
# vgcreate  vg_var /dev/sdb
# vgdisplay
# df -Th
# lvcreate -n lv_var -l +<PE Free Size>
# mkfs.xfs /dev/mapper/vg_var-lv_var
# lsblk

새 마운트 지점을 생성하고 새 파티션을 마운트합니다.

 # mkdir /mnt/var
 # mount /dev/mapper/vg_var-lv_var  /mnt/var/

/var를 새 임시 설치 파티션과 동기화 시작

# rsync -aqxP /var/* /mnt/var  

성공적인 동기화 후 임시 파티션 마운트 해제

# umount  /dev/mapper/vg_var-lv_var /mnt/var/
# lsblk

/etc/fstab을 편집하여 새 파티션을 포함하고 관련 파일 시스템을 선택합니다.

/dev/mapper/vg_var-lv_var  /var                 xfs     defaults        0 0

시스템을 다시 시작하면 완료됩니다. 모든 것이 올바르게 작동하는지 확인하고 선택적으로 일부 Live Linux 시스템 등으로 부팅하여 이전 var 디렉토리를 삭제하십시오.

관련 정보