V linuxu je třeba mnohdy přesměrovat chybový výstup stderr na standardní výstup stdout – a to celé pak ideálně poslat do /dev/null
:) Toto se může hodit například při spouštění různých cronů. Pokud by totiž skript generoval nějaký výstup (stderr nebo stdout), cron daemon ho pošle uživateli jako “varovný email”, že něco nemusí být v pořádku.
$ skript.sh 2>&1 >/dev/null
Tento zápis tedy zajistí, že stderr(2) se přesměruje na stdout(1) a to se přesměruje na /dev/null
.
Více viz
Jak vytvořit screenshot nebo náhled nějaké webové stránky? Navíc na serveru, v Linuxu a z příkazové řádky? Určitě existuje mnoho způsobů – ať už použití externí on-line aplikace, speciálního programu či utility nebo převod HTML do obrázku …
Já zde popíšu metodu, která využívá vámi preferovaný prohlížeč instalovaný na serveru (ja vybral Firefox
— na Debianu iceweasel
) a v kombinaci s VNC serverem
jednoduše típnu obrazovku pomocí utility import
.
Pokračování článku…
Možnost jak zálohovat SVN repositář je určitě více. Sám jsem používal klasický, nízkoúrovňový tar + gzip na adresář repositáře. Tato varianta je celkem dostačující ale nerespektuje aktuální SVN transakce a zámky – proto není vhodné spouštět zálohu v momentě kdy není zajištěno že někdo něco nekomituje. Navíc, pokud si repositář poškodíte, budou se zálohovat poškozené soubory.
Zřejmě lepším způsobem bude použití utility svnadmin, která pracuje s repositářem na vyšší úrovni a do výsledného souboru vytváří zálohy jednotlivých revizí postupně s ohledem na aktuální stav repositáře.
# svnadmin dump /path/to/repository > repository-dump.db
Výsledkem je převážně textový soubor repository-dump.db
, v němž jsou popsány jednotlivé revize a změny v nich. Tento lze většinou ještě s úspěchem komprimovat a tím dosáhnout maximální úspory místa zálohy.
Obnovení je stejně jednoduché jako záloha. Obnovu je třeba provést do již vytvořeného prázdného repozitáře (svnadmin create
) – více viz Instalace SVN za 10 minut.
# svnadmin load /path/to/repository < repository-dump.db
Více o svnadmin se dozvíte v ‘SVN Book’, kapitola ‘Repository Maintenance’.
Nebudu zde popisovat všechny možné i nemožné varianty tohoto příkazu, ale zmíním se pouze o nejpouživatelnějších (dvou:).
Vytvoření tgz/tar.gz archívu:
# tar cfz <tgz-cil> <zdroj1> <zdroj2> ...
c
– create, f
– file, z
– gzip
Příklady:
# tar cfz archiv.tar.gz *
# tar cfz /backup/etc.tgz /etc
# tar cfz source.tgz *.html *.php *.phtml *.css
Užitečný parametr, který vynechává vámi zvolené soubory s maskou je exclude
:
# tar cfz old-logs.tgz /var/log --exclude=*.log
Extrahování tgz/tar.gz archívu:
# tar xfz <tgz-zdroj> [<cil>]
x
– extract
Pro další parametry taru vás odkážu typicky linuxářsky: rtm — man tar.
Subversion je v současné době asi nejlepší nástroj na správu revizí různých zdrojových kódů různých aplikací ale i binárních dat. Navíc mě velmi překvapil svojí vynikající vlastností: vytváří každou další revizi pouze na základě deltifikace a komprese. Výsledná (fyzická) velikost repositáře je malá i v případě správy mnoha revizí. Možná i právě proto používají Seznamáci na zálohování map právě SVN (SVN backup).
Pokračování článku…
Nedávno jsem při aktualizaci Apache na jednom ze strojů zjistil, že v testing verzi Debianu (lenny) nastali nějaké zásadnější změny v konfiguračních souborech, jmenovitě v /etc/apache2/apache2.conf
které bylo třeba ručně odsouhlasit před vlastní aktualizací.
Změna se týká předávání parametrů z prostředí uživatele pod kterým je server spouštěn do konfigurace Apache serveru – environment variables. Imho velmi zajímavá a vhodná věc. O co jde?
Pokračování článku…
Výchozí instalace web serveru Apache2 na Debianu (Etch, Lenny) neobsahuje podporu SSL — tedy protokolu HTTPS. Zároveň neobsahuje ani zavedený modul mod_rewrite toliko potřebný pro krásná URL a SEO optimalizaci. Vše lze napravit několika málo příkazy.
Pokračování článku…
eAccelerator je velmi užitečný nástroj pro “zrychlení” PHP. Funguje na principu vytváření mezipaměti (cache) PHP skriptů a v případě že máte na serveru slabší stroj, nebo prostě jen potřebujete maximálně zrychlit vaše stánky je vhodné uvažovat o jeho použití. Jeho výhody se ukáží především při programování projektů založených na mnoha knihovnách, které se v průběhu vývoje nemění nebo pouze minimálně. eAccelerator vytvoří cache všech těchto PHP skriptů a není tedy nutné je při každém načtení stránky znovu kompilovat.
Pokračování článku…