TOTAL - Projet 

MEMENTO DES COMMANDES SHELL UNIX

par B.LISAN 20/3/95

 

0.       commandes diverses et générales (commandes plutôt utilisateurs)

 

Utilisation

Syntaxe générale de la commande

Exemple

visualiser le contenu d'un/des fichier(s)

cat [-options] fichier [fichier...]

-v : affiche les caractères non imprimables

cat /etc/passwd

cat config

changer de répertoire courant

cd : revenir au répertoire de connexion de l'utilisateur

        (HOME directory, contenu dans variable $HOME)

cd répertoire  ( : changer de répertoire courant)

cd .. : remonter au répertoire supérieur dans

          l'arboresecence, par rapport au répertoire courant.

cd

cd /usr2/meteor

 

cd ..

effacer l'écran

clear

clear

copier fichier(s)/ répertoire(s) vers  fichier(s)/ répertoire(s)

cp fic_source fic_cible

cp fic_source1 [fic_source2 ...]   repertoire_cible

Notes : avec certains UNIX (Solaris ...) on peut faire les commandes (UNIX non standard) suivantes :

cp fic_source1 [fic_source2 ...]             fic_cible

cp -r reper_source1 [reper_source2 ...]   repertoire_cible

( : copie récursive des repertoires sources vers le répertoire destination).

Pour copier récursivement voir la commande : cpio

cp man.txt  /tmp

cp man.txt  /tmp/.

cp man.txt  /tmp/

cp toto titi

cp fic1 fic2 fic3 repertoire1

afficher

afficher & formater

la date système

 

 

modifier

la date système

date

date '+format'

%A : jour en lettres

%B : mois en lettres

%d : jour en chiffres

%m : mois en chiffres

date mmjjhhmmaa

date

date '+%m'

afficher place disponible sur les partitions disque

df [-options [partition]]

-t :  affiche le nombre de blocs alloués et libres

-c :  affiche le pourcentage de blocs alloués

-i :  affiche le pourcentage d'inodes utilisés

...

df

df -ti /usr

 df /usr2

afficher un message

(utilisé dans un script shell)

echo message

\c : supprime le saut de ligne

\n : provoque le saut de ligne

\f :  provoque le saut de page

\t : insère une tabulation

\nnn : insère le code ASCII du caractère indiqué ici en octal de valeur nnn

Note: si le message contient des caratères de saut, il doit être entre quotes : 'message' ou "message"

Exemple d'utilisation

echo "\033[33;nn;1m\033[2J"    avec nn =

40 : jaune d or                           

41 : jaune d or, fond carmin              

42 : jaune d or, fond vert militaire      

43 : jaune d or, fond kaki                

44 : jaune citron, bleu de prusse         

45 : jaune citron, violet (cyan?)         

46 : jaune citron, fond blanc-vert emeraude

47 : jaune pale, fond gris                

echo ceci est un message

 

echo "Mise à jour base,\nvous avez comme choix:"

echo "1\tinsertion"

echo "2\tmise à jour"

echo "3\tsuppression"

echo "votre réponse :\c"

sortie de sa cession

exit  (ou logout selon certains UNIX)  ou Ctrl-D

exit

afficher nature du fichier

file fichier [fichier ...]

Note: types : data, directory, assci test, executable shell ...

recherche de noms absolus de fichiers répondant à des critères spécifiés (avec action sur ces fichiers)

find répertoire [repertoire..] -critère1 [-critère2 ...] -action

répertoire : un ou plusieurs répertoire points de départ

                    de la recherche (en absolu ou en relatif)

critère : un ou plusieurs critères de recherche. Exemple:

-name nom_fic : recherche d'un nom ou groupe de nom

                              de fichier(s) (on peut utliser les méta-

                              caractères, en mettant la chaîne de

                              recherche/filtre entre quotes).

-inum : recherche sur un n° d'inode

-user nom-utilisateur : recherche sur un nom d'utilisateur

-size n ou nc : recherche sur les fichiers d'une certaine

                          taille en nombre de blocs physiques ou

                          en nombre de caractères.

-type x : recherche sur un type de fichier :

b : fichier bloc

c : fichier caractère

d : répertoire

p : fichier pipe

f  : fichier ordinaire

-atime [+|-] n :

 n  : recherche des fichier modifiés il y a n jours

+n : recherche des fichiers modifiés il y a plus de n jours

-n  : recherche des fichiers modifiés il y a moins de n

       jours.

-o : placé entre 2 critères, signifie un OU logique entre

       ces critères.

! : placé devant le critère exprime la négation du critère.

actions : execute une action sur les fichiers trouvés.

-print : affiche les nom absolus des fichiers trouvés.

-exec commande \; : exécute une commande shell à

                                      chaque fichier trouvé.

-exec commande {} \; : exécute une commande shell sur

                                         chaque fichier trouvé.

liste tous les fichiers de nom execsys situés sous /usr2 :

find /usr -name 'execsys' -print

 

liste tous les fichiers situés sous le répertoire courant :

find . -print

 

liste les caractéristiques de tous les fichiers de nom 'pelican' ou de n° d'inode 125 :

find / -name pelican -o -inum 125 -exec ls -l {} \;

 

suppression de touts les fichiers, situés sous le répertoire courant, dont le 1er caractère commence par la lettre située entre a et z, terminés avec l'extension ".seq" et ayant été modifiés il y a plus de 45 jours (le 45ième jour étant inclus) :  

find . -name [a-z]*.seq -atime +45 -exec rm {} \;

visualiser, en hexadécimal, le contenu d'un/des fichier(s)

hd fichier [fichier...]

-v : affiche les caractères non imprimables

hd /etc/passwd

hd config

afficher mon uid (n°d'utilisateur) & gid (n° de groupe)

id

note: affiche les nom et n° de l'utilisateur et du groupe auquel il appartient

id

afficher les lignes d'un fichier en les numérotant

ln fichier

créer un alias à un nom de fichier (ou lien symbolique)

ln nom_fic nom_alias

Note: le lien fait référence au même fichier physique

          (il possède le même n° d'inode que l'autre nom)

ln fichier répertoire ( : alias ayant le même nom que le nom du fichier physique, crée dans le répertoire)

Note: il faut que l'alias soit crée dans la même partition

          (même système de fichier) que le nom du fichier.

pour créer normalement  un alias pour un fichier ou répertoire situés sur des systèmes différents de fichiers

ln -s fichier lien

ln fichier répertoire

ls /dev/rmt0 /dev/tape

 

 

 

ln /tmp/vv /usr2/meteor/tmp/

(Note: j'ai essayé cette commande et cela n'a pas marché, alors que la commande est prise en compte !)

afficher mon login

logname

logname

lister caractéristiques d'un /de fichier(s)

ls [-options] [fichier [fichier] ...]

-l : les principales caractéristiques de /d'un fichier(s)

      type, permission, propriétaire, taille, date de dernière

      modification

-R : liste récursive des répertoires

-a : liste au les fichiers "silencieux", dont le 1er caractère

      est . et qui sont des fichier de personnalisation et

      d'environnement (exemple : .profile  .lastlogin  ...)

-F : ajoute un caractère précisant la nature du fichier à la fin des noms :

/ pour un répertoire

* pour un exécutable

@ pour un lien symbolique

-i : affiche le n° d'inode des fichiers

-C : affiche en colonnes

-s : affiche la taille en blocs physique

-d : affiche uniquement le nom du répertoire

-p : affiche tous les fichiers et sous-répertoires du

       répertoire avec pour ces derniers un "/" collé à

       droite de leur nom (ce qui permet de distinguer ainsi

       les répertoires des simples fichiers).

...

ls -l

ls -l  /etc/*

ls -p /usr2/meteor

Ce que cela affiche :

DA1/     

DEVIMP   

DSK/     

FICLS    

FICLS.seq

FICMAJ   

G065CE   

KPRO/    

PRU/     

adlem/   

config   

config.old

cp_lem   

doc/     

dvplem/  

ficimp   

...

 

ls -p /usr2/meteor | grep "/"

créer un/des répertoire(s)

mkdir [-options] répertoire [répertoires ...]

-m valeur : affecte les permissions au répertoire

-p : crée les répertoires intermédiaires, si nécessaire

mkdir rep1 rep2 rep2/rep3

mkdir -m 700 rep

visualiser avec pagination le contenu du/des fichier(s)

more fichier [fichier...]

commandes diponibles à l'édition :

barre espace : page suivante

touche entrée/retour :  ligne suivante

b : page précédente

q : quitter l'outil "more"

/expression : recherche de la chaîne expression

n : recherche de la nième occurence ce cette chaîne

!commande : exécute la commande shell commande

h : afficher l'aide de l'outil "more"

more /etc/passwd

more config

déplacer (ou renommer) un/des fichier(s)/ répertoire(s) vers  un/des fichier(s)/ répertoire(s)

mv fic_source fic_cible ( : on renomme en conservant permissions et dernière date de mise à jour)

mv fic_source1 [fic_source2 ...] repertoire_cible ( : on déplace les fichiers sous le répertoire cible qui doit exister)

Notes : avec certains UNIX on peut faire les commandes  (UNIX non standard) suivantes :

mv repertoire_source repertoire_cible ( : déplacer  le repertoire source et son arborecence sous le répertoire cible).

Sinon on utilise, étant root, pour le faire, la commande :

mvdir  repertoire_source repertoire_cible

mv meltze.txt meltzer.txt (on renomme)

mv dtree d2u u2d  /tmp

mv /tmp/* /usr2/tmp

mv /tmp/* ./meteor/tmp

 

 

 

su

passwd : xxxxx

 

mvdir /usr2/tmp /tmp

visualisation octale  (ou selon d'autres formats) d'un/de fichier(s)

od [ -bcdosx ] [ fichier ] [ [ + ]décalage[ . ][ b ] ]          

-b : Affiche les caractères en octal.                            

-c : Affiche les caractères en ASCII.  Certains caractères

       non-graphiques apparaissent comme des

       séquences escapes: 

       \0 : caractère null

       \b : caractère backspace (effacement Del)

       \f : page suivant (form-feed)

       \n : ligne suivante (new-line)

       \r : retour chariot (return)

       \t : tabulation

       \nnn : Les autres apparaisent comme 3 chiffres octals. 

-d : affiche les mots en decimal non signé.                 

-o : affiche les mots en octal (option par défaut en

      l'absence  d'option précisé dans la commande).                            

-s : affiche les mots 16-bit in signed decimal.            

-x : affiche les mots en hexadécimal (comme hd).                         

L'argument décalage (indiqué en octal) spécifie le décalage dans le fichier à partie de la quelle commence la visualisation.

Si .  est précisé, la valeur du décalage est interprèté en décimal.

Si b  est précisé, la valeur du décalage est interprèté en bloc de 512 octets.

Si aucun nom de fichier précisé il faut mettre le signe + .                       

od -c dump1

 

 

od -b

changer son mot de passe

passwd

passwd

afficher le chemin absolu du répertoire courant

pwd

pwd

supprimer un fichier

rm [-options] fichier [fichier ...]

-i : demande de confirmation de suppression

-r  : suppression récursive d'un ou plusieurs répertoires

       et fichiers associés.

rm tutu /usr2/meteor/tmp/toto

supprimer un/des répertoire(s)

rmdir  répertoire [répertoires ...]

( : suppression de un ou plusieurs répertoires)

Note: il faut que les répertoires indiqués soient vides

rm -r  répertoire [répertoires ...]

( : suppression récursive d'un ou plusieurs répertoires et fichiers associés)

ATTENTION, commande très dangereuse !!! :

pas de message de confirmation et, sous UNIX, pas de possibilité de "recover" (récupération) d'un fichier supprimé (sinon par restauration d'une sauvegarde)

afficher caractéristiques du terminal

stty

stty -a ( : afficher toutes les caractéristiques).

stty valeur (positionne/maj une caractéristique)

stty -valeur  (invalide une caractéristique).

Liste des valeurs (dépendent du type d'UNIX: SCO, SUN ...) :

speed : vitesse (ex: 9600 baud ...)

ispeed : vitesse en entrée de la ligne

ospeed : vitesse en sortie du terminal

intr : touche permettant l'arrêt de la tâche ou processus

          (exemple :  DEL   ^C ^?...)

erase : touche effectuant l'effacement d'un caractère

               (exemple ^H)

start : touche d'arrêt du défilement

start : touche de poursuite du défilement     

stty

stty -a

 

stty intr DEL

stty erase "^H"

afficher caractéristiques du terminal (suite stty)

stty

line : (exemple 0)

quit : (exemple ^\)

kill : touche tuant une tâche (exemple @)

eof : (exemple ^)

eol : (exemple  ^@)

swtch  :                                                      

parenb :

parodd : (exemple cs7)

cstopb  :

hupcl :

cread :

clocal :

loblk :

ignbrk :

 brkint :

ignpar :

parmrk :

inpck :

istrip :

inlcr :

igncr :

icrnl :

iuclc        

ixon :

ixany :

ixoff :

isig :

icanon :

xcase :

echo :

echoe :

echok :

echonl :

noflsh :

tostop :

opost :

olcuc :

onlcr :

ocrnl :

onocr :

onlret :

ofill :

ofdel :

tab3 :

créer un fichier vide ou de mettre à jour date d'accès ou de modification d'un fichier existant

touch fichier [fichier ...]

touch  fic1  /usr2/meteor/.temporaire

affiche mon n°de voie

tty

Note : affiche la voie sous la forme /dev/tty06 par ex.

tty

éditeur pour créer et modifier un fichier ascci texte

vi  [-options] fichier [fichier ...]

Notes : plus aisé à utiliser que l'éditeur ligne ed

             Cet éditeur peut-être utilisé en batch.

vi toto .profile

afficher utilisateurs connectés

who

who -option avec -option :

-q : affiche les noms et nombre utilisateurs connectés

-u : affiche en plus le pid et signale si le terminal est actif

-l : affiche les voies en attente de connexion

who

who -q

who -u

who -l

affiche mes login, n°de voie et heure de connexion

who am i

who am i

 


Note : utilisation des métacaractères (ou joker characters) dans un nom de fichier indiqué dans une commande shell :

utilisés dans les noms de fichiers, interprètés et substitués par le shell, lors de l'execution de la commande les contenant (peuvent être combinés).

 

Métacaractère

Utilisation

Exemple

*

nombre indéfinis de caractères dans le nom du fichier (signifie de 0 à n caractères dans le nom) sauf les caractères / et . (en début de nom du fichier)

ls fic*

?

un et un seul caractère sauf les caractères / et . (en début de nom du fichier)

ls fic??

[ - ]

un des caractères de la plage de valeurs contenue entre les crochets

ls [a-h]*

\

annule la signification du métacaractère qui suit

ls "F\?"     ls "F\$*.fap"

 

Note : utilisation des redirections :

Redirection

Utilisation

Exemple

process1 | proces2

passage de fichiers temporaires entre 2 process

ls -al | cut -f2 -d"Dec"

process > fichier

création d'un fichier avec les informations résultat d'un process qui sinon s'afficheraient sur l'écran

ls -l *.seq  > toto

process >> fichier

création ou ajout ) un fichier avec les informations résultat d'un process, qui sinon s'afficheraient sur l'écran

cat toto > titi

process < fic_cde

passage des commandes contenus dans un fichier à un process

ed toto < fic_cde

process << ind_fin_cde

cde 1

cde 2

...

ind_fin_cde

passage des commandes qui suivent dans le script shell à un process

ed toto << FIN_CDE

1,\$s:oracl:oracle:g

w

q

FIN_CDE

[1]>  ou [1]>>

redirection des sorties standards vers un fichier

exec trait_proc  > histo.log 2> erreur.log

2>  ou 2>>

redirection des erreurs standards vers un fichier


1.       commandes de gestion de fichier ou de disque

 

Utilisation

Syntaxe commande

Exemple

Information place, occupation du/des disque(s)

df - t

df -

vérifier taille d'une partition

memsize partition

memsize /dev/swap

visualiser le contenu du dump généré par le noyau suite à erreur grave type "panic"

crash [-d]  fichier

crash [-d]  /dev/swap

 


2.       information, commandes de gestion de la sécurité

 

Utilisation / info.

Syntaxe commande

Exemple

fichier des mot de passe: /etc/passwd

contenu de ce fichier :

1) nom utilisateur

2) mot de passe (crypté, non visualisable)

3) n°interne d'identification unix (uid)

4) n°interne d'identification unix de son groupe primaire

    (gid)

5) commentaire

6) répertoire de connexion (le répertoire où est lancé le

    fichier de mise à jour de l'environnement de

    l'utilisateur : .profile )

7) commande executée à la connexion (pour un

     utilisateur l'exécution de son shell : sh, ksh ..., ou un

     shell restreint : rsh ...)

exemple :

root:x:0:1:Spuer utilisateur:/:

stage1:x:200:100:stagiaire numero 1:/users/stage1:/bin/sh

second fichier des mot de passes:

/etc/shadow

Contenu de ce fichier :

1) nom utilisateur

2) type de mot de passe, choix possibles :

     a) NP    :  pas de mot de passe (SCO)

     b) *        : on ne peut pas se logguer avec ce compte

     c) *LK* : le mot de passe est créé au 1er logging.

3) date de dernier changement du mot de passe

4) nombre de jours minimum/maximum où l'on peut

     utiliser ce compte (vérifié par le démon "prwarn")

La struture de ce fichier peut être différente sur un autre Unix.

Exemple :

asg:*LK**::0:0

fichier des groupes primaires d'utilisateurs :

/etc/group

Contenu de ce fichier :

1) nom du groupe

2) son identifiant de groupe (gid)

3) la liste des utilisateurs de ce groupe (utilisateurs

     invités)

lem::100:benjam, alain

vérouiller une cession : lock ?

Mode d'un fichier: type et (permission d') accès à un fichier

affichage du mode :

tpppPPPppp

avec

t  : type du fichier, ton voici la liste des codes ci-après :

-  : fichier ordinaire

d : répertoire

c : fichier spécial caractère

b : fichier spécial bloc

l  : lien symbolique (alias ou pseudo-fichier)

p : fichier pipe (en général temporaire)

s : fichier socket

avec

ppp :  permission du propriétaire du fichier

ppp : permission du groupe auquel est rattaché le

           propriétaire

ppp :  permission des autres utilisateurs

Dans ppp ou PPP ou ppp

Si 1ère lettre   = r   alors permission en lecture

                                 (= 4 en octal)

sinon  "     "      = -   pas de permission en lecture

                                 (= 0 en octal)

Si 2ème lettre = w  alors permission en écriture 

                                 (= 2 en octal)

sinon  "     "      = -   pas de permission en écriture

                                 (= 2 en octal)

Si 3ème lettre = x  alors permission en exécution 

                                 (= 0 en octal)

sinon  "     "      = -   pas de permission en exécution

                                 (= 1 en octal)

ce mode d'accès est associé à chaque fichier. Il est visualisable par la commande: ls -l nom_de_fichier

 

Exemple de mode:

-rwx r-x r-- :

droit lecture, écriture et execution pour le propriétaire

droit en lecture et exécution pour le groupe

droit en exécution pour les autres

 

Note:

Seul le super utilisateur root peut accèder à un fichier avec toutes les permissions !!

Modifier le mode par défaut des fichiers ou répertoire à créer :

changement des permissions des fichiers ou des répertoires, lors de leur création.

umask [valeur sur 3 chiffres]

elle positionne les persmissions à suprimer du défaut, en affectant de nouvelles pour la création de fichier ou de répertoires (ce que l'on appelle le masque de permissions).

 

umask

sans paramètre, cette commande affiche la valeur du masque

Notes:

Les fichiers sont créés, par défaut avec le mode:

rw-rw-rw-

(par, par exemple, créés avec la commande touch)

Les répertoires sont créés, par défaut, avec le mode rwxrwxrwx

(par la commande mkdir)

Modifier le mode des fichiers ou répertoires créés :

modification des permissions des fichiers et répertoires déjà créés

2 formats :

chmod [valeur] fichier [fichier ...]

 

chmod ugoa +-= fichier [fichier ...]

u : propriétaire (user)

g : groupe

o : autre (others)

a : propriétaire + groupe + autres (ugo)

+ : ajoute une permission

-  : retire une permission

= : affecte une permission

chmod 755 toto

 

chmod u+x fic1

 

chmod ug+wx fic1

 

chmod g+x,o=r fic1

 

cas spécial :

chmod u+t rep1

empêche de supprimer les fichiers du répertoire

Modifier le propriétaire d'un fichier

chown nom-utilisateur  fichier [fichier ...]

chown lem ADMS

Modifier le groupe d'un fichier

chgrp nom-groupe  fichier [fichier ...]

chgrp lem ADMS

Modification de son groupe

newgrp nom-groupe

avec cette commande, on peut prendre l'identité d'un groupe secondaire, pour accèder à des ressources particulières (fichiers, ...)

newgrp

retour à (l'identité de) son groupe primaire

newgrp silver

 


3.       commandes de gestion des processus (tâches)

 

Utilisation

Syntaxe commande

Exemple

création d'un nouveau processus shell

sh

création d'un nouveau processus shell interactif

sh nom-executable

exécution d'une procédure ou d'un programme

Note: ce(s) shell(s) est/sont fils de votre shell de connexion

sh

 

sh proctest

sortie du processus et retour au père

exit [valeur]

on peut forcer un code retour ayant la valeur = valeur.

exit

exit 1

changement du processus en cours d'exécution

exec nom-executable

sortie du processus en cours et lancement de l'exécution d'une nouvelle procédure ou d'un nouveau programme

exec ksh

 

exec ls

lancement d'un processus en arrière-plan

nom-commande &

lancement en parallèle (avec le processus père) d'un processus fils (sans qu'on le voit tourner)

Note:

- peut être utile pour des commandes longues à exécuter

-Au lancement de la commande s'affiche le pid de la tâche

- le processus en arrière-plan à les même entrées-sorties que le processus père (c'est à dire qu'il a risque de recouvrement à l'affichage sur écran des sorties standard (et sorties erreurs) des processus pères et fils (sauf ces sorties on été redirigées)

- en fin de cession (utilisateur), le processus fils est détruit (même s'il n'est pas terminé), sauf s'il est lancé au départ avec la commande nohup (on peut se déconnecter sans produire l'arrêt de la tâche fille)

nohup nom-commande &

find / -name 'toto*' -print > lstoto &

 

 

 

 

 

 

 

 

 

 

 

 

 

 

nohup sh sauv_sys &

visualiser les tâches (processus)

ps [-options]

e                   : tous les processus

f                    : rapport complet (sur le ou les processus)

l                    : rapport complet avec en plus l'état du

                       processus

t  terminaux : processus associés au terminal indiqué

u utilisateur : processus de l'utilisateur indiqué

Explication sur le rapport :

S        : état du processus

     O : actif (en cours d'exécution)

     S : en attente d'un évènement

     R : prêt à être exécuté

     T : suspendu

     Z : (ou defunct) processus terminé mais dont le père

           n'était pas en attente (pas normal)

PID    : n° du processus

PPID :  n° du processus père

PRI    : priorité d'exécution du processus (voir nice)

TTY   : terminal associé au processus

TIME : temps d'exécution du processus

CMD : nom de la commande ayant lancé le processus

ps -ef | pg

ps -el | grep KV66

 

 

ps -t ttya1

 

ps -ul usr6

 

exemple de rapport :

UID    PID  PPID  PRI TTY   TIME CMD

200    200  1        30    vt01  0:02  sh

200    201  200    30    vt01  0:00  ps

arrêt d'une tâche

kill [-valeur] n°_pid

choix possibles pour la valeur :

1 : réveiller un processus -démon (signal interrupt: HUP)

2 : interrompre un processus (signal interrupt. INT)

     (même effet que la touche "intr" ("Suppr" pour Unix Ix)

9 : tuer brutalement une tâche (signal KILL)

15 : terminer en douceur un processus (signal TERM)

23 : suspendre un processu (signal STOP)

25 : reprendre exeécution d'un procesus suspendu

        (signal CONT)

 

kill 0

tuer toutes les tâches en arrière-plan de l'utilisateur


4.       commandes de gestion des impressions

 

Utilisation

Syntaxe commande

Exemple

 

 


5.       commandes de gestion des terminaux

 

Utilisation

Syntaxe commande

Exemple

 


6.       commandes de gestion des sauvergarde

 

Utilisation

Syntaxe commande

Exemple

 


7.       administration

 

Utilisation

Syntaxe commande

Exemple


8.       commandes de gestions télécom

 

Utilisation

Syntaxe commande

Exemple

 


A1.     Conseils

 

Conseil

1

On n'éteint jamais une machine UNIX, brutalement, par le bouton marche/arrêt électrique, surtout si elle connectée au réseau. Faire un shutdown avant l'arrêt électrique.

2

avant n'importe quel sauvegarde, suite à un "panic" lancer la commande fsck

3

il est préfèrable d'être en "init 2" pour une sauvegarde

4

Il faut relancer une 2nd fois "fsck", s'il y a eu un problème lors d'un premier "fsck"

5

Montage (mount) :

Avantages :

- pour sélectivité des sauvegardes / restaurations

- éviter dispersion

- permet le read-only

- permet les "quotas" dans ...

Inconvénients :

- ne marche que pour les disques (ne marche pas pour les bandes)

- dimensionnement des disques

6

Changer si possible les disques tous les 5 ans

7

Après le "badtrk" (UNIX SCO ...) faire un "fsck"

8

Eviter si possible le kill -9 ... (sauf blocage. Note: certains process ne peuvent être tué même par le kill -9 une sauvegarde ou restauration, les démons)

9

Ne jamais détruire les fichiers "/init" /etc/passwd" "/etc/shadow" "/etc/inittab"

10

Moins on touche à la machine (au niveau hard et soft) et moins elle tombe en panne.

11

Indications/conseils sur le choix cable série ou cable parallèle :

a) série :

longueur : < 200 mètres

prise : V24 CANON, V9 CANON

Note : pour com. asynchrone et plus de 15 mètres (sans modem), il faut au minimum cable 4 fils, blindé, rigide, pas de cable/sources électriques à proximité et des soudures de bonnes qualités dans la prise V24 et pas de faux contacts.

b) parallèle (//) :

longueur : < 3 mètres

prise : Centronic

Note : débit plus rapide, mais plus cher

12

Notes:

- on ne peut analyser un fichier dump de type "core" (dump de la mémoire pour le process), qu'avec le source du process et en lançant le bébugger comme "adb" ou "dbx".

- Pour provoquer un "core", il suffit par exemple de créer un programme "c" qui fait un adressage (style "ping") à une adresse du noyau.

13

Pour tester s'il y a des volumes (périphériques / devices) montés, il suffit de réaliser le test suivant :

mount ... | grep

if [ $? -ne 0 ]

then

...

fi

14

L'utilisateur n'a jamais tord

15

Si la frappe du loggin s'affiche avec des caractères incompréhensibles (exemple: éèë$ éè ...), cela est du sûrement à une erreur de parité ou au mode ascii 7 ou 8 bits ou encore un problème de vitesse de transmission : 1200 ... 9600 ... baudes).

16

Ne pas mettre la variable "TERM" dans le fichier ".profile" des utilisateurs, mais plutôt dans le fichier commun /etc/profile".

17

S'il n'y a pas sur cet unix, de système de backup automatique (avec commande "backup" par exemple), il est conseillé de faire une sauvegarde automatique de nuit, par la commande shell "cpio ..."

19

Cas où la recompilation du noyau s'impose :

1) ajout ou retrati de modules logiciels "driver(s)"

2) modification des paramètres des tables systèmes : nombres maximum de processus, de pages mémoires, tailles maximum des fichiers ... (dans les tables "mtune" et "stune")

20

Cas de la perte du mot de passe "root" ou d'un fichier "passwd" ou "shadow" :

1ère solution :

copier par le réseau (avec les outils "rcp" si réseau "lan" avec TCP/IP, ou avec "uucp" si réseau x25) du / des fichier(s) "passwd" et "shadow" dans le répertoire "/etc", de la machine cible (où a été perdu cette/ces donnée(s)), à partir d'une machine source (où l'on est "root" et où cette/ces donnée(s) est/sont intacte(s)).

Attention, cela peut ne pas marcher toujours, si la machine cible est protègées au niveau des "rcp" par l'existance d'un fichier de droit de copies "rcp" nommé "/rhosts", ou si elle est protègées au niveau "uucp", par l'existance d'un loggin "uucp" protègé avec un mot de passe (non vide dans le fichier "/etc/passwd", ou au niveau de certaines spécifications, dans le fichiers "/usr/lib/uucp/protect".

2nde soultion:

redémarrer avec une disquette de boot unix (utile toujours 'en conserver une en cas de problèmes).

21

Utilisation de l'accounting :

1) l'accounting augmente d'un 1 Mo par jour ! donc savoir l'utiliser bon escient ou le purger régulièrement

2) lancer l'accoutning pluôt de nuit, pour voir si les tâches de nuit, se passent bien.

3) le lancer aussi s'il faut tracer les tâches de jour comme de nuit, en cas de plantage multiple.

 

22

avoir si possible, dans le cas de machines unix connectés au même réseau "lan" tcp/ip, ou au sein de l'entreprise, avoir sur ces machines, le même fichier "/etc/passwd"

23

Règle :

1) pour le logging "root", l' uid doit être égal à 0.

2) pour les utilisateurs systèmes (exemples: bin, daemon, sysadm, boot, powerdown, uucp, ...), il est conseillé de choisir des uid compris entre 1 et 9.

3) pour les loggins des administrateurs de progiciels (exemples: oracle, pelican ...), choisir des uid entre 10 et 99.

4) pour les loggins des utilisateurs finaux, choisir des uid commençant à partir de 100.

24

Sécurité actuelle UNIX:

1) sureté à 99 % pour une seule machine

2) faiblessse sécurité unix, dans le cas du réseau ethernet, car on peut "écouter" le mot de passe (lorqu"on fait la commande "cu"  ou "pad" (dans le cas de l'installation du logiciel "ttxpad", sur les machines unix de l'entreprise.