Hi,
Adott ez a script:
-rwx------. 1 root root 135 Oct 15 12:00 /backup/purge.sh
#!/bin/bash
volume=`echo "list volumes" | bconsole|grep -i "Append\|Full"|awk '{print $4}'`
echo "purge volume=$volume yes" | bconsole
Ha lefuttatom manualisan, akkor lefut.
Ha beteszem crontabba, valamiert nem fut le, pedig a cron logban benne van, hogy futtatna.
Oct 15 16:07:01 sdfdsfdsf CROND[36326]: (root) CMD (/backup/purge.sh)
Ez lenne, ahogy futtatni szeretnem:
00 23 * * 6 [ "$(date '+\%d')" -le 07 ] && /backup/purge.sh
De egyelore siman se fut le:
07 16 * * * /backup/purge.sh
Igy nez ki, ha lefuttatom manualisan:
/backup/purge.sh
Connecting to Director weewr:9101
1000 OK: 1 werewrewrewr Version: 7.0.5 (28 July 2014)
Enter a period to cancel a command.
purge volume=Vol-0001 yes
This command can be DANGEROUS!!!
It purges (deletes) all Files from a Job,
JobId, Client or Volume; or it purges (deletes)
all Jobs from a Client or Volume without regard
to retention periods. Normally you should use the
PRUNE command, which respects retention periods.
Automatically selected Catalog: MyCatalog
Using Catalog "MyCatalog"
1 File on Volume "Vol-0001" purged from catalog.
There are no more Jobs associated with Volume "Vol-0001". Marking it purged.
- 1373 megtekintés
Hozzászólások
Egy ilyet tuti megpróbálnék:
#!/bin/bash
set -x
{
volume=`echo "list volumes" | bconsole|grep -i "Append\|Full"|awk '{print $4}'`
echo "purge volume=$volume yes" | bconsole
} >/tmp/debug.out 2>&1
♲♻♲
- A hozzászóláshoz be kell jelentkezni
++ awk '{print $4}'
++ grep -i 'Append\|Full'
++ bconsole
/backup/purge.sh: line 4: bconsole: command not found
++ echo 'list volumes'
+ volume=
+ bconsole
/backup/purge.sh: line 5: bconsole: command not found
+ echo 'purge volume= yes'
Lehetseges, hogy teljes eleressel kellene megadnom? Kiprobalom, hogy meg tudom-e adni pipe-pal.
Szerk: Tokeletes, koszonom. Teljes eleresi ut kellett.
- A hozzászóláshoz be kell jelentkezni
Abból baj nem lehet ;)
Vagy a PATH-t megfelelően beállítani.
♲♻♲
- A hozzászóláshoz be kell jelentkezni
Teljes eleresi ut kellett.
Akkor lesz majd ismét furcsa viselkedés, ha egy szkriptet akarsz hívni (amiben elérési útvonal nélkül vannak a parancsok).
- A hozzászóláshoz be kell jelentkezni
Marmint leforditva jobb megoldas lenne a PATH megvaltoztatasa?
- A hozzászóláshoz be kell jelentkezni
Ja, igen, pont a lényeget elfelejtettem odaírni :)
- A hozzászóláshoz be kell jelentkezni
Egész véletlenül a /backup nem egy noexeckel mountolt filesystem?
- A hozzászóláshoz be kell jelentkezni
"Ez lenne, ahogy futtatni szeretnem:
00 23 * * 6 [ "$(date '+\%d')" -le 07 ] && /backup/purge.sh
De egyelore siman se fut le:
07 16 * * * /backup/purge.sh"
Mintha hiányozna a felhasználó nem?
07 16 * * * root /backup/purge.sh
így mit csinál?
- A hozzászóláshoz be kell jelentkezni
Szerintem nem a system crontab-ba rakja bele :)
- A hozzászóláshoz be kell jelentkezni
Ugyanazt csinalta.
- A hozzászóláshoz be kell jelentkezni
man crontab, és nézz utána a százalékjel kezelésének :-P
- A hozzászóláshoz be kell jelentkezni
crontab elejébe
PATH=/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin
hasznos lehet
~~~~~~~~
deb http://deb.uucp.hu/ wheezy yazzy repack
- A hozzászóláshoz be kell jelentkezni