/usr과 /home은 서로 다른 파티션에 있어야 합니까?

/usr과 /home은 서로 다른 파티션에 있어야 합니까?

LCPI 시험을 준비하는 과정에서 다음과 같은 문구를 접하게 되었습니다.

여러 개의 디스크를 사용할 수 있는 경우 /usr 및 /home 디렉토리를 별도의 파티션에 배치하는 것이 가장 좋습니다.http://en.wikibooks.org/wiki/LPI_Linux_Certification/Design_Hard_Disk_Layout

데스크톱 워크스테이션의 경우 홈 디렉터리를 별도의 드라이브나 파티션에 두는 것이 좋습니다.

나는 많은 Linux 서버에 로그인했지만 시스템 관리자가 이러한 폴더를 별도의 파티션에 배치하는 것을 본 적이 없습니다.

Linux 서버에서 이러한 폴더를 분리하는 것이 일반적인 관행입니까?
/usr과 /home을 별도로 유지하는 이유는 무엇입니까?(재설치가 더 쉬워지는 것 외에도).

답변1

별도의 파티션으로 만드는 세 가지 주요 이유는 다음과 같습니다.

  1. 성능
  2. 격리
  3. 안전

  • 분리하면 /home이 데이터를 공유 네트워크 디스크에 배치하여 사용자 A가 특정 도메인의 서버에 로그인할 때 해당 데이터가 /home/$USER시스템 간에 따라다니는 단일 복사본이 되도록 할 수 있습니다. 이는 일반적 autofs으로 NFS 및 자동 마운트(일명 .

  • 데이터를 자체 파티션에 배치 하면 /usr읽기 전용 모드로 마운트할 수 있으므로 쉽게 조작할 수 없도록 디렉터리의 데이터를 어느 정도 보호할 수 있습니다.

  • 격리를 수행하는 몇 가지 추가 이유 /usr는 동일한 시스템을 더 쉽게 배포할 수 있도록 하기 위한 것입니다. 이러한 파티션은 한 번 준비한 다음 시스템 전체에 더 쉽게 복제할 수 있습니다.

  • 또한 데이터를 별도로 보관하면 백업 주기가 더 쉬워질 수 있습니다.

  • 마지막으로, 예를 들어 휘발성 디렉터리를 분리하면 /home실수로 또는 악의적인 사용자가 시스템의 기본 디스크를 가득 채우는 것을 방지할 수 있습니다.

/home15년 이상 이 작업을 하면서 저는 별도(NFS를 통한 네트워크 공유)와 별도의 파티션으로 격리된 /boot디렉터리 만 보았습니다 . /var일부 난해한 Solaris 상자 외에는 Linux 시스템을 위한 별도의 시스템을 본 기억이 없습니다 . /usr부팅하기 전에 /usr설치 하지 않으면 init시스템이 난해하고 조용한 방식으로 충돌할 것이라는 점을 기억하십시오.

답변2

별도의 파티션을 배치하는 것이 일반적입니다 /home. 이는 일반적으로 시스템 파일( /)과 사용자 파일( /home)을 분할합니다. 두 파일 시스템은 서로 다른 성능 장단점, 서로 다른 백업 전략, 서로 다른 할당량, 서로 다른 보안 정책 등을 가질 수 있습니다. 또한 이 방법을 사용하면 사용자 데이터와 별도로 운영 체제를 다시 설치하거나 이미지를 다시 설치할 수 있습니다. /home분할은 단일 사용자 워크스테이션과 사용자 파일을 저장하는 다중 사용자 시스템 모두에 좋은 아이디어입니다. /home관리자 프로필 이외의 사용자 파일이 없는 서버의 동일한 파티션에  보관할 것입니다 (그러나 해당 컴퓨터에 있는 모든 항목 /var/mail(데이터베이스 등)에 대해 별도의 파티션이 있을 수 있음) 또는 설치가 빠르고 쉬운 경우 , 특히 랩탑에서는 두 번째 디스크를 사용하기 위해 재조정할 필요가 없습니다.

/usr예전에는 운영체제가 많은 디스크 공간(예: 1GB 중 300MB)을 사용할 때 별도의 파티션을 두는 것이 일반적이었습니다. 이 파티션은 읽기 전용으로 만들 수 있으며 네트워크를 통해 공유될 수 있습니다. 읽기 전용으로 설정 하면 /usr정전 시 fsck가 필요하지 않다는 장점이 있습니다. 요즘 모든 주요 파일 시스템은 긴 fsck가 필요하지 않은 저널링을 사용하며 디스크 크기는 OS 크기보다 훨씬 더 커집니다. 1TB에 30GB는 아주 작은 용량이므로 공유가 필요하지 않습니다. ( /usr, , , /bin… )을 나머지 시스템과 분리할 이유가 없습니다 . 분할 제안이 표시되면 오래된 것입니다./etc/var/usr

답변3

/usr와 를 구분하는 것이 매우 일반적입니다 /home. 많은 이유가 있습니다. 다음은 일부입니다:

암호화

콘텐츠를 암호화하면 몇 가지 이점이 있지만 완전히 암호화된 파티션을 디렉터리 /usr전용으로 지정하고 암호화되지 않은 상태로 두는 것이 일반적입니다 ./home/usr

다른 드라이브

제가 현재 사용하고 있는 노트북에는 작은 SSD와 대용량 하드 드라이브가 탑재되어 있습니다. 루트 파티션(포함 /usr)은 SSD에 있습니다. /home하드 드라이브에 위치합니다. SSD는 기록할 때 비교적 빨리 마모됩니다. SSD 와 같은 /home휘발성 디렉토리를 SSD에 배치하면 수명이 크게 단축됩니다. /var루트 파티션을 SSD에 배치하면 시스템의 부팅 시간이 단축됩니다.

안전

/home이 옵션을 사용하여 디렉토리를 마운트하는 것이 일반적입니다 nosetuid. 이 옵션은 마운트 시 setuid 파일이 실행되는 것을 허용하지 않습니다. 이 옵션을 설정하면 사용자가 루트가 소유한 setuid 셸을 숨기기가 더 어려워집니다.

답변4

내가 찾은 또 다른 이유는 파일 시스템 최적화였습니다. /usr에는 응용 프로그램이 실행되는 동안 사용되는 공유 개체와 기타 공용 리소스가 포함되어 있으므로 파일 시스템을 자주 사용하기에 더 적합하게 만들기 위해 이를 분리할 수 있습니다. 마찬가지로 /home의 경우 빅 데이터에 적합한 파일 시스템에도 사용할 수 있습니다.

관련 정보