동일한 장치 파일로 표시되는 여러 장치를 어떻게 자동으로 다른 마운트 지점에 마운트할 수 있습니까?

동일한 장치 파일로 표시되는 여러 장치를 어떻게 자동으로 다른 마운트 지점에 마운트할 수 있습니까?

Ubuntu에서는 서로 다른 블록 장치(예: 외장 하드 디스크 및 플래시 드라이브)가 동일한 장치 파일(예: )로 표시되더라도 자동으로 서로 다른 마운트 지점(예: 및 ) /dev/sdb1에 마운트됩니다 . 이것이 어떻게 달성됩니까? Ubuntu는 어떻게 각 장치의 "이름"을 알고 해당 "이름"을 사용하여 마운트 지점의 이름을 지정합니까? ( 이러한 플러그인 장치는 포함되어 있지 않습니다.)/media/b/mydrive/media/b/myflashdrive/etc/fstab

이것을 어떻게 시뮬레이션할 수 있나요? 블록 장치를 수동으로 마운트할 때 다음을 실행합니다.

sudo mkdir /media/b/mountingpoint1
sudo mount -t ntfs /dev/sdb1 /media/b/mountingpoint1
sudo umount /media/b/mountingpoint1
sudo rmdir /media/b/mountingpoint1

장치를 분리한 다음 다른 블록 장치를 연결하면 새 장치는 다시 동일한 장치 파일로 표시되고 /dev/sdb1위 명령은 이를 동일한 마운트 지점에 마운트합니다 /media/b/mountingpoint1. 장치마다 마운트 지점의 이름을 다르게 지정하는 방법이 필요합니다.

답변1

동일한 장치 파일(예: /dev/sdb1)로 표시됩니다.

비결은 그들이아니요동일한 장치 파일로 표시: 커널이 관리하는 문자와 숫자를 포함하는 기본 장치 파일 외에도 /dev/disk/by-*파일 시스템의 볼륨 이름, 하드 드라이브의 공급업체 및 모델 등을 포함하는 심볼릭 링크도 있습니다. 또는 장치 경로입니다.

/etc/fstab이러한 심볼릭 링크는 내부 가 아닌 /dev/sdb1내부 에서 사용해야 합니다 .

답변2

(예: /media/b/mydrive/media/b/myflashdrive). 이것이 어떻게 달성됩니까? Ubuntu는 어떻게 각 장치의 "이름"을 알고 해당 "이름"을 사용하여 마운트 지점의 이름을 지정합니까? ( /etc/fstab이러한 플러그인 장치는 포함되어 있지 않습니다.)

이동식 장치의 마운트는 UDisk에 의해 수행되며 UDisk는 항상 (Ubuntu에서) 형식의 마운트 지점을 생성합니다 /media/<user>/<unique_id>. 마지막 부분은 파일 시스템 레이블이거나 파일 시스템에 레이블이 없는 경우 UUID입니다. 이동식 디스크와 드라이브는 일반적으로 미리 포맷되어 있으며 파티션에는 공급업체에서 레이블을 지정합니다(예를 들어 내 Kingston 플래시 드라이브에는 VFAT 파티션 레이블이 있습니다 KINGSTON).

를 사용하여 장치의 태그(및 UUID)를 얻을 수 있습니다 lsblk -f.

GUI를 통하지 않고 장치를 수동으로 설치하고 동일한 효과를 얻으려면 를 사용할 수 있습니다 udisksctl mount -b /dev/sdb1.

(향후) 자동 마운트를 사용하는 경우 대신 fstab항상 UUID( )를 사용해야 합니다 .UUID=/dev/sdb1

관련 정보