• Windows

    Memtest z příkazové řádky systému Windows

    Proč memtest z cmd? Jistěže vím, že existují super programy jako je Memtest86+, ale ty vyžadují bootovatelné médium. Stalo se mi u podivuhodných tabletů do škol, že prakticky nelze nabootovat z čehokoliv jiného, než z integrovaného SSD. Důvod je jednoduchý – mechaniku to nemá, USB to nemá (tedy má, ale je na klávesnici, kde se USB aktivuje pravděpodobně až s nějakým divotvorným driverem), rozebírat to nebudu. Pravda, snad by se dalo nahrát něco na xD kartu a z té bootovat, nicméně nebyla žádná po ruce 🙁 Naštěstí tam ty Windows ještě trochu jely – na obrazovce s možností obnovy systému Windows se mi podařilo přes Shift+F10 spustit příkazový řádek, odkud…

  • Linux Server

    Postfix a amavis. Jak nainstalovat a nakonfigurovat.

    Postfix a amavis Proti spamu se dá bojovat lecjak, minule jsem zmiňoval graylisting, dnes se budu věnovat amavisu. To je taková hezká aplikace, která vytváří mezivrstvu mezi MTA a SpamAssassin, zároveň umí třeba i prohnat mail skrz antivirus. Je to vlastně jen o lenosti správce, protože by se potřebné dalo vymyslet i bez amavisu, nicméně když už ta možnost je … Instalace balíků Postfix už máme z minula, takže těch balíků bude pomálu apt-get install clamav-daemon amavis spamassassin Konfigurace postfixu V /etc/postfix/main.cf: content_filter = amavis:[127.0.0.1]:10024 /etc/postfix/master.cf: amavis unix - - - - 20 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes -o max_use=20 127.0.0.1:10025 inet n - - - - smtpd…

  • Windows

    Jak restartovat Windows bez instalace updatů

    Situace Dokáže to naštvat. Pokaždé. Poslední restart před odvozem PC k zákazníkovi, telefonát „Už jedu“ a … „Probíhá instalace aktualizací … 1 z 89“, lehká hodinka zpoždění. Restart bez updatů Existuje naštěstí možnost, jak rebootovat i bez instalace aktualizací. Jak jsem psal již v článku Restart serveru/stanice Windows přes RDP a cmd, existuje příkaz shutdown. Tedy jen lehce upravíme parametry: shutdown /f /r /t 0

  • Linux Server

    mdadm a jednoduché odstranění superblocku

    Situace Protože občas se stane, že potřebuji nějaký disk vyřadit z pole a použít jinde, nebo k jinému účelu, dojdu pokaždé logicky ke stejnému problému. Disk se i po odstranění particií tváří jako součást pole a zatvrzele odmítá být vložen do pole jiného, případně se chudák systém snaží nějaké to degradované pole spustit. Jak odstranit superblock? Celý problém je v tom, že mdadm si zapisuje tuhle informaci do tzv. superblocku. V jednotlivých verzích pole může být tato zapsána buď na začátku, nebo na konci disku. V každém případě na místě, kam systém i při odstranění particie nebo formátování nesahá. Hezká cesta jak z toho ven je tento příkaz: mdadm --zero-superblock…

  • Linux Server

    Postfix a sasl dovecot autentizace

    Postfix a autentizace Protože je to sice děsně jednoduché, ale spousta lidiček nepochopila onu jednoduchost, raději zahájím takový maličkatý seriál ohledně MX serveru s virtuálním uživatelem, antispamem a tak podobně. Začnu trochu z kraje a to konfigurací postfixu tak, aby byl schopen ověřit uživatele přes sasl. Zatímco v dobách dřívějších se toto řešilo pomocí saslauthd daemona, který trpěl mnoha neduhy, jako například memory leaks, nebo záhadnou nespoluprací s pam.d a mysql, kterou řešil jedině jeho restart, přišli vývojáři postfixu a dovecotu se super myšlenkou autentizací spojit tyto dva programy poněkud „těšněji“ k sobě. Instalace balíků Tedy, potřebujeme instalované základní balíky (uvažuji i pop3) apt-get install postfix dovecot-imapd dovecot-pop3d Vlastní konfigurace…

  • PHP

    Funkce coalesce v PHP?

    Coalesce? Cože to vlastně je za divnou funkci? Jednoduše řečeno funkce COALESCE vrací hodnotu prvního výrazu, který nemá hodnotu NULL. To v praxi znamená, že pokud máte dvě proměnné z čehož jedna je teoreticky nenaplněna, resp. není inicializovaná, bude vrácena hodnota právě té druhé proměnné. Jistě, funkce coalesce existuje obecně v SQL jazycích, ale občas by se hodila i implementace v PHP. A světe div se, existuje. // A echo 'A' ?: 'B'; // B echo '' ?: 'B'; // B echo false ?: 'B'; // B echo null ?: 'B'; Nutno podotknout, že nefunguje nutně jen s funkcí echo, ale že bude fungovat i např. toto: ... function test($retezec){…