tmpfs의 출처와 마운트 방법

tmpfs의 출처와 마운트 방법

저는 Linux에서 BeagleBone 보드를 사용하고 있습니다.

"라는 명령을 입력하면df-h" , 나는 tmpfs가 마운트되는 것을 몇 번 보았습니다.

이는 이러한 모든 항목이 동일한 위치에 마운트되거나 tmpfs의 다른 부분에 마운트된다는 의미입니까?

이것은 내가 잘 이해하지 못하는 또 다른 사실을 깨닫게 해준다. 이 tmpfs 파일 시스템은 실제로 어디에 생성됩니까? Linux를 부팅할 때 이런 일이 발생한다고 생각합니다. 이 파일 시스템을 생성하는 스크립트를 찾을 수 있어야 합니까?

tmpfs                   242.4M         0    242.4M   0% /dev/shm
tmpfs                   242.4M      8.3M    234.2M   3% /run
tmpfs                   242.4M         0    242.4M   0% /sys/fs/cgroup
tmpfs                   242.4M     36.0K    242.4M   0% /tmp
tmpfs                   242.4M     16.0K    242.4M   0% /var/volatile
tmpfs                   242.4M     16.0K    242.4M   0% /var/lib

답변1

그들은 모두 다른 파일 시스템입니다. 이들 모두의 공통점은 일종의 파일 시스템입니다. tmpfs드라이버를 사용하여 데이터를 메모리에 저장합니다. 모두 포함된 "슈퍼 tmpfs"는 없습니다. 모든 인스턴스는 독립적입니다.

tmpfs많은 구성이 상상력이 부족하고 장치 이름에 대한 파일 시스템 유형과 동일한 문자열을 사용하기 때문에 "장치 열"이 표시됩니다 . tmpfs 드라이버는 어디에서나 데이터를 로드하지 않기 때문에 "장치 이름"을 무시합니다.

이러한 파일 시스템은 마운트하면 생성되고 마운트 해제하면 삭제됩니다. 예를 들어, 다음 명령은 내용이 루트 디렉토리(모든 tmpfs 파일 시스템은 이 방식으로 시작됨)이고, 루트가 소유하고 권한을 가지며 rwxrwxrwt최대 크기는 100MB인 tmpfs 파일 시스템을 생성합니다.

mount -t tmpfs -o size=100Mi,mode=1777 some_arbitrary_name /mnt

마운트 호출은 부팅 스크립트에서 수행됩니다. 과거에는 mount시작 중에 실행된 셸 스크립트에서 이 명령에 대한 호출을 찾을 수 있었습니다. /var/libtmpfs 마운트 지점은 일반적이지 않으며 /etc/fstab. 오늘날 전부는 아니더라도 대부분은 systemd에 의해 마운트됩니다.

1 가상 메모리는 RAM 또는 스왑입니다.

관련 정보