You are on page 1of 7

FACULTE DES SCIENCES ET TECHNIQUES

Dpartement Informatique - Tanger


Examen:
Administration des systmes LSI 2 Dure 1 H

Partie I
1) Ecrire un Script avec une fonction qui saisit les notes dune classe et affiche la moyenne
a) en utilisant awk
b)sans utiliser awk
a)
on suppose qu on a un fichier cntient les notes par exemple
12
13
10
# !/usr/bin/awk
BEGIN {note=0; nb=0;}
{note+=$1;nb++}
END{b=note/nb; print b}
b)
#!/bin/bash
calc()
{
echo "nombre des rgument est $1"
i=0
n=0
while [ $i -lt $1 ]
do
echo "donnez la note"
read note
n=`expr $n \+ $note`
i=`expr $i + 1`
done
echo "le nombre est $n"
moy=`expr $n \/ $1`
echo " la moyenne est $moy";
}
main(){
echo "donnez le nombre des etudiants"
read nb;
calc "$nb"
}

main $ *
2) En tant que root, crivez la commande qui permet de lister les fichiers volumineux
dpassant une certaines taille (exemple : 1 Mo)

sudo find / -size +1M


Partie II
1) Ecrire un script shell qui change tous les noms des fichiers du rpertoire courant en
minuscule.

for i in `ls`
do
ii=`echo $i | tr A-Z a-z`
echo "$i devenu $ii"
`mv $i $ii`
done
2) Raliser un script qui, partir du chemin indiqu en premier argument, parcours tout les
rpertoires fils la recherche des fichiers qui sont des liens durs du fichier fournis en second
argument. Affiche leurs chemins en rsultat.
#!/bin/bash
if [ $# -lt 2 ] ; then
echo "nb param invalide"
`exit`
fi
inode=`ls -il $2| tr -s " "|cut -d " " -f1`
for i in `ls -il $1| tr -s " "|cut -d " " -f1`
do
if [ "$i" == "$inode" ] ;then
noml=`ls -il |grep "^$i"| tr -s " "|cut -d " " -f10`
if [ "$noml" != "$2" ] ;then
echo "$noml"
fi
done
3) Ecrire une commande qui affiche combien de fichiers de configuration avez-vous (en
utilisant grep tr cut)
ls -la| tr -s " "|cut -d " " -f9|grep "^\."|grep "[a-z A-Z]$"|wc -l

Partie III
1) A quoi sert les fichiers suivants :
/etc/fstab,
il contient une liste des disques utiliss au dmarrage et des partitions de ces disques. Pour
chaque partition, il indique comment elle sera utilise et intgre larborescence du systme
de fichiers global
tmpfs
/dev/shm
tmpfs defaults
00
devpts
/dev/pts
devpts gid=5,mode=620 0 0
sysfs
/sys
sysfs defaults
00
proc
/proc
proc defaults
00
/etc/host.allow,
on indique dans ce fichier les services et les htes pour lesquels l'accs est autoris.

# hosts.allow
#
#
#
#
#
#
#

This file contains access rules which are used to


allow or deny connections to network services that
either use the tcp_wrappers library or that have been
started through a tcp_wrappers-enabled xinetd.
See 'man 5 hosts_options' and 'man 5 hosts_access'
for information on rule syntax.
See 'man tcpd' for information on tcp_wrappers

/etc/services
simple base de donnes qui associe des noms comprhensibles par l'homme des ports
service comprhensibles par la machine
visitview
visitview
pammratc
pammratc
pammrpc
pammrpc
loaprobe
loaprobe
edb-server1
edb-server1

1631/tcp
1631/udp
1632/tcp
1632/udp
1633/tcp
1633/udp
1634/tcp
1634/udp
1635/tcp
1635/udp

/etc/xinetd.conf

# Visit view
# Visit view
# PAMMRATC
# PAMMRATC
# PAMMRPC
# PAMMRPC
# Log On America Probe
# Log On America Probe
# EDB Server 1
# EDB Server 1

contient des paramtres de configuration gnraux qui influencent tous les services gerer
par xinetd
defaults
{
instances
= 60
log_type
= SYSLOG authpriv
log_on_success
= HOST PID
log_on_failure
= HOST
cps
= 25 30
}
includedir /etc/xinetd.d
/etc/hosts.equiv

autorise les utilisateurs se connecter sur sur notre machine (par exemple avec rlogin ou rsh)
sans demande de mot de passe
host1
host2 user_a
+@group1
-@group2

/etc/sysconfig
contient de nombreux fichiers de configuration son contenu est :
atd
ip6tables
network-scripts selinux
auditd
ip6tables-config nspluginwrapper smartmontools
authconfig ip6tables.old ntpd
snmpd
cbq
iptables
ntpdate
snmptrapd
clock
iptables-config prelink
sshd
console
iptables.old
quota_nld
sysstat
cpuspeed irqbalance
raid-check
sysstat.ioconf
crond
kdump
readahead
system-config-firewall
firstboot kernel
readonly-root system-config-firewall.old
grub
keyboard
rngd
system-config-users
htcacheclean modules
rsyslog
udev
httpd
netconsole
samba
wpa_supplicant
i18n
network
sandbox
init
networking
saslauthd

2) A quoi sert les commandes suivantes :

Df
est une commande UNIX utilise pour afficher la valeur d'espace disque disponible des
systmes de fichier
df:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2
3412776 3214876 24540 100% /
tmpfs
506176 376 505800 1% /dev/shm
/dev/sda1
297485 34622 247503 13% /boot
Service
Permet de demarrez arreter redemarrer les service qui ont un script dans /etc/init.d
service single restart
ifconfig,
permet de configurer et d'afficher les informations des interfaces rseau IP

eth0

Link encap:Ethernet HWaddr 00:0C:29:29:63:73


inet addr:10.20.0.2 Bcast:10.255.255.255 Mask:255.0.0.0
inet6 addr: fe80::20c:29ff:fe29:6373/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:785 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:33445 (32.6 KiB)

mount t nfs
La commande mount permet de monter les systme de fichier
NFS permet de partager des disques entre stations UNIX, voire entre serveur NFS UNIX et
client Windows PC-NFS.
mail
permet d afficher la boite de reception et aussi envoyer des emails
mail
No mail for yassir

3) comment peut on faire un montage automatique dune partition disque se trouvant sur une
machine distante

1) dclarer sur la machine serveur le systme de fichier exporter


=> dans le fichier /etc/exports, il faut ajouter la ligne : / machine ou n IP
par exemple, la machine 10.20.00.25 partage son rpertoire /mnt/partage la
machine dont ladresse IP est 10.20.00.2 :
/mnt/commun 10.20.00.2
2) monter le systme de fichier sur la machine client :
mount -t nfs serveur:/systme de fichier rp_local
ce qui donne pour la machine autorise :
mount -t nfs 10.20.0.25:/mnt/partage /mnt/montage_NFS
4) En ditant les fichiers correspondant la configuration rseau. Essayez daffecter votre
machine la plage dadresses 192.168.2.20 25
On peut le faire par lutilisation de linterface virtuelle le principe est de deviser linterface
par exemple eth0 en des sous interfaces virtuel pour le faire
Ifconfig eth0 :1 192.168.2.20
Ifconfig eth0 :2 192.168.2.22
Ifconfig eth0 :3 192.168.2.23
Ou on peut utiliser un script
# !/bin/bash
while [ $i -lt 7 ]
do
`Ifconfig eth0 :$i 192.168.2.$j`
j=`expr $j + 1`
i=`expr $i + 1`
done

Redmarrer le service network et appliquer la commande suivante


i=20; while [[ $i -le 25 ]]; do arping -c 2 -s 192.168.2.$i 192.168.2.255; let i="$i+1";
done
le resultat est :
arping : Weird MAC addr 192.168.2.20
arping : Weird MAC addr 192.168.2.21
arping : Weird MAC addr 192.168.2.22
arping : Weird MAC addr 192.168.2.23
arping : Weird MAC addr 192.168.2.24
arping : Weird MAC addr 192.168.2.25

Tester par ping et connectez-vous avec ssh


Ping
Le ping reussit pour les 5 addresse

SSH
ssh sshuhser@192.168.2.24 ou par lutilisation de putty a partir d un client windows
ou
telnet 192.168.2.24 3000

You might also like