411j Posté(e) le 8 février 2014 Partager Posté(e) le 8 février 2014 bonjour, Je reposte ici car je me suis aperçu que mes sauvegardes ne se faisaient plus j'ai décrit la situation dans un post sur commentaires et suggestions sur un 411j ; dsm 4.3-3810 update 4 j'ai voulu insere un script dans le planificateur de taches #!/bin/bashcd /volume1/cameras/sam4rm -rf * quand je l'ai lancé, la tache n'a pu etre effectuée, et depuis je ne peux plus ouvrir le planificateur malgré un redémarrage du nas et les sauvegardes ne démarrent plus. mon crontab a l'air correct #minute hour mday month wday who command 39 3 * * 3,6 root /usr/syno/bin/synopkg chkupgradepkg 11 12 * * 2,5 root /usr/syno/sbin/synoupgrade --fetch-all 0 1 * * 1 root /tmp/synoschedtask --run id=1 0 1 * * 2 root /tmp/synoschedtask --run id=2 0 1 * * 3 root /tmp/synoschedtask --run id=3 0 1 * * 4 root /tmp/synoschedtask --run id=4 0 1 * * 5 root /tmp/synoschedtask --run id=5 0 1 * * 6 root /tmp/synoschedtask --run id=6 1 1 * * 0 root /tmp/synoschedtask --run id=7 0 0 * * * root /tmp/synoschedtask --run id=8 par contre /tmp/synoschedtask apparait comme vide avec vi synoschedtask que devrait il y avoir dans ce fichier? si vous avez une idée de ce qui se passe j'en serais content merci pour votre aide 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 8 février 2014 Partager Posté(e) le 8 février 2014 (modifié) #!/bin/bash cd /volume1/cameras/sam4 rm -rf * Bigre, tu es un fou furieux toi! As-tu imaginé les dégats possibles si le "cd" échoue? Je viens d’ailleurs de de vérifier: sur cette version de DSM, pour le compte root, le dossier par défaut des taches programmées est "/usr/syno/synoman/webman/modules/TaskScheduler". Si justement ton "rm" à échoué (une simple faute de frappe peut suffire) et voila que tu as scratché tout le contenu de ce dossier. Ca pourrait expliquer ce que tu constates. Sinon; il n'y a pas de "bash" dans "/bin" sous DSM, c'est "ash" ou "sh" (mais dans le planificateur de taches la ligne "shebang" est sans effet, les commandes sont exécutée par /bin/sh de toutes façons) Modifié le 8 février 2014 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 9 février 2014 Auteur Partager Posté(e) le 9 février 2014 bonjour merci de ton attention, fou sans doute, furieux un peu moins , je ne me doutais pas des dégats possibles de mon cd. Je savais bien que comme galette chaude et brillante leur fiabilité était douteuse , mais comme commande je croyais qu'il pouvait répondre fidélement a mes désirs. Ma naiveté supplée a mon manque de connaissances , et c'est par mes erreurs que je pénétre dans ce monde complexe. j'ai été voir le fichier que tu m'indique et cela donne: BusyBox v1.16.1 (2013-11-06 05:29:52 CST) built-in shell (ash) Enter 'help' for a list of built-in commands. SYNO> cd /usr/syno/synoman/webman/modules SYNO> pwd /usr/syno/synoman/webman/modules SYNO> vi taskscheduler ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ - taskscheduler 1/1 100% il a l'air donc bien vide comme tu me l'indique; ma question serait donc maintenant: comment sortir avec élégance du m........ dans lequel je me suis mis et que dois je écrire dans un script pour effacer des fichiers dans un dossier sans scratché le systeme ? je te remercie coolraoul de te pencher sur mon cas douloureux 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 9 février 2014 Partager Posté(e) le 9 février 2014 (modifié) Aie, pas facile de de suivre ce style ampoulé.. Cela dit, et en réponse à: j'ai été voir le fichier que tu m'indique et cela donne: Je n'ai pas indiqué de *fichier* mais un *répertoire* ("le dossier par défaut des taches programmées") Il ne s'appelle pas "taskscheduler" mais "TaskScheduler" (les systèmes unix sont sensible à la casse) Plutôt que "vi", serait utile de savoir ce que donne la commande "ls -l TaskScheduler" Si le résultat montre que c'est vide, vu que j'ai la même version de DSM, je pourrai te fournir une archive tar du répertoire "TaskScheduler" à décompresser dans ce dossier (il n'y a pas de fichier binaires exécutable dans ce dossier à cet endroit donc pas de problème de compatibilité entre modèle Syno différents). Sinon (si rien n'a été effacé à cet endroit) c'est peut-être que quelque chose à été supprimé ailleurs et la je sens la grosse galère pour trouver où. Une réinstallation de DSM risque d'être la seule option. Modifié le 9 février 2014 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 9 février 2014 Auteur Partager Posté(e) le 9 février 2014 bonsoir, j'ai fais: "cd /user/syno/synoman/webman/modules" "ls -l TaskScheduler" et la ligne suivante est vide donc on pourrait essayer ton idée merci 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 j'ai fais: "cd /user/syno/synoman/webman/modules" Et pourquoi as-tu remplacé "usr" par "user"??? Tu devrais faire un copier/coller, ça éviterait ce genre d'erreur. "ls -l TaskScheduler" et la ligne suivante est vide Alors la je ne comprend pas, avec le "cd /user/..." qui à forcément planté, tu devrais avoir le message d'erreur suivant: ls: TaskScheduler: No such file or directory Ou bien tu as bien tapé "usr" et pas "user" et donc tout est correct. Vérifie bien et, pour gagner du temps, si il s'avère que c'est n'est bien que le répertoire TaskScheduler qui à été effacé (et uniquement lui) tu trouvera ici une archive tar (TaskScheduler.tar.gz) de ce dossier Pour l'extraire tu vas te mettre dans le répertoire ou tu as déposé cette archive (TaskScheduler.tar.gz) et tu tapes *exactement* la commande suivante: tar -C /usr/syno/synoman/webman/modules -xvzf TaskScheduler.tar.gz ensuite tu redémarre le NAS 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 bonjour j'avais bien tapé usr , c'est a la recopie du message que je me suis trompé, j'ai pris tar.gz et fais exactement ce que tu m'a dit,le planificateur est revenu ,il s'ouvre mais les taches de sauvegardes n'apparaissent pas et je ne peux créer de nouvelles taches il me dit "impossible de charger la tache .Reessayer ultérieurement" Je l'ai arréter et redémarrer avec ces 2 lignes /usr/syno/etc.defaults/rc.d/S04crond.sh stop /usr/syno/etc.defaults/rc.d/S04crond.sh start mais c'est pareil 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 (modifié) Redémarre le NAS déja Mais après, si ça merdoie toujours c'est qu'il doit y avoir d'autre dégâts et tu risques devoir a réinstaller DSM (en tous cas je ne vois pas d'autre solution dans l'immédiat) Modifié le 10 février 2014 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 j'avais redémarré le nas je réinstalle donc je te remercie pour tout ce que tu as fais 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fravadona Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 C'etait peut-etre juste un probleme de droits sur les fichiers du tar 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 merci pour l'info je suis en cours de réinstallation mais l'idée m'interesse comment aurais je pu modifier les droits du repertoire que m'avait transmis coolraoul? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 (modifié) comment aurais je pu modifier les droits du repertoire que m'avait transmis coolraoul? Quand on extrait un tar en étant connecté "root" les fichiers sont recrées avec exactement les mêmes droits (user, groupe, modes) qu'à l'origine. Ce n'aurait donc pas été nécessaire. Modifié le 10 février 2014 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 (modifié) merci de l'info coolraoul mon install se termine et tout marche comme auparavant maintenant je reviens au début de ma manip que dois je écrire dans un script pour effacer les contenus d'un repertoire , contenant des dossiers et que dans ceux ci certains ont des dossiers journaliers et d'autres des fichiers jpg sous windows j'avais fait cela RD synocamerasveranda /S/Q MD synocamerasveranda qui effacer tout le dossier et le recrée derriere je voudrais faire un script que j'integrerais dans le nas /bin/sh et apres comment je me positionne dans mon dossier du volume1 ? Modifié le 10 février 2014 par 411j 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fravadona Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 tu n'as pas besoin de te positionner, il sufiit de faire rm -rf /volume1/partage/dossierAvider/* 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 et je met /bin/sh avant ou j'en ai pas besoin? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 et je met /bin/sh avant ou j'en ai pas besoin? Dans le planificateur de tache la ligne "shebang" est sans effet, c'est toujours "/bin/sh" qui est utilisé Personnellement je préfère mettre mes commandes dans un script séparé et mettre juste l'appel de ce script dans le fenêtre du planificateur de tache, mais chacun fait à sa façon. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 donc je résume pour pas faire d'erreur car j'ai encore pas tout compris je prend un fichier txt dans lequel j'écris /bin/sh rm -rf /volume1/cameras/sam je nomme ce fichier "script cam.sh" que je met dans un dossier de mon volume1 et je l'appelle dans la fenetre du planificateur de tache mais avec quelle commande? 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 donc je résume pour pas faire d'erreur car j'ai encore pas tout compris je prend un fichier txt dans lequel j'écris /bin/sh Non: #!/bin/sh rm -rf /volume1/cameras/sam je nomme ce fichier "script cam.sh" que je met dans un dossier de mon volume1 Plutôt "script_cam.sh" Mieux vaut éviter les espaces dans les noms de fichiers, c'est permis mais on ne sait jamais. et je l'appelle dans la fenetre du planificateur de tache D'abord le rendre exécitable avec la commande: chmod +x script_cam.sh mais avec quelle commande? Simplement mettre le chemin complet du script dans le champ commande du formulaire, exemple: /volume1/perso/scripts/script_cam.sh. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Fravadona Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 c'est le repertoire "sam" que tu veux supprimer ou bien son contenu ? La commande telle que tu l'as ecrite supprime le repertoire en plus du contenu 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 (modifié) je résume maintenant je crée mon script que je nomme script_cam.sh et que j'appelle dans le formulaire par le chemin /volume1/mondossierscripts/script_cam.sh le script lui meme est écrit de la façon suivante #!/bin/sh chmod +x script_cam.sh rm -rf /volume1/cameras/sam/* Modifié le 10 février 2014 par 411j 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 (modifié) Ca m'a l'air bon, Comme l'a fait remarqué Fravadona, rm -rf /volume1/cameras/sam/* supprime le contenu de "sam" mais pas "sam" lui même Pour supprimer "sam" *et* son contenu: rm -rf /volume1/cameras/sam Mais faudra peut-être le créer vide ensuite: mkdir /volume1/cameras/sam (dans ce dernier cas, faudra peut être ajuster les droits de sam à coup de "chown" et "chmod") Modifié le 10 février 2014 par CoolRaoul 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 cela ne fonctionne pas je le lance mais cela n'efface pas le contenu de mes dossiers voila le script en copie #!/bin/sh chmod +x script_cam.sh rm _rf /volume1/cameras/couloir/* rm _rf /volume1/cameras/entree/* le chemin de lancement dans le planificateur: /volume1/archives/scripts/script_cam.sh je suis en root dans le planificateur 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 Le chmod est à faire une seule fois et pas à mettre dans le script ce n'est pas rm _rf mais rm -rf ("-" et pas "_") je te conseille d'ajouter la ligne suivante juste en début du script (juste apres la ligne "#!...") [ -t 0 ] || exec /tmp/script_cam.sh.log 2>&1 comme ça tu aura une trace d'exécution dans "/tmp/script_cam.sh.log" ou tu pourra consulter les éventuelles erreurs je te conseille de d'abord commencer lancer la script à la main pour tester son fonctionnement. 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
411j Posté(e) le 10 février 2014 Auteur Partager Posté(e) le 10 février 2014 voila le script avec la correction #!/bin/sh [ -t 0 ] || exec /tmp/script_cam.sh.log 2>&1 rm -rf /volume1/cameras/couloir/* rm -rf /volume1/cameras/entree/* il fonctionne si je le met dans putty mais il ne marche pas avec le lanceur de taches et je ne trouve pas les logs dans tmp 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
CoolRaoul Posté(e) le 10 février 2014 Partager Posté(e) le 10 février 2014 Oups, c'est moi qui me suis trompé ce coup ci Remplacer: [ -t 0 ] || exec /tmp/script_cam.sh.log 2>&1 par: [ -t 0 ] || exec >/tmp/script_cam.sh.log 2>&1 (il manquait un ">") 0 Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.