PowerScale OneFS: Hur man redigerar Crontab
Summary: Crontab är ett verktyg som används för schemaläggning av uppgifter och automatisering av uppgifter.
Instructions
Procedur
Visa crontab-filerna.
Kör lämpligt kommando för att visa antingen crontab-filen för hela klustret eller crontab-filen för den lokala noden.För hela klustret:
cat /etc/crontabFör crontab för lokal nod:
cat /etc/local/crontab.local
TreeDeleteden /etc/local/crontab.local filen måste skapas. Se nedan för mer information.
OneFS genererar
/etc/crontab fil. Ett exempel på crontab-post visas nedan.
#minute hour mday month wday who command # # Nightly Health check update 0 1 * * * root /usr/bin/isi_healthcheck_update -s
I följande tabell förklaras kolumnrubrikerna:
|
Rubriknamn |
Tillåtet värde |
Tillåtna specialtecken |
|---|---|---|
|
minut |
0-59 |
* / , |
|
timme |
0-23 |
* / , |
|
mday mday |
Dag i månaden, 1-31 |
* / , ? L W |
|
månad |
1-12 |
* / , |
|
007:002 |
veckodag (0-6, söndag =0) |
* / , ? L W |
|
Vem |
behörighetsgrupp, till exempel rot |
Ej tillämpligt |
|
befallning |
Kommandon som ska köras |
Ej tillämpligt |
I den här tabellen förklaras specialtecknen:
|
Specialtecken |
definition |
|---|---|
|
* |
Asterisker används för att ange cron-uttrycksmatchningarna för alla värden i fältet. Så för månadsfältet skulle varje månad anges. |
|
/ |
Snedstreck används för att beskriva ökningar av intervall. Till exempel skulle 3-59/15 för minuter indikera den tredje minuten i timmen och var 15:e minut därefter. |
|
% |
Procenttecken ändras till radbrytningstecken i kommandon. |
|
, |
Kommatecken används för att avgränsa objekt i en lista. Till exempel TOR, FRE, LÖR |
|
- |
Bindestreck används för att definiera intervall, till exempel 200–205. |
|
L |
Står för "sista". Används med fältet veckodag för att ange konstruktioner som "förra fredagen" som skulle vara 5L. |
|
W |
Används för fältet dag i månaden för att ange en veckodag närmast den angivna dagen. Till exempel skulle 14W vara den närmaste vardagen till den 14:e i månaden. |
|
# |
Används för fältet veckodag och följs av ett tal mellan 1 och 5 för att ange konstruktioner, till exempel den andra måndagen i en viss månad. |
|
? |
Används i stället för * för att lämna dag i månaden eller veckodag tom |
/etc/crontab ges instruktioner om var du ska lägga till poster eller göra ändringar för anpassning. Informationen /etc/local/crontab.local filen och /etc/mcp/override/crontab Filen har skapats av användaren, så den har inga instruktioner.
Redigera crontab-filerna.
/etc/crontab filen får INTE redigeras direkt.
Att lägga till poster eller ändra poster i den här filen måste göras i
/etc/mcp/override/crontab fil för hela klustret och /etc/local/crontab.local för lokal nod.
Crontab-poster i
/etc/local/crontab.local -filen inte överlever en OneFS-uppgradering, men poster i /etc/mcp/override/crontab filen bevaras.
Om den
/etc/local/crontab.local filen finns inte, använd kommandot nedan för att skapa:
touch /etc/local/crontab.localPå samma sätt, om
/etc/mcp/override/crontab filen finns inte, använd kommandot nedan för att skapa:
touch /etc/mcp/override/crontab
cp /etc/local/crontab.local /etc/local/crontab.local.backup
En post kan läggas till direkt genom att köra följande kommando:
vi /etc/local/crontab.localOch på liknande sätt:
vi /etc/mcp/override/crontabKlistra in eller skriv den obligatoriska posten enligt exemplet nedan:
Så här lägger du till
treedelete.sh att köra kl. 11 varje dag:
0 23 * * * root /bin/sh /ifs/data/Scripts/treedelete.sh
Obs! Blankstegen mellan posterna skapas med hjälp av tabbtangenten. Asteriskerna anger att cron-uttrycket matchar för alla värden i fältet. I föregående exempel skulle det vara varje dag i månaden, varje månad på året, varje dag i veckan.
Användande isi_ropc I crontab-poster
Lägga isi_ropc Till en crontab-post körs det skickade kommandot högst en gång per kluster per version, oavsett hur många noder det körs på. Utan en flagga skulle detta tillåta att kommandot körs på noden med lägst DevID. Du kan också lägga till -s -flaggan skulle köra kommandot på en slumpmässig nod. Ett exempel på en post finns nedan:
# rotate log files on /ifs, too -- one node per cluster at a time
15,45 * * * * root isi_ropc newsyslog -f /etc/newsyslog.ifs.conf
Lägg till flera poster i en crontab-fil.
Om en crontab-fil kräver flera poster från en annan fil lägger du till jobbposten. I det här exemplet där path_to_file_with_entries är den fil som innehåller de poster som ska importeras:
cat /ifs/<path_to_file_with_entries> >> /etc/local/crontab.local
Verifiera poster i en crontab fil.
Kontrollera att posterna har lagts till i crontab filer:
tail /etc/local/crontab.local
tail /etc/crontabUtdata som liknar följande visas:
tail /etc/crontab # X: ---------------- # X: LOCAL # X: This section contains entries local to this node # X: only. This section is populated from the contents of # X: the file /etc/local/crontab.local if it exists. # X: ---------------- 0 23 * * * root /bin/sh /ifs/data/Scripts/treedelete.sh tail /etc/local/crontab.local 0 23 * * * root /bin/sh /ifs/data/Scripts/treedelete.sh
Återställ ändringar i crontab-filen:
Med de här stegen återställs crontab.local till den säkerhetskopia som skapades i föregående avsnitt.
- Öppna en SSH-anslutning på en nod i klustret och logga in med rotkontot .
- Kör följande kommando för att kopiera och sedan byta namn på den ursprungliga säkerhetskopian av
crontab.localfil:
cp /etc/local/crontab.local.backup /etc/local/crontab.local
Additional Information
Före OneFS 9.5, /etc/mcp/override/crontab.smbtime användes för att bevara poster genom uppgraderingar.
Det har sedan dess fastställts att från och med OneFS 9.5 och senare användning, /etc/mcp/override/crontab Istället för /etc/mcp/override/crontab.smbtime.