대부분의 일반적인 Linux 부팅 프로세스에는 실제로 두 개의 루트 파일 시스템이 있습니다.
실제 루트 파일 시스템은 물리적 디스크에 파티션 또는 논리 볼륨에 위치하고 있습니다 - 그들은 최근에 액세스 한 때의 블록 RAM에 캐시에 존재하는 것이지만 그것은, 파일 시스템 등의 RAM에로드되지 않습니다. 이 파일 시스템에 대한 업데이트는 발생할 때 디스크에 기록됩니다. 루트 파일 시스템은 네트워크 리소스에있을 수도 있지만이 경우 일반적으로 물리적 디스크의 파티션 / 볼륨 / 파일에 보관됩니다.
초기 루트 파일 시스템은 초기 부팅 과정에서 커널과 함께 RAM에로드됩니다. 이것은 /boot실제 루트 파일 시스템 (예 : RAID 및 LVM 모듈 또는 NFS 모듈 / 도구)을 찾고 확인하고 마운트하는 데 필요할 수있는 커널 모듈 / 드라이버, 스크립트 및 기타 유틸리티 만 포함 된 파일의 작은 파일 시스템 입니다. 네트워크를 통해 루트를 마운트하는 경우). 실제 루트 파일 시스템이 마운트되면이 특별한 "초기"시스템이 폐기됩니다. initrd중요한 변화는 이러한 새로운 커널 패키지를 설치하기로했다 때 (초기 RAM 디스크를 의미하는)이 재건 될 것이다. 일반적으로 다른 작업으로 업데이트되지 않습니다.
위의 내용은 대부분의 Linux 설치에 적용되지만 쓰기 가능한 CD / DVD 또는 USB 드라이브의 일부 라이브 시스템과 같은 특수한 경우에는 상당히 다를 수 있습니다.
but where does directory / exist.. ?
물리적으로 아닙니다. 다른 파일 시스템의 디렉토리 인 다른 마운트 지점과 달리 (예 : /mnt또는 아래의 디렉토리와 같이 /media사실상 어디에 있더라도) 마운트 지점 /은 물리적으로 존재하지 않으며 커널 내부에만있는 가상 객체입니다. /반면에 마운트 된 파일 시스템 은 위에 나열된 두 가지 중 하나입니다. initrd초기 부팅 프로세스 중 메모리에있는 파일 또는 다른 시간에 물리적 디스크 또는 네트워크 리소스에있는 파일 시스템입니다 (일부 특수한 경우 위에서 언급 한 경우 제외) .
/. RAM에 마운트되어 있지 않습니다. 프로세스가 해당 파일 시스템의 파일을 참조 할 때마다 시스템 호출이 커널에 수행되고 디스크가 이해하는 저수준 인터페이스를 통해 디스크와 통신합니다.