Tak jste si asi vĹĄimli, Ĺže jsem zase zaÄal pouĹžĂvat nabodenĂÄka. Po tom co mÄ v pĹedminulĂŠm postu PĹemda hezky uzemnil v mĂŠm rozletu nehledĂc na gramatickou korektnost mĂ˝ch postĹŻ, jsem zaÄal pĂĄtrat po tom, jak do ispellu, coĹž je utilita hojnÄ pouĹžĂvanĂĄ v unixovĂ˝ch systĂŠmech ke kontrole pravopisu, vÄlenit slovnĂk, kterĂ˝ sice bude mĂt ÄeskĂŠ vĂ˝razy, ale bez nabodenĂÄek. Tedy ĂşplnÄ pĹŻvodnÄ mĹŻj zĂĄmÄr byl, Ĺže bych mohl udÄlat slovnĂk, kde by byly jak vĂ˝razy s nabodenĂÄky tak bez a vÄetnÄ anglickĂŠho slovnĂku. JenĹže nic nenĂ tak jednoduchĂŠ jak se zdĂĄ. BohuĹžel hned na zaÄĂĄtek musĂm ĹĂct, Ĺže se mi ani jedno nepovedlo – jak je ostatnÄ vidÄt z toho, Ĺže pĂĹĄu tak jak pĂĹĄu.
JeĹĄtÄ bych chtÄl chtÄl trochu Ĺžbleptnout (hmm tohle slovo asi kontrola pravopisu nebude znĂĄt 😉 o tom proÄ vlastnÄ chci psĂĄt bez nabodenĂÄek. Ono totiĹž je to prostÄ zvyk na rozloĹženĂ klĂĄvesnice. NeuvÄĹitelnÄ mne dopaluje, kdyĹž zmĂĄÄknu klĂĄvesy „< " a mĂsto toho se napĂĹĄe "?". NavĂc tu sou problĂŠmy s qwerty a qwertz kterĂ˝ mÄ doma sice netrĂĄpĂ, ale kdyĹž tĹeba pĂĄĹĄu tohle zrovna v prĂĄci, tak uĹž je to o pĹenastavovĂĄnĂ cizĂho profilu a tak. No ale teÄ k tomu popisu jak jsem se pokouĹĄel neĂşspÄĹĄnÄ udÄlat ten slovnĂk. Tak nejdĹĂve jsem si stĂĄhl nejnovÄjĹĄĂ verzi ÄeskĂ˝ch souborĹŻ pro ispell s nabodenĂÄky, kterĂ˝ se normĂĄlnÄ instaluje v distribucĂch, respektive jejich zdrojovou podobu. Po rozbalenĂ na vĂĄs vypadne nÄkolik souborĹŻ struÄnÄ popsanĂ˝ch v README. Tam jsou i pĹĂkazy pro vytvoĹenĂ tÄch koneÄnĂ˝ch souborĹŻ se kterĂ˝mi pak pracuje ispell. KonkretnÄ:
$ perl -pe ‚print „echo „‚ *.cat | sh – | \
perl -pe ‚s/ +/\n/g; s/[{}\.]//g; s/-/\n/g‘ > czech.a-z
$ ./buildhash czech.a-z czech.aff czech.hash
a ty soubory czech.aff a czech.hash se pak nakopĂrujĂ do /usr/lib/ispell.
Tak jsem prostÄ mezi ty 2 kroky ĹĄoupnul:
$ cstocs il2 ascii czech.a-z > czech.a-z.bez
$ cstocs il2 ascii czech.aff > czechbez.aff
a pĹekompiloval jsem to a zkusil, Ĺže to nefunguje. AFF soubor definuje pravidla pro rĹŻznĂŠ skloĹovĂĄnĂ a pĹechylovĂĄnĂ a jĂĄ nevĂm jakĂŠ vĹĄechny -nĂ. NÄkde jsem Äetl, Ĺže ten ÄeskĂ˝ slovnĂk dokĂĄĹže rozpoznat pĹes 60 miliĂłnĹŻ slovnĂch tvarĹŻ. BohuĹžel to i ty nehĂĄÄkovanĂŠ slova opravovalo na slova s hĂĄÄkovanĂ˝m pĹechylovĂĄnĂm. Tak tĹeba slovo „tride“ mi to opravilo na „tridÄ“. ProstÄ prohra. Musel bych se pouĹĄtÄt hluboko do tÄch definic pĹechylovĂĄnĂ a na to uĹž nĂĄladu nemĂĄm 🙁 TeÄ jsem si jeĹĄtÄ vzpomnÄl: jak jsem hledal nÄco o tomhle tĂŠmatu, tak jsem naĹĄel staĹiÄkou diskusi o vzniku Czech HOWTO kam dva posty poslal MikĹĄĂÄek, kterĂŠho jsem mÄl v uplynulĂŠm semestru na cviÄenĂ z teoretickĂŠ informatiky.
Do Äeho sem se ale naopak pustil je zĂĄlohovĂĄnĂ dĹŻleĹžitĂ˝ch dat na mĂ˝ch poÄĂtaÄĂch. JĂĄ uĹž jsem zĂĄlohu dÄlal zhruba od doby kdy jsem rozjel server. NejdĹĂve jsem si napsal jednoduchĂ˝ skript, kterĂ˝ proste zkomprimoval zadanĂŠ cesty, kaĹždĂ˝ do jednoho souboru s datumem v nĂĄzvu a uloĹžil jsem je na partition, kterou jsem pĹipojoval jen po Äas toho zĂĄlohovĂĄnĂ. Tento typ zĂĄlohy byl ale dobrĂ˝ leda proti neĂşmyslnĂŠmu katastrofĂĄlnĂmu smĂĄznutĂ ÄĂĄsti dat a to jen v pĹĂpadÄ pĹĂkazu typu rm -rf / (prosĂm vĂĄs hlavnÄ ho nezkouĹĄejte pouĹĄtÄt!!! – pokud ho pustĂte jako root tak vĂĄm smĂĄzne tĂŠmÄĹ celĂ˝ obsah disku) a ne proti nÄÄemu jako pĹemazĂĄnĂ partition apod. Ten skript mÄl ale tu nevĂ˝hodu, Ĺže se mi nikdy nepodaĹilo sprĂĄvnÄ nastavit promazĂĄvĂĄnĂ starĂ˝ch zĂĄloh, aby na tom disku zĹŻstĂĄvali pouze ĹeknÄme nejvĂce mÄsĂc starĂŠ zĂĄlohy. BuÄ tedy po zaplnÄnĂ tĂŠ partition pĹestalo zĂĄlohovĂĄnĂ fungovat a nebo jsem Äas od Äasu musel ty zĂĄlohy promĂĄznout ruÄnÄ.
To byl takĂŠ hlavnĂ dĹŻvod proÄ jsem se jednoho dne prostÄ rozhodl nasadit radĹĄi nÄco co napsal nÄkdo jinĂ˝ a takĂŠ jsem brzy naĹĄel co jsem hledal. backup2l je bash skript (tedy funguje skoro ĂşplnÄ vĹĄude), kterĂ˝ navĂc kompletnĂ zĂĄlohu udÄlĂĄ jen nÄkdy a pak po urÄitou pevnÄ definovanou dobu dÄlĂĄ jen zĂĄlohy zmÄn a pĹi restoru ty zmÄny aplikuje na tu pĹŻvodnĂ plnou zĂĄlohu. TĂm se hodnÄ ĹĄetĹĂ mĂstem na disku a pak takĂŠ zĂĄloha probĂhĂĄ velice rychle.
TeÄ uĹž ale mĂĄm doma 2 poĹĂĄd bÄĹžĂcĂ poÄĂtaÄe, takĹže jako velice logickĂŠ mi pĹijde zĂĄlohovat data jedno na disk toho druhĂŠho. Pak bych mohl o vĹĄechna data pĹijĂt jen za pĹedpokladu, Ĺže by oba 2 disky strÄenĂŠ v rĹŻznĂ˝ch poÄĂtaÄĂch vyhoĹely souÄasnÄ. JĂĄ samozĹejmÄ Äas od Äasu dÄlĂĄm zĂĄlohu zĂĄlohy na CD, ale jejich frekvence je tak jednou za pĹŻl roku (vĹždy o prĂĄzdninĂĄch ;).
Na obou systĂŠmech pouĹžĂvĂĄm ten backup2l a synchronizaci budu provĂĄdÄt pomocĂ ftp serveru, kterĂ˝ stejnÄ musĂm mĂt na obou strojĂch rozjetĂ˝ (na APÄku musĂ bĂ˝t kvĹŻli testu downloadu a uploadu). ProblĂŠm ale nastal s tĂm, Ĺže jsem potĹeboval alespoĹ minimĂĄlnĂ zabezpeÄenĂ, tedy aby po pĹihlĂĄĹĄenĂ uĹživatelĂŠ vidÄli vĹĄechno chrootlĂ˝, jinak ĹeÄeno aby nevidÄli celĂ˝ filesystĂŠm, ale jen strom v urÄitĂŠm adresĂĄĹi /var/ftp a anonymnĂ uĹživatel jen /var/ftp/pub. Docela rychle jsem zjistil, Ĺže wu-ftpd (to je nĂĄzev toho ftp serveru, kterĂ˝ jsem tam rozjel) se dĂvĂĄ do /etc/passwd a chrootne to tam, kde v cestÄ homedir je ĹetÄzec /./ jenĹže kdyĹž jsem to tak nakonfiguroval tak to tak nefungovalo. Nakonec se mi podaĹilo chrootnout anonymouse pomocĂ souboru /etc/wu-ftpd/ftpaccess kde je pĹĂmo konfigurace:
anonymous-root /var/ftp/pub
No a nakonec jsem pĹiĹĄel na to, Ĺže i pro ostatnĂ uĹživatele je v tomto souboru dĹŻleĹžitĂŠ nastavenĂ bez kterĂŠho to co napĂĹĄete do passwd nebude mĂt ŞådnĂ˝ vliv. KonkrĂŠtnÄ totiĹž musĂte z reĂĄlnĂŠho ĂşÄtu v systĂŠmu (tedy takovĂŠho kterĂ˝ mĂĄ ten zĂĄznam v passwd) udÄlat guest uĹživatele a to tak, Ĺže do ftpaccess souboru pĹidĂĄte ĹĂĄdek:
guestuser *
No a uĹž to funguje tak jak mĂĄ. BTW pĹiĹĄel jsem na to, Ĺže dĹĂve jsem to mÄl na tom internetovĂŠm serveru nakonfigurovanĂŠ blbÄ, takĹže se opravdu divĂ˝m, Ĺže to nÄkdo nezneuĹžil pro svoje ĂşloĹžiĹĄtÄ dat. No na druhou stranu kdyĹž se podĂvĂĄm na upload, kterĂ˝ si platĂm, tak se zase tak moc nedivĂm 😉
————————————————————
FAUX PAS S HESLEM ROOTA
Na konec se vĂĄm moji milĂ˝ dva moĹžnĂĄ 3 ÄtenĂĄĹi svÄĹĂm s jednou pĹĂhodou vĂĄĹžĂcĂ se k mĂŠmu minulĂŠmu postu. TotiĹž jak jsem byl u toho svĂŠho kĂĄmoĹĄe, tak mi zĹĂdil ĂşÄet roota (nebo lĂŠpe ĹeÄeno zĹĂdil jsem si ho sĂĄm na jeho nabĂdku, protoĹže jsem uĹž s vĂce root ĂşÄty na jednom kompu mÄl zkuĹĄenosti z routeru).
UdÄlĂĄ se to pĹĂkazem vipw coĹž je vim, nakonfigurovanĂ˝ tak, Ĺže se vĂĄm nejdĹĂve otevĹe passwd kam pĹidĂĄte ĹĂĄdek s uid a gid 0 a nÄjakĂ˝m jmĂŠnem a pak to samĂŠ vlastnÄ udÄlĂĄte s shadow.
Pak si zmÄnĂte heslo pĹĂkazem passwd [novyroot] a pak se pĹihlĂĄsĂte buÄ rovnou, nebo z shellu nÄjakĂŠho obyÄejnĂŠho usera pomocĂ
$ su [novyroot]
No a jĂĄ sem si toho roota u nÄj vytvoĹil pod jmĂŠnem nax a heslem kterĂŠ doma pouĹžĂvĂĄm na roota. SamozĹejmÄ sem v tom mÄl dÄsnej gulĂĄĹĄ, protoĹže sem tÄmi roky zvyklĂ˝, Ĺže kdyĹž do login napĂĹĄu nax, tak pĂĹĄu heslo obyÄ usera. No a tak se stalo, Ĺže jsem si na konci dne po vĹĄech tÄch peripetiĂch, kterĂŠ jsem popsal minule, chtÄl heslo na ten mĹŻj ĂşÄet zmÄnit na to, kterĂŠ pouĹžĂvĂĄm doma na obyÄ ĂşÄet. Inu stalo se no a ve stĹedu si takhle sedĂm v prĂĄci a proÄĂtĂĄm si svojĂ poĹĄtu (pĹes ssh v terminĂĄlu pomocĂ mutta) a tu mi pĹiĹĄel email, Ĺže se ten mĹŻj kĂĄmoĹĄ nemĹŻĹže dostat na roota, jestli jsem mu nĂĄhodou v tu nedÄli nezmÄnil heslo!
VÄera jsem ĹĄel kolem, tak jsem mu brnknul a stavil jsem se. No a co myslĂte? Jeho root mÄl moje heslo, kterĂŠ pouĹžĂvĂĄm na obyÄejnĂŠho usera a ten mĹŻj ĂşÄet co sem si u nÄj vytvoĹil mÄl heslo, kterĂŠ doma pouĹžĂvĂĄm na roota. Jinak ĹeÄeno: to heslo sem nezmÄnil sobÄ ale jemu. A jak k tomu doĹĄlo? Velice prostÄ. ProstÄ jsem tak jak sem zvyklĂ˝ napsal pĹĂkaz passwd (tentokrĂĄt je to pĹĂkaz, ne konfiguraÄnĂ soubor) a dvakrĂĄt zadal novĂŠ heslo, na kterĂŠ se mÄ to nakonec ptalo. Nojo, jenĹže tohle funguje pro uĹživatele s vlastnĂm uid. Za normĂĄlnĂch okolnostĂ kdyĹž uĹživatel pustĂ tenhle pĹĂkaz, tak si zmÄnĂ heslo. JedinÄ root, kdyĹž zmÄnĂ tenhle pĹĂkaz s parametrem jmĂŠna uĹživatele, tak zmÄnĂ heslo tomu uĹživateli.
JenĹže kdyĹž sou 2 rooti, kteĹĂ majĂ tedy stejnĂŠ uid 0 a jen se jinak jmenujĂ jejich ĂşÄty, tak pro zmÄnu hesla toho roota kterĂ˝ se nejmenuje root se musĂ dĂĄt jako parametr jeho jmĂŠno i kdyĹž to nakrĂĄsnÄ (tak jako jĂĄ) pouĹĄtĂte z jeho konzole. No prostÄ bych si pĹĂĹĄtÄ aĹž nÄkde zas budu mÄnit nÄjakĂŠ heslo mÄl dĂĄvat dobrĂ˝ pozor na to co to vlastnÄ mÄnĂm.
Napsat komentář
Pro přidávání komentářů se musíte nejdříve přihlásit.