[RESOLU] Commande pour afficher le type de FS : VOL_ID

Commande pour afficher le type de FS : VOL_ID [RESOLU] - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 03-03-2008 à 23:30:44    

Bonjour,
 
Je recherche une commande simple pouvant m'afficher le type de FS (EXT3,REISERFS,ETC) NON MONTE de mes partitions, fstab,  df et compagnie ne repondent pas à mon besoin donc (partition doivent etre monté), de meme que fdisk (qui donne que le type génerale), parted les affiche mais c'est trop chiant a récupérer,  
 
 merci de votre aide !
 
 
Beaucoup d'incompréhension ! grâce a un admin de bon sens voila ce que je veux :
 

o'gure a écrit :

Pareil pour Wedge hein [:dawao]
Quelqu'un à une problématique bien précise, il cherche un utilitaire qui donne simplement le type du fs sans avoir à faire de moulinette awk, grep, cut, sed...
 
Sa demande est tout a fait dans l'esprit unixienne qui veut qu'un outils fasse une seule chose potentiellement simple et qu'il le fasse bien. [:spamafote]
 
Un outils truc qui par l'invocation "truc -optionquivabien /dev/sda1 "  donnerai "ext3" tout simplement est utile.
 
Donc ca serait intéressant que ceux qui répondent essaye d'aller dans ce sens [:spamafote]

Message cité 1 fois
Message édité par lekikidedarty le 04-03-2008 à 12:59:40
Reply

Marsh Posté le 03-03-2008 à 23:30:44   

Reply

Marsh Posté le 03-03-2008 à 23:53:58    

fdisk -l
fdisk -l périphérique cible


---------------
Décentralisons Internet-Bépo-Troll Bingo - "Pour adoucir le mélange, pressez trois quartiers d’orange !"
Reply

Marsh Posté le 04-03-2008 à 08:16:41    

Ben non comme préciser dans mes demandes, pas fdisk il ne donne pas le type de fs précis pour les systémes linux (ext3,ext2,reiserfs, etc)

Reply

Marsh Posté le 04-03-2008 à 09:47:12    

parted est ton ami :jap:


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 04-03-2008 à 09:52:57    

wedgeant a écrit :

parted est ton ami :jap:


lekikidedarty a écrit :

parted les affiche mais c'est trop chiant a récupérer,


[:quardelitre] [:klem3i1]


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 04-03-2008 à 09:53:49    


j'ai lu la réponse d'homer et la réponse à homer, stoo :o


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 04-03-2008 à 09:54:45    

wedgeant a écrit :


j'ai lu la réponse d'homer et la réponse à homer, stoo :o


Comment esperes tu répondre à la problématique du client forumeur si tu ne l'écoutes pas [:quardelitre dei]


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 04-03-2008 à 10:01:55    

o'gure a écrit :

Comment esperes tu répondre à la problématique du client forumeur si tu ne l'écoutes pas [:quardelitre dei]


et comment ce forumeur espère-t'il obtenir le résultat attendu s'il ne veut pas utiliser les utilitaires adéquats [:mrbrelle]


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 04-03-2008 à 10:26:12    

Car les utilitaires adéquat répondent pas à la demande !

 

alors au lieu de faire un

 
Citation :


parted $dev  print | grep -e "^ $numpart" | awk ' { print $5 }'


Je cherche une solution plus viable

 


EDIT: SUr Deux reponse, 2 personnes n'ont pas lu le texte :jap:, la prochaine fois en topic je mets :  "cherche un truc"

Message cité 1 fois
Message édité par lekikidedarty le 04-03-2008 à 10:51:02
Reply

Marsh Posté le 04-03-2008 à 10:29:29    

lekikidedarty a écrit :

Je cherche une solution plus viable

 

paske tu trouves ça compliqué ? [:cerveau mullet]
tu apprendras, jeune padawan, que les sorties des utilitaires ne fournissent jamais les informations formattées correctement et que travailler tout ça à cout de grep/awk, c'est le pain quotidien de l'admin linux :o

 

et en plus, y'a moyen de ne faire qu'un seul pipe :o


parted $dev  print | awk ' /^ "'${numpart}'"/ { print $5 }'

Message cité 2 fois
Message édité par wedgeant le 04-03-2008 à 10:29:53

---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 04-03-2008 à 10:29:29   

Reply

Marsh Posté le 04-03-2008 à 10:33:12    

wedgeant a écrit :

 

paske tu trouves ça compliqué ? [:cerveau mullet]
tu apprendras, jeune padawan, que les sorties des utilitaires ne fournissent jamais les informations formattées correctement et que travailler tout ça à cout de grep/awk, c'est le pain quotidien de l'admin linux :o

 

et en plus, y'a moyen de ne faire qu'un seul pipe :o


parted $dev  print | awk ' /^ "'${numpart}'"/ { print $5 }'


 


C' EST BIEN DOMMAGE le plus simple on s enfou ca reste merdique !

 

Je trouve pas ca compliqué mais le problème c'est si les gugus de parted  revoit leur affichage je suis nické ! genre il enleve l'espace ou ajoute des espaces, c'est super fiable comme truc :s

 

De plus je voulais pas utilisé parted, car utilisé un partionneur pour avoir un affichage c'est vraiment bancale comme procédé !

 


Message édité par lekikidedarty le 04-03-2008 à 10:35:12
Reply

Marsh Posté le 04-03-2008 à 10:35:55    

tu veux bien poster le résultat de la commande d'homer ici stp ?


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 04-03-2008 à 10:36:51    


root@server:~# fdisk -l /dev/sda
 
Disque /dev/sda: 160.0 Go, 160041885696 octets
255 heads, 63 sectors/track, 19457 cylinders
Units = cylindres of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000103ff
 
Périphérique Amorce    Début         Fin      Blocs    Id  Système
/dev/sda1   *           1         973     7815591   83  Linux
/dev/sda2             974       19457   148472730    5  Extended
/dev/sda5             974        1581     4883728+  83  Linux
/dev/sda6            1582        1703      979933+  82  Linux swap / Solaris
/dev/sda7            1704       19457   142608973+  83  Linux
 
 

Reply

Marsh Posté le 04-03-2008 à 10:42:34    

lekikidedarty > tu restes calme et poli sinon c'est lala qui va t'aider à résoudre ton problème.


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 04-03-2008 à 10:46:33    

wedgeant a écrit :


 
paske tu trouves ça compliqué ? [:cerveau mullet]
tu apprendras, jeune padawan, que les sorties des utilitaires ne fournissent jamais les informations formattées correctement et que travailler tout ça à cout de grep/awk, c'est le pain quotidien de l'admin linux :o
 
et en plus, y'a moyen de ne faire qu'un seul pipe :o


parted $dev  print | awk ' /^ "'${numpart}'"/ { print $5 }'



du developpeur [:ma cabane au canada]


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
Reply

Marsh Posté le 04-03-2008 à 10:46:50    

Pareil pour Wedge hein [:dawao]
Quelqu'un à une problématique bien précise, il cherche un utilitaire qui donne simplement le type du fs sans avoir à faire de moulinette awk, grep, cut, sed...

 

Sa demande est tout a fait dans l'esprit unixienne qui veut qu'un outils fasse une seule chose potentiellement simple et qu'il le fasse bien. [:spamafote]

 

Un outils truc qui par l'invocation "truc -optionquivabien /dev/sda1 "  donnerai "ext3" tout simplement est utile.

 

Donc ca serait intéressant que ceux qui répondent essaye d'aller dans ce sens [:spamafote]

Message cité 3 fois
Message édité par o'gure le 04-03-2008 à 10:47:37

---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 04-03-2008 à 10:48:13    

black_lord a écrit :

lekikidedarty > tu restes calme et poli sinon c'est lala qui va t'aider à résoudre ton problème.

 

n'importe quoi, mais marre des reponses bancales

 


Message édité par lekikidedarty le 04-03-2008 à 10:48:52
Reply

Marsh Posté le 04-03-2008 à 10:49:27    

o'gure a écrit :

Pareil pour Wedge hein [:dawao]
Quelqu'un à une problématique bien précise, il cherche un utilitaire qui donne simplement le type du fs sans avoir à faire de moulinette awk, grep, cut, sed...

 

Sa demande est tout a fait dans l'esprit unixienne qui veut qu'un outils fasse une seule chose potentiellement simple et qu'il le fasse bien. [:spamafote]

 

Un outils truc qui par l'invocation "truc -optionquivabien /dev/sda1 "  donnerai "ext3" tout simplement est utile.

 

Donc ca serait intéressant que ceux qui répondent essaye d'aller dans ce sens [:spamafote]

 


MERCI  :jap: enfin une personne de très bon sens ! C'est exactement ce que je veux !


Message édité par lekikidedarty le 04-03-2008 à 10:49:51
Reply

Marsh Posté le 04-03-2008 à 10:49:55    

o'gure a écrit :

Pareil pour Wedge hein [:dawao]
Quelqu'un à une problématique bien précise, il cherche un utilitaire qui donne simplement le type du fs sans avoir à faire de moulinette awk, grep, cut, sed...
 
Sa demande est tout a fait dans l'esprit unixienne qui veut qu'un outils fasse une seule chose potentiellement simple et qu'il le fasse bien. [:spamafote]
 
Un outils truc qui par l'invocation "truc -optionquivabien /dev/sda1 "  donnerai "ext3" tout simplement est utile.
 
Donc ca serait intéressant que ceux qui répondent essaye d'aller dans ce sens [:spamafote]


le type de fs est écrit dans le fstab : ça au moins c'est standard ;)  
suffit ensuite de le "parser", non?
edit : argh désolé, j'ai pas lu depuis le début [:blessure]


Message édité par memaster le 04-03-2008 à 10:50:58

---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
Reply

Marsh Posté le 04-03-2008 à 11:02:50    

fsck -N /dev/sdXY ?

 

Exemple pour mes trois partoches :

# fsck -N /dev/sda2
fsck 1.40-WIP (14-Nov-2006)
fsck : fsck.xfs : non trouvé
fsck : Erreur 2 lors de l'exécution de fsck.xfs pour /dev/sda2
# fsck -N /dev/sda3
fsck 1.40-WIP (14-Nov-2006)
fsck : fsck.swap : non trouvé
fsck : Erreur 2 lors de l'exécution de fsck.swap pour /dev/sda3
# fsck -N /dev/sda1
fsck 1.40-WIP (14-Nov-2006)
[/sbin/fsck.ext3 (1) -- /] fsck.ext3 /dev/sda1


il me donne bien xfs, swap et ext3

Message cité 1 fois
Message édité par e_esprit le 04-03-2008 à 11:04:25

---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 04-03-2008 à 11:11:45    

o'gure a écrit :

Pareil pour Wedge hein [:dawao]


 
wedge il connait les règles, il sait ce qu'il risque :D
 

o'gure a écrit :


Quelqu'un à une problématique bien précise, il cherche un utilitaire qui donne simplement le type du fs sans avoir à faire de moulinette awk, grep, cut, sed...
 
Sa demande est tout a fait dans l'esprit unixienne qui veut qu'un outils fasse une seule chose potentiellement simple et qu'il le fasse bien. [:spamafote]
 
Un outils truc qui par l'invocation "truc -optionquivabien /dev/sda1 "  donnerai "ext3" tout simplement est utile.
 
Donc ca serait intéressant que ceux qui répondent essaye d'aller dans ce sens [:spamafote]


 
la commande n'existe pas, donc là il faut écrire un petit script (voire un alias) pour résoudre le soucis.


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 04-03-2008 à 11:12:20    

Ok la commande n'existe pas, du coup je vais développé le truc !

Reply

Marsh Posté le 04-03-2008 à 11:13:39    

Note que le fsck doit bien obtenir son info de quelque part, suffit de regarder le code pour voir si y a pas un appel système qui donne ce genre d'info ;)


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 04-03-2008 à 11:13:41    

e_esprit a écrit :

fsck -N /dev/sdXY ?

 

Exemple pour mes trois partoches :

# fsck -N /dev/sda2
fsck 1.40-WIP (14-Nov-2006)
fsck : fsck.xfs : non trouvé
fsck : Erreur 2 lors de l'exécution de fsck.xfs pour /dev/sda2
# fsck -N /dev/sda3
fsck 1.40-WIP (14-Nov-2006)
fsck : fsck.swap : non trouvé
fsck : Erreur 2 lors de l'exécution de fsck.swap pour /dev/sda3
# fsck -N /dev/sda1
fsck 1.40-WIP (14-Nov-2006)
[/sbin/fsck.ext3 (1) -- /] fsck.ext3 /dev/sda1


il me donne bien xfs, swap et ext3

 

a la rigueur


Message édité par lekikidedarty le 04-03-2008 à 11:14:05
Reply

Marsh Posté le 04-03-2008 à 11:14:35    

e_esprit a écrit :

Note que le fsck doit bien obtenir son info de quelque part, suffit de regarder le code pour voir si y a pas un appel système qui donne ce genre d'info ;)


 
 
Exactement !

Reply

Marsh Posté le 04-03-2008 à 11:24:35    

e_esprit a écrit :

Note que le fsck doit bien obtenir son info de quelque part, suffit de regarder le code pour voir si y a pas un appel système qui donne ce genre d'info ;)


j'ai regardé dans /proc
j'ai rien vu non plus :(


---------------
ma conduite intérieure .:R | memaster pilote officiel de la HFR Badoit-Auchan F1 Team | zéro tracas, zéro blabla MMa.ster
Reply

Marsh Posté le 04-03-2008 à 11:33:30    

J'ai deja regarder le CC de parted , enfin il lise une partie du DD pour recuperer le type de FS

Reply

Marsh Posté le 04-03-2008 à 11:41:29    

je viens de trouver cette commande, je ne sais pas ce qu'elle donne :
/lib/udev/vol_id --type /dev/xxx
 
>>  http://forums.debian.net/viewtopic [...] 3817405f1b


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 04-03-2008 à 11:51:49    

o'gure a écrit :

je viens de trouver cette commande, je ne sais pas ce qu'elle donne :
/lib/udev/vol_id --type /dev/xxx

 

>>  http://forums.debian.net/viewtopic [...] 3817405f1b

 

Merci

 

il faut j'essai sur des partoches non monté !

 

Eh bien merci OGURE, c'esta exactement cela qu'il me fallait,

 

un simple vol_id -t /dev/sda1 , me retourne le type de fs \o/


Message édité par lekikidedarty le 04-03-2008 à 12:02:16
Reply

Marsh Posté le 04-03-2008 à 12:21:40    

Je ne vois pas le problème du shell script là-dedans  [:spamafote]

 

Ce qui constitue le point fort des shell script, c'est qu'une fois écrits ca devient des utilitaires au même titre que les "vrais" utilitaires binaires comme ls ou grep.

 

Tu crées 'toto', un script avec

#!/bin/sh
ls | grep truc

Tu peux faire des :

toto | awk blabla
toto > file.txt


voire même appeler ca depuis un bout de code genre 'execl( "/usr/bin/toto", "toto", NULL, NULL);

 

Et mine de rien de pouvoir augmenter les outils courants avec les siens et que tout s'intègre bien, c'est très fort.

 


parted est un soft qui utilise la libparted, très bonne pour afficher des informations sur les partitions, donc pour moi il est qualifié pour répondre au problème.
Cf : http://www.gnu.org/software/parted/features.shtml
"- Knows about, detects and works around quirks of other partitioning tools and operating system implementations"
+ la très complète "Disk Label (Partition Table) support"

 

Si tu ne veux pas t'en servir car tu as peur de dépendre d'eux pour ta sortie d'info, alors tu as 2 solutions :
- utiliser un autre soft, qui ne dépend pas de libparted mais qui du coup réinvente la roue (cf. plus haut, sur l'implémentation très complète de libparted)
- utiliser un autre soft qui dépend de libparted pour ne pas tout réinventer, mais qui du coup est tributaire lui aussi (la différence étant qu'en cas de mise à jour de la libparted c'est l'auteur du soft qui devrai faire les modifs, et pas l'auteur du script)

 

La sortie des commandes est en général un comportement stable dans le temps (les API des lib aussi, mais un peu moins quand même hélas)

 


Si tu veux vraiment un binaire pour répondre à ca, regarde vol_id, mais moi je ferai plutôt un script.
My 2 cents :o

 

edit : grilled mais bon vol_id doit dépendre de udev, ca change pas vraiment le fond du problème je pense

Message cité 1 fois
Message édité par Xavier_OM le 04-03-2008 à 12:24:48

---------------
Il y a autant d'atomes d'oxygène dans une molécule d'eau que d'étoiles dans le système solaire.
Reply

Marsh Posté le 04-03-2008 à 12:50:37    

Xavier_OM a écrit :

Je ne vois pas le problème du shell script là-dedans  [:spamafote]

 

Ce qui constitue le point fort des shell script, c'est qu'une fois écrits ca devient des utilitaires au même titre que les "vrais" utilitaires binaires comme ls ou grep.

 

Tu crées 'toto', un script avec

#!/bin/sh
ls | grep truc

Tu peux faire des :

toto | awk blabla
toto > file.txt


voire même appeler ca depuis un bout de code genre 'execl( "/usr/bin/toto", "toto", NULL, NULL);

 

Et mine de rien de pouvoir augmenter les outils courants avec les siens et que tout s'intègre bien, c'est très fort.

 


parted est un soft qui utilise la libparted, très bonne pour afficher des informations sur les partitions, donc pour moi il est qualifié pour répondre au problème.
Cf : http://www.gnu.org/software/parted/features.shtml
"- Knows about, detects and works around quirks of other partitioning tools and operating system implementations"
+ la très complète "Disk Label (Partition Table) support"

 

Si tu ne veux pas t'en servir car tu as peur de dépendre d'eux pour ta sortie d'info, alors tu as 2 solutions :
- utiliser un autre soft, qui ne dépend pas de libparted mais qui du coup réinvente la roue (cf. plus haut, sur l'implémentation très complète de libparted)
- utiliser un autre soft qui dépend de libparted pour ne pas tout réinventer, mais qui du coup est tributaire lui aussi (la différence étant qu'en cas de mise à jour de la libparted c'est l'auteur du soft qui devrai faire les modifs, et pas l'auteur du script)

 

La sortie des commandes est en général un comportement stable dans le temps (les API des lib aussi, mais un peu moins quand même hélas)

 


Si tu veux vraiment un binaire pour répondre à ca, regarde vol_id, mais moi je ferai plutôt un script.
My 2 cents :o

 

edit : grilled mais bon vol_id doit dépendre de udev, ca change pas vraiment le fond du problème je pense

 


ca marche trés bien ! avec vol_id,

 

Je ne critique pas parted, mais récupérer une simple info, en se bassant sur une sortie, qui peut etre modifié a tout moment c'est mal sain pour moi, car ca fouterai en l'air tout mes scripts !

 

alors qu'un simple vol_id -t device et c'est fini, je crois que c'est vite vu

 

le fond du problème n'etait pas d'utilisé parted, si parted aurait une sortie simple c'etait gagné, c'est le nombre d'info en sortie qui nécessite un traitement qui est donc pas intéressant !


Message édité par lekikidedarty le 04-03-2008 à 12:59:07
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed