Category Archives: software

MySQL: unauthenticated user

Nedávno jsem narazil na zajímavý problém: MySQL na jednom nepříliš vytíženém serveru začalo vracet chybu Too many connections, i když z počet spojení běžně stačí s rezervou. Po chvilce pátrání jsme s programátorem zjistili, že jednou za čas se tam objeví spousta připojení ze vzdáleného (legitimního) serveru označená jako "unauthenticated user". Výpis MySQL procesů byl pak plný takovýchto řádek:

| 263718676 | unauthenticated user | 10.0.0.2:51896 | NULL    | Connect     |   NULL | login  | NULL |

Po chvilce pátrání jsem zjistil, že nejde o útok - ani nevíte jaká je to po pár zkušenostech úleva. Chyba byla ve špatné komunikaci s DNS servery, které dostatečně rychle neodpovídaly.

MySQL se DNS serverů dotazuje téměř při každém uživatelském loginu (používá sice nějakou vnitřní cache, ale asi to není žádná bomba). Využívají se k tomu funkce gethostbyaddr(), pomocí které se zeptá, jaký záznam na této IP vězí. Potom nasadí gethostbyname() a porovná vrácenou IP adresu s původní (více rozepsané je to v dokumentaci). Jednoduché a účinné do okamžku, kdy se zhorší komunikace právě s DNS servery. Nabízejí se dvě možnosti, jak to vyřešit:

  • Použijte přepínač --skip-name-resolve. Hodí se hlavně v případě, že dopředu nevíte, odkud se k serveru klienti připojují. S použitím ale musíte upravit všechny záznamy pro povolené uživatele, tak aby ve sloupci Host byly jen IP adresy nebo 'localhost'.
  • Zapište záznamy s klienty do /etc/hosts souboru. Funkce gethostbyaddr() i gethostbyname() se nejdříve podívají právě do tohoto souboru než aby se dotazovaly jiných serverů. Tato možnost se hodí, pokud máte pár jen statických klientů.

Třeba to někomu pomůže..

Sphinx 2.0.2 beta RPM (CentOS/RHEL 6)

Omlouvám se jen česky mluvícím návštěvníkům, na tomto článku jsem trošku potrénoval cizí jazyk..

Sphinx 2.0.2 beta is out from November 2011. Becouse there aren't any packages for CentOS (RHEL) 6, I prepared one.

Sphinx is an open source full text search server, designed from the ground up with performance, relevance (aka search quality), and integration simplicity in mind. It's written in C++ and works on Linux (RedHat, Ubuntu, etc), Windows, MacOS, Solaris, FreeBSD, and a few other systems.

You can download it here (RPMs for x86_64 and i686, SRPM & SPEC files included): http://static.stderr.cz/rpms/sphinx-2.0.2-beta/.

Installation with yum is really simple:

$ yum --nogpgcheck localinstall sphinx-2.0.2-1.beta.x86_64.rpm

If you'll find some problem with package (not with Sphinx itself; their bugzilla is here), use comments below or send me a message via contact form and I'll try to do something with it (or not :) ). Feel free to use this package as you want but I'm distribute it without any warranties (eg. I didn't test it with SElinux).

Fedora 15 s Gnome 3 jsou pro mě zatím nepoužitelné

Fedora stickerBude to jen kratší zápisek - titulek vlastně říká skoro vše. Hm, trošku kecá, Fedora 15 s novým Gnome mi bude fungovat minimálně na notebooku. Tak to rozeberu..

Dnes jsem se odhodlal a sáhl po live CD Fedory 15 Beta, abych to nějak otestoval na pracovním počítači. Původně jsem měl v plánu porovnat Gnome 3 a ubunťácký Unity (z Ubuntu 11.04 Beta2, o tom se tu ani zmiňovat nebudu) a dopadlo to tak, že ani jedno pořádně nejede. Důvodem jsou moje dva monitory a (pravděpodobně) grafická karta od ATI. Damn!

Již dopředu jsem tušil, že bude problém s korektním zobrazením Gnome Shell. Podle bugu #697076 totiž Gnome někdy korektně nenaběhne se dvěma připojenými monitory. A bum, i u mě naběhlo v tzv. fallback módu, tedy v módu, kdy je gnome bez svých fičurek a podobá se spíše dvojkové verzi.

Ok, v práci mi pc běží skoro furt, restartuji ho jen po nějakých aktualizacích cca jednou za 14 dní. Odpojit monitor, najet do Gnome Shell, připojit monitor a je to. Není. Systém sice s jedním monitorem v pořádku najede, po připojení druhého ale neudělá ani prd. Ok, čert to vem. Nastavím moniory manuálně. Bohužel. Po spuštění konfiguračního rozhraní pro displeje systém zkolabuje, monitory zhasnou a je konec. Nahlásil jsem to tedy jako bug #699793 a nástup Gnome 3 pomalu odkládám na neurčito..

Gnome 3 & CentOS 5.6

Ty dvě věci z nadpisu nemají (téměř) nic společného, jen se mi nechce psát oslavný článek pro každou z nich zvlášť. Takže..

Jupí, CentOS 5.6!

Ještě nevyšlo oficiální oznámení, ale není žádným tajemstvím, že CentOS 5.6 se šíří po mirrorech. Jeho vývoj (rozuměj přepracování zdrojových kódů RHEL 5.6) trval celé 3 měsíce, což by nebyla nijak dlouhá doba (vývojáři to přece dělají ve volných chvilkách), nebýt toho, že během této doby nevycházely ani kritické a bezpečnostní aktualizace. Vše je zahrnuto až v tomto vydání, takže s chutí do aktualizace vašich milých serverů a desktopů.

O startu tlačení nového CentOSu na mirrory se nenápadně zmínil Karanbir na Twitteru
[blackbirdpie url="https://twitter.com/#!/CentOS/status/55394563598192641"]

Jupí, Gnome 3.0!

V tomto případě to vlastně není tak úplně jupí; jsem z nového vydání dost v rozpacích. Je pěkné, že se někdo odvážil vnést čerstvý vítr do okeních manažerů, ale až tak..? Vzpomínáte na kaBoom, který přineslo KDE 4? Jak uživatelé nadávali a prchali? Už jsem to prohlásil na Twitteru a zopakuju to i tady: ke Gnome 3 se dostanu s novou Fedorou (15) Lovelock a dám mu pár hodin až dnů. Pokud si během této doby nezvyknu, přijde přechod na, v dnešní době už propracovanější, KDE (což taky nebude moc lehké). Je fakt, že jsem si na nové prostředí šáhl a to v době první Alpha verze Fedory 15, kdy se testovalo právě Gnome, ale názor jsem si asi nestačil udělat. Je tu pár věcí, které mi vyhovují (rychlý přístup k aplikacím pomocí lišty, je to rychlé, je to pěkné, je to nové), ale má to i pár mušek, které jsou asi spíše o zvyku.. Nuž uvidíme.

Co všechno Gnome 3 nabízí nového se můžete dozvědět na webu k tomu určeném: www.gnome3.org.

I am GNOME

Fedora 14 a Firefox 4

Fedora a FirefoxKdyž už jsem se včera zmínil o tom, že vyšel dlouho očekávaný Firefox 4, doplním ještě informaci, jak ho dostat do mé oblíbené linuxové distribuce - do Fedory. Je to na pár (=2) příkazů, protože RPM balíček je už připraven (kde jsou ty časy, kdy jste si museli všechno kompilovat sami).

O balíček se postaral remi, který ho přidal do svého repozitáře. Nejprve si jej tedy musíte připravit (pokud už máte v systému tento repozitář přidán, pak to samozřejmě není třeba):

su-c "rpm-UHV http://rpms.famillecollet.com/remi-release-14.rpm"

Balíček je přejmenován z firefox4 na firefox, stávající verze (3.6) bude tedy přepsána touto! Pokud už Firefox máte, tak už jej stačí pouze aktualizovat (s povoleným repozitářem):

su-c "yum --enablerepo=remi update firefox"

Hotovo.