Lister tous les appareils connectés dans FreeBSD

28

Quelle est la variante FreeBSD de Linux lsblket blkid?

Je veux quelque chose qui fournit le même type d'informations que lsblkdans l'exemple ci-dessous:

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  

J'ai essayé d'exécuter des commandes comme man -k blket apropos dev. Il y en a devinfo, mais je ne sais pas si c'est ce que je recherche vraiment car cela ne semble pas me donner de /dev/<DEVICE>chemin pour les appareils répertoriés.

J'ai même essayé devstat, mais cela semble tout aussi inutile

MODIFIER:

Tout ce que j'ai vraiment besoin de savoir, c'est le /dev/<DEVICE>chemin pour chaque périphérique de bloc connecté, et peut-être l'étiquette de ce périphérique (le cas échéant); qu'ils aient été montés ou non.

Alexej Magura
la source
1
Je pense que je l'ai peut-être compris ... Je pense que camcontrol devlistc'est probablement ce que je veux.
Alexej Magura
lsblkest très essentiel et FreeBSD devrait vraiment envisager de l'adapter.
neverMind9

Réponses:

43

Utilisez geom disk list. Cela montrera tous les périphériques de type disque (techniquement, chaque instance de la classe GEOM "DISK").

Pour plus d'informations: geom | Pages de manuel FreeBSD

Edward Tomasz Napierala
la source
17

D'après ce que je peux dire, camcontrol devlistc'est la chose la plus proche d'une lsblkvariante de FreeBSD. Je ne suis pas sûr à 100% que c'est la meilleure méthode, mais sa sortie est très proche de ce que lsblkvous donne, si vous ne vous souciez que des /dev/<DEV-PATH>noms d'appareils :

$ 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)

La position du /dev/DEV-PATHdans la sortie de camcontrol devlistsemble varier. Par exemple, sur le wiki FreeBSD, l'exemple de camcontrol devlistsortie sur l'une des pages répertorie le devpathpour le lecteur de CD-ROM dans l'ordre inverse: (cd0,pass0)au lieu de (pass1,cd0).

Je ne sais pas si ni quelle est la signification de cette différence. Donc, si vous n'êtes pas familier avec devpaths* BSD, vous devrez peut-être y jouer un peu pour le faire fonctionner.

Alexej Magura
la source
9

Ajoutant à la réponse de trasz, geom part listmontre les partitions dans FreeBSD. De même geom md list, vous obtiendrez les périphériques "disque de mémoire" (similaires à certaines utilisations des montages en boucle sous linux qui sont également répertoriés par lsblk(8)- en d'autres termes, les périphériques de bloc créés par mdconfig(8)sur FreeBSD et losetup(8)sur linux). Voir geom(8)pour une liste des classes (chacune pouvant être répertoriée si la classe geom est chargée).

Ce n'est pas tout à fait la même expérience que lsblk(8)et blkid(8)fournir sous Linux, mais fournit une grande partie des mêmes informations. Il n'y a pas de lien direct entre les geom(4)instances et les fournisseurs et le point de montage actuellement dans FreeBSD (cf., mountpoint(1)et findmnt(8)sous Linux).

Juan
la source
4

Donnez pciconfou kldstatessayez.

Uriel
la source
1
non, je n'étais au courant d'aucun d'eux, mais aucun d'eux ne semble être ce que je veux. Cela peut juste être un cas où je ne suis pas familier avec les conventions de dénomination utilisées par * BSD pour les appareils, mais j'en doute.
Alexej Magura
1
Les fichiers journaux doivent également répertorier les périphériques détectés, mais vous n'êtes pas sûr que cela vous aidera. Que veux-tu accomplir ?
Uriel
1
Utilisez pciconf -loupciconf -lv
Yvon
3

Je pense que gpart listc'est la chose la plus proche de lsblk. Il vous montrera tous les appareils et leurs partitions (et beaucoup d'informations supplémentaires également).

jackbenny
la source
0

tous les outils FreeBSD sont "illisibles", ce script imite bien 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
user533385
la source
Que voulez-vous dire par «illisible», en quoi sont-elles illisibles?
Alexej Magura
1
Je remarque que ce message est essentiellement un lien vers un message de formulaire contenant une pièce jointe. Pourriez-vous plutôt publier le contenu de ce script ici, afin que votre réponse soit autonome? Merci.
Jeff Schaller
lsblk a une forme lisible d'affichage de la hiérarchie des lecteurs, il suffit de regarder la question. je comprends que les gens ne veulent pas regarder df / mount et d'autres sorties d'outils nauséabondes, et jusqu'à présent, c'est la meilleure option.
user533385