รายการอุปกรณ์ที่เชื่อมต่อทั้งหมดใน FreeBSD


28

ตัวแปร FreeBSD ของ Linux lsblkและblkidอะไร

ฉันต้องการบางสิ่งที่ให้ข้อมูลประเภทเดียวกันกับที่lsblkทำในตัวอย่างด้านล่าง:

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
/dev/sda      8:0    0 465.8G  0 disk 
├─/dev/sda1   8:1    0  1007K  0 part 
├─/dev/sda2   8:2    0   256M  0 part /boot
├─/dev/sda3   8:3    0   9.8G  0 part [SWAP]
├─/dev/sda4   8:4    0  29.3G  0 part /
├─/dev/sda5   8:5    0  29.3G  0 part /var
├─/dev/sda6   8:6    0 297.6G  0 part /home
└─/dev/sda9   8:9    0  16.3G  0 part 
/dev/sr0     11:0    1  1024M  0 rom  

ฉันได้พยายามใช้คำสั่งที่ชอบและman -k blk apropos devมีdevinfoแต่ฉันไม่แน่ใจว่านั่นคือสิ่งที่ฉันกำลังมองหาจริง ๆ หรือเปล่าเพราะมันดูเหมือนจะไม่ให้/dev/<DEVICE>เส้นทางสำหรับอุปกรณ์ที่ระบุไว้

ฉันลองdevstatแล้ว แต่นั่นก็ดูไม่ช่วยเหลือเท่า ๆ กัน

แก้ไข:

สิ่งที่ฉันต้องรู้จริงๆคือ/dev/<DEVICE>เส้นทางสำหรับอุปกรณ์บล็อกแต่ละอันเชื่อมต่อกันและอาจเป็นชื่อของอุปกรณ์ดังกล่าว (ถ้ามี) ไม่ว่าจะติดตั้งหรือไม่ก็ตาม


1
ฉันคิดว่าฉันอาจจะคิดออก ... ฉันคิดว่าcamcontrol devlistอาจเป็นสิ่งที่ฉันต้องการ
Alexej Magura

lsblkมีความสำคัญมากและ FreeBSD นั้นจะต้องพิจารณาปรับตัว
neverMind9

คำตอบ:



17

จากสิ่งที่ฉันบอกได้camcontrol devlistคือสิ่งที่ใกล้เคียงที่สุดกับlsblkตัวแปรสำหรับ FreeBSD ฉันไม่แน่ใจ 100% ว่านี่เป็นวิธีที่ดีที่สุด แต่ผลลัพธ์นั้นใกล้เคียงกับที่lsblkให้คุณถ้าคุณสนใจ/dev/<DEV-PATH>และชื่ออุปกรณ์ :

$ camcontrol devlist
<VBOX HARDDISK 1.0>   at scbus0 target 0 lun 0 (ada0,pass0)
<VBOX CD-ROM 1.0>     at scbus1 target 0 lun 0 (pass1,cd0)

ตำแหน่งของ/dev/DEV-PATHผลลัพธ์ในcamcontrol devlistดูเหมือนจะแตกต่างกันไป ยกตัวอย่างเช่นในวิกิพีเดีย FreeBSD ตัวอย่างcamcontrol devlistเอาท์พุทที่หนึ่งในรายการหน้าเว็บdevpathสำหรับไดรฟ์ซีดีรอมในการสั่งซื้อตรงข้าม: แทน (cd0,pass0)(pass1,cd0)

ฉันไม่แน่ใจว่าสิ่งที่สำคัญของความแตกต่างนี้หรือไม่ ดังนั้นหากคุณไม่คุ้นเคยกับdevpaths* BSD คุณอาจต้องลองใช้มันสักหน่อยเพื่อให้มันทำงานได้


9

การเพิ่มคำตอบ trasz geom part listแสดงพาร์ติชันใน FreeBSD ในทำนองเดียวกันgeom md listคุณจะได้รับอุปกรณ์ "ดิสก์หน่วยความจำ" (คล้ายกับการใช้ลูปติดใน linux ซึ่งมีการระบุไว้ด้วยlsblk(8)- ในคำอื่น ๆ บล็อกอุปกรณ์ที่สร้างโดยmdconfig(8)บน FreeBSD และlosetup(8)บน Linux) ดูgeom(8)รายการของคลาส (ซึ่งแต่ละรายการสามารถแสดงได้หากโหลดคลาส geom)

นี้ไม่มากประสบการณ์เดียวกันกับที่lsblk(8)และblkid(8)ให้อยู่ในลินุกซ์ แต่ให้มากของข้อมูลเดียวกัน ขณะนี้ไม่มีการเชื่อมโยงโดยตรงจากgeom(4)อินสแตนซ์และผู้ให้บริการไปยังจุดเมานท์ใน FreeBSD (cf. mountpoint(1)และfindmnt(8)บน linux)


4

ให้pciconfหรือkldstatลอง


1
ไม่ฉันไม่ได้ตระหนักถึงสิ่งใดสิ่งหนึ่ง แต่ทั้งคู่ดูเหมือนจะไม่เป็นอย่างที่ฉันต้องการ นี่อาจเป็นกรณีของฉันที่ไม่คุ้นเคยกับแบบแผนการตั้งชื่อที่ใช้โดย * BSD สำหรับอุปกรณ์ แต่ฉันสงสัย
Alexej Magura

1
ไฟล์บันทึกควรแสดงรายการอุปกรณ์ที่ตรวจพบ แต่ไม่แน่ใจว่าจะช่วยคุณได้ คุณต้องการทำอะไรให้สำเร็จ
Uriel

1
ใช้pciconf -lหรือpciconf -lv
วอน

3

ผมคิดว่าเป็นสิ่งที่ใกล้กับgpart list lsblkมันจะแสดงให้คุณเห็นอุปกรณ์ทั้งหมดและพาร์ทิชันของพวกเขา (และข้อมูลพิเศษมากมายเช่นกัน)


0

เครื่องมือ FreeBSD ทั้งหมดเป็น "อ่านไม่ได้" สคริปต์นี้เลียนแบบ lsblk: https://forums.freebsd.org/threads/lsblk-8-command-for-freebsd.56008/

wget https://forums.freebsd.org/attachments/lsblk-sh-txt.3085/
cp index.html /usr/lsblk.sh
chmod +x /usr/lsblk.sh
alias lsblk=/usr/lsblk.sh

คุณหมายถึง "อ่านไม่ได้" ในสิ่งที่พวกเขาอ่านไม่ได้?
Alexej Magura

1
ฉันสังเกตเห็นว่าโพสต์นี้เป็นลิงค์ไปยังโพสต์แบบฟอร์มที่มีไฟล์แนบ คุณสามารถโพสต์เนื้อหาของสคริปต์นั้นที่นี่แทนได้หรือไม่ ขอขอบคุณ.
Jeff Schaller

lsblk มีรูปแบบการอ่านลำดับชั้นไดรฟ์ที่อ่านได้เพียงแค่ดูที่คำถาม ฉันเข้าใจว่าผู้คนไม่ต้องการที่จะดูที่ df / mount และเอาท์พุทของเครื่องมือที่น่ารำคาญอื่น ๆ และนี่คือตัวเลือกที่ดีที่สุด
user533385
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.