Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 21/07/2006, 17h29   #1 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut Avis sur un script

Bonjour,


Je souhaiterais avoir votre avis sur un script qui doit servir en mode "cron" afin de faire des sauvegardes sur un réseau d'entreprise ayant au plus 10 machines...

Les machines clientes sont sous windows, et stockent leurs propres données... certaines sont sauvegardées à chaque horaire de pause sur le serveur, puis seront accessibles en lecture seule par un serveur samba, pour des restaurations rapides. Elles seront également graver sur un dvd+rw tous les soirs.

Le but de la manoeuvre est de ne pas avoir à se soucier d'autre chose que de mettre un dvd dans le graveur à temps (en gros, chaque matin... et on fait une rotation)

le script fonctionne, mais je préférerais qu'il soit blindé... donc tous les avis constructifs sont bons à prendre


Code :
#! /bin/bash
ISO_MOUNTPATH="/mnt/graveur"
ISO_REMOTEPATH=""
USER_LIST="/home/sauvegarde/sauv_users.txt"
if [ -r ${USER_LIST} ]
then
        USERS=`cat ${USER_LIST}`
else
        echo "Impossible de lire ${USER_LIST}"
        exit 1
fi
USERS=`cat ${USER_LIST}`
DIRS=""
DIR_LIST=""
for USERNAME in $USERS
do
        ln -s -f "/home/$USERNAME" /home/links/
        REMOTE_COMPUTER=`grep /mnt/$USERNAME /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
        IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
        if [ ${IS_ACTIVE} -lt 1 ]
        then
                mount /mnt/$USERNAME
        else
                echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
                continue
        fi
        DIR_LIST="/home/sauvegarde/${USERNAME}.dir"
        if [ -r ${DIR_LIST} ]
        then
                DIRS=`cat ${DIR_LIST}`
        else
                echo "Impossible de lire ${DIR_LIST}"
                continue
        fi
        for DIR in $DIRS
        do
                if [ -d /mnt/$USERNAME/$DIR ]
                then
                        mkdir -p /home/$USERNAME/$DIR
                        cd /home/$USERNAME/$DIR
                        cp -r "/mnt/$USERNAME/$DIR/"* .
                else
                        echo "Impossible de copier /mnt/$USERNAME/$DIR"
                        continue
                fi
        done
        sync
        umount /mnt/$USERNAME
        sleep 5
done
LABEL=`date +"%Y_%m_%d"`
ISO_FILENAME="/home/sauvegarde/${LABEL}.iso"
mkisofs -f -R -r -J -V "$LABEL" -o "${ISO_FILENAME}" /home/links
REMOTE_COMPUTER=`grep ${ISO_MOUNTPATH} /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
if [ ${IS_ACTIVE} -lt 1 ]
then
        mount ${ISO_MOUNTPATH}
else
        echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
        exit 1
fi
cp "${ISO_FILENAME}" "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}"
sync
touch "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}/gravure_ok.txt"
sync
umount ${ISO_MOUNTPATH}
#rm -f "${ISO_FILENAME}"
rm /home/links/*
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog

Dernière modification par gorgonite ; 21/07/2006 à 22h37.
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 19h15   #2 (permalink)
Membre chevronné
 
Date d'inscription: mai 2004
Localisation: Belgique
Messages: 685
Par défaut

As-tu envisagé rsync pour tes back-up? Seuls les fichiers changés sont sauvegardés. Tu pourrais facilement l'intégrer dans ton script.
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 19h55   #3 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

Citation:
Envoyé par ripat
As-tu envisagé rsync pour tes back-up? Seuls les fichiers changés sont sauvegardés. Tu pourrais facilement l'intégrer dans ton script.

rsync marche sous windows ?
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 20h56   #4 (permalink)
Membre chevronné
 
Date d'inscription: mai 2004
Localisation: Belgique
Messages: 685
Par défaut

Oui, bien sûr. Dès que tu fais un mnt -t smbfs ce répertoire est vu comme un répertoire Linux. Rsync n'y voit que du feu.

Voici ce que je fais pour mes backup des stations windows:
Code :
# si pas de mnt -> mnt
if test ! -d /mnt/smb/toto
then
    sudo mount -t smbfs -o username='Toto',password='zzzz' //toto/Data /mnt/smb
fi

# copie et synchronisation des fichiers
    # tous les doc xls de windows -> debian
    SRC='/mnt/smb/'
    DEST='/home/toto/backup'
    INCLUDE='/etc/rsync_include_toto'
    rsync -av --include-from=$INCLUDE $SRC $DEST

# umount
sudo umount /mnt/smb
Le fichier rsync_include_toto contient ceci:

Code :
# BACKUP TOTO -> DEBIAN
# inclusion de tous les répertoires et sous-répertoires
/**/

# inclusion xls et doc
*.xls
*.doc

# exclusion de tout le reste
- *
Bon, j'ai un peu pataugé dans le fichier include de rsync, mais ça marche comme ça.

Dans ton script, si j'ai bien compris tu vérifies dans fstab le nom du netbios des utilisateurs windows et s'ils existent tu mnt. Que font-ils dans fstab? Il sont déjà mnté au boot? Pourquoi le re-mnter alors?
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 21h37   #5 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

Citation:
Envoyé par ripat
Bon, j'ai un peu pataugé dans le fichier include de rsync, mais ça marche comme ça.
et on peut tout prendre, vu que je sélectionne les répertoires utiles ?

Citation:
Envoyé par ripat
Dans ton script, si j'ai bien compris tu vérifies dans fstab le nom du netbios des utilisateurs windows et s'ils existent tu mnt. Que font-ils dans fstab? Il sont déjà mnté au boot? Pourquoi le re-mnter alors?
ils sont dedans pour faciliter ma gestion... mais avec l'option noauto
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 21h57   #6 (permalink)
Membre chevronné
 
Date d'inscription: mai 2004
Localisation: Belgique
Messages: 685
Par défaut

Citation:
Envoyé par gorgonite
et on peut tout prendre, vu que je sélectionne les répertoires utiles ?
Oui, c'est même plus simple. J'avoue avoir eu quelques difficultés à comprendre le logique des fichiers "include-from".

Pour tout copier, fais simplement:
Code :
rsync -av $SRC $DEST
Si tu as un autre serveur sous le coude, tu peux même t'épargner de jouer au disk jockey en utilisant ce serveur distant comme destination du rsync (par ssh, par exemple et en mode compressé pour économiser de la bp):

Code :
DEST='utilisateur@serveur_distant:/chemin/vers/destination/backup/'
rsync -azv -e ssh $SRC $DEST
Il faut dans ce cas que la connexion ssh se fasse sans mot de passe par échange de clés publiques.

Les premiers backups seront un peu longs (selon la vitesse de connexion adsl ou lan) mais ensuite, seuls les fichiers modifiés seront copiés.
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 22h44   #7 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

comme cela, ça te semble bien ?

Code :
#! /bin/bash
ISO_MOUNTPATH="/mnt/graveur"
ISO_REMOTEPATH=""
USER_LIST="/home/sauvegarde/sauv_users.txt"
if [ -r ${USER_LIST} ]
then
        USERS=`cat ${USER_LIST}`
else
        echo "Impossible de lire ${USER_LIST}"
        exit 1
fi
USERS=`cat ${USER_LIST}`
DIRS=""
DIR_LIST=""
for USERNAME in $USERS
do
        ln -s -f "/home/$USERNAME" /home/links/
        REMOTE_COMPUTER=`grep /mnt/$USERNAME /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
        IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
        if [ ${IS_ACTIVE} -lt 1 ]
        then
                mount /mnt/$USERNAME
        else
                echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
                continue
        fi
        DIR_LIST="/home/sauvegarde/${USERNAME}.dir"
        if [ -r ${DIR_LIST} ]
        then
                DIRS=`cat ${DIR_LIST}`
        else
                echo "Impossible de lire ${DIR_LIST}"
                continue
        fi
        for DIR in $DIRS
        do
                if [ -d /mnt/$USERNAME/$DIR ]
                then
                        if [ -d /home/$USERNAME/$DIR ]
							usleep 1
						else
							mkdir -p /home/$USERNAME/$DIR
						fi
                        #cd /home/$USERNAME/$DIR
                        #cp -r "/mnt/$USERNAME/$DIR/"* .
						rsync -av "/mnt/$USERNAME/$DIR/" "/home/$USERNAME/$DIR"
                else
                        echo "Impossible de copier /mnt/$USERNAME/$DIR"
                        continue
                fi
        done
        sync
        umount /mnt/$USERNAME
        sleep 5
done
LABEL=`date +"%Y_%m_%d"`
ISO_FILENAME="/home/sauvegarde/${LABEL}.iso"
mkisofs -f -R -r -J -V "$LABEL" -o "${ISO_FILENAME}" /home/links
REMOTE_COMPUTER=`grep ${ISO_MOUNTPATH} /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
if [ ${IS_ACTIVE} -lt 1 ]
then
        mount ${ISO_MOUNTPATH}
else
        echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
        exit 1
fi
cp "${ISO_FILENAME}" "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}"
sync
touch "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}/gravure_ok.txt"
sync
umount ${ISO_MOUNTPATH}
#rm -f "${ISO_FILENAME}"
rm /home/links/*
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/07/2006, 22h50   #8 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

en revanche, avec ma méthode, les répertoires avec un espace dans le nom ne passent pas, ie les répertoires nommés dans ${USERNAME}.dir doivent ne pas avoir d'espaces dans leur nom

si quelqu'un a une idée...
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 00h40   #9 (permalink)
Responsable
Hardware
 
Avatar de Arnaud F.
 
Nom : Arnaud F.
Date d'inscription: août 2005
Localisation: Huttenheim
Âge: 23
Messages: 4 890
Par défaut

Ben je sais pas si c'est ce que tu cherche, mais banalise les espaces qui sont dans le fichier contenu dans ${DIR_LIST} via un tr par exemple ( désolé si c'est une anerie mais je tente ma chance en disant ça )

@ +
__________________
Arnaud – Responsable Hardware.

Pour rejoindre l'équipe Hardware et contribuer à l'enrichissement de la FAQ, rédactions de tutoriels, me contacter par MP

C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

Installation de Code::Blocks sous Debian à partir de Nightly Builds
Arnaud F. est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 10h50   #10 (permalink)
Membre chevronné
 
Date d'inscription: mai 2004
Localisation: Belgique
Messages: 685
Par défaut

Citation:
Envoyé par gorgonite
en revanche, avec ma méthode, les répertoires avec un espace dans le nom ne passent pas, ie les répertoires nommés dans ${USERNAME}.dir doivent ne pas avoir d'espaces dans leur nom

si quelqu'un a une idée...
Ça, c'est la faute à Windows (quelle idée de mettre des espaces dans les noms de fichier!).

Par contre, pourquoi parcours-tu les répertoires récursivements? Rsync peut faire ça pour toi il me semble. Il n'aura peut-être pas les problèmes d'espace lui!

Je teste et je reviens...

Edit:
Alors voilà, je confirme, rsync gère parfaitement bien les noms de répertoire et fichiers avec espaces ou caractères accentués qui, eux, seront remplacés par un ?.

Je confirme également que l'option -a est une super-option qui comprend, entre-autres, l'option -r pour récursif.
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org

Dernière modification par ripat ; 22/07/2006 à 11h02. Motif: Résultat de test.
ripat est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 17h06   #11 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

Citation:
Envoyé par ripat
Par contre, pourquoi parcours-tu les répertoires récursivements? Rsync peut faire ça pour toi il me semble. Il n'aura peut-être pas les problèmes d'espace lui!

c'est que je sélectionne uniquement certains répertoires à sauvegarder
le problème survient lorsque le chemin d'un de ses répertoires (définis par l'utilisateur... ou windows comme "C:\Documents and Settings\username\...") contient un espace
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 17h07   #12 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

Citation:
Envoyé par buchs
Ben je sais pas si c'est ce que tu cherche, mais banalise les espaces qui sont dans le fichier contenu dans ${DIR_LIST} via un tr par exemple ( désolé si c'est une anerie mais je tente ma chance en disant ça )

pas tout compris... tu peux montrer la ligne de commande, car je viens de lire http://man.developpez.com/man1/tr.1.php et je ne vois pas trop en quoi ça va m'aider
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 17h09   #13 (permalink)
Rédacteur/Modérateur
 
Avatar de gorgonite
 
Nom : Nicolas Vallée
Date d'inscription: décembre 2005
Âge: 25
Messages: 9 142
Par défaut

voici la version actuelle...

Code :
#! /bin/bash
ISO_MOUNTPATH="/mnt/graveur"
ISO_REMOTEPATH=""
USER_LIST="/home/sauvegarde/sauv_users.txt"
if [ -r ${USER_LIST} ]
then
        USERS=`cat ${USER_LIST}`
else
        echo "Impossible de lire ${USER_LIST}"
        exit 1
fi
USERS=`cat ${USER_LIST}`
DIRS=""
DIR_LIST=""
for USERNAME in $USERS
do
        ln -s -f "/home/$USERNAME" /home/links/
        REMOTE_COMPUTER=`grep /mnt/$USERNAME /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
        IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
        if [ ${IS_ACTIVE} -lt 1 ]
        then
                mount /mnt/$USERNAME
        else
                echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
                continue
        fi
        DIR_LIST="/home/sauvegarde/${USERNAME}.dir"
        if [ -r ${DIR_LIST} ]
        then
                DIRS=`cat ${DIR_LIST}`
        else
                echo "Impossible de lire ${DIR_LIST}"
                continue
        fi
        for DIR in $DIRS
        do
                if [ -d /mnt/$USERNAME/$DIR ]
                then
                        if [ -d /home/$USERNAME/$DIR ]
                        then
                                sleep 0
                        else
                                mkdir -p /home/$USERNAME/$DIR
                        fi
                        cd /home/$USERNAME/$DIR
                        #cp -r "/mnt/$USERNAME/$DIR/"* .
                        rsync -av "/mnt/$USERNAME/$DIR/"* .
                else
                        echo "Impossible de copier /mnt/$USERNAME/$DIR"
                        continue
                fi
        done
        sync
        umount /mnt/$USERNAME
        sleep 5
done
LABEL=`date +"%Y_%m_%d"`
ISO_FILENAME="/home/sauvegarde/${LABEL}.iso"
mkisofs -f -R -r -J -V "$LABEL" -o "${ISO_FILENAME}" /home/links
REMOTE_COMPUTER=`grep ${ISO_MOUNTPATH} /etc/fstab | awk -F ' ' '{print $1}' | awk -F '/' '{print $3}'`
IS_ACTIVE=`nmblookup ${REMOTE_COMPUTER} | grep failed | wc -l`
if [ ${IS_ACTIVE} -lt 1 ]
then
        mount ${ISO_MOUNTPATH}
else
        echo "Impossible de se connecter à ${REMOTE_COMPUTER}"
        exit 1
fi
cp "${ISO_FILENAME}" "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}"
sync
touch "${ISO_MOUNTPATH}/${ISO_REMOTEPATH}/gravure_ok.txt"
sync
umount ${ISO_MOUNTPATH}
#rm -f "${ISO_FILENAME}"
rm /home/links/*
__________________
Evitez les MP pour les questions techniques... il y a des forums
Mes Tutos | Mon Blog
gorgonite est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 17h49   #14 (permalink)
Responsable
Hardware
 
Avatar de Arnaud F.
 
Nom : Arnaud F.
Date d'inscription: août 2005
Localisation: Huttenheim
Âge: 23
Messages: 4 890
Par défaut

Ben je pensais utiliser cette commande pour remplacer tout les espaces que tu rencontre par des underscore par exemple.

Mais bon, ça se trompe je fais fausse route
__________________
Arnaud – Responsable Hardware.

Pour rejoindre l'équipe Hardware et contribuer à l'enrichissement de la FAQ, rédactions de tutoriels, me contacter par MP

C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

Installation de Code::Blocks sous Debian à partir de Nightly Builds
Arnaud F. est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 22/07/2006, 18h49   #15 (permalink)
Membre chevronné
 
Date d'inscription: mai 2004
Localisation: Belgique
Messages: 685
Par défaut

Tu as résolu les problèmes d'espaces dans tes noms de chemin?

Sinon, protège ta variable $DIR.

Code :
for DIR in "$DIRS"
        do
                if [ -d /mnt/$USERNAME/"$DIR" ]
                then
                        if [ -d /home/$USERNAME/"$DIR"
...
Si je comprends bien, tu cherches à sauvegarder les répertoires d'un utilisateur qui sont définis dans un fichier /home/sauvegarde/${USERNAME}.dir. J'insiste sur le fait que rsync peut lui-même se balader récursivement dans tes répertoires choisis. Tu évites ta boucle.

Il faudra définir un fichier include pour rsync et y mettre les répertoires que tu veux sauvegarder. Exemple, pour un utilisateur windows toto, tu fais un mnt sur un répertoire à sauvegarder. Dans ce répertoire il n'y a qu'un certain nombre de répertoires à sauvegarder récursivement (c-à-d. chacun des répertoires choisis et tous leurs sous-répertoires).

Code :
# ici le mnt de la station Windows
    mount -t smbfs (... etc ...) /mnt/smb/toto

# resync récursif
    SRC='/mnt/smb/toto/'
    DEST='/.../.../backup'
    INCLUDE='/.../.../.../rsync_include'
    rsync -av --include-from=$INCLUDE $SRC $DEST
Si tu ne veux "rsync" que certains répertoires du mnt, tu dois les inclures dans un fichier (ici rsync_include)

Celui-ci contiendra:

Code :
# inclusion spécifique de répertoires

# rép. "éclole élodie" et ses sous répertoires
?cole ?lodie/
?cole ?lodie/**

# rép. CUISINE et ses sous répertoires
CUISINE/
CUISINE/**

# rep. FESTIVITE et ses sous répertoires
FESTIVITES/
FESTIVITES/**

# exclusion de tout
- /*
Attentions aux accentués et comment il sont vus par linux.
__________________
:q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
:quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
Jabber: ripat at im.apinc.org
ripat est déconnecté   Envoyer un message privé Réponse avec citation
NEWS LINUX PROFESSIONNELFAQ LINUXTUTORIELS LINUXLIVRES LINUXLINUX TVUNIXGTK+QtAPACHE

Réponse Proposer ce sujet en actualité

Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell



Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non



Fuseau horaire GMT +1. Il est actuellement 21h01.


Vos questions techniques : forum d'entraide Linux Professionnel - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Hébergement - Participez - Copyright © 2000-2010 www.developpez.com - Legal informations.