Merge branch 'master' of git.labolyon.fr:DTux/task-lalis
This commit is contained in:
commit
40ae91ea61
@ -8,31 +8,27 @@ bouton droit haut :
|
|||||||
bouton gauche bas :
|
bouton gauche bas :
|
||||||
bouton droit bas :
|
bouton droit bas :
|
||||||
|
|
||||||
USB droite AR :
|
Prises USB 2 :
|
||||||
USB droite AV :
|
Prises USB 3 :
|
||||||
USB gauche AR :
|
|
||||||
USB gauche AV :
|
|
||||||
e-sata :
|
e-sata :
|
||||||
USB =
|
|
||||||
e-sata =
|
|
||||||
|
|
||||||
audio intégré :
|
|
||||||
|
audio intégré
|
||||||
jack audio out :
|
jack audio out :
|
||||||
jack audio in :
|
jack audio in :
|
||||||
|
Jack micro :
|
||||||
|
|
||||||
VGA :
|
VGA :
|
||||||
HDMI :
|
HDMI :
|
||||||
mini-HDMI :
|
mini-HDMI :
|
||||||
display port :
|
display port :
|
||||||
|
|
||||||
réglage audio clavier :
|
|
||||||
réglage bouton "sans-fil" :
|
|
||||||
|
|
||||||
bluetooth :
|
bluetooth :
|
||||||
|
Wifi :
|
||||||
|
|
||||||
lecteur DVD :
|
lecteur DVD :
|
||||||
lecteur d'empreinte digitale :
|
lecteur d'empreinte digitale :
|
||||||
|
|
||||||
firewire :
|
port firewire :
|
||||||
série :
|
port série :
|
||||||
SD_card :
|
SD_card :
|
||||||
|
395
SOURCES/identMM.pl
Executable file
395
SOURCES/identMM.pl
Executable file
@ -0,0 +1,395 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
|
||||||
|
#********** INITIALISATION DE LA GENERATION FICHIER CHECKLIST *********
|
||||||
|
#my $CheckFile="/home/lalis/Documents/checklist.txt";
|
||||||
|
my $CheckFile="/usr/share/lalis/checklist.txt";
|
||||||
|
my $PathFicout="/usr/share/lalis/";
|
||||||
|
|
||||||
|
#************* INITIALISATION DES INFORMATIONS GENERALES (LSHW) ****************
|
||||||
|
# copie de la commande dans un tableau pour lshw
|
||||||
|
my @LshwTab=`lshw`;
|
||||||
|
# Extraction des champs relatifs aux item
|
||||||
|
my @ChampsLshw=("description|produit|fabriquant|numéro", # champs Identification ORDINATEUR
|
||||||
|
"description|produit|fabriquant|version",# champs Identification CARTE MERE
|
||||||
|
"description|fabriquant|version",# champs Identification BIOS
|
||||||
|
"description|produit|bits|configuration",# champs Identification CPU
|
||||||
|
"description|produit|fabriquant", # champs Identification CARTE GRAPHIQUE
|
||||||
|
"description|produit|fabriquant|capacité",# champs Identification RESEAU
|
||||||
|
"description|produit|fabriquant",# champs Identification RESEAU
|
||||||
|
"produit|fabriquant|capacité|configuration"# champs Identification BATTERIE
|
||||||
|
);
|
||||||
|
my @LshwTitres=("\n########## Identification ORDINATEUR ##########\n",
|
||||||
|
"\n########## Identification CARTE MERE ##########\n",
|
||||||
|
"\n########## Identification BIOS #########\n",
|
||||||
|
"\n########## Identification CPU ##########\n",
|
||||||
|
"\n########## Identification CARTE GRAPHIQUE ##########\n",
|
||||||
|
"\n########## Identification RESEAU ##########\n",
|
||||||
|
"\n########## Identification BATTERIE ##########\n");
|
||||||
|
# Descripteur de l'item ordinateur
|
||||||
|
my @DescOrdi=("0", # titre du chapitre general (@LshwTitres)
|
||||||
|
"0", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"localhost", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item carte mère
|
||||||
|
my @DescCM=("1", # titre du chapitre general (@LshwTitres)
|
||||||
|
"1", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-core", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item BIOS
|
||||||
|
my @DescBios=("2", # titre du chapitre general (@LshwTitres)
|
||||||
|
"2", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-firmware", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item CPU
|
||||||
|
my @DescCPU=("3", # titre du chapitre general (@LshwTitres)
|
||||||
|
"3", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-cpu", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item Affichage
|
||||||
|
my @DescDisp=("4", # titre du chapitre general (@LshwTitres)
|
||||||
|
"4", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-display", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item reseau
|
||||||
|
my @DescNet=("5", # titre du chapitre general (@LshwTitres)
|
||||||
|
"5", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-network", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du b loc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item battery
|
||||||
|
my @DescBat=("6", # titre du chapitre general (@LshwTitres)
|
||||||
|
"7", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-battery", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
|
||||||
|
my @RefItems=("PC","CM","BIOS","CPU","DISP","NET","BAT");
|
||||||
|
#my @RefItems=("PC","CM","BIOS");
|
||||||
|
|
||||||
|
my @temp;
|
||||||
|
my @ident;
|
||||||
|
my $flag=0;
|
||||||
|
|
||||||
|
my $titre;
|
||||||
|
my $start;
|
||||||
|
my $end;
|
||||||
|
my $data;
|
||||||
|
|
||||||
|
#********** INITIALISATION DES INFORMATIONS USB (lsusb) *********
|
||||||
|
|
||||||
|
|
||||||
|
#********** INITIALISATION DES INFORMATIONS MEMOIRES (DMIDECODE) *********
|
||||||
|
# copie de la commande dans un tableau pour dmidecode
|
||||||
|
my @tabdmidecode=`dmidecode -t memory`;
|
||||||
|
my @ChampsMem=("Data|Size|Bank Locator:|Type:|Speed:|Manufacturer");
|
||||||
|
my @MemTitres=("\n########## Identification MEMOIRE ##########\n");
|
||||||
|
my @DescMem=("0", # titre du chapitre general (@SmartTitres)
|
||||||
|
"0", # champs (@ChampsMem) de donnees à extraire
|
||||||
|
"Memory Device", # debut du bloc a extraire
|
||||||
|
"Part" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
#*********** INITIALISATION DES INFORMATIONS DISK (SMARTCTL) **************
|
||||||
|
my @champsdisk=("Family|Model:|Serial|Capacity|Form|SATA");
|
||||||
|
my @ListDisk=`ls -l /dev/sd?`;
|
||||||
|
my @DescDisk=("0", # titre du chapitre general (@SmartTitres)
|
||||||
|
"0" # champs (@champsdisk) de donnees à extraire
|
||||||
|
);
|
||||||
|
my @DiskTitres=("\n########## Identification DISK ##########\n");
|
||||||
|
|
||||||
|
my $D;
|
||||||
|
my @tabsmart;
|
||||||
|
|
||||||
|
#********** INITIALISATION DE LA GENERATION FICHIER RESULTAT *********
|
||||||
|
my @RefMachine=("PC", "CM");
|
||||||
|
my @ChampsRef=("numéro", # champs Identification ORDINATEUR
|
||||||
|
"numéro" # champs Identification CARTE MERE
|
||||||
|
);
|
||||||
|
|
||||||
|
# Descripteur de l'item ordinateur
|
||||||
|
my @DescOrdi2=("0", # titre du chapitre general (@LshwTitres)
|
||||||
|
"0", # chamextraireps (@ChampsLshw) de donnees à extraire
|
||||||
|
"localhost", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
# Descripteur de l'item carte mère
|
||||||
|
my @DescCM2=("1", # titre du chapitre general (@LshwTitres)
|
||||||
|
"1", # champs (@ChampsLshw) de donnees à extraire
|
||||||
|
"\\*\\-core", # debut du bloc a extraire
|
||||||
|
"\\*\\-" # fin du bloc a extraire
|
||||||
|
);
|
||||||
|
my @FicTab=@LshwTab;
|
||||||
|
my $RefPC=undef;
|
||||||
|
my $RefCM=undef;
|
||||||
|
my $NomFic=undef;
|
||||||
|
my $A;
|
||||||
|
my $item;
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME RENSEIGNEMENT DU FICHIER CHECKLIST
|
||||||
|
#########################################################################
|
||||||
|
# Renseignement du fichier checklist.txt de l'ordinateur par l'opérateur
|
||||||
|
system("su -c 'kwrite $CheckFile' lalis");
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DES INFORMATIONS GENERALES (LSHW)
|
||||||
|
#########################################################################
|
||||||
|
foreach (@RefItems) { # foreach @RefItems
|
||||||
|
# Pour chaque item a afficher
|
||||||
|
if ($_ eq "PC"){($titre, $data, $start, $end)=@DescOrdi;}
|
||||||
|
if ($_ eq "CM"){($titre, $data, $start, $end)=@DescCM;}
|
||||||
|
if ($_ eq "BIOS"){($titre, $data, $start, $end)=@DescBios;}
|
||||||
|
if ($_ eq "CPU"){($titre, $data, $start, $end)=@DescCPU;}
|
||||||
|
if ($_ eq "DISP"){($titre, $data, $start, $end)=@DescDisp;}
|
||||||
|
if ($_ eq "NET"){($titre, $data, $start, $end)=@DescNet;}
|
||||||
|
if ($_ eq "BAT"){($titre, $data, $start, $end)=@DescBat;}
|
||||||
|
#print("$end\n");
|
||||||
|
|
||||||
|
$flag=0;
|
||||||
|
foreach (@LshwTab) { # foreach @LshwTab
|
||||||
|
# vidage buffer temporaire
|
||||||
|
@temp=();
|
||||||
|
# extraction d'un bloc memoire dans @temp
|
||||||
|
if ( $flag==0 ){ # attente debut du bloc vu
|
||||||
|
if ( m/$start/ ){ # debut du bloc vu
|
||||||
|
s/$_//;
|
||||||
|
$flag=1;
|
||||||
|
push(@ident,$LshwTitres[$titre]);
|
||||||
|
}
|
||||||
|
}else{ # attente fin du bloc vu
|
||||||
|
push(@temp,$_);
|
||||||
|
if ( m/$end/ ){ # fin du bloc vu
|
||||||
|
$flag=0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
# Extraction des champs d'un bloc memoire contenu dans @temp
|
||||||
|
foreach (@temp) { # foreach temp
|
||||||
|
if ( m/$ChampsLshw[$data]/ ){
|
||||||
|
s/\s+/ /;
|
||||||
|
push(@ident,$_);
|
||||||
|
}
|
||||||
|
} # fin boucle foreach temp
|
||||||
|
} # fin boucle foreach @LshwTab
|
||||||
|
} # fin boucle foreach @LshwTitres
|
||||||
|
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DES INFORMATIONS GENERALES (LSUSB)
|
||||||
|
#########################################################################
|
||||||
|
# vidage buffer temporaire
|
||||||
|
@temp=();
|
||||||
|
@temp=`lsusb`;
|
||||||
|
push(@ident,"\n########## Identification USB ##########\n");
|
||||||
|
# Extraction des champs d'un bloc memoire contenu dans @temp
|
||||||
|
foreach (@temp) { # foreach temp
|
||||||
|
$_=" ".$_;
|
||||||
|
push(@ident,$_);
|
||||||
|
}
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DES INFORMATIONS DES MEMOIRES (DMIDECODE)
|
||||||
|
#########################################################################
|
||||||
|
# titre Identification MEMOIRE
|
||||||
|
push(@ident,$MemTitres[$DescMem[0]]);
|
||||||
|
# initialisation des variables
|
||||||
|
$flag=0;
|
||||||
|
# vidage des tableaux temporaires
|
||||||
|
@temp=();
|
||||||
|
# Pour chaque item a afficher
|
||||||
|
foreach (@tabdmidecode) { # foreach @tabdmidecode
|
||||||
|
#print"@tabdmidecode \n";
|
||||||
|
# vidage des tableaux temporaires
|
||||||
|
@temp=();
|
||||||
|
# extraction de la capacite maxi
|
||||||
|
if ( m/Capacity/ ){
|
||||||
|
s/\s+/ /;
|
||||||
|
push(@ident,$_);
|
||||||
|
#s/Capacity//;
|
||||||
|
}
|
||||||
|
# extraction d'un bloc memoire dans @temp
|
||||||
|
if ( $flag==0 ){ # attente debut du bloc vu
|
||||||
|
if ( m/$DescMem[2]/ ){ # debut du bloc vu
|
||||||
|
$flag=1;
|
||||||
|
push(@ident,"\n************* BANK ***************\n");
|
||||||
|
}
|
||||||
|
}else{ # attente fin du bloc vu
|
||||||
|
push(@temp,$_);
|
||||||
|
if ( m/$DescMem[3]/ ){ # fin du bloc vu
|
||||||
|
$flag=0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extraction des champs d'un bloc memoire contenu dans @temp
|
||||||
|
foreach (@temp) { # foreach temp
|
||||||
|
if ( m/$ChampsMem[$DescMem[1]]/ ){
|
||||||
|
s/\s+/ /;
|
||||||
|
#print;
|
||||||
|
|
||||||
|
push(@ident,$_);
|
||||||
|
}
|
||||||
|
} # fin boucle foreach temp
|
||||||
|
} # fin boucle foreach @tabdmidecode
|
||||||
|
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DES INFORMATIONS DISK (SMARTCTL)
|
||||||
|
#########################################################################
|
||||||
|
# titre Identification DISK
|
||||||
|
push(@ident,$DiskTitres[$DescDisk[0]]);
|
||||||
|
# pour chaque disque
|
||||||
|
foreach (@ListDisk) { # foreach disk
|
||||||
|
(my $A, my $B, $D)=split /\//;
|
||||||
|
chop($D);
|
||||||
|
@tabsmart=`smartctl -i /dev/$D`;
|
||||||
|
push(@ident,"\n*************** disk ".$D." *************\n");
|
||||||
|
|
||||||
|
# pour chaque disque extraction des champs description
|
||||||
|
foreach (@tabsmart) { # foreach tabsmart
|
||||||
|
if ( m/$champsdisk[$DescDisk[1]]/ ){
|
||||||
|
$_=" ".$_;
|
||||||
|
#print;
|
||||||
|
push(@ident,$_);
|
||||||
|
}
|
||||||
|
} # fin boucle foreach tabsmart
|
||||||
|
|
||||||
|
} # fin foreach disk
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DE LA GENERATION FICHIER RESULTAT
|
||||||
|
#########################################################################
|
||||||
|
# initialisation des variables
|
||||||
|
$flag=0;
|
||||||
|
foreach (@RefMachine) { # foreach @RefMachine
|
||||||
|
@temp=();
|
||||||
|
# Pour chaque item a afficher
|
||||||
|
if ($_ eq "PC"){($A, $data, $start, $end)=@DescOrdi2;}
|
||||||
|
if ($_ eq "CM"){($A, $data, $start, $end)=@DescCM2;}
|
||||||
|
$item=$_;
|
||||||
|
#print "$A\n";
|
||||||
|
#print "$data\n";
|
||||||
|
#print "$start\n";
|
||||||
|
#print "$fin\n";
|
||||||
|
foreach (@FicTab) { # foreach @FicTab
|
||||||
|
# extraction d'un bloc memoire dans @temp
|
||||||
|
if ( $flag==0 ){ # attente debut du bloc vu
|
||||||
|
if ( m/$start/ ){ # debut du bloc vu
|
||||||
|
s/$_//;
|
||||||
|
$flag=1;
|
||||||
|
}
|
||||||
|
}else{ # attente fin du bloc vu
|
||||||
|
push(@temp,$_);
|
||||||
|
if ( m/$end/ ){ # fin du bloc vu
|
||||||
|
$flag=0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Extraction des champs d'un bloc memoire contenu dans @temp
|
||||||
|
foreach (@temp) { # foreach temp
|
||||||
|
if ( m/$ChampsRef[$data]/ ){
|
||||||
|
#s/\s+//;
|
||||||
|
#print"$_";
|
||||||
|
(my $E, my $Ref)=split(/:/,$_);
|
||||||
|
$_=$Ref;
|
||||||
|
s/\s+//;
|
||||||
|
chop($_);
|
||||||
|
#print"$_";
|
||||||
|
if ($item eq "PC"){$RefPC=$_;}
|
||||||
|
if ($item eq "CM"){$RefCM=$_;}
|
||||||
|
}
|
||||||
|
} # fin boucle foreach temp
|
||||||
|
} # fin boucle foreach @FicTab
|
||||||
|
|
||||||
|
} # fin boucle foreach @RefMachine
|
||||||
|
#print "$RefPC";
|
||||||
|
#print "$RefCM";
|
||||||
|
|
||||||
|
# patern pour test de la validite du test de la reference PC et CM
|
||||||
|
#$RefPC="CZC1194MME";
|
||||||
|
#$RefPC=undef;
|
||||||
|
#$RefPC="";
|
||||||
|
|
||||||
|
#$RefCM="CZC1194MMF";
|
||||||
|
#$RefCM=undef;
|
||||||
|
#$RefCM="";
|
||||||
|
# fin patern pour test de la validite du test de la reference PC et CM
|
||||||
|
|
||||||
|
# Test si $RefPC est: defini ET n'est pas une chaine vide ET ne contient pas d'espace
|
||||||
|
# Test si $RefCM est: defini ET n'est pas une chaine vide ET ne contient pas d'espace
|
||||||
|
if ((defined $RefPC) && ($RefPC ne "") && !($RefPC =~ m/\s+/))
|
||||||
|
{ $NomFic="PC_".$RefPC.".txt";
|
||||||
|
}elsif((defined $RefCM) && ($RefCM ne "") && !($RefCM =~ m/\s+/)){
|
||||||
|
$NomFic="CM_".$RefCM.".txt";
|
||||||
|
}else{
|
||||||
|
$NomFic="ERROR.txt";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME DE CONCATENATION DES FICHIERS CHECKLIST PLUS CARACTERISTIQUES
|
||||||
|
#########################################################################
|
||||||
|
# La concatenation des fichiers checklist suivi de caractéristiques
|
||||||
|
# se trouve dans un fichier nommé avec la référence du PC ou de la carte
|
||||||
|
# Enregistrement du tableau @ident dans le fichier de nom $NomFic
|
||||||
|
|
||||||
|
open(my $FIN, "<",$CheckFile) or die "Ouverture du fichier $CheckFile impossible\n";
|
||||||
|
open(my $FOUT, ">",$PathFicout.$NomFic) or die "Ouverture du fichier $NomFic impossible\n";
|
||||||
|
# Recopie du fichier checklist dans le fichier ref PC ou carte $NomFic
|
||||||
|
while(<$FIN>){
|
||||||
|
print ($FOUT $_); # ecrit la ligne dans le fichier $NomFic
|
||||||
|
#print("$_");
|
||||||
|
}
|
||||||
|
#print ($Fout "TOTO\n");
|
||||||
|
#print "\n";
|
||||||
|
# Recopie du tableau caracteristiques PC dans le fichier ref PC ou carte $NomFic
|
||||||
|
foreach(@ident){
|
||||||
|
print ($FOUT $_);
|
||||||
|
#print("$_");
|
||||||
|
}
|
||||||
|
close ($FIN);
|
||||||
|
close ($FOUT);
|
||||||
|
|
||||||
|
|
||||||
|
# Concaténation des fichiers checklist et caracteristique (identPC)
|
||||||
|
#open(my $FIN, "<",$NomFic) or die "Ouverture du fichier $NomFic impossible\n";
|
||||||
|
#open(my $FOUT, ">>",$CheckFile) or die "Ouverture du fichier $CheckFile impossible\n";
|
||||||
|
#print ($Fout "TOTO\n");
|
||||||
|
#print "\n";
|
||||||
|
#while(<$FIN>){
|
||||||
|
#print ($FOUT $_); # ecrit la ligne dans le fichier $CheckFile
|
||||||
|
#print("$_");
|
||||||
|
#}
|
||||||
|
#close ($FIN);
|
||||||
|
#close ($FOUT);
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# PROGRAMME D'ENVOI DU FICHIER RESULTAT VERS LE SERVEUR
|
||||||
|
#########################################################################
|
||||||
|
# Envoi du fichier concatené checklist plus caracteristiques PC sur le serveur
|
||||||
|
system("rsync --port 10073 -aP " . $PathFicout.$NomFic . " 'lalis69.ddns.net::lalis-ordis/'");
|
||||||
|
|
||||||
|
print "\n########## Nom fichier resultat: $NomFic ##########\n";
|
||||||
|
print "\n################ Traitement terminé ################\n";
|
||||||
|
print "\n";
|
||||||
|
################################ FIN PROGRAMME ################################
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -1,114 +0,0 @@
|
|||||||
#!/usr/bin/bash
|
|
||||||
######### Script d'etablissement de la fiche technique d'un PC #########
|
|
||||||
|
|
||||||
FILE="$DESKTOP/identification.txt"
|
|
||||||
|
|
||||||
usage()
|
|
||||||
{ echo ' Usage:'
|
|
||||||
echo ' -Argument 1: Entrer: p pour portable ou d pour desktop'
|
|
||||||
echo ' -Argument 2: Entrer: le numéro de série du PC'
|
|
||||||
echo ''
|
|
||||||
}
|
|
||||||
|
|
||||||
# test du nombre d'arguments < 2
|
|
||||||
#if [ "${#}" -lt 2 ]
|
|
||||||
#then usage
|
|
||||||
# exit 3
|
|
||||||
#fi
|
|
||||||
# test du type de PC (Portable ou Desktop)
|
|
||||||
if [ "${1}" = "p" ]
|
|
||||||
then echo '#*******************************************************#'
|
|
||||||
echo "# Portable numéro de série: ${2} "
|
|
||||||
echo '#*******************************************************#'
|
|
||||||
elif [ "${1}" = "d" ]
|
|
||||||
then echo '#*******************************************************#'
|
|
||||||
echo "# Desktop numéro de série: ${2} "
|
|
||||||
echo '#*******************************************************#'
|
|
||||||
fi
|
|
||||||
|
|
||||||
#*********** Identification PC *************
|
|
||||||
echo '' > $FILE
|
|
||||||
echo '/************** Identification PC **************/' >> $FILE
|
|
||||||
/usr/sbin/lshw -class system | sed -n '/description/p;/produit/p;/fabriquant/p;/numéro/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification BIOS *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification BIOS **********' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t bios | sed -n '/Vendor/p;/Version/p;/Release/p;/Revision/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification CARTE MERE *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification CARTE MERE **********' >> $FILE
|
|
||||||
/usr/sbin/lshw | grep -A 5 "description: Carte mère" >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification CARTE GRAPHIQUE *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification CARTE GRAPHIQUE **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class display | sed -n '/description/p;/produit/p;/fabriquant/p;/version/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification processeur *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification processeur **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class processor | sed -n '/description/p;/produit/p;/fabriquant/p;/bits/p;/configuration/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification RAM *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification RAM **********' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t memory | head -n 24 | sed -n '/Maximum/p' >> $FILE
|
|
||||||
echo '' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t memory | head -n 24 | sed -n '/Bank/p' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t memory | head -n 30 | sed -n '/Manufacturer/p;/Type/p;/Size/p;/Speed/p;/Serial/p' >> $FILE
|
|
||||||
echo '' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t memory | tail -n 11 | sed -n '/Bank/p' >> $FILE
|
|
||||||
/usr/sbin/dmidecode -t memory | tail -n 19 | sed -n '/Manufacturer/p;/Type/p;/Size/p;/Speed/p;/Serial/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification HDD *************
|
|
||||||
#echo '' >> $FILE
|
|
||||||
#echo ' /********** Identification HDD **********' >> $FILE
|
|
||||||
#/usr/sbin/lshw -class disk | head -n 13 | sed -n '/description/p;/produit/p;/fabriquant/p;/série/p;/taille/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification DVD *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification DVD **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class disk | tail -n 14 | sed -n '/description/p;/produit/p;/fabriquant/p;/version:/p;/fonctionnalités:/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification réseau filaire *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification réseau filaire **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class network | head -n 13 | sed -n '/description/p;/produit/p;/fabriquant/p;/numéro/p;/capacité/p' >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification autre réseau *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification autre réseau **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class network | tail -n 14 | sed -n '/description/p;/produit/p;/fabriquant/p;/numéro/p' >> $FILE
|
|
||||||
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification USB et autre**********' >> $FILE
|
|
||||||
lsusb >> $FILE
|
|
||||||
|
|
||||||
#*********** Identification batterie *************
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo ' /********** Identification Batterie **********' >> $FILE
|
|
||||||
/usr/sbin/lshw -class power | sed -n '/produit/p;/fabriquant/p;/capacité/p;/configuration/p' >> $FILE
|
|
||||||
echo '' >> $FILE
|
|
||||||
|
|
||||||
#*********** Test des disques durs *************
|
|
||||||
for DISK in `lsblk -dn -x NAME --output NAME`
|
|
||||||
do
|
|
||||||
echo '' >> $FILE
|
|
||||||
echo " /********** Test du disk #$DISK# **********" >> $FILE
|
|
||||||
/usr/sbin/smartctl -H /dev/$DISK| grep -c "PASSED"
|
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
|
||||||
/usr/sbin/smartctl -a /dev/$DISK >> $FILE
|
|
||||||
echo "############ Problème sur le disque $DISK ########################"
|
|
||||||
echo "############ Problème sur le disque $DISK ########################" >>$FILE
|
|
||||||
|
|
||||||
echo '' >> $FILE
|
|
||||||
else
|
|
||||||
/usr/sbin/smartctl -i /dev/$DISK >> $FILE
|
|
||||||
echo "############ Pas de problèmes détectés sur le disque $DISK ########################"
|
|
||||||
echo "############ Pas de problèmes détectés sur le disque $DISK ########################" >> $FILE
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
|||||||
#!/usr/bin/sh
|
|
||||||
|
|
||||||
DESKTOP=`grep XDG_DESKTOP_DIR $1/.config/user-dirs.dirs`
|
|
||||||
DESKTOP=${DESKTOP##*}
|
|
||||||
export $DESKTOP
|
|
||||||
|
|
||||||
/usr/local/bin/identPC.sh
|
|
||||||
/usr/bin/kate $DESKTOP/checklist.txt
|
|
||||||
grep -is -m 2 "numéro de série" $DESKTOP/identification.txt >tmp.txt
|
|
||||||
while read LIGNE
|
|
||||||
do
|
|
||||||
TMP=${LIGNE##*}
|
|
||||||
if [ "$TMP" != "Number" ];then
|
|
||||||
DIRNAME="$DIRNAME$TMP"
|
|
||||||
break
|
|
||||||
else
|
|
||||||
DIRNAME="CM_"
|
|
||||||
fi
|
|
||||||
|
|
||||||
done < tmp.txt
|
|
||||||
rm -f tmp.txt
|
|
||||||
mkdir $DIRNAME
|
|
||||||
rsync --port 10073 -aP $DESKTOP/*.txt "lalis69.ddns.net::lalis-ordis/$DIRNAME"
|
|
@ -1,7 +1,7 @@
|
|||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Comment[fr_FR]=Outils de test et d'inventaire matériel de LALIS
|
Comment[fr_FR]=Outils de test et d'inventaire matériel de LALIS
|
||||||
Comment=Outils de test et d'inventaire matériel de LALIS
|
Comment=Outils de test et d'inventaire matériel de LALIS
|
||||||
Exec=kdesu -u root /usr/local/bin/sync_check.sh
|
Exec=kdesu -u root /usr/local/bin/identMM.pl
|
||||||
GenericName[fr_FR]=Test
|
GenericName[fr_FR]=Test
|
||||||
GenericName=Test
|
GenericName=Test
|
||||||
Icon=bleachbit
|
Icon=bleachbit
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
Summary: Install LALIS packages and configuration
|
Summary: Install LALIS packages and configuration
|
||||||
Name: task-lalis
|
Name: task-lalis
|
||||||
Version: 2.1
|
Version: 2.4
|
||||||
Release: %mkrel 1
|
Release: %mkrel 1
|
||||||
License: GPLv3
|
License: GPLv3
|
||||||
Group: Tools
|
Group: Tools
|
||||||
@ -9,8 +9,8 @@ BuildArch: noarch
|
|||||||
Source1: journald.conf
|
Source1: journald.conf
|
||||||
Source2: lalistunnel
|
Source2: lalistunnel
|
||||||
Source3: Lalis.desktop
|
Source3: Lalis.desktop
|
||||||
Source4: identPC.sh
|
Source4: identMM.pl
|
||||||
Source5: sync_check.sh
|
#Source5: sync_check.sh
|
||||||
Source6: checklist.txt
|
Source6: checklist.txt
|
||||||
Source7: test.desktop
|
Source7: test.desktop
|
||||||
Requires: kate
|
Requires: kate
|
||||||
@ -123,15 +123,16 @@ This package installs LALIS choosen packages and some configurations.
|
|||||||
%install
|
%install
|
||||||
mkdir -p %{buildroot}/tmp/
|
mkdir -p %{buildroot}/tmp/
|
||||||
mkdir -p %{buildroot}/usr/local/bin/
|
mkdir -p %{buildroot}/usr/local/bin/
|
||||||
|
mkdir -p %{buildroot}/usr/share/lalis/
|
||||||
mkdir -p %{buildroot}/usr/share/kio_desktop/
|
mkdir -p %{buildroot}/usr/share/kio_desktop/
|
||||||
mkdir -p %{buildroot}/usr/share/dist/desktop-files/default/
|
mkdir -p %{buildroot}/usr/share/dist/desktop-files/default/
|
||||||
cp -af %{SOURCE1} %{buildroot}/tmp/
|
cp -af %{SOURCE1} %{buildroot}/tmp/
|
||||||
cp -f %{SOURCE2} %{buildroot}/usr/local/bin/
|
cp -f %{SOURCE2} %{buildroot}/usr/local/bin/
|
||||||
cp -f %{SOURCE4} %{buildroot}/usr/local/bin/
|
cp -f %{SOURCE4} %{buildroot}/usr/local/bin/
|
||||||
cp -f %{SOURCE5} %{buildroot}/usr/local/bin/
|
#cp -f %{SOURCE5} %{buildroot}/usr/local/bin/
|
||||||
cp -f %{SOURCE3} %{buildroot}/usr/share/kio_desktop/
|
cp -f %{SOURCE3} %{buildroot}/usr/share/kio_desktop/
|
||||||
cp -f %{SOURCE3} %{buildroot}/usr/share/dist/desktop-files/default/
|
cp -f %{SOURCE3} %{buildroot}/usr/share/dist/desktop-files/default/
|
||||||
cp -f %{SOURCE6} %{buildroot}/usr/share/dist/desktop-files/default/
|
cp -f %{SOURCE6} %{buildroot}/usr/share/lalis/
|
||||||
cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/
|
cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/
|
||||||
|
|
||||||
%files
|
%files
|
||||||
@ -140,9 +141,9 @@ cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/
|
|||||||
# créer un utilisateur Lalis enlève les droits de lecture/écriture/visibilité/exécution à others
|
# créer un utilisateur Lalis enlève les droits de lecture/écriture/visibilité/exécution à others
|
||||||
/tmp/journald.conf
|
/tmp/journald.conf
|
||||||
/usr/local/bin/lalistunnel
|
/usr/local/bin/lalistunnel
|
||||||
/usr/local/bin/identPC.sh
|
/usr/local/bin/identMM.pl
|
||||||
/usr/local/bin/sync_check.sh
|
|
||||||
/usr/share/kio_desktop/Lalis.desktop
|
/usr/share/kio_desktop/Lalis.desktop
|
||||||
|
/usr/share/lalis/*
|
||||||
/usr/share/dist/desktop-files/default/*
|
/usr/share/dist/desktop-files/default/*
|
||||||
|
|
||||||
%post
|
%post
|
||||||
@ -169,7 +170,7 @@ if [ -z "`grep lalis /etc/ssh/sshd_config`" ]; then
|
|||||||
echo "Allowusers lalis" >>/etc/ssh/sshd_config
|
echo "Allowusers lalis" >>/etc/ssh/sshd_config
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Ajoute le fichier checklist.txt et test.desktop sur le bureau de l'utilisateur lalis
|
# Ajoute le fichier test.desktop sur le bureau de l'utilisateur lalis
|
||||||
desktop /home/lalis
|
desktop /home/lalis
|
||||||
echo $DESKTOP
|
echo $DESKTOP
|
||||||
if ! [ -d "/home/lalis/$DESKTOP" ]; then
|
if ! [ -d "/home/lalis/$DESKTOP" ]; then
|
||||||
@ -177,9 +178,11 @@ if ! [ -d "/home/lalis/$DESKTOP" ]; then
|
|||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp /usr/share/dist/desktop-files/default/checklist.txt /home/lalis/$DESKTOP/
|
chmod a+rw /usr/share/lalis/checklist.txt
|
||||||
cp /usr/share/dist/desktop-files/default/test.desktop /home/lalis/$DESKTOP/
|
cp /usr/share/dist/desktop-files/default/test.desktop /home/lalis/$DESKTOP/
|
||||||
chown lalis:lalis -R /home/lalis
|
chown lalis:lalis -R /home/lalis/$DESKTOP/test.desktop
|
||||||
|
# Copie le fichier Lalis.desktop dans le dossier /etc/skel
|
||||||
|
cp -f /usr/share/kio_desktop/Lalis.desktop /etc/$DESKTOP/
|
||||||
|
|
||||||
# Copie le fichier Lalis.desktop dans les dossier utilisateurs existant
|
# Copie le fichier Lalis.desktop dans les dossier utilisateurs existant
|
||||||
cp -f /usr/share/kio_desktop/Lalis.desktop /usr/share/dist/desktop-files/default/
|
cp -f /usr/share/kio_desktop/Lalis.desktop /usr/share/dist/desktop-files/default/
|
||||||
|
Reference in New Issue
Block a user