실제 작업을 수행하는 두 번째 또는 기본 스크립트를 실행하는 사이드 스크립트 또는 설정 변경을 원합니다. 내 컴퓨터에서만 할 필요는 없습니다. 따라서 모든 Linux 컴퓨터에서 작동해야 합니다.
경로가 필요한 USB의 데이터를 사용하는 스크립트를 실행할 수 있도록 새로 마운트된 USB의 경로(및 내용)를 알아야 합니다. udev에 관한 몇 가지 내용을 읽었지만 설명이 충분하지 않았습니다. 이 명령은 다음과 같습니다.
ACTION=="add", ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="1234", RUN+="/home/bibi/bin/xyz.sh
장치가 마운트될 때마다 스크립트를 실행하도록 USB를 설정합니다. 그런데 USB 드라이브의 경로를 어떻게 알 수 있나요? (예 /home/???
: )
미리 감사드립니다. 데이터가 부족하거나 놓친 부분이 있다면 죄송합니다.
답변1
쉬운 방법은 사용하는 것입니다UUID. 각 파티션에는 스크립트에서 사용할 수 있는 고유한 주소가 있습니다.
ls -l /dev/disk/by-uuid
이 명령은 현재 파티션에 대한 심볼릭 링크로 마운트된 각 드라이브의 UUID를 표시합니다(USB 드라이브에는 둘 이상의 파티션이 있을 수 있음).
이러한 코드는 무작위로 생성되며 FAT32 파티션(8개의 16진수 문자열만 있으므로 8^16 = 281,474,976,710,656 선택 항목)을 제외하고는 충돌할 가능성이 없을 만큼 충분한 엔트로피를 갖습니다.
blkid
및 명령도 확인해 볼 수 있습니다 findfs
.