(Courriels de diversion: <bourguignons@affinement-detachions.com> <depiler@traîneraient-serviabilite.com> <scander@redirigees-rapetisses.com> <acquis@empêcherai-proscrivant.com> <triomphalement@entrechoquent-eventrer.com> <trouvaient@emettais-quitterons.com> <conjecturant@grutier-echoues.com> <regrettaient@pendeloques-attribuerent.com> <teleferiques@lorsque-memorial.com> <fomentation@vaincriez-ânonnerait.com> )
Afin de créér des fiches de description matériele des PC qui soient homogénes,
je propose le script ci-après.
Les fichiers sont séparés par des séparateurs: ":::::"
En première partie se trouve le script.
En deuxième partie se trouve un exemple de résultat.
Il peut être utilisé avec une imprimante, pour créer une fiche papier.
Le résultat pourait être automatiquement stoqué sur un serveur, ce qui
permettrait d'avoir une vision globale du matérielle du culte.
Le script est sans doute imparfait.
En particulier, il manque les infos sur la mémoire, et éventuellement X.
Je suis ouvert à toutes suggestions.
Jean-Michel
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::: script:
#!/bin/bash
#Ce script est sous licence GPL.
#Ce script a été créé pour répondre au besoin du CULTe (LUG de toulouse)
# http://www.culte.org
#Ce script donne certaines des caractéristiques principales d'une machine.
#auteur: Jean-Michel Gay
#date: 6 décembre 2004
###########################" Quelques routines générales
#indentation d'un flux
indent ()
{
sed "s/^/ /g"
}
#affichage d'un titre de section
section ()
{
echo
echo $1 :
}
###########################" Routines de détéction
#détection du système
#Donne la version du noyau, et le nom de la distribution
#note: j'ai un doute sur le issu. Dans mon cas, ca donne Mandrake 10.
detect-sys ()
{
( echo -n i"noyau:"
uname -r
cat /etc/issue )
}
#detection du cpu
#en se basant sur les infos de /proc
detect-cpu ()
{
cat /proc/cpuinfo |
grep -e "^\(model\|cpu MHz\|bogomips\)"
}
#detection des modules ''hard''
#En fait, on ne s'interesse qu'aux modules qui nous intéressent.
#Mais quels sont-ils?
detect-mod ()
{
lsmod |
(
while read a b
do
(
#echo $a
desc=` modinfo $a |
grep "^description:" `
#grep -v "^depends:" |
#grep -v "^alias:" |
#grep -v "^parm:"|
case $desc in
*Audio* | *Midi* | *Ether* | *sound* | *Sound* | *Modem* )
echo $a $desc
;;
esac
#echo "### " $a $desc | indent
)
done
) |
cat
}
#detection des disques
#On récupére les informations principales sur les 4 disques IDE.
detect-disk ()
{
for disk in hda hdb hdc hdd
do
DSK=/proc/ide/$disk
if [ -d $DSK ]
then
media=`cat $DSK/media`
model=`cat $DSK/model`
echo $disk: $media: $model
(
if [ cdrom != $media ]
then
capacity=`cat $DSK/capacity`
geometry=`cat $DSK/geometry`
echo "capacité: " $capacity "blocs/secteurs"
echo "géométrie:" $geometry
fi
#echo $media
#echo $model
) | indent
fi
# Tant que l'on y est: liste des partitions
fdisk -l /dev/$disk | indent | indent
done
}
#Detection de la configuration réseau courante. (adresses IP).
detect-net ()
{
ifconfig | grep "inet adr"
}
#Detéction du matériel présent sur le bus PCI.
detect-pci ()
{
lspci
}
###########################" Routines de détéction principale
#detection de tout
detect-all ()
{
hostname
date
section "Système"
detect-sys | indent
section "Processeur"
detect-cpu | indent
section "Disques"
detect-disk | indent
section "Réseau"
detect-net | indent
section "Périphériques"
detect-mod | indent
section "Pci"
detect-pci | indent
}
###########################" Verification de l'environnement d'execution du
script.
verif ()
{
user=`whoami`
if [ root != $user ]
then
echo "Vous devez être root, pour lancer ce script!"
exit 1
fi
if [ /bin/bash != $BASH ]
then
echo "Désolé, ce script n'a été testé que sous bash!"
exit 1
fi
}
###########################" Programme principal
verif
RESULT=fiche.txt
detect-all > $RESULT
cat $RESULT
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::::: résultat:
bagdad
lun déc 6 20:45:30 CET 2004
Système :
inoyau:2.6.3-7mdk
Mandrake Linux release 10.0 (Official) for i586
Kernel 2.6.3-7mdk on an i686 / \l
Processeur :
model : 4
model name : AMD Athlon(tm) processor
cpu MHz : 1394.436
bogomips : 2760.70
Disques :
hda: disk: SAMSUNG SP0802N
capacité: 156368016 blocs/secteurs
géométrie: physical 16383/16/63 logical 16383/255/63
Disque /dev/hda: 80.0 Go, 80060424192 octets
255 têtes, 63 secteurs/piste, 9733 cylindres
Unités = cylindres de 16065 * 512 = 8225280 octets
Périphérique Boot Start End Blocks Id System
/dev/hda1 * 1 2550 20482843+ 7 HPFS/NTFS
/dev/hda2 2551 9733 57697447+ f W95 Ext'd
(LBA)
/dev/hda5 2551 5100 20482843+ e W95 FAT16
(LBA)
/dev/hda6 5101 7662 20579233+ 83 Linux
/dev/hda7 7663 9733 16635276 83 Linux
hdc: cdrom: _NEC DVD+RW ND-1100A
hdd: cdrom: IDE/ATAPI CD-ROM 52XS
Réseau :
inet adr:127.0.0.1 Masque:255.0.0.0
inet adr:213.223.181.214 P-t-P:213.223.181.1
Masque:255.255.255.255
Périphériques :
snd-seq-midi description: Advanced Linux Sound Architecture sequencer MIDI
synth.
snd-seq description: Advanced Linux Sound Architecture sequencer.
snd-ac97-codec description: Universal interface for Audio Codec '97
snd-rawmidi description: Midlevel RawMidi code for ALSA.
snd description: Advanced Linux Sound Architecture driver for soundcards.
soundcore description: Core sound module
8139too description: RealTek RTL-8139 Fast Ethernet driver
eagle-usb description: Eagle USB ADSL Modem driver
Pci :
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev
03)
00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP]
00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South]
(rev 40)
00:07.1 IDE interface: VIA Technologies, Inc.
VT82C586A/B/VT82C686/A/B/VT8233/A/C/VT8235 PIPC Bus Master IDE (rev 06)
00:07.2 USB Controller: VIA Technologies, Inc. USB (rev 1a)
00:07.3 USB Controller: VIA Technologies, Inc. USB (rev 1a)
00:07.4 Host bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
(rev 40)
00:07.5 Multimedia audio controller: VIA Technologies, Inc. VT82C686 AC97
Audio Controller (rev 50)
00:0a.0 Ethernet controller: Realtek Semiconductor Co., Ltd.
RTL-8139/8139C/8139C+ (rev 10)
00:0c.0 Multimedia video controller: Brooktree Corporation Bt878 Video
Capture (rev 11)
00:0c.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture
(rev 11)
01:00.0 VGA compatible controller: nVidia Corporation NV17 [GeForce4 MX 440]
(rev a3)
---MOQ1102363143e2745cda537e2a950af16418646f637f
Content-Type: text/x-sh; name="detectd-hard.sh"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="detectd-hard.sh"
--------------------------------------------------------------------
Les listes de diffusion occultes: <URL:http://www.CULTe.org/listes/>