%20%ED%8C%8C%ED%8B%B0%EC%85%98%EC%97%90%20%EB%8C%80%ED%95%9C%20%2Fvar%EB%A1%9C%20%EA%B5%90%EC%B2%B4%ED%95%A9%EB%8B%88%EB%8B%A4..png)
실수로 파티션을 생성했는데 /var
삭제하고 싶습니다. 파티션을 삭제하고 해당 /
파티션을 사용하여 다음을 포함할 수 있습니까?/var
아니요OS를 다시 설치해야 합니까, 아니면 하드 드라이브를 다시 파티션하고 모든 것을 다시 설치해야 합니까?
후자의 경우 설치된 업데이트/프로그램을 새 시스템에 자동으로 다시 설치하기 위해 할 수 있는 일이 있습니까? 아니면 시스템에 추가한 모든 항목을 나열하고 수동으로 다시 설치해야 합니까? 내 것은 /home
별도의 파티션에 있으므로 새로 설치할 때 이를 재사용할 수 있습니다 /
. 하지만 .
운영체제는 쿠분투 12.10입니다.
답변1
Live CD 운영 체제를 사용하여 컴퓨터를 시작할 수 있습니다. 이렇게 하면 /var
운영 체제를 손상시키지 않고 이동할 수 있습니다. , , 및 를 사용하여 SLES 설치에서
반대 작업을 수행했습니다 . 다른 배포판에서도 작동한다고 생각합니다. /tmp
/var
/opt
/usr
- 라이브 CD 시작
- 이전
/var
파티션을 다음에 마운트하십시오./mnt/var
- 실제 루트 디렉터리를 마운트합니다.
/mnt/root
- 옳은
/mnt/root/etc/fstab
- 이전 마운트 지점 삭제
rmdir /mnt/root/var
- 실행하다
cp -a /mnt/var /mnt/root/var
- 실제 운영 체제 부팅
답변2
유진의 대답확실히 안전하고 올바른 방법입니다. 그러나 어떤 사람들에게는 실행 중인 시스템을 종료하지 않고도 실제로 이 작업을 수행할 수 있다는 것을 아는 것이 좋을 수도 있습니다. 이 답변을 교육용으로 고려하거나 liveCD에서 부팅할 수 없는 상황에서 최후의 수단으로 고려할 수 있습니다.
부인 성명:이 과정은 초보자에게는 권장되지 않습니다. 1단계에 주의를 기울이지 않으면 후속 단계를 수행하는 동안 시스템이 충돌할 수 있으며, 다시 시작한 후 다양한 응용 프로그램의 예기치 않은 동작이 발생할 수 있습니다. 이것을 시도하기 전에 당신이 잘 알고 있는지 확인해야합니다/var
TLDP에 대한 설명배포판 별 편차.
파일이 열려 있는 프로그램을 닫습니다.
/var
. 먼저 콘솔("실제" tty 중 하나)로 전환하고 데스크탑 관리자를 사용하는 경우 X 서버와 데스크탑 관리자(kdm/gdm/lightdm/...)를 닫습니다.이 작업을 수행하는 방법이나 그 의미를 모른다면 계속하지 마십시오. 시스템이 손상될 가능성이 너무 높으며 여기에서 설명하는 단계별 프로세스에는 너무 많은 가능성이 포함되어 있습니다. 죄송합니다!에서 파일을 여는 나머지 프로그램을 사용
lsof
하거나 찾으십시오 . 프로그램이 시스템 서비스에 의해 시작되거나 시작되는 경우 작업을 종료하는 것보다 서비스를 중지하는 것이 더 좋습니다. 일부 프로그램/서비스가 이 방법으로 처리하기에는 너무 완고한 경우 단일 사용자 모드(초기화 수준 1)로 전환해 볼 수도 있습니다. 대부분의 경우 시스템이 해당 위치를 사용하는 경우 예를 들어 pid 아래에 일부(!) 파일을 열어 두어도 괜찮습니다 .fuser
/var
/var
/var/run
루트 파티션을 마운트합니다(두 번째).
/mnt/tmp
빈 디렉터리를 임시 마운트 지점으로 선택하세요. 예시 로 사용하겠습니다 . 일반적으로 이mount
명령(매개변수 없음)은 루트 파티션 뒤에 있는 실제 장치 이름을 표시하지 않으므로 그것이 어느 것인지 확인해야 합니다(확실하지 않은 한). 일반적으로lsblk
부트로더 구성(시스템에 부트로더 구성이 있는 경우)에서 정보를 얻거나cat /proc/cmdline
보고된 크기로 파티션을 식별 하여 정보를 얻을 수 있습니다fdisk
.콘텐츠를 복사합니다
/var
.파티션을 찾아 마운트한 후 를/var
사용하여 내용을 rootfs(새 위치에 마운트됨)에 복사합니다cp -ad
. 예:cp -ad /var /mnt/tmp/
. 참고: 배포판이 여전히/var/run
및/var/lock
디렉토리를 관리하고 최근에 도입되지 않은 경우/run/
이 두 디렉토리의 내용을 건너뛰어야 합니다. 만약에외부 전역 변수쉘에서 활성화되어 있으면cp -ad /var/!(run|lock) /mnt/tmp/var/
- 또는cpio
대신 사용할 수 있습니다. 복사한 후 두 디렉터리를 만들고/mnt/tmp/var/
권한을 올바르게 설정하면 됩니다./var
에서 오래된 항목을 삭제합니다fstab
.물론 안전한 방법은 주석을 달는 것입니다.재시작
답변3
루트 아래:
cp -rf /var /var-new && umount /var && mv /var /var-old && mv /var-new /var
그런 다음 /etc/fstab에서 /var 마운트 지점을 제거하거나 주석 처리하고 재부팅합니다.