Frédéric Perrin a écrit :
>
> Bonjour,
>
> Je voudrais écrire un script (à priori avec Bash) pour automatiser
> mes sauvegardes des postes Windows depuis mon serveur
> Mandrake 7.2.
> J'ai installé Samba (qui fonctionne bien).
>
> L'idée est la suivante :
> chaque utilisateur peut placer dans son répertoire home (en
> accédant directement depuis son poste Win grace à Samba) un
> fichier "liste_des_fichiers" et contenant la liste de tous les fichiers
> qu'il veut sauvegarder de son poste, en utilisant une syntaxe
> "Windows" (par exemple C:\Repertoire1\Fichier.txt)
>
> Ensuite, par Cron, je veut lancer un script qui lit le fichier
> "liste_des_fichiers" de chaque utilisateur et fait la copie (toujours
> par Samba) des fichiers des postes Windows vers le lecteur DAT
> par la commande tar.
>
> Les questions sont les suivantes :
> 1) Est-ce que l'idée est bonne ?
Oui, mais je ne sais pas s'il ne faudrait pas faire 2 listes pas
utilisateurs: "fichiers-backup" et "fichiers-pas-backup".
Parce que si une personne "oublie" de mettre un fichier dans sa liste,
elle n'aura pas de message d'erreur.
Je ne sais pas à qui se destine tes machines, mais peut être que tu
devrais les contraindre à choisir explicitement de ne pas sauvegarder
certains fichiers et en sauvegarder d'autres.
Bien sûr, si tu bosses pour une SSII, t'auras pas le problème, mais si
c'est pour du personnel moins qualifié, ce serait peut être nécessaire.
> 2) Quelles remarques faire au niveau sécurité ?
Si j'étais un utilisateur de ton truc et que je voudrais bidouiller, la
première chose que je ferai, c'est d'essayer de savoir comme je peux
avoir accès à mes fichiers sauvegardés.
Pour essayer de me servir de ces fichiers sur le serveur.
[QUESTION]
Je veux pas dire de bêtise, mais si je prends un fichiers SUID sous
linux, que je le copie sur une partition DOS ou win, puis que je le
recopie alors sur un partition linux: est-ce que le fichier garde le
SUID et/ou les mêmes permissions ?
Sinon, si j'ai envie de faire le méchant, je me ferai un plaisir de
faire exploser ton DAT en faisant des supers gros fichiers. (je connais
pas la capacité de ces petites bêtes)
> 3) Pour l'écriture du script, je peux le faire avec Bash ou faut-il
> plutôt utiliser perl ou autre chose ?
Ben, si tu me demandes, je choisis perl.
En plus de faire les différentes choses que tu veux faire, il peux aussi
te dresser un récapitulatif avec les erreurs s'il y a, il gère aussi les
erreurs (genre: le lecteur DAT mal connecté ou plus de place sur la
bande.), il peux même envoyer automatiquement un mail aux utilisateurs
qui dépassent les "quotas" de "grosseur de fichiers".
> 4) En fait le script est déjà pratiquemment écrit, j'ai juste un
> problème : comment passer de la syntaxe
> C:\Repertoire1\Fichier.txt à /mnt/fred_c/Repertoire1/Fichier1.txt
> (/mnt/fred_c étant monté avant bien sûr) ?
> La difficulté (pour moi) est de détecter et remplacer C:\ ou D:\ par
> /mnt/fred_c ou /mnt/fred_d et remplacer les \ par des /.
> Comment faire ça ?
Perl, c'est fait pour manipuler des chaines de caractères.
Changer les / en \ se fait en une ligne, ainsi pour changer le c: en
/mnt/fred_c.
En plus, perl est un langage pré-compilé, c'est à dire qu'il est compilé
en mémoire avant d'être executé, alors que le bash est interprété (donc
plus lent). Je me trompe peut être, mais ça me parait logique.
Si tu as beaucoup d'utilisateurs, il y aura peut être une différence
non-néglileable.
> Je précise que ce n'est pas la programmation proprement dite qui
> me pose problème (je sais le faire sans problème sous d'autres
> langages de développement), c'est juste que je ne sais pas le faire
> sous Linux.
En plus, si tu as à apprendre le Perl, c'est pas perdu puisqu'il est
inclus dans win2000 (et winME aussi je crois).
Ça te fera un langage de script qui pourra resservir...
Espérant avoir aider
@+
olivier
--
"Vous avez la tête dure."
Mr H. au sujet de la pénétration des ondes sonores dans la boite
cranienne.
Visitez mon site ! >>>>> http://ofaurax.free.fr <<<<<
mailto:[EMAIL PROTECTED] ou LICQ n° 37043884