You are on page 1of 61

I.

INSTALLING SOLA10 OS:
Fichier d'installation:
Fichier contenant les paquets appliqués au système: /Var/sadm/install/contents

Software group gérés par Solaris 10 # grep METACLUSTER
/var/sadm/system/admin/.clustertoc

Software group actuellement appliqué: # cat
/var/sadm/system/admin/CLUSTER

7 Types d'installation
1- custom Jumpstart: pour installer plusieurs systèmes sur le réseau local qui
auront une mm configuration au travers le fichier "hands off" sisydcfg (.
/add_install_client)

2- WAN boot installation: installe sur le réseau distant au travers le HTTP

3- Interactive: CD-ROM, DVD-ROM, Diskette

4- standard upgrade & live upgrade:

standard upgrade: met à jour le système en sauvegardant les données initiales

live upgrade: mettre à jour le système en temps réel et permet de retourner à la
version précédente du système en cas d'erreur d'installation.

5- Flash archive installation: replique le mm prog d'installation sur plusieurs
systèmes

6- Network installation:

- Paramètres requis:
Mémoire: SPARC & x86

Minimum console: 64MB

Minimum GUI: 256MB

requis console: 128MB

requis GUI: 384 ou +

Espace disk: 5 GB, 12GB

Processeur : 200 MHZ ou +

Software groups:
Solaris gère 6 groupes de packets:

1- Reduced Network software group (SUNWcrnet): contient les packets
permettant de gérer un environment multiuser, aussi les paquets pour faire
fonctionner le réseau mais ne les active pas.
2- Core system software group (SUNWcreq): multiuser et permet de faire
fonctionner le réseau

3- End user software group (SUNWcuser): réseau + CDE (Common Desktop
Environment)

4- Developper software group (SUNWcprog): réseau + CDE + man pages,
libraires ...

5- Entire solaris software group (SUNWcall): réseau + CDE+ man pages + server

6- Entire solaris + OEM software group (SUNWCXall) réseau + CDE+man pages
+ server + packets additionels pr périphériques

__________________________________________________________________________________

III. MANAGING LOCAL DISK DEVICES:
/etc/path_to_inst:

prtconf: affiche des infos sur la configuration des périphériques

format: format & partitionne le disque. Et affiche aussi le nom logique &
physique des disques actuellement installés et leur nombre.

Reconfiguration du système:

- devfsadm -c <disk>: met à jour les en temps réel les fichiers
/etc/path_to_inst, /dev, /devices pour une reconfiguration du système

# touch /reconfigure

# init 5

<install disk>

ok boot -r

__________________________________________________________________________________

IV. MOUNT AND UNMOUNTS:
mount: monter un système de fichier sur un point de montage (par défault /mnt)

Syntax: mount <options> < système de fichier> <point de montage>

ex: s3, /eddie, lecture seule

# mount -o ro /dev/dsk/c0d0s3 /eddie

/etc/vfstab: gère les fichiers à monter au démarrage

/etc/mnttab: fichier géré par le système (en lecture seule), qui stocke tous les
systèmes de fichiers actuellement mountés.
umount: démonte un SF

Syntax: umount <options> <SF à démonter/Point de montage>

ex:

# umount /eddie

# umount /dev/dsk/c0d0s3

# umount -f <point_de_montage>

mountall: monte ts ls SF contenus ds /etc/vfstab

umountall: démonte ts ls SF contenus ds /etc/vfstab sauf /swap, /var/run,
/devices

__________________________________________________________________________________

V. MANAGING SOLARIS FILE SYSTEM:
Solaris gère 3 classes de SF:

- Pseudo FS: CACHEFS, TMPFS, CTFS, SWAPFS, MNTFS, DEVFS

- Distributed FS: NFS

- Disk-based FS: HSFS, UFS, UDFS, PCFS.

Solaris FS: VFS (Virtual File File system)

Créer un FS: newfs, mkfs.

Checker un FS: fsck

Voir le FS appliqué à 1e partition: fstyp

Monitoring FS:

df: affiche ls SF montés sur le disque et l'espace disque libre (bit,Kb,GB)

du: affiche l'espace occupé par ls SF sur le disque (Kb,Gb,octets)

quot: affiche l'utilisation de l'espace disque par chaque utilisateur

__________________________________________________________________________________

VI. PACKAGE ADMINISTRATION:
un "packet" est un ensemble de fichiers et de répertoires donnés ds 1 format
particular

- pkgadd: installer un packet sur le système

Syntax: pkgadd <options> <réperotoire cible> <PID>

ie:
# pkgadd -d /cdrom/s0/Solaris_10/Product SUNWman

- pkginfo: affiche des infos sur un packet

Syntax: pkginfo <options> <PID>

ie:

# pkginfo -p SUNWman

# pkginfo -l SUNWman

- pkgtrans: permet de convertir un packet d'un format à un autre

Syntax: pkgtrans <package_cible_format> <format_sortie>

SUNWvts.pkg --> SUNWvts

ie:

# pkgtrans /var/tmpt/SUNWvts.pkg SUNWvts

- pkgrm: supprimer un packet du système

Syntax: pkgrm <PID>

ie:

# pkgrm SUNWman

- pkgchk: vérifie si les attributs, le contenu d'un packets

Syntax: pkgchk <options> <PID>

ie:

# pkgchk –a SUNWman

# pkgchk -c SUNWman

# pkgchk -l SUNWman

# pkgchk -l -p SUNWman

- pkgparam: affiche les valeurs du paramètre d'un packet

- Spool directory: /var/spool/pkg

Syntax: pkgadd <options> <répertoire_cible> -s <spool_directory>
<PID>

ie:

# pkgadd -d /cdrom/s0/Solaris_10/Product -s /var/spool/pkg SUNWman

- package installé sur le système: /var/sadm/pkg

- avoir des infos sur un packet se trouvant sur CD-ROM:
# pkginfo –d /cdrom/s0/Solaris_10/Product -l SUNWman

__________________________________________________________________________________

VII. MANAGING PATCH
Un "patch" est un ensemble de paquets utilisés pour corriger des éventuelles
erreurs ou ajouter des composants manquants

- patchadd: pour ajouter un patch au système & avoir des infos sur les patchs
(-p)

Syntax: patchadd <options> <répertoire_cible> <Patch_ID>

ie:

# patchadd 10160-01

# patchadd -p | grep <PID> : avoir des infos sur un patch donné.

patchadd -d <PID> : les fichiers de sauvegarde sont supprimés.

# showrev -p

Répertoires:
/var/sadm/patches: répertoire contenant les patches

/var/sadm/spool/

- patchrm: pour supprimer un patch du système

Syntax: patchrm <PID>

ie:

# patchrm 10501-01

Quand un patch ne peut être installé:
- si ce patch existe déjà;

- si une version plus récente que le patch à été installée ou est déjà
appliquée;

- si ce patch dépend d'un autre patch qui n'est pas installé.

__________________________________________________________________________________

VIII. EXECUTING OPEN BOOT PROM COMMANDS:
NVRAM?

Non Volatile Randam Access Memory: c'est une mémoire non volatile. Donc,
qui peut conserver les données après au démarrage

NVRAM prend en compte les commandes telles que:

Syntax: <commande> <parametre> <valeur>
- nvalias: attribue un "alias" permanent à un disque

- unvalias: désactive l'alias attribué à un disque

- banner: affiche les infos sur le système

- devalias: affiche les alias des périphériques & attribue un alias temporaire

- show-devs: affiche ls périphériques et leur PATH

- show-disks: affiche ls disques installés et leur alias

- setenv: changer la valeur d'un paramètre

ie: ok setenv auto-boot? false

ok setenv boot-device disk

- set-default(s): rétablir les valeurs par défauts de tous les paramètres

- printenv : affiche les valeurs de paramètres

ok setenv boot-device disk

ok printenv boot-device

- probe: affiche les périphériques connectés au système

probe-ide: affiche ls périphériques (disk, CD-ROM) connectés au

probe-ide-all:

probe-scsi:

- reset-all: rétablir les valeurs par défaut

- password: changer de mot de passe

probe-scsi-all:

- sifting:

- boot: démarrer le système

boot -a: démarre le système en tenant k du fichier ajouté

boot -r: reconfigure le système

boot -v: mode verbose

boot -rv, boot -av

- help: aide commande

eeprom: permet de changer les paramètes NVRAM sous Solaris

__________________________________________________________________________________

IX. BOOT AND SHUTDOWN PROCEDURES:
Boot on SPARC:

PROM --> POST (check ds periph.) ---> pboot ---> ufsboot --> kernel
initialization --> init ---> svc.startd ---> services

Boot on x86:

BIOS (check ds periph.)--> mboot (Master Boot Record) ---> pboot --> ufsboot
--> kernel initizalization ---> init ---> svc.startd ---> services

functions du BIOS:

- check système hardware;

- fourni ds services E/S via ds interupts. logi

Changer le run level par défaut:
# scvadm milestone -d milestone/multi-user:

# svcadm milestone -d milestone/multi-user-server:

# svcadm milestone -d milestone/single-user:

# svcadm milestone all

/etc/inittab:

Le program init lit le contenu de ce fichier pour savoir démarrer les services

Syntax:

id: <run_state: action: commande

powerfail

sysinit

boot

respawn

wait

once

ie:

smf::sysinit:/lib/svc/bin/svc.startd > /dev/msglog 2<> /dev/msglog

_________________________________________________________________________________

X. USER ADMINISTRATION:
3 fichiers permettent de gérer des utilisateurs:

- /etc/passwd: contient le compte d'utilisateurs crées par l'administrateur et le
système
syntax:
<nom_user>:<passwd>:<user_ID>:<group_ID>:<comment>:<home_dire
ctory:<shell>

ie: michelle:x:2000:2000::/export/home/rep:/bin/bash

- /etc/shadow: contient des infos détaillées sur le mot de passe:

syntax:<username>:<password>:<lastchg>:<min>:<max>:<warn>:<ina
ctive>:<expire>

ie:

jkerry: 86KG/MNT/DGU: 9675: 0: 90: 7: 10: 5905

<username<password> <date mini max nbr nbr
date exp

dernière jours jours jrs avt jr inac
compte

modification expirat compte

< (Jours)>

- /etc/group: contient des infos sur les groupes

syntax: nom groupe>:<group password>:<gid>:<user-list>

ie:

democrats:: 111:jkerry,hdean,agore

password settings:

/etc/default/passwd: configure le "password" des comptes utilisateurs

Gestion d'utilisateurs:

- useradd : permet d'ajouter des utilisateurs dans /etc/passwd

syntax: useradd -u <uid> -g <gid> -G <group name> -o (optionel) -d
<user_home_directory> \

-m (make home directory) -c <user_description> -s <login_shell>
<username>

ie:

# useradd -u 200 -g 150 -G other -d /export/home/junior -m -c "Junior
user" -s

/bin/bash junior

- userdel : permet de supprimer un utilisateur et son home_directory

Syntax: userdel -r <username>
ie:

# userdel –r junior

- usermod : permet de modifier les paramètres d'un user

Syntax: usermod -u <uid> -g <gid> -G <group_name> -d
<home_directory> -s <login shell> -l <login_name>

ie:

# usermod -u 300 -g 1 -d /export/home/yann -s /bin/bash –l yann2
yann

- groupadd: permet d'ajouter un group ds /etc/group

Syntax: groupadd -g <gid> <group_name>

ie:

# groupadd -g 300 eddie

- groupdel: permet de supprimer un group

Syntax: groupdel <gname>

ie:

# groupdel eddie

- groupmod: permet de modifier les paramètres de groupe

Syntax: groupmod -g <gid> <existing_groupname>

ie:

# groupmod -g 2001 eni

Limitation:
Nbre limité de UID: d e 0-99 (réservé au système) et de 100-60.000
(attribuable aux users)

Nbre limité de GID: de 0-99 /60.001 & 60.002 65.534(réservé au système) de
100-60.000 (attribuable aux users)

/etc/default/passwd:

MAXWEEKS: attribue la période maximale (en semaine) de validité du mot de
passe

MINWEEKS: attribue la période minimale avant que le mot de passe soit changé

PASSLENGTH: attribue le nombre minimum de caractères à assigner à un mot
de passe ( 6,7 et 8 caractères max)

WARNWEEKS: la période à laquelle l'utilisateur sera prévenu de l'expiration du
mot de passe
NAMECHECK (yes/no): control du mot de passe pour vérifier si l'utilisateur est
en train d'utiliser le login name comme mot de passe

HISTORY:

DICTIONLIST:

DICTIONDBDIR:

__________________________________________________________________________________

XI. SYSTEM SECURITY:
Fichiers de Security:
/etc/default/login: permet de gérer la connexion au système

- autoriser/refuser l'accès au root

- détermine si le password est nécessaire ou non lors du login

- gérer ls échecs de connexion (SYSLOG_FAILED_LOGINS)

/etc/ftpd/ftpusers: contient la liste des utilisateurs n'ayant pas accès au
protocole FTP

/etc/ftpd/ftphost: contient la liste des hosts qui ont accès au FTP

/etc/ftpd/ftpgroups: contient la liste des groupes ayant accès au FTP

/etc/cron.d/at.deny: contient la liste des utilisateurs qui n'ont pas accès à la
commande "at"

/etc/cron.d/cron.deny: contient la liste des users qui n'ont pas acccès à la
commande "crontab"

/etc/cron.d/cron.allow: (à créer): contient la liste des users ayant droit à la
commande "crontab"

/etc/cron.d/at.allow: contient la liste des users ayant droit à la commande "at"

/var/adm/loginlog: logge le nombre de tentatives échouées d'accès au système

/etc/defaut/su: fichier de configuration de l'utilisation de "su"

/var/adm/sulog: logge les utilisateurs qui essayent d'utiliser "su" pour se
connecter à d'autres comptes y compris le root

/etc/pam.conf: paramètrage de la commande $HOME/.rhosts

/etc/host.equiv: les users ordinaires des systèmes dont le hostname est inclu ds
ce fichier peut se connecter au host sans mot de passe

$HOME/.rhosts: le root des systèmes dont le hostname est inclu ds ce fichier peut
se connecter au host sans mot de passe

Commandes de securité:
last: affiche la liste des users qui ce sont connectés au système à un temps
donné depuis la dernière installation et lit le fichier : /var/adm/wtmpx pr av3r cs
infos.

who: affiche les users actuellement connectés au système. lit le fichier :
/var/adm/utmpx pr av3r cs infos.

finger: affiche des infos détaillées sur chaque user actuellement connectés au
système

rusers: affiche la liste des users connectés localement ou à distance au système

ftpwho: affiche la liste des users utilisants le protocol FTP

logins: affiche des infos sur ls comptes utilisateurs

- checker des users qui n'ont pas de mot de passe (-p)
ie: logins –p <user_id>

su: permet de changer de compte utilisateur

ssh: permet d'effectuer une connexion sécurisée localement ou à distance

Syntax: ssh <hostname>

chown: changer de propriétés d'un fichier (appartenance)

Syntax: chown <options> <owner>:[<group>] <file>

Options de chown:

-R: récursif

-f: force

-h: lien symbolique

ie:

# chown yann:other file1

chgrp: changer de groupe

Syntax: chgrp <options> <group> <file>

chgrp options:

-R: récursive

-f: force

-h: lien symbolic

chmod: changer les permissions d'un fichier

Syntax: chmod <options> <permission_mode> <fichier>

chmod options
-R: changement récursif

-f: force changement

cron utilitaire:
/var/spool/cron/atjobs: répertoire contenant les tâches à exécuter
(programmer) avec la commande "at"

/var/spool/cron/crontab: répertoire des tâches à executer avec "crontab"

syntax du crontab:

<minute>:<heure>:<jour du mois>:<mois>:<jour de la
semaine>:<commande à executer>

0-59 0-23 1-31 1-12 0-6

ex:

10 3 * * * /usr/sbin/logadm: exécute la commande /usr/sbin/logadm à 3:10
(a.m) chaque jour du mois, chaque mois, chaque jour de la semaine

15 3 * * * /usr/lib/fs/nfs/nfsfind: exécute la commande à 3H15 chaque jour,....

30 14 5 10 4 /usr/sbin/logadm: la commande s'exécute chaque jeudi (4), 5
Octobre à 14h30

15 9 * * 0,3 /etc/cron.d/diskchecker: la commande s'exécute tous les jours du
mois, ts ls mois, chaque dimanche et mercredi à 9:15

XII. CONFIGURING AND USING PRINTER SERVICES:
Basics functions of the Solaris OS LP Print Service:
- initialization: s'assure que l'imprimate est en bon état.

- Queuing: programme les l'ordre d'impression des rêquetes en cours d'attente
envoyées à l'imprimante

- tracking: * permet au "root" de gérer ttes les requêtes et de permettre aux
autrs

users de voir ou d'annuler leur requêtes* logge tte erreur constatée lors de
l'impression

- Fault notification: imprime un message d'erreur ou envoie un mail au root, en
cas d'erreur de configuration ou autre.

- Filtering: convertis les tâches d'impression vers le format approprié avant de
les envoyer à l'imprimante concernée.

Fichiers & répertoires:
/etc/lp: répetoire contenant une hierarchie des fichiers et répertoires de
configuration
/etc/lp/interfaces: répertoire contenant ls scripts de chaque imprimante
configurée.

Syntax: /etc/lp/interfaces/<printername>

/etc/lp/printers: répertoire contenant le sous-répertoire de chaque imprimante
servi par le système

/var/spool/lp: répertoire contenant une liste des récentes requêtes se trouvant
en ligne d'attente

/var/lp/logs: répertoire contenant un historique des requêtes d'impression

ie:

/var/lp/logs/requests: contient ds infos concernant ls requêtes exécutées

/etc/printers.conf: contient des infos sur la configuration ttes ls imprimantes
connectées au système

Daemons:
inetd

/usr/lib/print/in.lpd

/usr/lib/lp/lpsched

Main tasks for configuring Printer services:
1. Setting up the printer --> connecté physiquement une imprimante au
système ou au réseau

2. setting up the printer server --> configurer le système qui fournira et
gérera l'accès à l'imprimante

3. setting up the print client --> configuring le système pour donner accès à
une imprimante distante

4. verifying printer access --> verifier que l'imprimante server reconnait
toutes les imprimantes-clients et vice versa

Commande:

/usr/sbin/printmgr & : configurerl'imprimante sous GUI

- setting up the système default printer: (imprimante par défaut)
lpadmin

Syntax: lpadmin -d <printername>

lpadmin -d <printer-classname>

ie:
# lpadmin -d printerE: configurer l'imprimante printerE comme imprimante par
défaut

- vérifier l'état de l'imprimante: lpstat

Syntax: lpstat -d

ie:

# lpstat -d : vérifie l'imprimante configurée comme par défaut

- remove a client's printer configuration:

Syntax: lpadmin -x <printername>

ie:

# lpadmin -x printerD : supprime les infos de configuration relatives à
l'imprimante "printerD"

- removing a server's printer configuration:
1.

# reject printerD -- rejette l'imprimante "printerD" de la configuratoion

2.

# disable printerD -- désactive cette imprimante (printerD)

3.

#lpadmin -x printerD -- supprime ttes ls infos concernant ladite
imprimante

- starting the LP print service:
# svcadm enable application/print/server

- stopping the LP print service:
# svcadm disable application/print/server

# svcs -a | grep print

- specyfing a destination printer: lp ou lpr

Syntax: /usr/bin/lp <filename

/usr/bin/lp -d printername filename

Syntax: /usr/ucb/lpr <filename>

/usr/ucb/lpr -P printername filename

remote printer syntax:
/usr/bin/lp -d hostname:printername filename
/usr/ucb/lpr -P hostname:printername filename

ie:

# /usr/bin/lp -d printerD file1 :

# /usr/ucb/lpr -P printerD file1

# /usr/bin/lp -d tapsolaris10:printerD file1

# /usr/ucb/lpr -P tapsolaris10:printerD file1

- accepting print jobs: accept
Syntax: # /usr/sbin/accept destination(s)

ie:

# accept printerD

- rejecting print jobs: reject

Syntax: # reject -r "reason" destination(s)

ie:

# reject -r "Replacing toner cartridge" printerD

- enabling printers: enable

Syntax: /usr/bin/enable destination(s)

ie:

# enable printerD

- disabling printers: disable
Syntax: /usr/bin/disable -c | -W -r "reason" destination

-c : annule la tâche actuelle et désactive l'imprimante

-w : attend que la requête actuelle soit complètement executée puis désactive
l'imprimante

-r : raison de désactivation

ie:

# disable -W -r "Printer down for maintenance" printerD

- moving print jobs:
Syntax: lpmove source_destination target_destination

ie:

1.

# reject -r "Printer is down for maintenance " printerc
2.

# lpstat -o

3.

# lpstat -a printerA

4.

# lpmove printerc printerA

5.

# accept printerc

__________________________________________________________________________________

XIII. CONTROLLING SYSTEM PROCESSES
/usr/dt/bin/sdtprocess &: pour voir les processus actuellement en cours
d'exécution en graphique (GUI)

Commande:

Syntax: prstat <options>

<PID> <USERNAME> <SIZE> <RSS> <STATE> <PRI>
<NICE> <TIME> <CPU> <PROCESS/NLWP>

virtmem size resid. cpu: priority %

size sleep

(kb,Mb,Gb) run

zombie

stop

- prstat: examine et affiche ls infos sur ts les processus actifs

ie:

# prstat -a: affiche un report séparé concernant les processes & users
séparemment

# prstat -c: affiche continuellement les nvo reports en dessous des récents

# prstat -n <nproc>: restreint l'affichage à un nombre donné de processes

# prstat -p <pidlist: trie sur le pid

# prstat -s key: trie par cpu,time,size,rss & pri

# prstat -t: reporte l'utilisation totale des processes

# prstat -u <euid>: reporte seulement les processes concernant 1 EUID

# prstat -U <uidlis>: report sur le REAL ID
- Killing frozen processes: kill

Syntax: kill -signal <PID>

Syntax: pkill -signal <process_name>

Syntax: kill -signal <PID> <PID> <PID>

Syntax: pkill -signal <PNAME> <PNAME> <PNAME>

kill -l : pour voir ts ls sigals disponible utilisables avec "kill"

# kill -l

ie:

# pgrep -l mail : pr trouver un processus (pgrep) contenant le caractère mail

# pkill sendmail:

kill signals:
SIGHUP, 1: le "hangup" causera au daemon de relire la configuration du fichier

SIGINT, 2: un signal d'interruption venant du clavier, comparable à CONTROL-C

SIGKILL, 9: un signal pr tuer un processus. un processus ne peut ignorer ce
signal

SIGTERM, 15: un signal pr terminer un processus. quelques processus
peuvent ignorer ce signal

SIGQUIT, 3: force au processus de quitter et génère un core dump

SIGABRT, 6: Abondon.

SIGSTOP, 23: stoppe. pause le processus

SIGCONT, 25: continue. relance/redémarre un processus stoppé.

- Using at command:
syntax: at -m -q <queuename> time date

at -r job 'supprime une tâche programmée

at -l ' liste la tâche en cours d'exécution

ie:

# at 9:00 am

at> find /export/home -name core -exec file {} \; >> /var/tmp/corelog

at> CTRL-D

- to display information:
# at -l 1089000000.a
- to display all jobs queued:

# atq

- to view all the at jobs currently scheduled

# ls -l /var/spool/cron/atjobs

- to remove a job 1099999

# at -r 1099999.a

# atq

- viewing a crontab file:
Syntax: crontab -l <username>

ie:

# crontab -l (pour l'utilisateur actuel)

# crontab -l yann (pour l'user yann)

- edit the crontab file
# EDITOR=vi

# export EDITOR

# crontab -e (edite le crontab de l'user actuel)

30 17 * * 5 /usr/bin/banner "Time to go!" > /dev/console

:wq!

- removing a crontab file
Syntax: crontab -r <username>

ie:

# crontab -r yann

__________________________________________________________________________________

XIV. PERFORMING FILE SYSTEM BACKUPS:
Tape drive control: (contrôle de la cassette)

syntax: mt -f <tape-device-name> <command> <count>

mt status

mt rewind

mt offline

mt fsf <count>
mt status: affiche l'information sur le statut de la bande magnétique

mt rewind: rembobine la bande

mt offline: rembobine la bande, et si approprié, sort la bande magnétique du
"tape driver" et si le périphérique le supporte, déconnecte la bande

mt fsf <count>: fait avancer la bande à l'enregistrement <count>

ie:

# mt -f /deV/rmt/0n fsf 2: positionne la bande au du 3ème enregistrement

- determine the number of tapes:
Le nombre de cassettes à utiliser pour le backup est déterminé par rapport à la
taille du SF à sauvegarder.

Pour déterminer la taille du SF (Système de Fichier) à sauvegarder, utiliser la
commande "ufsdump" avec l'option "S" comme suit:

Syntax: ufsdump 0S <filesystem_name> ou ufsdump 3S
<filesystem_name>

ie:

# ufsdump 0S /

- Incremental back up level definitions: 1-9
Les incrementals backups sont utilisés pr sauvegarder les fichiers qui ont été
modifiés depuis la dernière sauvegarde.

/etc/dumpdates:
Fichier enregistrant les sauvegardes effectuées avec l'option -u de la commande
"ufsdump".

Chaque ligne du fichier montre le SF qui a été sauvegardé et le niveau (0,1-9) de
la dernière sauvegarde

ie:

# cat /etc/dumpdates

/dev/rdsk/c0t2d0s6 0 Fri Nov 5 19:12:27 2004

SF level date

(full backup)

/dev/rdsk/c0t2d0s61 Tue Nov 9 16:25:28 2004

SF level
(incremental) date

- Standard file system to backup
- root (/) : slice 0

- /usr : slice 6

- /export/home: slice 7

- Backing up an unmounted file system: ufsdump
Sauvegarde tous les fichiers dans un SF

Syntax: ufsdump <options> argument(s) <filesystem_name>

0-9

v

S

u

l

o

n

f

D

ufsdump 0Sf <argument> <filesystem_name> : donne l'estimation de la
taille du SF à sauvegarder

ufsdump 0vf <argument> <filesystem_name> : verfie le contenu du média
après chaque sauvegarde

ufsdump 0lf <argument> <filesystem_name> : autoload

ufsdump 0of <argument> <filesystem_name> : rembobine et éjecte la
bande qd la sauvegarde prend fin

ufsdump 0uf <argument> <filesystem_name> : MAJ le fichier
/etc/dumpdates pour le périphérique de sauvegarde utilisé, le niveau de
sauvegarde (0-9), et la date.

ufsdump 0nf <argument> <filesystem_name> : notifie ls utilisateurs faisant
partie du groupe qu'une sauvegarde est en cours d'exécution

ufsdump 0Df <argument> <filesystem_name>: effectue une sauvegarde
sur une disquette.

NB: l'option 'f' permet de spécifier le périphérique à utiliser pour la sauvegarde

ie: cas d'application
1.

# /usr/sbin/shutdown -y -g300 "System is being shutdown for backup"

2. verifie que le /export/home est démonté avec la commande shutdown

3.

# fsck /export/home

4.

# ufsdump 0uf /dev/rmt/0n /export/home : effectue 1e sauvegarde
complète du SF /export/home sur la 1ère bande magnétique et MAJ le fichier
/etc/dumpdates

- remote backups to tape:
Syntax: ufsdump <options> <remotehost:tapedevice> <filesystem>

ie:

# ufsdump 0uf host2:/dev/rmt/0 /export/home: effectue un "full
backup" du SF /export/home sur la 1ère bande du host "host2" et rebobine la
bande

D’autres utilitaires de sauvegarde:
- cpio: copies data from one location to another

syntax: cpio <mode> <options>

i -a

o -A

p -c

-d

-m

-t

-v

-i: lit le contenu de l'archive

-o: crée l'archive ou la sauvegarde

-p: copy le contenu d'un répertoire à un autre

ie:

# cd /work

# find . | cpio-ocB > /deV/rmt/0 : crée

# cd /work
# cpio -icdB < /dev/rmt/0 : restaure

- tar: creates tape or file-based archives

Syntax: tar <options> <tar-filename> <file-list>

c

t

x

v

f

ie:

# tar tvf /dev/rmt/0 : lire le contenu de l'archive

# tar xvf /dev/rmt/0 /home/bcalkins/ .profile: restaure le SF

# tar cvf files.tar /home/bcalkins : crée l'archive

- dd: convert or copy a file or raw device
Syntax: dd if=<input-file> of=<output-file> <option=value>

ie:

# dd if=/deV/rmt/0 of=/dev/rmt/1 : duplicates data

# dd if=/dev/rdsk/c0t1d0s2 of=/dev/rdsk/c0t4d0s2 bs=128k

__________________________________________________________________________________

XV. PERFORMING FILE SYSTEM RESTORES (ufsrestore)
Syntax: ufsrestore <options> argument(s) filesystem

t

r

x <file1 file2>

i

v

f <device

-t <filesystem>: liste le contenu de l'archive

-r : restore le contenu du SF à partir du périphérique de sauvegarde

-x file1 file2 : restore seulement les fichiers file1 & file2

-i : invoque une restauration interactive
-v : mode verbose

-f <device>: spécifie le périphérique de sauvegarde.

- using the ufsrestore command to restore a regular file system

1. Create the new file system structure

# newfs /dev/rdsk/c0t0d0s5

2.

# mount /dev/dsk/c0t0d0s5 /opt

# cd /opt

3.

# ufsrestore rf /dev/rmt/0

4.

# rm restoresymtable

5.

# cd /

# umount /opt

6.

# fsck /dev/rdsk/c0t0d0s5

7.

# ufsdump 0uf /dev/rmt/0 /dev/rmt/c0t0d0s5

8.

# init 6

- restore the /usr FS:
ok boot cdrom -s

# newfs /dev/rdsk/c0t0d0s6

# mount /dev/dsk/c0t0d0s6 /a

# ufsrestore rf /dev/rmt/0

# rm restoresymtable

# cd /

# umount /a

# fsck /dev/rdsk/c0t0d0s6

# ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s6
# init 6

- Performing a special case recovery of the / (root) FS:

----------------------------------------------------------

ok boot cdrom -s

# newfs /dev/rdsk/c0t0d0s0

# mount /dev/dsk/c0t0d0s0 /a

# cd /a

# ufrestore rf /dev/rmt/0

# rm restoresymtable

# cd /usr/platform/`uname -m`/lib/fs/ufs

# installboot bootblk /dev/rdsk/c0t0d0s0

# cd /

# umount /a

# fsck /dev/rdsk/c0t0d0s0

# ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s0

# init 6

sous-commandes de ufsrestore en interactive (option -i)

--------------------------------------------

* add <file>: ajoute un fichier ou 1 répertoire <file> à la liste

des fichiers marqués pr extraction

* cd <directory>: se déplace ds ls répertoires se trouvant ds la bande

de sauvegarde

* delete <file>: démarquer un fichier ou 1 répertoire parmi la liste des fichiers

à extraire
* extract : extrait tous les fichiers marqués en spécifiant le n° du volume

* help/? : affiche la list des commandes à exécuter

* ls <directory>: liste le contenu d'un répertoire

* marked <directorname>: coe ls excepté le fait que seuls ls fichiers marqués pr
extraction

sont affichés

- invoking an interactive restore:

----------------------------------

# cd /export/home/tmp

# ufsrestore ivf /dev/rmt/0

ufsrestore> ls

ufsrestore> cd directory1

ufsrestore> ls

ufsrestore> add file1 file2

ufsrestore> ls

ufsrestore> delete file1

ufsrestore> ls

ufsrestore> extract

ufsrestore> quit

# mv /export/home/tmp/directory1/file2 /export/home

# rm -r /export/home/tmp/directory1

---------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------
XVI. BACKING UP A MOUNTED FILE SYSTEM WITH A UFS SNAPSHOT: fssnap

---------------------------------------------------------

syntax: /usr/sbin/fssnap -F FSType -V -o backing-
store=<destPath>,<specificOptions> <mountPoint>

ie:

# fssnap -F ufs -o bs=/var/tmp /export/home

# fssnap -F ufs -o bs=/var/tmp,maxsize=500m /export/home

- displaying information for a ufs file system snapshot:

--------------------------------------------------------

on peut utiliser la commande "fssnap -i" pour afficher ds infos sur la capture du
SF UFS créée

ie:

# fssnap -i

Pour afficher plus de détails sur la capture d'un SF particulier , utiliser le:

# /usr/lib/fs/ufs/fssnap -i /export/home

- Backing up the UFS snapshot file with TAR:

------------------------------------------

# mkdir -p /backups/home.bkup

# mount -F ufs -o ro /dev/fssnap/0 /backups/home.bkup

# cd /backup/home.bkup

# tar cvf /dev/rmt/0
- Backing up the UFS snapshot file with ufsdump:

-----------------------------------------------

# ufsdump 0uf /dev/rmt/0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

- Performing an incremental backup using a UFS snapshot

---------------------------------------------------------

# ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c1t0d0s0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

1.créer une capture du SF /extra qui sera par la suite sauvegardé

# fssnap -o bs=/var/tmp /extra

# fssnap -i ' pour vérifier si le snapshot a marché.

# /usr/lib/fs/ufs/fssnap -i /extra ' pr avoir + de détails

# mkdir /extramap

# mount -o ro /dev/fssnap/0 /extrasnap

# df -k | grep extra

# vi file1

<ajouter des valeurs>

# df -k | grep extra

# umount /extrasnap

# fssnap -d /extra

# rm /var/tmp/snapshot0

# cp file1 file5

# cp file1 file6

# fssnap -o bs=/var/tmp /extra
# mount -o ro /dev/fssnap/0 /extrasnap

# df -k | grep extra

# ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c1t0d0s0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

- Deleting a UFS snapshot:

---------------------------

# umount /dev/fssnap/0

# fssnap -d /export/home

# rm /backing_I. INSTALLING SOLA10 OS:

-----------------

Fichier d'installation:

-----------------------

fichier contenant les paquets appliqués au système: /Var/sadm/install/contents

software group gérés par Solaris 10 # grep METACLUSTER
/var/sadm/system/admin/.clustertoc

software group actuellement appliqué: # cat /var/sadm/system/admin/CLUSTER

7 Types d'installation:

----------------------

- custom Jumpstart:

------------

pour installer plusieurs systèmes sur le réseau local qui auront une mm
configuratoin

au travers le fichier "hands off" sisydcfg (./add_install_client)

- WAN boot installation: installe sur le réseau distant au travers le HTTP

- Interactive: CD-ROM,DVD-ROM,Diskette
- standard upgrade & live upgrade:

standard upgrade: met à jour le système en sauvegardant les données initiales

live upgrade: mettre à jour le système en temps réel et permet de retourner

à la version précédente du système en cas d'erreur d'installation.

- Flash archive installation: replique le mm prog d'installation sur plusieurs
systèmes

- Network installation:

- Paramètres requis:

---------------------

Mémoire: SPARC & x86

--------------------

Minimum console: 64MB

Minimum GUI: 256MB

requis console: 128MB

requis GUI: 384 ou +

Espace disk: 5 GB , 12GB

Processeur : 200 MHZ ou +

Software groups:

----------------

Solaris gère 6 groupes de packets:

- Reduced Network software group (SUNW crnet):

contient les packets permettant de gérer un environment

multiuser, aussi les paquets pour faire fonctionner le réseau

mais ne les active pas.
- Core system software group (SUNWcreq):

multiser et permet de faire fonctionner le réseau

- End user software group (SUNWcuser):

réseau + CDE (Common Desktop Environment)

- Developper software group (SUNWcprog): réseau + CDE + man pages, libraires
...

- Entire solaris software group (SUNWcall):

réseau + CDE+ man pages + server

- Entire solaris + OEM software group (SUNWCXall)

réseau + CDE+man pages + server + packets additionels pr périphériques

--------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------

III. MANAGING LOCAL DISK DEVICES:

----------------------------------

/etc/path_to_inst:

prtconf: affiche des infos sur la configuration des périphériques

format: format & partitionne le disque. et affiche aussi le nom logique & physique
des disques

actuellement installés et leur nombre.

reconfiguration du système:

- devfsadm -c <disk>: met à jour les en temps réel les fichiers /etc/path_to_inst,
/dev, /devices pour une reconfiguration

du système

-

# touch /reconfigure
# init 5

<install disk>

ok boot -r

#

-------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------

IV. MOUNT AND UNMOUNTS:

-----------------------

mount: monter un système de fichier sur un point de montage (par défault /mnt)

syntax: mount <options> < système de fichier> <point de montage>

ex: s3, /eddie, lecture seule

# mount -o ro /dev/dsk/c0d0s3 /eddie

/etc/vfstab: gère les fichiers à monter au démarrage

/etc/mnttab: fichier géré par le système ( en lecture seule), qui stocke ts ls
systèmes de fichiers

actuellement mountés.

umount: démonte un SF

syntax: umount <options> <SF à démonter/Point de montage>

ex:

# umount /eddie

# umount /dev/dsk/c0d0s3

# umount -f <point_de_montage>

mountall: monte ts ls SF contenus ds /etc/vfstab

umountall: démonte ts ls SF contenus ds /etc/vfstab sauf /swap, /var/run, /devices
----------------------------------------------------------------------------------------------------------------

----------------------------------------------------------------------------------------------------------------

V. MANAGING SOLARIS FILE SYSTEM:

--------------------------------

Solaris gère 3 classe de SF:

- Pseudo FS: CACHEFS,TMPFS,CTFS,SWAPFS,MNTFS,DEVFS

- Distributed FS:NFS

- Disk-based FS: HSFS,UFS,UDFS,PCFS.

Solaris FS: VFS (Virtual File File system)

créer un FS: newfs, mkfs.

checker un FS: fsck

voir le FS appliqué à 1e partition: fstyp

monitoring FS:

df: affiche ls SF montés sur le disque et l'espace disque libre (bit,Kb,GB)

du: affiche l'espace occupé par ls SF sur le disque (Kb,Gb,octets)

quot: affiche l'utilisation de l'espace disque par chaque utilisateur

--------------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------------

VI. PACKAGE ADMINISTRATION:

--------------------------

un "packet" est un ensemble de fichiers et de répertoires donnés ds 1 format
particular
- pkgadd: installer un packet sur le système

syntax: pkgadd <options> <réperotoire cible> <PID>

ie:

# pkgadd -d /cdrom/s0/Solaris_10/Product SUNWman

- pkginfo: affiche des infos sur un packet

syntax: pkginfo <options> <PID>

ie:

# pkginfo -p SUNWman

# pkginfo -l SUNWman

- pkgtrans: permet de convertir un packet d'un format à un autre

syntax: pkgtrans <package_cible_format> <format_sortie>

SUNWvts.pkg --> SUNWvts

ie:

# pkgtrans /var/tmpt/SUNWvts.pkg SUNWvts

- pkgrm: supprimer un packet du système

syntax: pkgrm <PID>

ie:

# pkgrm SUNWman

- pkgchk: vérifie si les attribut, le contenu d'un packets

syntax: pkgchk <options> <PID>

ie:

# pkgchk -a SUNWman

# pkgchk -c SUNWman

# pkgchk -l SUNWman

# pkgchk -l -p SUNWman
- pkgparam: affiche les valeurs du paramètres d'un packet

- Spool directory: /var/spool/pkg

------------------

syntax: pkgadd <options> <répertoire_cible> -s <spool_directory> <PID>

ie:

# pkgadd -d /cdrom/s0/Solaris_10/Product -s /var/spool/pkg SUNWman

- package installé sur le système: /var/sadm/pkg

---------------------------------

- avoir des infos sur un packet se trouvant sur CD-ROM:

------------------------------------------------------

# pkginfo -d /cdrom/s0/Solaris_10/Product -l SUNWman

--------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------

VII. MANAGING PATCH

-------------------

un "patch" est un ensemble de paquets utilisés pr corrigés des éventuelles
erreurs ou ajouter des composants manquants

- patchadd: pour ajouter un patch au système & avoir des infos sur les patchs (-p)

syntax: patchadd <options> <répertoire_cible> <Patch_ID>

ie:
# patchadd 10160-01

# patchadd -p | grep <PID> : avoir des infos sur un patch donné.

patchadd -d <PID> : les fichiers de sauvegarde sont supprimés.

# showrev -p

répertoires:

-------------

/var/sadm/patches: répertoire contenant les patches

/var/sadm/spool/

- patchrm: pour supprimer un patch du système

syntax: patchrm <PID>

ie:

# patchrm 10501-01

Qd un patch ne peut être installé:

----------------------------------

- si ce patch existe déjà;

- si une version plus récente que le patch à été installée ou est déjà appliquée;

- si ce patch dépend d'un autre patch qui n'est pas installé.

------------------------------------------------------------------------------------------------------------------
---------

------------------------------------------------------------------------------------------------------------------
---------

VIII. EXECUTING OPEN BOOT PROM COMMANDS:

----------------------------------------
NVRAM?

Non Volatile Randam Access Memory: c'est une mémoire non volatile. dc, qui
peut conserver ls données après au démarrage

NVRAM prend en compte les commandes telles que:

syntax: <commande> <parametre> <valeur>

- nvalias: attribue un "alias" permanent à un disque

- unvalias: désactive l'alias attribué à un disque

- banner: affiche les infos sur le système

- devalias: affiche les alias des périphériques & attribue un alias temporaire

- show-devs: affiche ls périphériques et leur PATH

- show-disks: affiche ls disques installés et leur alias

- setenv: changer la valeur d'un paramètre

ie: ok setenv auto-boot? false

ok setenv boot-device disk

- set-default(s): rétablir ls valeurs par défauts de tous ls paramètres

- printenv:affiche ls valeurs de paramètres

ok setenv boot-device disk

ok printenv boot-device

- probe: affiche les périphériques connectés au système

probe-ide: affiche ls périphériques (disk, CD-ROM) connectés au

probe-ide-all:

probe-scsi:

- reset-all: rétablir les valeurs par défaut

- password: changer de mot de passe

probe-scsi-all:

- sifting:
- boot: démarrer le système

boot -a: démarre le système en tenant k du fichier ajouté

boot -r: reconfigure le système

boot -v: mode verbose

boot -rv, boot -av

- help: aide commande

eeprom: permet de changer les paramètes NVRAM sous Solaris

------------------------------------------------------------------------------------------------------------------
------------

------------------------------------------------------------------------------------------------------------------
-------------

IX. BOOT AND SHUTDOWN PROCEDURES:

--------------------------------

Boot on SPARC:

----------------

PROM --> POST (check ds periph.)

---> pboot ---> ufsboot --> kernel initialization --> init ---> svc.startd --->
services

Boot on x86:

------------

BIOS (check ds periph.)--> mboot (Master Boot Record) ---> pboot --> ufsboot -->
kernel initizalization ---> init ---> svc.startd ---> services

functions du BIOS:

- check système hardware;

- fourni ds services E/S via ds interupts. logi
- changer le run level par défaut:

# scvadm milestone -d milestone/multi-user:

# svcadm milestone -d milestone/multi-user-server:

# svcadm milestone -d milestone/single-user:

# svcadm milestone all

/etc/inittab:

------------

le program init lit le contenu de ce fichier pr savoir démarrer ls services

syntax:

id:<run_state:action: commande

powerfail

sysinit

boot

respawn

wait

once

ie:

smf::sysinit:/lib/svc/bin/svc.startd > /dev/msglog 2<> /dev/msglog

------------------------------------------------------------------------------------------------------------------
-----------------------

------------------------------------------------------------------------------------------------------------------
-----------------------

X. USER ADMINISTRATION:

-----------------------
3 fichiers permetttent de gérer des utilisateurs:

- /etc/passwd: contient le compte d'utilisateus crées par l'administrateur et le
système

syntax:

<nom_user>:<passwd>:<user_ID>:<group_ID>:<comment>:<home_directory:
<shell>

ie: michelle:x:2000:2000::/export/home/rep:/bin/bash

- /etc/shadow: contient des infos détaillées sur le mot de passse:

syntax:<username>:<password>:<lastchg>:<min>:<max>:<warn>:<inactive
>:<expire>

ie:

jkerry: 86KG/MNT/DGU: 9675: 0: 90: 7: 10: 5905

<username <password><date mini max nbr nbr date exp

dernière jours jours jrs avt jr inac compte

modification expirat compte

<(jours)>

- /etc/group: contient des infos sur les groupes

syntax: nom groupe>:<group password>:<gid>:<user-list>

ie:

democrats::111:jkerry,hdean,agore

password settings:

/etc/default/passwd: configure le "password" des comptes utilisateurs

Gestion d'utilisateurs:

-----------------------
- useradd : permet d'ajouter des utilisateurs dans /etc/passwd

syntax: useradd -u <uid> -g <gid> -G <group name> -o (optionel) -d
<user_home_directory> \

-m (make home directory) -c <user_description> -s <login_shell> <username>

ie:

# useradd -u 200 -g 150 -G other -d /export/home/junior -m -c "Junior user" -s

/bin/bash junior

- userdel : permet de supprimer un utilisateur et son home_directory

syntax: userdel -r <username>

ie:

# userdel -r junior

- usermod : permet de modifier les paramètres d'un user

syntax: usermod -u <uid> -g <gid> -G <group_name> -d <home_directory> -s
<login shell> -l <login_name>

ie:

# usermod -u 300 -g 1 -d /export/home/yann -s /bin/bash -l yann2 yann

- groupadd: permet d'ajouter un group ds /etc/group

syntax: groupadd -g <gid> <group_name>

ie:

# groupadd -g 300 eddie

- groupdel: permet de supprimer un group

syntax: groupdel <gname>

ie:

# groupdel eddie

- groupmod: permet de modifier les paramètres de groupe

syntax: groupmod -g <gid> <existing_groupname>
ie:

# groupmod -g 2001 eni

Limitation:

------------

Nbre limité de UID: de 0-99 (réservé au système)

de 100-60.000 (attribuable au users)

Nbre limité de GID: de 0-99 /60.001 & 60.002 65.534(réservé au système)

de 100-60.000 (attribuable au users)

/etc/default/passwd:

MAXWEEKS: attribue la période maximale (en semaine) de validité du mot de
passe

MINWEEKS: attribue la période minimale avant que le mot de passe soit changé

PASSLENGTH: attribue le numbre minimum de caractères à assigner à un mot de
passe

( 6,7 et 8 caractères max)

WARNWEEKS: la période à laquelle l'utilisateur sera prévenu de l'expiration du

mot de passe

NAMECHECK (yes/no): control du mot de passe pr vérifier si l'utilisateur est en
train

d'utiliser le login name comme mot de passe

HISTORY:

DICTIONLIST:

DICTIONDBDIR:

------------------------------------------------------------------------------------------------------------------
-----
------------------------------------------------------------------------------------------------------------------
-----

XI. SYSTEM SECURITY:

--------------------

fichiers de security:

----------

/etc/default/login: permet de gérer la connexion au système

- autoriser/refuser l'accès au root

- détermine si le password est nécessaire ou non lors du login

- gérer ls échecs de connexion (SYSLOG_FAILED_LOGINS)

/etc/ftpd/ftpusers: contient la liste des utilisateurs n'ayant pas accès au

protocole FTP

/etc/ftpd/ftphost: contient la liste des hosts qui ont accès au FTP

/etc/ftpd/ftpgroups: contient la liste des groupes ayant accès au FTP

/etc/cron.d/at.deny: contient la liste des utilisateurs qui n'ont pas accès

à la commande "at"

/etc/cron.d/cron.deny: contient la liste des users qui n'ont pas acccès à la

commande "crontab"

/etc/cron.d/cron.allow: (à créer): contient la liste des users ayant droit à

la commande "crontab"

/etc/cron.d/at.allow: contient la liste des users ayant droit à la commande "at"

/var/adm/loginlog: logge le nombre de tentatives échouées d'accès au système

/etc/defaut/su: fichier de configuration de l'utilisation de "su"

/var/adm/sulog: logge ls utilisateurs qui essayent d'utiliser "su" pr se connecter

à d'autres comptes y compris le root

/etc/pam.conf: paramètrage de la commande $HOME/.rhosts
/etc/host.equiv: les users ordinaires des systèmes dont le hostname est inclu ds
ce fichier

peut se connecter au host sans mot de passe

$HOME/.rhosts: le root des systèmes dont le hostname est inclu ds ce fichier

peut se connecter au host sans mot de passe

commandes de securité:

-----------------------

last: affiche la liste des users qui ce sont connectés au système à un temps
donné

depuis la dernière installation et lit le fichier

/var/adm/wtmpx pr av3r cs infos.

who: affiche les users actuellement connectés au système. lit le fichier

/var/adm/utmpx pr av3r cs infos.

finger: affiche des infos détaillées sur chaque user actuellement connectés au
système

rusers: affiche la liste des users connectés localement ou à distance au système

ftpwho: affiche la liste des users utilisants le protocol FTP

logins: affiche des infos sur ls comptes utilisateurs

- checker des users qui n'ont pas de mot de passe (-p)

ie: logins -p <user_id>

su: permet de changer de compte utilisateur

ssh: permet d'effectuer une connexion sécurisée localement ou à distance

syntax: ssh <hostname>
chown: changer de propriétés d'un fichier (appartenance)

syntax: chown <options> <owner>:[<group>] <file>

options chown:

-R: récursif

-f: force

-h: lien symbolique

ie:

# chown yann:other file1

chgrp: changer de groupe

syntax: chgrp <options> <group> <file>

chgrp options:

-R: récursive

-f: force

-h: lien symbolic

chmod: changer ls permissions d'un fichier

syntax: chmod <options> <permission_mode> <fichier>

chmod options

-------------

-R: changement récursif

-f: force changement

cron utilitaire:

----------------
/var/spool/cron/atjobs: répertoire contenant les tâches à exécuter (programmer)

avec la commande "at"

/var/spool/cron/crontab: répertoire des tâches à executer avec "crontab"

syntax du crontab:

<minute>:<heure>:<jour du mois>:<mois>:<jour de la semaine>:<commande
à executer>

0-59 0-23 1-31 1-12 0-6

ex:

10 3 * * * /usr/sbin/logadm: exécute la commande /usr/sbin/logadm à 3:10 (a.m)

chaque jour du mois, chaque mois, chaque jour
de la semaine

15 3 * * * /usr/lib/fs/nfs/nfsfind: exécute la commande à 3H15 chaque jour,....

30 14 5 10 4 /usr/sbin/logadm: la commande s'exécute chaque jeudi (4), 5
Octobre à 14h30

15 9 * * 0,3 /etc/cron.d/diskchecker: la commande s'exécute tous les jours du
mois, ts ls mois,

chaque dimanche et mercredi à 9:15

---------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------

XII. CONFIGURING AND USING PRINTER SERVICES:

--------------------------------------------

Basics functions of the Solaris OS LP Print Service:

-----------------------------------------------------
- initialization: s'assure que l'imprimate est en bon état.

- Queuing: programme les l'ordre d'impression des rêquetes en cours d'attente

envoyées à l'imprimante

- tracking:

* permet au "root" de gérer ttes les requêtes et de permettre aux autrs

users de voir ou d'annuler leur requêtes

* logge tte erreur constatée lors de l'impression

- Fault notification:

imprime un message d'erreur ou envoie un mail au root, en cas d'erreur de
configuration

ou autre.

- Filtering:

convertis les tâches d'impression vers le format approprié avant de les envoyer

à l'imprimante concernée.

Fichiers & répertoires:

-----------------------

/etc/lp: répetoire contenant une hierarchie des fichiers et répertoires de

configuration

/etc/lp/interfaces: répertoire contenant ls scripts de chaque imprimante
configurée.

syntax: /etc/lp/interfaces/<printername>

/etc/lp/printers: répertoire contenant le sous-répertoire de chaque imprimante
servi par

le système
/var/spool/lp: répertoire contenant une liste des récentes requêtes se trouvant

en ligne d'attente

/var/lp/logs: répertoire contenant un historique des requêtes d'impression

ie: /var/lp/logs/requests: contient ds infos concernant ls requêtes exécutées

/etc/printers.conf: contient des infos sur la configuration ttes ls imprimantes

connectées au système

Daemons:

--------

inetd

/usr/lib/print/in.lpd

/usr/lib/lp/lpsched

Main tasks for configuring Printer services:

--------------------------------------------

1. Setting up the printer --> connecté physiquement une imprimante au système
ou

au réseau

2. setting up the printer server --> configurer le système qui fournira et gérera

l'access à l'imprimante

3. setting up the print client --> configuring le système pour donner accès à une

imprimante distante

4. verifying printer access --> verifier que l'imprimante server reconnait ttes

les imprimantes-clients et vice versa

Commandes:
/usr/sbin/printmgr & : configurerl'imprimante sous GUI

- setting up the système default printer: (imprimante par défaut)
lpadmin

Syntax: lpadmin -d <printername>

lpadmin -d <printer-classname>

ie:

# lpadmin -d printerE: configurer l'imprimante printerE coe imprimante par
défaut

- vérifier l'état de l'imprimante: lpstat

syntax: lpstat -d

ie:

# lpstat -d : vérifie l'imprimante configurée comme par défaut

- remove a client's printer configuration:
Syntax: lpadmin -x <printername>

ie:

# lpadmin -x printerD : supprime les infos de configuration relatives à
l'imprimante "printerD"

- removing a server's printer configuration:
1.

# reject printerD -- rejette l'imprimante "printerD" de la configuratoion

2.

# disable printerD -- désactive cette imprimante (printerD)

3.

#lpadmin -x printerD -- supprime toutes les infos concernant ladite imprimante

- starting the LP print service:
# svcadm enable application/print/server

- stopping the LP print servic
# svcadm disable application/print/server

# svcs -a | grep print

- specyfing a destination printer: lp ou lpr
Syntax: /usr/bin/lp <filename
/usr/bin/lp -d printername filename

Syntax: /usr/ucb/lpr <filename>

/usr/ucb/lpr -P printername filename

Remote printer syntax:

/usr/bin/lp -d hostname:printername filename

/usr/ucb/lpr -P hostname:printername filename

ie:

# /usr/bin/lp –d printerD file1

# /usr/ucb/lpr -P printerD file1

# /usr/bin/lp -d tapsolaris10: printerD file1

# /usr/ucb/lpr -P tapsolaris10: printerD file1

- accepting print jobs: accept
Syntax: # /usr/sbin/accept destination(s)

ie:

# accept printerD

- rejecting print jobs: reject

Syntax: # reject -r "reason" destination(s)

ie:

# reject –r "Replacing toner cartridge" printerD

- enabling printers: enable

Syntax: /usr/bin/enable destination(s)

ie:

# enable printerD

- disabling printers: disable

Syntax: /usr/bin/disable -c | -W -r "reason" destination

-c : annule la tâche actuelle et désactive l'imprimante

-w : attend que la requête actuelle soit complètement executée puis désactive
l'imprimante

-r : raison de désactivation

ie:

# disable -W -r "Printer down for maintenance" printerD
- moving print
Syntax: lpmove source_destination target_destination

ie:

1.

# reject -r "Printer is down for maintenance " printerc

2.

# lpstat -o

3.

# lpstat -a printerA

4.

# lpmove printerc printerA

5.

# accept printerc

__________________________________________________________________________________

XIII. CONTROLLING SYSTEM PROCESSES
/usr/dt/bin/sdtprocess &: pour voir les processus actuellement en cours
d'exécution en graphique (GUI)

Commands:
syntax: prstat <options>

<PID> <USERNAME> <SIZE> <RSS> <STATE> <PRI> <NICE>
<TIME> <CPU> <PROCESS/NLWP>

virtmem size resid. cpu: priority % size sleep

(kb,Mb,Gb) run

zombie

stop

- prstat: examine et affiche ls infos sur ts les processus actifs

ie:

# prstat -a: affiche un report séparé concernant les processes & users
séparemment

# prstat -c: affiche continuellement les nvo reports en dessous des récents

# prstat -n <nproc>: restreint l'affichage à un nombre donné de processes
# prstat -p <pidlist: trie sur le pid

# prstat -s key: trie par cpu,time,size,rss & pri

# prstat -t: reporte l'utilisation totale des processes

# prstat -u <euid>: reporte seulement les processes concernant 1 EUID

# prstat -U <uidlis>: report sur le REAL ID

- Killing frozen processes: kill
syntax: kill -signal <PID>

syntax: pkill -signal <process_name>

syntax: kill -signal <PID> <PID> <PID>

syntax: pkill -signal <PNAME> <PNAME> <PNAME>

kill –l : pour voir tous les signals disponible utilisables avec "kill"

# kill -l

ie:

# pgrep -l mail : pour trouver un processus (pgrep) contenant le caractère
mail

# pkill sendmail:

Kill signals:
SIGHUP, 1: le "hangup" causera au daemon de relire la configuration du
fichier

SIGINT, 2: un signal d'interruption venant du clavier, comparable à
CONTROL-C

SIGKILL, 9: un signal pour tuer un processus. Un processus ne peut ignorer
ce signal

SIGTERM, 15: un signal pr terminer un processus. Quelques processus
peuvent ignorer ce signal

SIGQUIT, 3: force au processus de quitter et génère un core dump

SIGABRT, 6: Abondon.

SIGSTOP, 23: stoppe. pause le processus

SIGCONT, 25: continue. relance/redémarre un processus stoppé.

- Using at command:
Syntax: at -m -q <queuename> time date

at -r job 'supprime une tâche programmée

at -l ' liste la tâche en cours d'exécution

ie:

# at 9:00 am

at> find /export/home -name core -exec file {} \; >> /var/tmp/corelog

at> CTRL-D

- to display information:
# at -l 1089000000.a

- to display all jobs queued:
# atq

- to view all the at jobs currently scheduled
# ls -l /var/spool/cron/atjobs

- to remove a job 1099999
# at -r 1099999.a

# atq

- viewing a crontab file:
Syntax: crontab -l <username>

ie:

# crontab -l ( pour l'utilisateur actuel)

# crontab -l yann (pour l'user yann)

- edit the crontab file

# EDITOR=vi

# export EDITOR

# crontab -e (édite le crontab de l'user actuel)

30 17 * * 5 /usr/bin/banner "Time to go!" > /dev/console

:wq!

- removing a crontab file
Syntax: crontab -r <username>

ie:
# crontab -r yann

__________________________________________________________________________________

XIV. PERFORMING FILE SYSTEM BACKUPS:
Tape drive control: (contrôle de la cassette)

Syntax: mt -f <tape-device-name> <command> <count>

mt status

mt rewind

mt offline

mt fsf <count>

mt status: affiche l'information sur le statut de la bande magnétique

mt rewind: rembobine la bande

mt offline: rembobine la bande, et si approprié, sort la bande magnétique du
"tape driver" et si le périphérique le supporte, déconnecte la bande

mt fsf <count> : fait avancer la bande à l'enregistrement <count>

ie:

# mt -f /deV/rmt/0n fsf 2: positionne la bande au du 3ème enregistrement

- determine the number of tapes:
Le nombre de cassettes à utiliser pour le backup est déterminé par rapport à la
taille du SF à sauvegarder.

Pour déterminer la taille du SF (Système de Fichier) à sauvegarder, utiliser la
commande "ufsdump" avec

l'option "S" comme suit:

Syntax: ufsdump 0S <filesystem_name> ou ufsdump 3S
<filesystem_name>

ie:

# ufsdump 0S /

- Incremental back up level definitions: 1-9
Les incrementals backups sont utilisés pour sauvegarder les fichiers qui ont été
modifiés depuis la dernière sauvegarde.

/etc/dumpdates:
Fichier enregistrant les sauvegardes effectuées avec l'option -u de la commande
"ufsdump".
Chaque ligne du fichier montre le SF qui a été sauvegardé et le niveau (0,1-9) de
la dernière sauvegarde

ie:

# cat /etc/dumpdates

/dev/rdsk/c0t2d0s6 0 Fri Nov 5 19:12:27 2004
SF level date (full backup)

/dev/rdsk/c0t2d0s61 Tue Nov 9 16:25:28 2004
SF level (incremental) date

- Standard file system to backup
- root (/) : slice 0

- /usr : slice 6

- /export/home: slice 7

- Backing up an unmounted file system: ufsdump
Sauvegarde tous les fichiers dans un SF

Syntax: ufsdump <options> argument(s) <filesystem_name>

0-9

v

S

u

l

o

n

f

D

ufsdump 0Sf <argument> <filesystem_name> : donne l'estimation de la taille du
SF à sauvegarder

ufsdump 0vf <argument> <filesystem_name> : verfie le contenu du média après
chaque sauvegarde

ufsdump 0lf <argument> <filesystem_name> : autoload

ufsdump 0of <argument> <filesystem_name> : rebobine et éjecte la bande qd la
sauvegarde prend fin
ufsdump 0uf <argument> <filesystem_name> : MAJ le fichier /etc/dumpdates
pour le périphérique de sauvegarde utilisé, le niveau de sauvegarde (0-9), et la
date.

ufsdump 0nf <argument> <filesystem_name> : notifie les utilisateurs faisant
partie du groupe qu'une sauvegarde est en cours d'exécution

ufsdump 0Df <argument> <filesystem_name> : effectue une sauvegarde sur
une disquette.

NB: l'option 'f' permet de spécifier le périphérique à utiliser pour la sauvegarde

ie: cas d'application

1.

# /usr/sbin/shutdown -y -g300 "System is being shutdown for backup"

2. verifie que le /export/home est démonté avec la commande shutdown

3.

# fsck /export/home

4.

# ufsdump 0uf /dev/rmt/0n /export/home : effectue 1e sauvegarde complète du
SF /export/home sur la 1ère bande magnétique

- remote backups to tape:
Syntax: ufsdump <options> <remotehost:tapedevice> <filesystem>

ie:

# ufsdump 0uf host2:/dev/rmt/0 /export/home: effectue un "full backup" d u SF
/export/home sur la premiere bande du host2

D’autres utilitaires de sauvegarde:

- cpio: copies data from one location to another
Syntax: cpio <mode> <options>

I -a

o -A

p -c

-i: lit le contenu de l'archive

-o: crée l'archive ou la sauvegarde

-p: copy le contenu d'un répertoire à un autre

ie:
# cd /work

# find . | cpio -ocB > /deV/rmt/0 : crée

# cd /work

# cpio –icdB < /dev/rmt/0 : restaure

- tar: creates tape or file-based archives
syntax: tar <options> <tar-filename> <file-list>

c

t

x

v

f

ie:

# tar tvf /dev/rmt/0 : lire le contenu de l'archive

# tar xvf /dev/rmt/0 /home/bcalkins/ .profile: restaure le SF

# tar cvf files.tar /home/bcalkins : crée l'archive

- dd: convert or copy a file or raw device
Syntax: dd if=<input-file> of=<output-file> <option=value>

ie:

# dd if = /deV/rmt/0 of= /dev/rmt/1 : duplicates data

# dd if= /dev/rdsk/c0t1d0s2 of= /dev/rdsk/c0t4d0s2 bs=128k

________________________________________________________________________________

XV. PERFORMING FILE SYSTEM RESTORES (ufsrestore)
Syntax: ufsrestore <options> argument(s) filesystem

t

r

x <file1 file2>

i

v

f <device

-t <filesystem>: liste le contenu de l'archive
-r :restore le contenu du SF à partir du périphérique de sauvegarde

-x file1 file2 : restore seulement ls fichiers file1 & file2

-i : invoque une restauration interactive

-v : mode verbose

-f <device>: spécifie le périphérique de sauvegarde.

- using the ufsrestore command to restore a regular file system
1. create the new file system structure

# newfs /dev/rdsk/c0t0d0s5

2.

# mount /dev/dsk/c0t0d0s5 /opt

# cd /opt

3.

# ufsrestore rf /dev/rmt/0

4.

# rm restoresymtable

5.

# cd /

# umount /opt

6.

# fsck /dev/rdsk/c0t0d0s5

7.

# ufsdump 0uf /dev/rmt/0 /dev/rmt/c0t0d0s5

8.

# init 6

- restore the /usr FS:
Ok boot cdrom -s

# newfs /dev/rdsk/c0t0d0s6

# mount /dev/dsk/c0t0d0s6 /a

# ufsrestore rf /dev/rmt/0

# rm restoresymtable

# cd /
# umount /a

# fsck /dev/rdsk/c0t0d0s6

# ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s6

# init 6

- Performing a special case recovery of the / (root) FS:
ok boot cdrom -s

# newfs /dev/rdsk/c0t0d0s0

# mount /dev/dsk/c0t0d0s0 /a

# cd /a

# ufrestore rf /dev/rmt/0

# rm restoresymtable

# cd /usr/platform/`uname -m`/lib/fs/ufs

# installboot bootblk /dev/rdsk/c0t0d0s0

# cd /

# umount /a

# fsck /dev/rdsk/c0t0d0s0

# ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s0

# init 6

Sous-commandes de ufsrestore en interactive (option -i)

* add <file>: ajoute un fichier ou 1 répertoire <file> à la liste des fichiers
marqués pr extraction

* cd <directory>: se déplace ds ls répertoires se trouvant ds la bande de
sauvegarde

* delete<file>: démarquer un fichier ou 1 répertoire parmi la liste des fichiers à
extraire

* extract : extrait tous les fichiers marqués en spécifiant le n° du volume

* help/? : affiche la list des commandes à exécuter

* ls <directory>: liste le contenu d'un répertoire

* marked <directorname>: coe ls excepté le fait que seuls ls fichiers marqués pr
extr sont affichés

- invoking an interactive restore:
# cd /export/home/tmp
# ufsrestore ivf /dev/rmt/0

ufsrestore> ls

ufsrestore> cd directory1

ufsrestore> ls

ufsrestore> add file1 file2

ufsrestore> ls

ufsrestore> delete file1

ufsrestore> ls

ufsrestore> extract

ufsrestore> quit

# mv /export/home/tmp/directory1/file2 /export/home

# rm -r /export/home/tmp/directory1

XVI. BACKING UP A MOUNTED FILE SYSTEM WITH A UFS
SNAPSHOT: fssnap
Syntax: /usr/sbin/fssnap -F FSType -V -o backing-
store=<destPath>,<specificOptions> <mountPoint>

ie:

# fssnap -F ufs -o bs=/var/tmp /export/home

# fssnap -F ufs -o bs=/var/tmp,maxsize=500m /export/home

- displaying information for a ufs file system snapshot:
On peut utiliser la commande "fssnap -i" pour afficher des infos sur la capture du
SF UFS créée

ie:

# fssnap -i

Pour afficher plus de détails sur la capture d'un SF particulier,
utiliser le:
# /usr/lib/fs/ufs/fssnap -i /export/home

- Backing up the UFS snapshot file with TAR:
# mkdir -p /backups/home.bkup

# mount -F ufs -o ro /dev/fssnap/0 /backups/home.bkup

# cd /backup/home.bkup

# tar cvf /dev/rmt/0
- Backing up the UFS snapshot file with ufsdump:
# ufsdump 0uf /dev/rmt/0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

- Performing an incremental backup using a UFS snapshot
# ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c1t0d0s0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

1. créer une capture du SF /extra qui sera par la suite
sauvegardé
# fssnap –o bs=/var/tmp /extra

# fssnap -i (pour vérifier si le snapshot a marché.)

# /usr/lib/fs/ufs/fssnap -i /extra (pour avoir + de détails)

# mkdir /extramap

# mount -o ro /dev/fssnap/0 /extrasnap

# df -k | grep extra

# vi file1

<ajouter des valeurs>

# df-k | grep extra

# umount /extrasnap

# fssnap -d /extra

# rm /var/tmp/snapshot0

# cp file1 file5

# cp file1 file6

# fssnap –o bs=/var/tmp /extra

# mount -o ro /dev/fssnap/0 /extrasnap

# df -k | grep extra

# ufsdump 1ufN /dev/rmt/0 /dev/rdsk/c1t0d0s0 /dev/rfssnap/0

# ufsrestore tf /dev/rmt/0

- Deleting a UFS snapshot:
# umount /dev/fssnap/0

# fssnap -d /export/home
# rm /backing_store_filestore_file