현재 데스크탑 컴퓨터에 Ubuntu 13.04가 설치되어 있습니다. 32비트입니다. 3개의 파티션이 있습니다. 하나는 /용, 하나는 /home용, 하나는 스왑용입니다. 다른 OS(다른 배포판)를 설치하고 싶다고 가정해 보겠습니다. / 하지만내 /home 파티션을 포맷하지 않음.
호환되나요?
보다 구체적으로: Arch, Fedora 또는 openSUSE와 같은 Ubuntu 기반이 아닌 배포판을 /에 설치하면 설치 후 시스템이 충돌하거나 프로그램 작동이 중지됩니까?
답변1
나는 가지고있다공유됨/home은 SuSE와 Ubuntu 사이에 있으며(전송을 수행했을 때) 현재는 서로 다른 Ubuntu 버전 사이에 있습니다. 그러니 포맷하지 마세요 /home
.
당신이 하는 일은 홈 디렉토리가 끝나는 서로 다른 설치에서 서로 다른 사용자를 생성하는 것입니다 /home
(일반적으로 동일한 사용자 ID(1000)를 갖습니다). 사용자 이름('anthon')은 동일하지만 디렉터리는 다를 /home/anthon-suse
수 /home/anthon-6.06
있습니다 /home/anthon-12.04
.
이후에는 문제 없이 작동하는 콘텐츠를 이전 디렉터리에서 새 디렉터리로 연결하거나 이동할 수 있습니다.
내 경험에 따르면 변환할 필요가 없는 것(예: 사진이 있는 카탈로그)과 명시적으로 저장해야 하는 것(예: OpenOffice/LibreOffice 파일)은 문제가 되지 않습니다.
문제는 이전 버전과 호환되지 않는 새로운 형식으로 작성된 구성 파일일 수 있습니다.
답변2
다른 사람들이 지적했듯이 구성에 문제가 있을 수 있지만 음악, 사진, 영화 등과 같은 공통 폴더와 모든 파티션에 폴더가 있을 수 있습니다. 연구 mount --bind
옵션(예: 이 튜토리얼:http://backdrift.org/how-to-use-bind-mounts-in-linux)에는 서로 다른 파티션에 공통 폴더가 있습니다.
예: 멀티미디어 저장 파티션이 있고 이를 /mnt/multimedia 폴더에 마운트하고 다음 fstab을 사용하여 음악 및 비디오 폴더를 홈 디렉터리에 바인딩할 수 있습니다.
/dev/sda9 /mnt/multimedia ext4 rw,relatime,data=ordered 0 0
/mnt/multimedia/Music /home/user/Music none bind 0 0
/mnt/multimedia/Video /home/user/Video none bind 0 0
설치 폴더가 한 홈 폴더에서 다른 홈 폴더로 바인딩되는 것을 방지할 수 있는 방법은 없습니다(사용자 이름이 다른 경우에는 권한 제외(사용자 홈 폴더의 이름이 사용자 이름과 동일할 필요는 없음)).
/dev/sda9 /home ext4 rw,relatime,data=ordered 0 0
/home/user-suse/Music /home/user/Music none bind 0 0
/home/user-suse/Video /home/user/Video none bind 0 0
사용자가 서로 다른 폴더를 갖고 있더라도 홈 폴더 간에 홈 폴더의 마운트 및 공유 부분을 바인딩할 수 있습니다.
답변3
프로그래밍이 공유 라이브러리 파일의 특정 위치와 버전에 의존하는 경우 문제가 발생할 수 있습니다. /home 디렉토리에 바이너리가 없도록 유지하면 스크립팅이 양호하고 성공 가능성이 더 높습니다.
배포판에서는 시스템 파일을 다른 위치에 재배치할 수 있다는 점을 명심하세요. 또한 지원 라이브러리의 다양한 버전으로 인해 이 작업이 어려워집니다.
전체적으로 호환성이 많이 기대되지는 않을 것입니다. 그러나 시도해 보고 이것이 귀하의 상황에 적합한지 확인하는 것은 환영합니다. 하지만 직업상으로는 그렇게 하지 않을 거예요.