web-dev-qa-db-fra.com

Lister tous les appareils connectés dans FreeBSD

Quelle est la variante FreeBSD des lsblk et blkid de Linux?

Je veux quelque chose qui fournit le même type d'informations que lsblk dans 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 blk et apropos dev. Il y a devinfo, mais je ne sais pas si c'est vraiment ce que je recherche car cela ne semble pas me donner /dev/<DEVICE> chemin d'accès des périphériques répertoriés.

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

ÉDITER:

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

29
Alexej Magura

D'après ce que je peux dire, camcontrol devlist est la chose la plus proche d'une variante lsblk pour 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 lsblk vous donne, si vous ne vous souciez que de /dev/<DEV-PATH> et noms des 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-PATH dans la sortie de camcontrol devlist semble varier. Par exemple, sur le wiki FreeBSD, l'exemple camcontrol devlist la sortie sur l'une des pages répertorie les devpath du 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 dans * BSD, vous devrez peut-être jouer un peu avec lui pour le faire fonctionner.

19
Alexej Magura

Utilisation 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 | FreeBSD Manual Pages

46

Ajoutant à la réponse de trasz, geom part list Montre 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, bloquer les périphériques créés par mdconfig(8) sur FreeBSD et losetup(8) sur linux). Voir geom(8) pour une liste des classes (chacune pouvant être listé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) fournissent sous linux, mais fournit la plupart des mêmes informations. Il n'y a pas de lien direct entre les instances et les fournisseurs de geom(4) et le point de montage actuellement dans FreeBSD (cf., mountpoint(1) et findmnt(8) sur linux).

9
Juan

Essayez pciconf ou kldstat.

4
Uriel

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

3
jackbenny

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
1
user533385