On peut s'attibuer automatiquement les droits sur des fichiers / répertoires ?

Répondre
Partager Rechercher
Le titre n'est pas super parlant, donc je vais développer un peu plus.

Sur un serveur, j'ai un répertoire où sont faite des sauvegardes. Pour pouvoir effacer les sauvegardes trop anciennes, ils me faut changer les droits des répertoires afin de pouvoir les supprimer. Il existerait un moyen de faire ça automatiquement ?
- Sélectionne les répertoire qui datent de plus de un mois.
- Changer les droits.
- Supprimer les répertoires qui date d'un mois.
Tu peux faire un chron avec ton utilisateur admin, ou donner par défaut les droits à ton utilisateur lambda sur les dossiers de sauvegarde, ou archiver les vieilles sauvegardes dans un endroit ou l'utilisateur lambda a accès, ou probablement encore deux-trois autres choses.
Mais qu'un utilisateur lambda puisse s'administrer lui-même des droits, c'est pas trop dans l'esprit de l'administration...
Message supprimé par son auteur.
Bah c'est effectivement un détail parce que ça ne change rien, ou pas grand-chose. On dit "admin" au lieu de "root", et c'est à peu près tout.
En bref: si tu as un accès admin: tu peux. Sinon: tu peux pas.
oui, je suis admin, mais la sauvegarde est faite par un autre utilisateur qui je pense se donne les droits exclusivement a lui même. Je peu le faire à la main, mais je me demandais si je ne pouvais pas automatiser ça. Histoire de ne pas avoir mon disque plein ou de ne pas à avoir a vérifier mon serveur tous les x jours.
Tâche planifiée lancée avec des droits suffisant pour modifier les fichiers de sauvegarde, derrière tu balances un script powershell qui va te nettoyer les fichiers plus vieux de N jours.

ls $BACKUP_FOLDER\*.* |? {$_.LastWriteTime -lt (get-date).AddDays(-N)} | del
Citation :
Publié par thanatosX
oui, je suis admin, mais la sauvegarde est faite par un autre utilisateur qui je pense se donne les droits exclusivement a lui même. Je peu le faire à la main, mais je me demandais si je ne pouvais pas automatiser ça. Histoire de ne pas avoir mon disque plein ou de ne pas à avoir a vérifier mon serveur tous les x jours.
Bah t'as forcement un syscall dans l'API WIN32 qui permet de faire la meme chose que la GUI, donc oui c'est automatisable. Apres jconnais pas les details
Il est même recommandé d'utiliser icacls, cacls va finir par disparaître. et s'il faut changer le propriétaire des fichiers, takeown. Mais j'insiste, la méthode de sauvegarde est mauvaise si elle change les permissions.
Supposons que tes sauvegardes sont situées dans un dossier particulier, e:\Backup par exemple.
Tu crées un script permissions.cmd, contenant ces lignes :
Code:
@Echo off
set LOGS=D:\Scripts\permissions_log.txt
icacls e:\Backup /grant Administrateurs:(F) > %LOGS% 2>>&1
icacls e:\Backup /C /T /inheritance:e >> %LOGS% 2>>&1
Ce script va ajouter le contrôle total au dossier pour le groupe Administrateurs, puis va forcer l'héritage sur tous les fichiers et répertoires en dessous. Les résultats seront consignés dans le fichier D:\Scripts\permissions_log.txt (écrasé à chaque exécution)

tu y ajoutes une fonction de suppression de fichiers de plus de 30 jours , par exemple

Code:
forfiles /p e:\backup /s /c /d -30 "cmd /c del /q @file"
puis tu lances ce script via une tâche planifiée, une fois par jour, en tant qu'administrateur.

Bien sur, tu vérifies tout ça avant sur un dossier de test, parce que je fais ça de tête.

Dernière modification par Nenaal Llaenaan ; 01/11/2015 à 20h02.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés