This is the old XigmaNAS forum in read only mode,
it will taken offline by the end of march 2021!



I like to aks Users and Admins to rewrite/take over important post from here into the new fresh main forum!
Its not possible for us to export from here and import it to the main forum!

[RESOLU] Petite question de script

French community

Moderators: velivole18, ernie, mtiburs

Forum rules
Set-Up GuideFAQsForum Rules
Post Reply
ZiEg
experienced User
experienced User
Posts: 135
Joined: 12 May 2013 20:20
Status: Offline

[RESOLU] Petite question de script

Post by ZiEg »

Bonjour,

j'ai un petit trouble qui commence à m'agacer :
ayant des utilisateurs MAC OS sur le NAS, des fichiers ._* sont créés (en gros chaque fichier sur le NAS a son pendant portant le même nom précédé de ._). Ceci est typiquement dû à MAC OS et rien ne peux y être fait.
Pour régler ce problème, une fois connecté en SSH, en rentrant

Code: Select all

find . -type f -name "._*" -exec rm "{}" \;
tous les fichiers ._* sont effacés.

Pour automatiser la chose je crée un fichier remove.sh que je place dans /mnt/Disque1 (/mnt/Disque1/remove.sh) dans lequel je place le code précédent qui fonctionne à merveille. Je fais un chmod -R 777 sur le fichier remove.sh pour le rendre executable par tous les utilisateurs.

Dans le WebGui, sous Système¦Avancé¦Cron, je rentre /mnt/Disque1/remove.sh dans la case commande, root dans la case utilisateur.
Quand j'enregistre et que j'execute..... rien ......

Merci de m'expliquer ce que j'aurais pu rater
Merci
Last edited by ZiEg on 27 Nov 2014 16:39, edited 1 time in total.
NAS 1 : Version 11.2.0.4 - Omnius (revision 6625) x64-full on Intel(R) Pentium(R) CPU G840 @ 2.80GHz
MSI B75A-G43 (MS-7758) w/ BIOS American Megatrends Inc. version: V10.5 10/12/2012

User avatar
velivole18
Forum Moderator
Forum Moderator
Posts: 647
Joined: 14 Jul 2012 20:23
Location: France
Status: Offline

Re: Petite question de script

Post by velivole18 »

Bonjour,

Moi je mettrais en 1ère ligne l'indicateur du shell utilisé :
#! /bin/sh
et sur la 2de ligne une ligne vide

et à partir le la 3ème ligne le code que l'on veut exécuter, donc pour toi le find ....
Sinon, je pense que les guillemets autour des accolades ne sont pas nécessaires ...

Tu peux faire le test aussi en lançant le script à partir du menu "Advanced|Command" pour voir ce que cela donne.

Cordialement.
11.2.0.4 - Omnius (revision 6026) x64-embedded
111909 RSDT1411 AMD Athlon(tm) 64 Processor 4000+ 4096MiB RAM - HDD 2 x 6 To in ZFS mirroring + 2 x (2 x 4To in ZFS mirroring) - SSD 32Go - UPS EATON Ellipse MAX 1100.

ZiEg
experienced User
experienced User
Posts: 135
Joined: 12 May 2013 20:20
Status: Offline

Re: Petite question de script

Post by ZiEg »

J'ai ajouter

#! /bin/sh en 1ere ligne de mon fichier....

Pas de changement toujours la meme chose
NAS 1 : Version 11.2.0.4 - Omnius (revision 6625) x64-full on Intel(R) Pentium(R) CPU G840 @ 2.80GHz
MSI B75A-G43 (MS-7758) w/ BIOS American Megatrends Inc. version: V10.5 10/12/2012

User avatar
velivole18
Forum Moderator
Forum Moderator
Posts: 647
Joined: 14 Jul 2012 20:23
Location: France
Status: Offline

Re: Petite question de script

Post by velivole18 »

Bonjour,

Pardon, j'ai introduis une petite erreur dans ma ligne.
Essaie d'enlever l'espace entre #! et /bin/sh voir si cela fonctionne mieux.
#!/bin/sh

Cordialement.
11.2.0.4 - Omnius (revision 6026) x64-embedded
111909 RSDT1411 AMD Athlon(tm) 64 Processor 4000+ 4096MiB RAM - HDD 2 x 6 To in ZFS mirroring + 2 x (2 x 4To in ZFS mirroring) - SSD 32Go - UPS EATON Ellipse MAX 1100.

ZiEg
experienced User
experienced User
Posts: 135
Joined: 12 May 2013 20:20
Status: Offline

Re: Petite question de script

Post by ZiEg »

Alors j'ai eu la réponse dans le topic général :

Code: Select all

find . -type f -name "._*" -exec rm "{}" \;
la commande find va ëtre executée dans le répertoire local (à cause du point après la commande find). Le script s'executant à priori dans /usr/local/www, mes fichiers indésirables (qui se trouvent dans /mnt/Disque1/...) ne seront donc pas trouvés ni éliminés. le script correct est donc

Code: Select all

find /mnt/Disque1 -f name "._*" -exec rm "{}"\;
Testé dans Avancé¦Commande ca fonctionne. Reste a tester en version script sous cron

:) :)
NAS 1 : Version 11.2.0.4 - Omnius (revision 6625) x64-full on Intel(R) Pentium(R) CPU G840 @ 2.80GHz
MSI B75A-G43 (MS-7758) w/ BIOS American Megatrends Inc. version: V10.5 10/12/2012

User avatar
velivole18
Forum Moderator
Forum Moderator
Posts: 647
Joined: 14 Jul 2012 20:23
Location: France
Status: Offline

Re: Petite question de script

Post by velivole18 »

Bonjour,

Heureux que la solution soit trouvée !

Mais que suis-je bête, la solution était assez évidente, surtout que j'utilise la commande find régulièrement à titre professionnel et privé, mais comment n'ai-je pas vu ce point là pour lequel je me fais aussi souvent avoir !!! :roll:
Attention aussi au temps d'exécution du script par rapport au délai entre 2 exécutions du cron.

Ne pas oublier de mettre [RESOLU] dans le titre du 1er post si tout fonctionne correctement. ;)

Cordialement.
11.2.0.4 - Omnius (revision 6026) x64-embedded
111909 RSDT1411 AMD Athlon(tm) 64 Processor 4000+ 4096MiB RAM - HDD 2 x 6 To in ZFS mirroring + 2 x (2 x 4To in ZFS mirroring) - SSD 32Go - UPS EATON Ellipse MAX 1100.

ZiEg
experienced User
experienced User
Posts: 135
Joined: 12 May 2013 20:20
Status: Offline

Re: Petite question de script

Post by ZiEg »

velivole18 wrote: Attention aussi au temps d'exécution du script par rapport au délai entre 2 exécutions du cron.
J'ai programmé le cron sur ce script pour être lancé toute les 6 heures..... je pense qui'il ne devrait pas y avoir de soucis de ce coté là ;)
NAS 1 : Version 11.2.0.4 - Omnius (revision 6625) x64-full on Intel(R) Pentium(R) CPU G840 @ 2.80GHz
MSI B75A-G43 (MS-7758) w/ BIOS American Megatrends Inc. version: V10.5 10/12/2012

Post Reply

Return to “Français”