[질문] 연결된 장치 찾기
글쓴이: ehnawh / 작성시간: 화, 2009/05/26 - 9:28오후
제가 장치시스템관리 프로그램을 만들려고 합니다.
하드, CD롬, USB등에 장치에 접근해서 다루는 프로그램인데.
어떤 장치가 연결되었는지 찾기가 어렵네요.
예를 들어 하드의 경우 find 명령어를 사용해서
a=($find /dev/sd*)
b=($find /dev/hd*)
로 어떤 하드의 SCIE 하드가 연결 되었는지, IDE하드가 연결되어있는지는 if문을 사용해서 찾을 수 있었습니다.
하지만, SCIE하드가 연결된 경우, sda만 저장되고 sdb, sdc는 저장을 할 수가 없네요.
어떻게 저장할 수 있을까요?
답변 부탁드립니다.
p.s 또한 제가 연결된 장치를 찾는 방법 이외에 방법을 아시는 분 있으시다면, 답변 주시면 감사하겠습니다.
Forums:
SCIE -> SCSI 그런데 이
SCIE -> SCSI
그런데 이 방법도 100% 맞다고 장담할 수 없습니다. 언젠가부터 SCSI/SATA/USB(하드, 플래시 포함) 모두 /dev/sdaX를 먹기 시작했고 심지어는 일부 배포판에서는 IDE 하드도 /dev/sdaX를 먹습니다. HAL이나 /dev/disk 아래에 있는 장치 파일(이건 udev가 필요합니다)을 고려하는 것도 한 방법입니다.
---- 절취선 ----
http://blog.peremen.name
sysfs
만약 scsi 드라이브를 찾고 싶다면,
/sys/class/scsi_disk/
의 경로를 보시면 되고요.
입력장치(마우스, 키보드 등)를 찾고 싶다면,
/sys/class/input/
결국,
device type별로 보고 싶다면 /sys/class 를 보시거나,
각각의 버스에 연결 device를 보고 싶다면 /sys/bus 를,
보시면 되겠죠.
댓글 달기