From ed8bf4355e5f28114815979a49ce4fb0cd9e961f Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Thu, 23 May 2019 18:11:02 +0200 Subject: [PATCH 1/9] modification dossier --- SOURCES/checklist.txt | 20 ++++++++------------ SPECS/task-lalis.spec | 8 +++++--- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/SOURCES/checklist.txt b/SOURCES/checklist.txt index c1fa16c..1ce0153 100644 --- a/SOURCES/checklist.txt +++ b/SOURCES/checklist.txt @@ -8,31 +8,27 @@ bouton droit haut : bouton gauche bas : bouton droit bas : -USB droite AR : -USB droite AV : -USB gauche AR : -USB gauche AV : +Prises USB 2 : +Prises USB 3 : e-sata : -USB = -e-sata = -audio intégré : + +audio intégré jack audio out : jack audio in : +Jack micro : VGA : HDMI : mini-HDMI : display port : -réglage audio clavier : -réglage bouton "sans-fil" : - bluetooth : +Wifi : lecteur DVD : lecteur d'empreinte digitale : -firewire : -série : +port firewire : +port série : SD_card : diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index e2236a5..cd1b3f0 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -1,6 +1,6 @@ Summary: Install LALIS packages and configuration Name: task-lalis -Version: 2.1 +Version: 2.2 Release: %mkrel 1 License: GPLv3 Group: Tools @@ -123,6 +123,7 @@ This package installs LALIS choosen packages and some configurations. %install mkdir -p %{buildroot}/tmp/ mkdir -p %{buildroot}/usr/local/bin/ +mkdir -p %{buildroot}/usr/share/lalis/ mkdir -p %{buildroot}/usr/share/kio_desktop/ mkdir -p %{buildroot}/usr/share/dist/desktop-files/default/ cp -af %{SOURCE1} %{buildroot}/tmp/ @@ -131,7 +132,7 @@ cp -f %{SOURCE4} %{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/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/ %files @@ -143,6 +144,7 @@ cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/ /usr/local/bin/identPC.sh /usr/local/bin/sync_check.sh /usr/share/kio_desktop/Lalis.desktop +/usr/share/lalis/* /usr/share/dist/desktop-files/default/* %post @@ -173,7 +175,7 @@ if ! [ -d "/home/lalis/$DESKTOP" ]; then fi -cp /usr/share/dist/desktop-files/default/checklist.txt /home/lalis/$DESKTOP/ +cp /usr/share/lalis/checklist.txt /home/lalis/$DESKTOP/ cp /usr/share/dist/desktop-files/default/test.desktop /home/lalis/$DESKTOP/ chown lalis:lalis -R /home/lalis From cfe9f37a16e166c7ec78cb2ea74f5db8ae349f2e Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Thu, 23 May 2019 18:50:39 +0200 Subject: [PATCH 2/9] idenMM --- SOURCES/identMM.pl | 345 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 345 insertions(+) create mode 100755 SOURCES/identMM.pl diff --git a/SOURCES/identMM.pl b/SOURCES/identMM.pl new file mode 100755 index 0000000..611e7fc --- /dev/null +++ b/SOURCES/identMM.pl @@ -0,0 +1,345 @@ +#!/usr/bin/perl + +use strict; +use warnings; + + +#************* 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 bloc 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", # champs (@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 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"; +} + +# Enregistrement du tableau @ident dans le fichier de nom $NomFic +open(my $Fout, ">",$NomFic) or die "Ouverture du fichier $NomFic impossible\n"; +#print ($Fout "TOTO\n"); +#print "\n"; +foreach(@ident){ +#print ($Fout $_); +print("$_"); +} +close ($Fout); + + +print "\n########## Nom fichier resultat: $NomFic ##########\n"; +print "\n"; +################################ FIN PROGRAMME ################################ + + + + + + + + + + + + + + From 7e032a08f680596b939b5d348ee71b39d4ec20a8 Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Thu, 23 May 2019 18:53:34 +0200 Subject: [PATCH 3/9] modif spec --- SPECS/task-lalis.spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index cd1b3f0..fcb7dc4 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -1,6 +1,6 @@ Summary: Install LALIS packages and configuration Name: task-lalis -Version: 2.2 +Version: 2.3 Release: %mkrel 1 License: GPLv3 Group: Tools @@ -9,8 +9,8 @@ BuildArch: noarch Source1: journald.conf Source2: lalistunnel Source3: Lalis.desktop -Source4: identPC.sh -Source5: sync_check.sh +Source4: identMM.pl +#Source5: sync_check.sh Source6: checklist.txt Source7: test.desktop Requires: kate @@ -141,7 +141,7 @@ 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 /tmp/journald.conf /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/lalis/* From 9af0f457b5914dd6034ee402a93034d3065c576e Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Thu, 23 May 2019 19:13:39 +0200 Subject: [PATCH 4/9] supression de sync_check.sh --- SPECS/task-lalis.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index fcb7dc4..2dc5e2b 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -129,7 +129,7 @@ mkdir -p %{buildroot}/usr/share/dist/desktop-files/default/ cp -af %{SOURCE1} %{buildroot}/tmp/ cp -f %{SOURCE2} %{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/dist/desktop-files/default/ cp -f %{SOURCE6} %{buildroot}/usr/share/lalis/ @@ -142,7 +142,7 @@ cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/ /tmp/journald.conf /usr/local/bin/lalistunnel /usr/local/bin/identMM.pl -/usr/local/bin/sync_check.sh +#/usr/local/bin/sync_check.sh /usr/share/kio_desktop/Lalis.desktop /usr/share/lalis/* /usr/share/dist/desktop-files/default/* From d7d7545bacd94a407c228da5e36a603ab18d8ccb Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Wed, 5 Jun 2019 19:11:08 +0200 Subject: [PATCH 5/9] y'en a marre --- SOURCES/identPC.sh | 114 ------------------------------------------ SOURCES/sync_check.sh | 23 --------- 2 files changed, 137 deletions(-) delete mode 100755 SOURCES/identPC.sh delete mode 100755 SOURCES/sync_check.sh diff --git a/SOURCES/identPC.sh b/SOURCES/identPC.sh deleted file mode 100755 index 214987e..0000000 --- a/SOURCES/identPC.sh +++ /dev/null @@ -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 - diff --git a/SOURCES/sync_check.sh b/SOURCES/sync_check.sh deleted file mode 100755 index 4d255ae..0000000 --- a/SOURCES/sync_check.sh +++ /dev/null @@ -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" From 3adcfbe6fb599fc1784174a432dba4dd2141dcb5 Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Wed, 5 Jun 2019 19:25:37 +0200 Subject: [PATCH 6/9] identMM final --- SOURCES/identMM.pl | 68 ++++++++++++++++++++++++++++++++++++++------ SOURCES/test.desktop | 2 +- 2 files changed, 60 insertions(+), 10 deletions(-) diff --git a/SOURCES/identMM.pl b/SOURCES/identMM.pl index 611e7fc..35a9035 100755 --- a/SOURCES/identMM.pl +++ b/SOURCES/identMM.pl @@ -3,6 +3,10 @@ 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 @@ -58,7 +62,7 @@ my @DescDisp=("4", # titre du chapitre general (@LshwTitres) my @DescNet=("5", # titre du chapitre general (@LshwTitres) "5", # champs (@ChampsLshw) de donnees à extraire "\\*\\-network", # debut du bloc a extraire - "\\*\\-" # fin du bloc a extraire + "\\*\\-" # fin du b loc a extraire ); # Descripteur de l'item battery my @DescBat=("6", # titre du chapitre general (@LshwTitres) @@ -93,6 +97,7 @@ my @DescMem=("0", # titre du chapitre general (@SmartTitres) "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?`; @@ -108,10 +113,11 @@ my @tabsmart; 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", # champs (@ChampsLshw) de donnees à extraire + "0", # chamextraireps (@ChampsLshw) de donnees à extraire "localhost", # debut du bloc a extraire "\\*\\-" # fin du bloc a extraire ); @@ -128,6 +134,12 @@ 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) ######################################################################### @@ -167,7 +179,8 @@ foreach (@RefItems) { # foreach @RefItems } } # fin boucle foreach temp } # fin boucle foreach @LshwTab -} # fin boucle foreach @LshwTitres +} # fin boucle foreach @LshwTitres + ######################################################################### # PROGRAMME DES INFORMATIONS GENERALES (LSUSB) @@ -219,10 +232,12 @@ foreach (@tabdmidecode) { # foreach @tabdmidecode if ( m/$ChampsMem[$DescMem[1]]/ ){ s/\s+/ /; #print; + push(@ident,$_); } } # fin boucle foreach temp } # fin boucle foreach @tabdmidecode + ######################################################################### # PROGRAMME DES INFORMATIONS DISK (SMARTCTL) @@ -243,7 +258,8 @@ push(@ident,"\n*************** disk ".$D." *************\n"); #print; push(@ident,$_); } - } # fin boucle foreach tabsmart + } # fin boucle foreach tabsmart + } # fin foreach disk ######################################################################### @@ -315,18 +331,52 @@ if ((defined $RefPC) && ($RefPC ne "") && !($RefPC =~ m/\s+/)) $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 $Fout, ">",$NomFic) or die "Ouverture du fichier $NomFic impossible\n"; + +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("$_"); +print ($FOUT $_); +#print("$_"); } -close ($Fout); +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 ################################ diff --git a/SOURCES/test.desktop b/SOURCES/test.desktop index a98e8b0..9d5d404 100644 --- a/SOURCES/test.desktop +++ b/SOURCES/test.desktop @@ -1,7 +1,7 @@ [Desktop Entry] Comment[fr_FR]=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=Test Icon=bleachbit From 3ce6a276e8bd81abbe3ccfa0515389575a3ef2c2 Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Wed, 5 Jun 2019 19:45:25 +0200 Subject: [PATCH 7/9] nettoyage --- SPECS/task-lalis.spec | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index 2dc5e2b..9cba296 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -167,7 +167,7 @@ if [ -z "`grep lalis /etc/ssh/sshd_config`" ]; then echo "Allowusers lalis" >>/etc/ssh/sshd_config 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 echo $DESKTOP if ! [ -d "/home/lalis/$DESKTOP" ]; then @@ -175,9 +175,11 @@ if ! [ -d "/home/lalis/$DESKTOP" ]; then fi -cp /usr/share/lalis/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/ -chown lalis:lalis -R /home/lalis +chown lalis:lalis -R /home/lalis/$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 cp -f /usr/share/kio_desktop/Lalis.desktop /usr/share/dist/desktop-files/default/ From beb7a0ec470e6271cba744b2b8a1effc19c63cac Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Wed, 5 Jun 2019 19:49:58 +0200 Subject: [PATCH 8/9] bug minor --- SPECS/task-lalis.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index 9cba296..b8260df 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -142,7 +142,6 @@ cp -f %{SOURCE7} %{buildroot}/usr/share/dist/desktop-files/default/ /tmp/journald.conf /usr/local/bin/lalistunnel /usr/local/bin/identMM.pl -#/usr/local/bin/sync_check.sh /usr/share/kio_desktop/Lalis.desktop /usr/share/lalis/* /usr/share/dist/desktop-files/default/* @@ -177,7 +176,7 @@ fi chmod a+rw /usr/share/lalis/checklist.txt cp /usr/share/dist/desktop-files/default/test.desktop /home/lalis/$DESKTOP/ -chown lalis:lalis -R /home/lalis/$DESKTOP +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/ From d941c5c649b6eb3d335778c8646a8681d9b26f80 Mon Sep 17 00:00:00 2001 From: Daniel Tartavel Date: Thu, 6 Jun 2019 19:34:21 +0200 Subject: [PATCH 9/9] new version --- SPECS/task-lalis.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SPECS/task-lalis.spec b/SPECS/task-lalis.spec index b8260df..3bf9b77 100755 --- a/SPECS/task-lalis.spec +++ b/SPECS/task-lalis.spec @@ -1,6 +1,6 @@ Summary: Install LALIS packages and configuration Name: task-lalis -Version: 2.3 +Version: 2.4 Release: %mkrel 1 License: GPLv3 Group: Tools