내 /home
파티션이 켜져 있습니다 /dev/sda1
. 내 /
파티션이 켜져 있습니다 /dev/sda2
.
파티션 에 파일을 만들 때마다 해당 파일은 디렉토리 아래의 파티션 /home
에 표시됩니다 ./
/home
Windows에서는 D 드라이브에 파일을 만들고 해당 파일은 C 드라이브에서도 볼 수 있습니다.
이것이 어떻게 가능한지 ?
답변1
현재 파일 시스템 환경이 Windows 또는 단일 디스크/파티션 시스템을 기반으로 하는 경우 마운트 지점 개념이 익숙하지 않을 수 있습니다. (Windows는 이제 마운트 경로에 디스크 마운트를 지원하지만 Linux/Unix만큼 일반적이지는 않습니다.)
Linux/Unix의 파일 시스템은 중첩된 파일 계층 구조입니다. (폴더도 파일입니다..)
로 시작합니다 /
. 모든 것의 뿌리. 귀하의 경우 이것은 파티션에 있습니다 /dev/sda2
. /home
on 을 사용하면 /dev/sda1
다음과 같이 끝납니다.
/
dev/
pts/
- (물건)
sys/
home/
rebecca/
txtfile.txt
bob/
등 (더 많은 디렉토리가 있습니다. 이것은 단지 예일뿐입니다.)
따라서 /
-> 의 경로는 /home/rebecca/textfile.txt
최대한 투명하게 만들어졌습니다. 따라서 파티션 textfile.txt
에 있는 것처럼 보이지만 /
실제로는 그렇지 않습니다. 파티션 에 있어요 /home/
. 바로 그거야저것파티션은 디렉토리 mounted
에 ./
/home
다음 세 가지 명령을 시도해 보세요.
df /
df /home/
df /home/rebecca/textfile.txt
<-- 파일의 실제 경로를 사용하십시오.
이 df
명령은 명령을 실행할 때 시스템에 마운트된 실제 및 가상의 모든 파일 시스템을 표시합니다. df
위의 예에서와 같이 사용하면 출력을 필터링하여 한 번에 더 적은 수의 항목을 검사할 수 있습니다.
TL;DR- Unix와 Linux 마운트 지점이 작동하여 모든 다양한 디스크를 하나의 응집력 있는 파일과 디렉터리 트리로 함께 표시하는 방식입니다.
답변2
POSIX 파일 시스템에서는모든 것에 있는 파일 시스템 루트 내부 어딘가에 존재합니다 /
. 에 마운트한 루트 파티션에는 /
디렉토리가 있습니다 /home
. 이 디렉토리는 (아마도) 다음과 같은 용도로 사용되고 있습니다.마운트 포인트(즉, 파티션과 같이 마운트된 파일 시스템이 상주하는 위치) home
. 거기에 생성된 파일~이다파티션 에 생성되며 home
그 내용은 해당 파티션의 마운트 지점에서 볼 수 있습니다.
의 콘텐츠를 사라지게 함으로써 발생하는 문제에도 불구하고 /home
다음과 같은 경우:
# umount /home; mount /dev/sda1 /mnt; ls /mnt
당신은 무엇의 내용을 볼 것입니다가졌다에 있었습니다 /home
. 이제 에 표시됩니다 /mnt
.
실제로는 이렇게 하지 마세요. 이것은 실증적인 사고 실험입니다.
mount
매개변수가 제공되지 않은 경우 명령 의 출력을 관찰하면 어떤 마운트 지점에 어떤 파일 시스템이 마운트되는지 목록을 볼 수 있습니다 .
답변3
자신의 파일이 포함된 파일 시스템(파티션)은 로 시작하는 파일 시스템 트리의 아무 곳에나 배치할 수 있습니다 /
. 일반적으로 위치는 /home
사용자 이름으로 명명된 디렉터리가 있습니다. 예를 들어, /home/rebecca
.
UNIX 기반 시스템(Linux 기반 시스템 포함)은 단일 루트 파일 시스템( /
)을 사용합니다. Windows 시스템은 다중 루트 파일 시스템( , 등)을 사용 C:
합니다 D:
.
파일을 특정 위치에 쓸 때 파일 내용을 저장할 수 있는 디스크 공간이 충분하다면 일반적으로 어떤 파티션에 파일을 쓸지 걱정할 필요가 없습니다.