저는 FreeBSD11입니다. 내 시스템에 연결하고 C++로 정보를 저장하는 모든 장치를 가져오고 싶습니다. 이런 이유로 나는 camcontrol devlist
명령을 실행합니다. 출력은 다음과 같습니다디바이스 목록을 C++로 수신
<OCZ-VERTEX4 1.4.1.3> at scbus0 target 0 lun 0 (pass0,ada0)
<OCZ-AGILITY3 2.15> at scbus0 target 1 lun 0 (pass1,ada1)
<OCZ-AGILITY3 2.15> at scbus1 target 0 lun 0 (pass2,ada2)
<OCZ-AGILITY3 2.15> at scbus1 target 1 lun 0 (pass3,ada3)
<OCZ-AGILITY3 2.15> at scbus3 target 0 lun 0 (pass4,ada4)
< USB FLASH DRIVE PMAP> at scbus4 target 0 lun 0 (da0,pass5)
는 난 단지 scbus0 대상 0 LUN 0 (pass0, ada0)에서 에서 라인을 얻을 첫 번째 부분을 무시, C의 ++에 getline
으로, 파일이 출력을했습니다.
나는 및 중에서 Da0, CD0 ... 이름 저장이 명령에서 출력이되지 않습니다 같은 다른에 대한 다음 /usr/local/sbin/smartctl -i /dev/<device>
와 ada0, ada1, ada2, ada3, ada4, 중에서 Da0를 얻을이 정보의 싶어 .
좋은 방법인지 확실하지 않습니다. 존재하는 경우 더 나은 솔루션을 제공하거나 제 문제를 해결할 수 있도록 도와주세요.
답장을 보내 주셔서 감사합니다. ** camcontrol.c **는 이러한 이유로 매우 유용하지만이 코드를 어떻게 사용해야하는지 모르겠습니다. 예를 들어 주시겠습니까? Thnks –