Do napisania tego sklonilo mnie jedno stwierdzenie naszego kolegi z forum: "wiem ale nie powiem". Dla mnie to zwykle chamstwo - wiesz i nie powiesz? wiec nie pisz tego. Zreszta, ty tez kiedys zaczynales i nic bys nie umial jakby ludzie ciagle ci mowili: wiemy ale nie powiemy. Nie siedzialbys tu z nami tylko gryzl druty w elektrowni - dobra, koniec wstepu.
Zaczynamy:
Dlaczgo cron? Ano dlatego ze latwiej, szybciej i sciaga nam z glowy klikanie. Autor silnika to lebski facet - wziol pod uwage wiele spraw i chyle czola przed jego rozwiazaniami. Co prawda kuleja jezyki, ale jak sie robi takie cos zawsze wywala gdzies blad.
1. Jak uruchomic crona?
Ano trzeba miec konto shell (lub cpanel - tu opisze shella). Logujemy sie na konto przez shela (polecam: putty http://www.chiark.greenend.org.uk/~sgtatham/putty/)
Jesli chcemy zobaczec czy sa juz wpisy w cron wpisujemy komende: crontab -l - i mamy pokazana zawartosc calego crona. Jesli nic nie ma (na ogol nie ma) nie widzimy nic, tylk mamy sama infrmacje ze to cron.
2. Jak dodac wpis do crona?
Wpisujemy w shellu: crontab -e
Otwiera sie nam edytoek crona i wpisujemy linie:
00 12,15,18,21 * * * /tutj dokladna sciezka do pliku tam gdzie jest ra/cron_reset_gra
co to oznacza? a no tak:
te magiczne cyfry to znak dla crona ze o pelnej godzinie (00) ma wykonywac plik "cron_reset_gra" a ma to robic o godzinach: 12,15,18,21
czyli o tych godzinach bedzie wykonywany ten plik ktory odpowiada za robienie resetow.
Nastepnie dodajemy wpis (zapisujemy) poprzez: CTRL+K+X (trzymamy control, wciskamy i trzymam K i wciskamy X).
Wiec samego crona mamy z czapki.
3. Co to za plik: cron_reset_gra i po co on?
Ano ten plik jest skryptem, ktory uruchomi nam resecik. Plik ten poleam trzymac w katalogu z gra zeby bylo latwiej.
4. Co w tym pliku?
W tym pliku umieszczamy wpis tak aby cron wiedzial co uruchomic o tych zadanych porach.
Przykladowy wyglad tego pliku:
#!/bin/bash
lynx -dump http://www.adrestwojejgry.pl/reset.php?step=revive 1>/dev/null
2>/dev/null
Ten wpis wykonuje reset NIE PELNY - wiec nie mylic z pelnym (...step=reset).
Te magiczne znaki na poczatku musza byc po to zeby cron wiedzial ze to program (skrot myslowy zeby nie zapetlac).
Czyli znaczki musza byc.
To cos po linku to informacja gdzie maja byc przesylane wyniki wykonania tego skryptu - tu w kosmos - czyli nigdzie. Polecam. Inaczej za kilka tygodni sie zdziwicie. No mozna wyslac sobie efekt na maila: ello, zrobilem resecik ;)
ale to nei ten temat.
Teraz c o czym malo kto mowi:
Po tych znaczkach musi byc znacznik konca linii ENTER, po wpisie (linku) i 1>/dev/null ENTER!!!
Wazne, inaczej nic sie nie zrobi - dlaczego? Ano systemik (linux) nie wykona zadania bo traktuje to jako nie zadanie (hmm). Enter informuje go ze ROZKAZ WYKONANIA jest pelny - czyli jak jest enter to wykona, jak nie ma to nie widzi zadania. Wiec - MA BYC ENTER!
4. UWAGI
Uwaga - plik z zadaniem (cron_reset_gra) musi miec prawa do wykonywania - czyli CHMOD ustawmy jako wykonywalny.
5. Zakonczenie
TO wszystko co trzeba wiedziec minimalnie aby uruchomic samemu crona. Macie tu konkretne przyklady i wystarczy po prostu skopiowac i postepowac wg. instrukcji. Jakbyo to pisac na forum - FORUM JEST PO TO ABY WYMIENIAC UWAGI I POMAGAC - a nei po to zeby wysmiewac kogos (tu przytyk do tego kolegi wszechwiedzacego).
Ja tez nie lubie PYTALSKICH co drecza co minute, ale albo im sie pomoze i zyska sie kumpla, albo ich obrazi i zyska wroga. Wole kumpla bo jak mam robote i sie nie wyrabiam to mu dam, niech sie odwdzieczy a ja zarobie i on. Ja go nauczylem, wiec bedzie robil tak jak ja.
Im wiecej nas bedzie "mieszalo" z tym kodem Vallheru, tym lepsze to wyjdie i zyska wieksza polularnosc - a dzieki takiemu koledze niewiele mozna zdzialac. Umiesz i nie powiesz? to po cholere siedzisz? Idz na lake z transparentem: wiem wszytko. Dobra, koniec tego.
sysop dnia styczeń 07 2006 04:50:57
to oczywiscie moj tekst (wiem, ale nie powiem), ale chodzilo o nadawanie chmodow, i gosc wkazal sie zwykla ignorancja