/dev 및 /run의 inode 번호가 /와 동일한 이유는 무엇입니까? [복사]

/dev 및 /run의 inode 번호가 /와 동일한 이유는 무엇입니까? [복사]

아래 출력을 살펴보세요. 아래 출력에서 /dev​​및 의 inode 번호는 /run2와 동일합니다. ./and의 inode 번호 ../(아마도 ../가 ./를 가리켜야 하기 때문에 특별한 경우임)도 2와 2입니다. 내용이 완전히 다르기 때문에 dev동일한 inode를 갖습니다 .run/

$ll -i
total 84
      2 drwxr-xr-x  20 root root  4096 Aug 18 01:21 ./
      2 drwxr-xr-x  20 root root  4096 Aug 18 01:21 ../
     12 lrwxrwxrwx   1 root root     7 Aug 18 01:19 bin -> usr/bin/
1048577 drwxr-xr-x   4 root root  4096 Sep  1 15:53 boot/
5636097 drwxr-xr-x   2 root root  4096 Aug 18 01:21 cdrom/
      2 drwxr-xr-x  23 root root  4920 Sep  3 11:20 dev/
 262145 drwxr-xr-x 144 root root 12288 Sep  3 09:34 etc/
 524289 drwxr-xr-x   3 root root  4096 Aug 18 01:22 home/
     13 lrwxrwxrwx   1 root root     7 Aug 18 01:19 lib -> usr/lib/
     14 lrwxrwxrwx   1 root root     9 Aug 18 01:19 lib32 -> usr/lib32/
     15 lrwxrwxrwx   1 root root     9 Aug 18 01:19 lib64 -> usr/lib64/
     16 lrwxrwxrwx   1 root root    10 Aug 18 01:19 libx32 -> usr/libx32/
     11 drwx------   2 root root 16384 Aug 18 01:18 lost+found/
3932161 drwxr-xr-x   5 root root  4096 Aug 18 17:23 media/
1572865 drwxr-xr-x   7 root root  4096 Sep  2 14:19 mnt/
9175041 drwxr-xr-x   4 root root  4096 Aug 28 23:46 opt/
      1 dr-xr-xr-x 359 root root     0 Sep  3 10:18 proc/
5505025 drwx------  11 root root  4096 Sep  1 17:49 root/
      2 drwxr-xr-x  43 root root  1320 Sep  3 11:24 run/
     17 lrwxrwxrwx   1 root root     8 Aug 18 01:19 sbin -> usr/sbin/
2097153 drwxr-xr-x  11 root root  4096 Aug 26 20:34 snap/
 655361 drwxr-xr-x   2 root root  4096 Jul 31 21:57 srv/
      1 dr-xr-xr-x  13 root root     0 Sep  3 10:18 sys/
4325377 drwxrwxrwt  22 root root  4096 Sep  3 11:25 tmp/
1310721 drwxr-xr-x  14 root root  4096 Jul 31 21:58 usr/
8388609 drwxr-xr-x  14 root root  4096 Jul 31 22:05 var/

/sys와 동일합니다 /proc. 내용은 다르지만 동일한 inode를 공유합니다.

참고: 전체 시스템에는 ext4 파티션이 하나만 있습니다.거래소는 닫혔지만 그게 중요하지 않다고 생각합니다.

편집 - Stephen이 지적한 질문에 대한 답변이 상당 부분 완료되었습니다./home, /usr, /var 등의 디렉토리가 모두 동일한 inode 번호(2)를 갖는 이유는 무엇입니까?
하지만 어떻게 작동하는지 더 자세히 알고 싶습니다.

Linux를 설치할 때 하나의 파일 시스템(/dev/sda1 -> ext4 -> /)만 언급했습니다. 따라서 dev, run, proc, sys의 경우 Linux는 이러한 추가 FS를 생성하고 있으며 이제 추론할 수 있습니다.
나는 이것이 /procHDD/SSD가 아닌 메모리에 위치한 가상 파일 시스템이라는 것을 알고 있습니다. 누가 설명해줄 수 있나요 /dev? /run무슨 일이죠 /sys? 하드 드라이브에 존재합니까? 그렇다면 의미 있게 추적할 수 있다면 어디에 있습니까?

답변1

서로 다른 파일 시스템에 있기 때문입니다.

이는 device_id:inodeinode뿐만 아니라 파일을 고유하게 식별하는 튜플입니다.

# mount
...
/dev/sda8 on / type ext4 (rw,relatime,errors=remount-ro)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=816612k,mode=755)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=4032552k,nr_inodes=1008138,mode=755)

관련 정보