pátek 30. prosince 2011

Jak nastavit IPv6 adresu a směrování

Pokud nechcete nebo nemůže použít automatickou konfiguraci, např. pomocí daemona radvd, nastavíte globální IPv6 adresu na rozhraní eth0 takto:

ip -6 addr add ip6adresa/prefix dev eth0

směrování se pak nastaví tímto způsobem

ip -6 route add default via ip6adresabrány


Dál můžete zkusit obvyklý ping něčeho co již IPv6 používá, např.:

ping6 ipv6.google.com

Jak do prohlížeče zadat IPv6 adresu s číslem portu běžící služby?

Může to znít jako legrace, ale jak v prohlížeči (bez fungujícího DNS či jiného záznamu) zadat kombinaci IPv6_adresa:port, např 1000 ? Řešením jsou hranaté závorky.

http://[xxxx::xxxx]:1000

IPv6 připojení přes SixXS

SixXS vám umožní vytvořit tunel spojující svět protokolu IPv4 s IPv6. Výhodou tohoto poskytovatele přitom je vcelku rozumná odezva a relativně snadný způsob instalace v systému (prostřednictvím program aiccu).

Zřízení účtu
Na stránce pro přihlášení do účtu SixXS najdete i odkaz pro vytvoření nového účtu. Ten není sice vytvořen okamžitě - podléhá ručnímu schválení zadaných údajů (a těch není zrovna málo).

Po odsouhlasení nově vytvořeného účtu je potřeba zažádat o vytvoření tunelu (nabídka Request tunnel) v levém menu. Přitom stačí nechat přednastavené volby a jako druhý bod tunelu vám bude přiřazen český czprg01 - Ignum, s.r.o. Díky tomu získáte vcelku slušnou odezvu Internetu (naměřil jsem nějakých 20 ms, ale může se lišit).

Tím budete hotovi s virtuální měnou ISK, která se použije pro zaplacení tohoto požadavku. Dál by bylo vhodné začít používat tunel a zhruba po týdnu budete za jeho používání odměněni dalšími ISK, které vám umožní zažádání o vytvoření podístě (subnetu). (Osobně jsem si na aktivaci tunnelu vzpomněl po nějaké době a tak mě překvapilo, že doslova po pár dnech, byly peníze na účtu a mohl jsem o podsíť rovnou zažádat).

K čemu je dobrá podsíť? Podsíť vám umožní připojit další (doslova) hromadu počítačů z lokální sítě a zpřístupnit jim tu část internetu běžící na IPv6. Aby toho nebylo zrovna málo, počítače s novými IPv6 adresami budou viditelné i zvenku a tak k nim budete moci přistupovat obvyklým způsobem (typickým pro IPv6) a nebudete muset řešit nějaký NAT a další vymoženosti poslední doby.

Bohužel tunel je samozřejmě jenom jeden a tak pokud využijete tento pro zpřístupnění IPv6 internetu síti např. v práci, budete zřejmě muset z domova použít metodu jinou, např. běžně používané miredo (nebo teredo), které vám IPv6 zpřístupní také (ale oproti SixXS nezískáte veřejnou IPv6 adresu).

úterý 20. prosince 2011

Jak v Debianu odstranit opravdu špatný balíček

Při pokusu o instalaci chybného balíčku v Debianu může (v nejhorším případě) dojít k této chybové hlášce

dpkg: chyba při zpracovávání xxxxx (--remove):
 Balík je ve velmi špatném, nekonzistentním stavu - před
 pokusem o odstranění ho raději přeinstalujte.
Při zpracování nastaly chyby:
 xxxxx


Odstranění takového balíčku pak není žádná legrace a nezbývá než přikročit k ručnímu vysvětlení situace

mv /var/lib/dpkg/info/xxxxx.* /tmp
dpkg --remove --force-remove-reinstreq xxxxx

má za výsledek

dpkg: varování: seznam souborů balíku „xxxxx“ chybí, předpokládám, že program nemá nainstalované žádné soubory.
(Čtu databázi … nyní je nainstalováno 34028 souborů a adresářů.)
Odinstalování balíku xxxxx …

Je to trochu násilné řešení, ale funguje to.

pondělí 19. prosince 2011

OpenVZ, jádro a kvóty

Omezení velikosti disku v kontejnerech

K omezení velikosti prostoru na disku se používá program vzquota. Ten má v současné době problémy (=nefunguje) na souborových systémech s EXT4. Z toho důvodu se doporučuje použití jiných souborových systémů na disku s kontejnery, např. EXT3 nebo osobně raději JFS.

Instalace oficiálního jádra RHEL6 v Debianu

Standardní jádro obsažené v Debianu není úplně nejlepší a tak se občas stává, že něco nefunguje (např. omezení počtu CPU atd.). Z toho důvodu může být lepší použít jedno z oficiálních jader k tomu určených. Ty najdete na stránce

http://wiki.openvz.org/Download/kernel

Po stažení toho správného jádra právě pro vaši architekturu provedete jeho instalaci následovně:

fakeroot alien --scripts --keep-version vzkernel-*.rpm
dpkg -i vzkernel*.deb

Zdroje informací

http://wiki.openvz.org/Install_kernel_from_rpm_on_debian

sobota 17. prosince 2011

Amazon Kindle a čtení textu v češtině

Standardně umí Kindle (vcelku výborně) číst anglicky psané texty, pokud ale chcete přidat i podporu češtiny a chvíli nechat čtení na někom jiném, budete muset nainstalovat příslušný Jailbreak.
O tom jak se dělá Jailbreak se dozvíte např. na této stránce: http://www.amazon-kindle.cz/hack-amazon-kindle-3-diky-jailbreaku-vlastni-sporice-obrazovky-a-fonty/

Ve zkratce stačí říct, že z této stránky musíte stáhnout Kindle jailbreak příslušné (aktuální) verze. V mém případě jsem po rozbalení obsahu archivu použil soubor update_jailbreak_0.10.N_k3w-3.2.1_install.bin, který je třeba nakopírovat do kořenového adresáře Kindle a provést jeho update.

Nyní můžete přidat podporu čtení v češtině. O tom jak to provést se dozvíte na adrese: http://www.amazon-kindle.cz/ctecka-ebooks-amazon-kindle-uz-umi-predcitat-cesky-text-ale-i-dalsi-jazyky

Také můžete rovnou stáhnout soubory s češtinou: http://ge.tt/8HHrZe8 (např. soubor kindle-voicepack-cs-en_GB.zip) a po jeho rozbalení nakopírovat adresář usertts do kořene Kindle a z podadresáře usertts/install soubor update_usertts_3r2_k3w_install.bin. Dál provést aktualizaci Kindle a vše je hotovo.

Po spuštění předčítání textu bude Amazon Kindle číst česky.

pátek 16. prosince 2011

Jak se připojit přes SSH v IPv6

Při pokusu o připojení k serveru přes SSH, např.:

ssh -6 fe80::c419:a6ff:fe47:7c7d

může dojít k chybě

ssh: connect to host fe80::c419:a6ff:fe47:7c7d port 22: Invalid argument

Problém bude zřejmě někde na úrovni ssh klienta a lze vyřešit přidáním rozhraní, přes které má komunikace probíhat, např.:

ssh -6 fe80::c419:a6ff:fe47:7c7d%tap0

čtvrtek 15. prosince 2011

Jak na IPv6 v Debianu

Zjistěte si svoji venkovní IPv4 adresu

http://www.whatismyip.com/

Podporuje váš poskytovatel IPv6 adresy?

http://test-ipv6.com/


6to4 - pokud váš provider nepodporuje IPv6

6to4 je mechanismus, který vám umožní komunikovat mezi IPv6 sítěmi po starší síti IPv4. Svojí 6to4 adresu zjistíte např. pomocí nástroje ipv6calc

ipv6calc --action conv6to4 xxx.xxx.xxx.xxx


kde xxx.xxx.xxx.xxx představuje venkovní IP adresu (např. vašeho routeru).

Zapněte tunel

ip link set sit0 up
ip -6 address add 2002:xxxx:xxxx::1/16 dev sit0
ip -6 route add default via ::192.88.99.1 dev sit0

kde místo 2002:xxxx:xxxx:: bude vámi vypočítaná 6to4 adresa.

Testování funkčnosti

Zkuste pingnout Google. Nebo ho rovnou navštivte prostřednictvím vašeho prohlížeče na adrese: http://ipv6.google.com.

ping6 ipv6.google.com

Zdroje informací

http://www.root.cz/clanky/6to4-nejjednodussi-cesta-k-ipv6/
http://mithrandi.net/blog/2010/05/setting-up-6to4-on-debian/
http://www.logix.cz/michal/doc/article.xp/ipv6-1

Kniha  o IPv6 od Pavla Satrapy

http://knihy.nic.cz/files/nic/edice/pavel_satrapa_ipv6_2008.pdf

středa 7. prosince 2011

Jak převést hromadu PDF na text

V tom vám pomůže jeden příkaz

find adresar -iname \*.pdf -exec pdftotext -eol dos -nopgbrk -enc UTF-8 {} \;

pondělí 28. listopadu 2011

Písma Windows v Debianu

Potřebujete-li některá písma z MS Windows i v Debian GNU Linuxu, pak si nainstalujte odpovídající balíček, který se o jejich stažení postará za vás

aptitude install ttf-mscorefonts-installer

pondělí 21. listopadu 2011

Bind - nefunguje DNS cache

Daemon BIND standardně funguje (vlastně fungoval) jako DNS cache server, jinak řečeno jako místní DNS server. Toto chování se nově změnilo a tak v případě, že by tato funkce nebyla dostupná a v logu se objevovalo něco jako:

client 10.0.1.11#43768: query (cache) 'zshk.cz/A/IN' denied

je problém v nastavení BINDu, konkrétně v souboru /etc/bind/named.conf.option, kde je nutné přidat direktivu

allow-query { any; };

a tím bude BIND opět překládat i neautoritativní dotazy (tzn. dotazy netýkající se vlastní spravované databáze DNS názvů počítačů).

pátek 11. listopadu 2011

Grub rescue_mode

V případě, že není zavaděč GRUB 2 nalezen, objeví se záchranný příkazový řádek tohoto zavaděče.

Kontrola nastavení

set

vypíše např.
prefix=(hd0,msdos1)/grub/
root=(hd0,msdos1)

Zjištění viditelných oddílů

ls

Změna nastavení

set prefix=(hd0,msdos1)/grub/
set root=(hd0,msdos1)

kontrola

ls /

by měl vypsat obsah výše nastaveného oddílu (GRUB musí obsahovat podporu použitého souborového systému)

Zavedení GRUBu

insmod normal
normal

nyní by se měla objevit standardní obrazovka GRUBu.

Zdroje informací
http://support.dce.felk.cvut.cz/mediawiki/index.php/GRUB_%28rescue_mode%29



Pár tipů pro práci se SW polem RAID

Vytvoření pole RAID 1

mdadm --verbose --create /dev/md1 -l 1 -n 2 /dev/sda3 /dev/sdb3

Parametr -l 1 určuje typ pole (RAID 1) a -n 2 je počet aktivních zařízení v poli.

Vytvořené pole není po restartu vidět

Pole se znovu spustí zadáním

mdadm --assemble /dev/md1 /dev/sda3 /dev/sdb3

Dál je nutné přidat do souboru /etc/mdadm/mdadm.conf výstup příkazu

mdadm --examine --scan

raději také upravit jádro

update-initramfs -c -u

a zkontrolovat nastavení Grubu 2 a zapsat do zaváděcího oddílu všech dostupných disků

dpkg-reconfigure grub-pc

Odebrání chybového disku z pole

Disk se nejprve označí jako chybový

mdadm /dev/md1 -f /dev/sda3

a pak také odebere

mdadm /dev/md1 -r /dev/sda3

Přidání nového disku do pole

mdadm /dev/md1 -a /dev/sda3

Sledování stavu synchronizace pole

watch cat /proc/mdstat

Spare disk

Spare disk je záložní disk, který se aktivuje v případě chyby jednoho z aktivních disků pole. Tento disk je ve výpisu stavu pole

cat /proc/mdstat

označen písmenem (S).

Oprava GRUBu
Někdy se také může hodit následující postup opravy zavaděče GRUB

mv /boot/grub/device.map  /boot/grub/device.map.old
grub-mkdevicemap
update-grub2
grub-install /dev/sda

úterý 1. listopadu 2011

Jak se připojit na Cisco VPN

Základem je nástroj vpnc, který provádí vlastní připojení. K tomu je potřeba např. konfigurační soubor klienta z Windows (soubor s příponou .pcf). Soubor s nastavením pro Linux (program vpnc) vytvoříte snadno pomocí nástroje pcf2vpnc.

wget http://svn.unix-ag.uni-kl.de/vpnc/trunk/pcf2vpnc
chmod u+x pcf2vpnc
./pcf2vpnc soubor.pcf > cisco.conf

Ten je třeba nakopírovat do adresáře /etc/vpnc

cp cisco.conf /etc/vpnc

Vlastní připojení k serveru provedete zadáním

vpnc cisco

a odpojení zas příkazem

vpnc-disconnect

Ještě připomeňme, že připojovat se přes VPN k síti, která je ve stejném rozsahu nepatří zrovna mezi dobré nápady duševně zdravého jedince.. ;-)

středa 12. října 2011

Jak heslem chránit přístup do adresáře v Apache

Používá se k tomu vhodně upravený soubor .htaccess a soubor obsahující uživatelská jména a hesla oprávněných uživatelů. Soubor .htaccess by přitom měl obsahovat tyto řádky

AuthUserFile /cesta/k/vasemu/souboru/.htpasswd
AuthGroupFile /dev/null
AuthName "Soukroma autorizacni stranka"
AuthType Basic
require valid-user

Soubor s uživatelskými jmény a hesly vytvoříte zadáním příkazu

htpasswd -c .htpasswd uzivatel1

a dalšího uživatele přidáte zadáním

htpasswd .htpasswd uzivatel2

Zdroje
Autorizace prostřednictvím .htaccess

pátek 30. září 2011

Jak vytvořit instalační USB Flash disk s Debianem

Nejdřív je třeba inicializovat USB Flash disk tak, aby byl zaveditelný (bootovatelný) a přitom dokázal instalovat požadovanou verzi Debianu (soubor .iso). Na stránce http://www.debian.org/distrib/netinst proto zvolíme obrazy pro USB klíčenku námi požadované architektury počítače a v adresáři hd-media si stáhneme soubor boot.img.gz.

Ten rozbalíme na Flash disk (předpokládejme, že je umístěn na /dev/sdb). (Pozor, přitom budou odstraněna všechna data umístěná na flash disku a také bude přepsána jeho tabulka oddílů.)

zcat boot.img.gz > /dev/sdb

Dál je potřeba stáhnout .iso soubor s instalací Debianu dané architektury, doporučuji např. oblíbený business card a nakopírovat ho na flash disk.

mount /dev/sdb  /mnt/pokus
cp debian-6.0.2.1-amd64-businesscard.iso /mnt/pokus/
umount /mnt/pokus

A je to, nyní můžete z flash disku nabootovat do instalátoru Debianu.

pátek 16. září 2011

LibreOffice a Java ve Windows 7 (64 bit)

Pokud máte ve Windows 7 (64bitová edice) nainstalovanou novější Javu (např. 1.7), zobrazí LibreOffice 3.4 při spuštění chybové hlášení o tom, že nelze nalézt Javu. Problém lze vyřešit přidáním cesty k Javě do proměnné PATH (např. C:\Program Files (x86)\Java\jre7\bin).


pátek 9. září 2011

Datová média s dlouhou životností

DataTresorDisc jsou česká datová média s udávanou životností 160 let a více. V ceně pod 100,- Kč s DPH a velikosti média o kapacitě DVD+R se jedná o výbornou alternativu zálohování důležitých dat.

Připomeňme, že životnost stávajících médií se pohybuje v rozmezí několika let, 2-10 let? ..

neděle 21. srpna 2011

WordPress restart multisite instalace

Někdy je potřeba nastavení multisite instalace Wordpressu resetovat, jak se to provádí, co je k tomu nutné?
  • Smazat přidané multisite řádky v souboru wp-config.php
  • Smazat soubor .htaccess
  • V tabulce users smazat sloupce deleted a spam
  • Smazat tabulky 
    wp_blogs
    wp_blog_versions
    wp_registration_log
    wp_site
    wp_sitemeta
    wp_signups
    wp_sitecategorie
(pokud existuje)

Odkazy

Remove Wordpress Multisite Data

neděle 14. srpna 2011

Opencart ceny na dotaz (2)

Další a zřejmě jednodušší možností jak nastavit v OpenCartu cenu Na dotaz v případě hodnoty výrobku 0 je tato.

V souboru system/library/currency.php najděte řádek

$string = '';

a před něj umístěte např. toto

if ($format && (float)$value == 0) {
    return '<a href="index.php?route=information/contact">Na dotaz</a>';
}

A je to. Místo 0 se bude zobrazovat text Na dotaz s odkazem na kontaktní formulář.

úterý 2. srpna 2011

Jak na Flash v 64b Debianu

Originál Flash pro Iceweasel se v 64b verzi Debianu nainstaluje zadáním

aptitude install flashplugin-nonfree

Tento skript si stáhne originál nejnovější verzi Flashe přímo od Adobe. Tuto verzi můžete také kdykoliv později ručně aktualizovat zadáním

update-flashplugin-nonfree --install

Co ovšem dělat pokud je tato verze rozbitá a nefunkční? A jak že se to může stát? V současné době (k datu vydání tohoto zápisku) je k dispozici pouze vcelku nestabilní betaverze Flashe, která má do stability asi tolik co vajíčko umístěné na nakloněnou rovinu v autě jedoucím po české silnici.. ;-)

To se pak musí stáhnout verze jiná, zřejmě jedinou možností je o dost lepší 32 bitová verze Flashe. Tu stáhnete přímo ze stránek Adobe http://get.adobe.com/cz/flashplayer/ . Dál je dobré vybrat zabalený archív, z kterého vás zajímá soubor (vlastně knihovna) libflashplayer.so. Ten je třeba umístit do adresáře ~/.mozilla/plugins a z důvodu míchání 32 x 64 bitových verzí programu a knihovny také použít nspluginwrapper (obsažený ve stejnojmenném balíčku).

Dál zadat

nspluginwrapper -l
nspluginwrapper -a -i -r
nspluginwrapper -a -i -v
nspluginwrapper -l

Poslední (resp. první) příkaz je pouze informační a jen ukazuje který plugin je vlastně nainstalovaný. Druhý řádek pak odinstalovává předchozí verze a třetí pak instaluje nové pluginy. Výstup posledního informačního příkazu by mohl obsahovat zhruba následující

/home/martin/.mozilla/plugins/npwrapper.libflashplayer.so
  Original plugin: /home/martin/.mozilla/plugins/libflashplayer.so
  Plugin viewer: /usr/lib/nspluginwrapper/i386/linux/npviewer
  Wrapper version string: 1.3.0

Tím je instalace Flashe hotová a po restartu prohlížeče se o tom přesvědčíte zadáním about:plugins přímo do adresního řádku prohlížeče Iceweasel.

Více informací
Nspluginwrapper, Adobe Flash plugin a 64-bitový systém

pondělí 25. července 2011

Kde najít nejnovější Iceweasel

Poslední verze Iceweaselu (přejmenovaný Firefox v Debianu) najdete na stránce Debian Mozilla Teamu. Přitom si stačí nechat vygenerovat odpovídající řádek pro /etc/apt/sources.list a nainstalovat novou verzi. Přitom to má jen dva háčky.
  1. Nové verze neobsahují češtinu. Tu si můžete stáhnout například odsud.
  2. Občas se mění zdroje. Tzn. čas od času (když zahlásí apt chybu, že chybí odpovídající zdroj) je třeba zkontrolovat/zaktualizovat nakopírovaný řádek.
A jaké že verze to jsou k dispozici? V současné době to je:
  • vydání (release) představující aktuální stabilní verzi Firefoxu
  • betaverze (beta) označující nestabilní verzi Firefoxu, čili příští stabilní vydání (po odladění chyb)
  • aurora, což je verze na ostří nože určená pro vývojáře a testery a držící krok s posledním vývojem Firefoxu
Více informací o vydáních Firefoxu najdete zde.

čtvrtek 21. července 2011

Jak se připojit přes PPTP

Aneb připojení třeba na UHK...  PPTP je úžasný protokol vytvořený firmou Microsoft a při troše hodně velké fantazie se dá použít pro vzdálené připojení do místní sítě (VPN). Jako mnohem lepší alternativu bych zde uvedl OpenVPN.

Ve Windows je pro připojení takové klikátko, stejně tak i v Linuxu. Klikátko v Linuxu mi bohužel nefungovalo a tak jsem se uchýlil k posvátné konzoli. Tady se to nastavuje zhruba takto.

Základní nastavení - soubor /etc/ppp/options.pptp

lock
noauth
nobsdcomp
nodeflate 
refuse-pap
refuse-eap
refuse-chap
refuse-mschap

Nastavení hesla - soubor /etc/ppp/chap-secrets

domena\\jmeno     pptp    moje_heslo      *

Nastavení připojení - soubor /etc/ppp/peers/uhk

pty "pptp vpn.uhk.cz --nolaunchpppd"
name domena\\jmeno
remotename pptp
require-mppe-128
file /etc/ppp/options.pptp
ipparam uhk

Připojení se k VPN přes PPTP
s ladícími informacemi

sudo pon uhk debug dump logfd 2 nodetach noauth


bez ladících informací

sudo pon uhk

Odpojení se od VPN

sudo poff uhk

Nastavení routování
Abychom se dostali do vnitřní sítě, je třeba nastavit správné routování, to se provede takto

sudo route add -net 172.25.0.0 netmask 255.255.0.0 gw 192.168.45.1

K tomu samozřejmě potřebujete informace o vnitřní síti (172.25.0.0/255.255.0.0) a IP adresu brány (192.168.45.1). IP adresu brány zjistíte z výstupu ladících informací příkazu pon, kde je uvedena:

Jul 21 10:36:14 notorix pppd[3844]: local  IP address 192.168.45.4
Jul 21 10:36:14 notorix pppd[3844]: remote IP address 192.168.45.1

Jo, je to složité.

Zdroje informací
Microsoft VPN client setup with pptpclient

pondělí 11. července 2011

Jak přesměrovat port někam jinam

Předpokládejme, že nevíte zda a jak máte firewall nastaven, z tohoto důvudou je dobré nejprve všechna pravidla vymazat

iptables -F

dál smazat tabulku s překlady

iptables -t nat -F

a pro jistotu také uživatelem definovaná pravidla

iptables -X

Dál se to může konečně přesměrovat

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3389 -j DNAT --to 192.168.1.252:3389

a aby to také fungovalo, tak musíte zapnout maškarádu

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

To je vše. Pro přesnost uveďme, že port 3389 je port vzdálené plochy Windows a tak tímto způsobem můžete např. zpřístupnit počítač s Windows schovaný za bránou s Linuxem.

Blíže nespecifikovaná úsměvná chyba

Dnes mi přišel jeden úsměvný email týkající se jedné blíže neurčené chyby jedné více nespecifikované aplikace používající PostgreSQL a Tomcat na serveru Windows. Obsah tohoto kvalifikovaného emailu byl zhruba následující (dovolím si něco zdůraznit):

Dobrý den,

po prozkoumání logů a konzultaci s kolegou z Plzně je zřejmé, že došlo k prozatím nedetekovatelné nespecifikované chybě Windows, která vzniká když server (fyzicky) dlouho běží a aplikace se nepoužívá. Prozatím jediné známé řešení je restart Windows, po kterém by vše mělo fungovat. (Tato chyba se vyskytuje pouze na Windows, stejná instalace aplikace na LINUXu podobné chování nevykazuje.)

Proto bych vás poprosil o následující:
1. Restart celého serveru (windows)

To mě opravdu pobavilo.

středa 29. června 2011

Instalace serveru

Následuje pár poznámek k instalaci serveru s OS Debian.

Debian nevidí disky na rozhraní SATA 3
Na vině bude nejspíš mód přenosu. Zatímco dříve se používala emulace IDE, dnes bychom měli používat spíš AHCI. Tento mód se povoluje přímo v BIOSu a po jeho zapnutí budou disky pro Debian GNU Linux viditelné.

Pozor, někdy se AHCI zapíná pro každý SATA kanál zvlášť a tak je nutné prohlédnou volby BIOSu obzvlášť pečlivě.

Onboard Sata type - Ahci or IDE - which best

Nelze nainstalovat zavaděč GRUB 2
Instalace zavaděče GRUB může končit prapodivnou hláškou týkající se chybějící zaváděcí oblasti, tzv. BIOS Boot Partition. Prakticky to znamená vytvořit oblast označenou příznakem bios_grub o velikosti řekněme 1MB. V dnešní době je z této velikosti zaplněno asi 30kB, ale kdo ví jak to bude v budoucnu. (Právě z tohoto důvodu bych doporučoval volit velikost mnohem větší.)
Oblast bios_grub vytvoříte snadno přímo během instalačního procesu Debianu a o její existenci se můžete přesvědčit zadáním

parted /dev/sda
print

zde je důležitá mj. informace o tom, že se používá tabulka oblastí GPT, která se nově používá místo původního MBR. Důvodem je 2TB omezení velikosti disku v případě použití MBR.

Rozdělení disku (s dostatečnou rezervou pro bios_grub) u 2TB disku může vypadat třeba takto

Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      17,4kB  20,0MB  20,0MB                     bios_grub
 2      20,0MB  100GB   100GB                      raid
 3      100GB   2000GB  1900GB                     raid

pak už se instalace zavaděče GRUB 2 na disk podaří. Připomeňme, že v případě instalace v SW poli RAID je třeba nainstalovat zavaděč na všechny dostupné disky, např.

grub-install /dev/sda
grub-install /dev/sdb
grub-install /dev/sdc

a ideálně i odzkoušet zavedení systému z jednotlivých disků (změnou zařízení z kterého se bude zavádět systém v BIOSu počítače).

BIOS Boot partition
GUID Partition Table

SSD disk nebo pole RAID
Nyní nehovořme o bezpečnosti takového zařízení, ale pojďme se podívat na rychlost. Rychlost čtení svého disku zjistíte zadáním

hdparm -tT /dev/sda

nebo v případě pole např.

hdparm -tT /dev/md0

Důležitý je pak především druhý (menší) údaj Timing buffered disk reads:, který v mém případě dopadl takto:

Klasický pevný disk: 87.60 MB/sec
SSD disk vertex 2: 178.84 MB/sec
3 SATA disky v poli RAID5: 288.37 MB/sec
SSD disk vertex 3: kolem 500 MB/sec (zdroj "internet")

Z toho vyplývá, že si současné SATA disky v poli RAID nevedou zrovna zle.

Jak přesunout systém na SSD disk

Obvyklým způsobem je nabootovat nějaké Live CD a v něm provést obvyklé přípravy (vytvoření oddílu a připojení disků). Dál stačí vše zkopírovat z jednoho místa na druhé, např.:

cp -axv  /mnt/zdroj/* /mnt/cíl/

Dál nainstalovat na druhý disk zavaděč Grub, např. použitím instalačního CD Debianu a spuštěním Rescue režimu. Zde se připojí nový kořenový oddíl (oddíl / na novém disku) a obvyklým způsobem nainstaluje zavaděč grub, např.:

grub-install /dev/sdb

Také je třeba v /etc/fstab nastavit podle UUID ten správný disk jako kořenový a tím jste hotovi.

Jak zjistit UUID disku
Snadno, zadejte následující

ls -l /dev/disk/by-uuid/

Zobrazený výsledek bude myslím sebevysvětlující, ten dlouhý nesmysl se pak kopíruje do /etc/fstab, kde to může pro kořenový adresář vypadat např. takto

UUID=06f4e754-4f5a-47e2-b7e6-fb9a3594e4f7 /               ext4    errors=remount-ro   0       1

neděle 26. června 2011

Jak na automatické číslování pomocí CSS stylů

Automatické číslování nadpisů se pomocí CSS stylů zapne v jazyce HTML např. takto.

Nejdřív je nutné číselník resetovat (typicky při načtení stránky)

  body {
    counter-reset: section;
  }

Dál se musí nastavit v jakém okamžiku se má číselník zvyšovat (např. při výskytu značky h3)

  h3{
        counter-increment: section;
  }

A konečně také kde se má číselník zobrazit, v tomto případě to je před každou značkou h3.

  h3:before {
        content: counter(section) " ) ";
  }

Více informací
Automatické číslování pomocí CSS

úterý 21. června 2011

Jak nainstalovat Quoterro

Quotero je DMS, systém určený pro správu dokumentů, který ke svému běhu používá server Tomcat a jeho databázi můžete uložit do  Jeho instalaci provedete následovně.

Nejprve si stáhněte Quotero Deployer, což je instalační balíček obsahující klienta i serverovou část Quotero zároveň. Také se můžete podívat na seznam vydání Quotero a stáhnout instalační sadu podle libosti.

http://localhost:8080/manager/html

Stažený Deployer (soubor .war) nahrajte na server skrz administrační rozhraní Tomcatu. Tlačítko pro nahrání se nachází v části WAR file to deploy administračního rozhaní.

Dál se kliknutím na odkaz v řádku vedle quotero deployer přesuňte na instalační skript quotero. Než se pustíte do vlastní instalace, ujistěte se, že znáte uživatelské jméno a heslo správce databáze (MySQL nebo PostgreSQL a další) a také nastavte práva k určitým adresářům na plný zápis:

chmod a+rw /usr/share/tomcat6
chmod a+rw /var/lib/tomcat6

Pokud se instalační proces někde zastaví, pak bude "někde chyba", např. databáze Quoterro už existuje, nebo existují vlastní adresáře atd. Jednou z možných chyb může být např. špatně nastavené kódování v PostgreSQL serveru (zde je nutné kódování UTF-8).

Po instalaci by se vám měl objevit webový klient Quotero

http://localhost:8080/QuoteroClient/

do kterého se přihlásíte pomocí uživatelského jména admin a hesla admin.

Další odkazy
Quotero Quick Install

Jak nastavit výchozí kódování v PostgreSQL na UTF-8

Pomocí psql se nejprve přihlaste k PostgreSQL serveru. To obvykle uděláte např. tak, že se přihlásíte na uživatele postgres a pak zadáte psql:

su postgres
psql

Nejprve se můžete porozhlédnout po výchozím kódování vašich šablon, to se provede zadáním

\l

které může zobrazit např. toto

                              List of databases
   Name    |  Owner   | Encoding  | Collation | Ctype |   Access privileges  
-----------+----------+-----------+-----------+-------+-----------------------
 postgres  | postgres | SQL_ASCII | C         | C     |
 template0 | postgres | SQL_ASCII | C         | C     | =c/postgres
                                                      : postgres=CTc/postgres
 template1 | postgres | SQL_ASCII | C         | C     | =c/postgres
                                                      : postgres=CTc/postgres
(3 rows)

Odsud je vidět, že kódování šablony template1 je ASCII. Pro změnu nastavení je třeba šablonu nejprve odstranit

UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';
DROP DATABASE template1;

Dál jí znovu vytvořit s tím správným kódováním UTF-8:

CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE';
UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1';

Pro kontrolu můžete zadat opět příkaz \l

\l
                              List of databases
   Name    |  Owner   | Encoding  | Collation | Ctype |   Access privileges  
-----------+----------+-----------+-----------+-------+-----------------------
 postgres  | postgres | SQL_ASCII | C         | C     |
 template0 | postgres | SQL_ASCII | C         | C     | =c/postgres
                                                      : postgres=CTc/postgres
 template1 | postgres | UTF8      | C         | C     |

Zdroje informací
Change Default Encoding of New Databases To UTF-8

pondělí 20. června 2011

Jak nainstalovat Tomcat

Tomcat, jinak řečeno Javu pro server, nainstalujete nejlépe takto. Nejprve je nutné nainstalovat JRE nebo JDK. Ideální je ta přímo od SUNu, ale ta zas není přímo součástí svobodných balíčků Debianu.

Z toho důvodu budete muset nejdřív zřejmě povolit zdroje balíčků ze sekce non-free. To se provede úpravou souboru /etc/apt/sources.list do např. následující podoby                       

deb http://ftp.debian.org/debian squeeze main contrib non-free
deb http://ftp.debian.org/debian squeeze-updates main contrib non-free
deb http://security.debian.org squeeze/updates main contrib non-free


(důležité jsou především direktivy non-free na konci řádků, které tento repoziář zapínají). Dál musíte provést aktualizaci zdrojů balíčků, zadáním

apt-get update

a dál už můžete Javu přímo od SUNu nainstalovat. V případě JRE (Java Runtime Environment) bude stačit následující

aptitude install sun-java6-jre

(Při instalaci je třeba souhlasit s licenčními podmínkami programu.) Dál je třeba nainstalovat vlastní Tomcat a k němu se určitě hodí i nějaké to administrační rozhraní. To se provede takto

aptitude install tomcat6 tomcat6-admin

Nyní se můžete v prohlížeči podívat na adresu serveru a informace o běžícím Tomcatu. Pro vstup do administračního rozhraní Tomcatu je ovšem třeba nejprve nastavit příslušná hesla v souboru /etc/tomcat6/tomcat-users.xml, kerý by měl při nejmenším obsahovat

<tomcat-users>
  <role rolename="manager"/>
  <user username="tomcat" password="heslo" roles="manager"/>
</tomcat-users>

(Uživatelské jméno a heslo si můžete měnit podle sebe, a také nezapomeňte restartovat Tomcat /etc/init.d/tomcat6 restart). Tomcat pak můžete zkontrolovat zadáním IP adresy počítače, kde běží

http://localhost:8080/

a dál vstoupit do administračního rozhraní (po zadání odpovídajícího hesla ve výše uvedeném souboru tomcat-users.xml).

http://localhost:8080/manager/html

nebo kliknutím na odkaz manager webapp, který se zobrazí na úvodní stránce Tomcatu.

Jak nastavit heslo na PostgreSQL

PostgreSQL server se na Debianu standardně instaluje bez nastaveného hesla správce, tento článek vám ukáže jak toto nastavení změnit.

Nejprve je potřeba se přihlásit jako uživatel postgres, to se provede snadno zadáním

su postgres

Dál musíte přihlásit k databázi postgres PostgreSQL serveru

psql -d postgres

a nyní nastavit heslo pro přihlášení uživatele postgres k PostgreSQL serveru takto

alter role postgres with password 'heslo';

Pokud se vám po zadání tohoto příkazu objeví text

ALTER ROLE

znamená to jeho úspěšné provedení a heslo uživatele postgres bylo úspěšně nastaveno. Pozor, středník na konci příkazu je důležitý a pokud se nic neobjeví, došlo k nějaké chybě...

Od psql se můžete odhlásit zadáním příkazu

\quit

A podobně i ukončíte přihlášení pod uživatelem postgres.

exit

Zdoje informací

No admin password for PostgreSQL.

středa 15. června 2011

Jak stáhnout video z YouTube

Stažení videa z YouTube

Provedete např. použitím nástroje clive (pozor neplést s cclive, který dělá totéž, ale v Debianu Squeeze nějaký rozbitý). Stačí zadat např.

clive http://www.youtube.com/watch?v=4Z9WVZddH9w

a video se stáhne do aktuálního adresáře.

Jak zjistit URL adresu videa YouTube

Klikněte na video pravým tlačítkem myši a vyberte možnost Copy video URL. Zbytek za symbolem & v URL adrese můžete odmazat.

Jak stáhnout titulky k videu

Některá videa mají kromě jiného i titulky. Pokud jsou u videa k dispozici - zjistíte snadno kliknutím na ikonu viz níže, kterou najdete dole v okně přehrávače videa YouTube:


Můžete si je stáhnout také. K tomu se hodí např. program Google2SRT. Ten po jeho rozbalení spustíte zadáním

./run.sh

v rozbaleném adresáři. Program ke svému běhu potřebuje Javu a vypadá takto:



V programu se zadává URL adresa videa a dál musíte vybrat titulky, které si přejete stáhnout. Kliknutím na tlačítko Read po vložení URL adresy videa YouTube dojde k načtení seznamu dostupných titulků u videa a po vybrání těch, které chcete stáhnout a kliknutí na tlačítko GO! i k jejich stažení na vybrané umístění.

čtvrtek 26. května 2011

Hrátky s Apache a přepisem URL

Popis situace byl takovýto:

V Drupalu 6 bylo možno integrovat Gallery 2 přímo do stránek, zatímco v Drupalu 7 není příslušný modul k dispozici. Konečně, také vyšlo nové prostředí Gallery 3 a tak to bylo třeba dát celé nějak dohromady.

Aby to nebylo tak snadné, na stávájícím webu je hromada odkazů směřujících někam sem:

http://web.cz/node/700?q=gallery&g2_itemId=9944

a to bylo třeba směřovat na nový systém Gallery 3 ve formě

http://galerie.web.cz/g2/map?path=g2_itemId=9944

Co s tím? Do nové instalace Drupal 7 je třeba do souboru .htaccess přidat takovéto pravidlo:

<IfModule mod_rewrite.c>
      Options +FollowSymLinks
      RewriteEngine On
      RewriteCond %{QUERY_STRING} ^q=gallery
      RewriteRule ^(.*)$ http://galerie.web.cz/g2/map?path=$1   [QSA,L,R=301]
</IfModule>

RewriteCond prohledává URL adresy a pokud najde stránku, která má v dotazu zmíněný q=gallery, pak to RewriteRule celé přehodí na tu správnou adresu.

úterý 10. května 2011

OpenCart - Cena produktu na dotaz s lokalizací

Přidání odkazu Na dotaz místo ceny 0
Upravit soubor catalog/view/theme/default/template/product/product.tpl

změnit řádek 21 z

<?php echo $price; ?>

na

<?php if ($price > 0)  echo $price;  else {
?>
<a href="index.php?route=information/contact&muj_text=<? echo urldecode($nula_text.$model);?>"><? echo $nula;?></a>
<? } ?>

Přidat podporu překladu - v souboru catalog/language/czech/product/product.php přidat řádky

$_['nula']     = 'Na dotaz';
$_['nula_text']     = 'Dobrý den, chtěl bych se zeptat na cenu produktu ';

a zapnout přístup k překladům vložením na vhodná místa do souboru
catalog/controller/product/product.php

$this->data['nula'] = $this->language->get('nula');
$this->data['nula_text'] = $this->language->get('nula_text');

Další je upravit předvyplnění formuláře, v souboru catalog/view/theme/default/template/information/contact.tpl

upravit řádek 48 z

<textarea name="enquiry" style="width: 99%;" rows="10"><?php echo $enquiry;?></textarea>

na

<textarea name="enquiry" style="width: 99%;" rows="10"><?php echo $enquiry;echo urldecode($_GET["muj_text"]);?></textarea>


Dál je ještě potřeba v souboru catalog/view/theme/default/template/product/category.tpl změnit řádek 56 z původního

<span style="color: #900; font-weight: bold;"><?php echo $products[$j]['price']; ?></span>

na

<span style="color: #900; font-weight: bold;">
<?php if ($products[$j]['price'] > 0)  echo $products[$j]['price'];  else {
?>
<a href="index.php?route=information/contact&muj_text=<? echo urldecode($nula_text.$products[$j]['model']);?>"><? echo $nula;?></a>
<? } ?>
</span>

Spolu s odpovídajícím jazykovými překlady v souborech catalog/language/czech/product/category.php a catalog/controller/product/category.php.


Konečně to samé provést i s modulem vyhledávání (soubor catalog/view/theme/default/template/product/search.tpl) a odpovídajícími jazykovými soubory

neděle 1. května 2011

Jednoduchý přepis adres pomocí Apache

Někdy se může hodit přepsat jednu adresu na jinou a to nejlépe přímo pomocí Apache. K tomu se používá modul mod_rewrite jehož jednoduché použití může vypadat třeba takto.

<VirtualHost *:80>
  ServerName www.server.cz

  RewriteEngine on
  RewriteRule   ^.*$  http://server.cz/  [R]
</VirtualHost>

Tím se přesměruje (přepíše) URL adresa www.server.cz na kratší server.cz.

pátek 29. dubna 2011

PHP APC (PHP proxy)

PHP proxy APC je takové zařízení, které cachuje provoz PHP stránek a v případě opětovného vyžádání téže stránky tak vrátí uživateli výsledek mnohem a mnohem rychleji než kdyby to probíhalo klasickou cestou (zpracováním kódu PHP, dotazem do databáze, atd.).

V Debianu se instaluje takto

aptitude install php-apc

Poté je potřeba restartovat server Apache

/etc/init.d/apache2 restart

Tím je instalace hotová a vše začíná ihned fungovat. O tom jak to funguje se dozvíte rozbalením souboru /usr/share/doc/php-apc/apc.php.gz a jeho přesunutím někam kde lze pohodlně spouštět.

Pokud budete chtít měnit některá nastavení, podívejte se do souboru /etc/php5/apache2/conf.d/apc.ini a pročtěte si dokumentaci. Je s tím trochu potíž a i když lákavě vypadadají především direktivy apc.shm_segments a apc.shm_size nemusí vždy vše fungovat tak jak má.

apc.shm_size udává velikost sdílené operační paměti (cachované paměti systému) a standardně je v Debianu 30MB (je to dáno nastavením (/proc/sys/kernel/shmmax).

apc.shm_segments udává počet segmentů (částí) o výše uvedené velikosti, standardně je jen 1. Osobně mi změna tohoto parametru nefungovala a naopak apc.shm_size fungovalo v rozporu s dokumentací. V souboru /etc/php5/apache2/conf.d/apc.ini jsem nechal následující:

extension=apc.so
apc.shm_size=64

A tím nastavil velikost sdílené paměti oproti všem očekáváním na 64MB.

Formuláře v Drupalu

Na formuláře v Drupalu se používá modul Webform. Tento modul standardně zobrazuje u vytvořeného formuláře informace o autorovi a datu vytvoření formuláře a další.
Skrytí těchto informací není v Drupalu 7 na první pohled snadné, ale můžete si pomoci např. úpravou souboru css/webform.css (ten najdete v adresáři s modulem webform). Zde přidejte řádek:

.submitted-info {
        display:none;
}

Používáte-li cache, nezapomeňte ji vymazat.

středa 13. dubna 2011

OpenCart a čeština wysiwyg editoru

Opencart používá wysiwyg editor ckeditor. Protože ten standardně přepisuje české symboly na HTML entity, je potřeba do souboru admin/view/javascript/ckeditor/config.js přidat řádek

config.entities = false;

Dál už to bude fungovat tak jak má.

pátek 8. dubna 2011

Jak na Marinelli a aktivní parent menu

Téma Marinelli v Drupalu standardně nezobrazuje jako aktivní rodičovské menu určitého podmenu. To se dá při zapnutém Mega-Drop Down menu zapnout takto:

Do souboru template.php přidejte:

function menu_tree_full($menu_name = 'navigation') {
  $tree = array();
  if (!isset($menu_output[$menu_name])) {
    $tree = menu_find_active_trail(menu_tree_all_data($menu_name));
  }
  return $tree;
}

/**
* Wrapper function
*/
function menu_find_active_trail(&$menu_tree) {
  $item = menu_get_item();
  _menu_find_active_trail($menu_tree, $item);
  return $menu_tree;
}
/**
* Recursive function to find the active menu and the active trail in the given tree.
*/
function _menu_find_active_trail(&$menu_tree, $item) {
  foreach($menu_tree as &$menu_item) {
    $link = &$menu_item['link'];
    if ($link['href']==$item['href']) { // Found the exact location in the tree
      $link['active'] = TRUE;
      $link['in_active_trail'] = TRUE;
      return true;
    } else {
      if ($menu_item['below']) {
        $result = _menu_find_active_trail($menu_item['below'], $item);
        $link['in_active_trail'] = $result;
        if ($result)
        {
          $link['active'] = TRUE;
          $link['in_active_trail'] = TRUE;
          return true;
        }
      }
    }
  }
  return false;
}

A v souboru theme/theme.inc upravte okolo řádku 102-105


  // primary links markup
  if (theme_get_setting('menu_type') == 2) { // use mega menu
    $vars['mainmenu'] = theme('mega_menu', array('menu' => menu_tree_all_data(theme_get_setting('menu_element'))));
  }

na


  // primary links markup
  if (theme_get_setting('menu_type') == 2) { // use mega menu
    $vars['mainmenu'] = theme('mega_menu', array('menu' => menu_tree_full(theme_get_setting('menu_element'))));
  }

Konečně v témže souboru okolo řádku 129 přidejte


      if ($value['link']['in_active_trail']) {
        $options['attributes']['class'] = array('active');
      }

Více informací najdete zde nebo v denním tisku. 

sobota 2. dubna 2011

Správná URL adresa v Moodle 2

Moodle 2 nově kontroluje URL adresu přes kterou uživatel přistupuje k instalaci Moodle. Abyste se vyhnuli následující otravné hlášce:

Incorrect access detected, this server may be accessed only through "http://www.server.cz" address, sorry.
Please notify server administrator.

Stačí upravit v souboru config.php tento řádek:

$CFG->wwwroot   = 'http://'.$_SERVER['SERVER_NAME'];

Tím se nastaví adresa serveru vždy na tu správnou hodnotu ať už k němu přistupujete s www. nebo bez něj. Možná by také bylo dobré nastavit přepis URL adres přímo na serveru, ale ve většině případů to bude zbytečnost.

pátek 1. dubna 2011

Jak na vlastní CSS styly v Moodle

Soubor s vlastním CSS stylem umístěte do adresáře style vašeho aktivního (aktuálního) tématu. Aby se soubor začal používat, musíte to nastavit v souboru config.php v adresáři s tématem.

$THEME->sheets = array(
    'core',
    'pagelayout',
    'menu',
    'vlastni'
);

kde slovo vlastni znamena jméno souboru vlastni.css s přidaným stylem.

Aby se změna vůbec projevila a protože to takto nic neudělá, musíte v nabídce Správa stránek - Vzhled - Motivy - Nastavení motivu zapnout volbu Režim úprav grafického motivu. Tím budete moci naživo sledovat prováděné změny.

Po dokončení provedených změn se doporučuje výše uvedené zaškrtávací tlačítko opět zapnout, a tím snížit zátěž serveru.

čtvrtek 31. března 2011

Marinelli x Drupal x SuperFish

Náhradní menu se dá vylovit z modulu Superfish. To má trošku složitější instalaci, ale je tam popsaná.

  1. Download Superfish library and extract it in sites/all/libraries.
  2. Download & extract the Libraries module in sites/all/modules.
  3. Drupal 6 users would need to install jQuery_update module (v2.0) as well.
  4. Download & extract the Superfish module in /sites/all/modules.
  5. Upgrade users need to delete the module folder (sites/all/modules/superfish) before uploading the new version. Also, if having any modified CSS file, just move it from sites/all/modules/superfish/css/extra to sites/all/libraries/superfish/style
  6. Upgrade users need to run update.php

Tím přibudou v blocích menu superfish, které je možné osadit určitými nabídkami. Pro posun menu směrem nahoru k tématu Marinelli je nutné upravit např. soubor sites/all/themes/marinelli/css/drupal.css přidáním těchto řádků:

#overContent {
        position: relative;
        top: -30px;
}

Konečně úprava vzhledu menu se provádí v adresáři sites/all/libraries/superfish/style.

pondělí 21. března 2011

Obrázek s průhledným pozadím v Google Sites

Pokud do stránek vytvořených v Google Sites vložíte obrázek s průhledným pozadím (png nebo gif), zobrazí se pozadí bílou barvou. Pokud chcete zobrazit obrázek s průhledným pozadím, vložte ho nejprve do stránky a potom si při editaci stránky zobrazte HTML kód. Najděte tag img a do atributu style přidejte: background-color: transparent; border: none; (viz příklad níže). 
<img src="https://sites.google.com/a/homeopatie-poradna.cz/www/o-homeopatii/relief.png" style="background-color: transparent; border: none; margin: 5px 10px; float: right;">
Zdroj: http://www.google.com/support/forum/p/sites/thread?tid=79b09ba44a873401&hl=en

pátek 11. března 2011

Jak na virtuální domény v Postfixu

V /etc/postfix vytvoříme adresář virtual. Ten by měl obsahovat soubor domains s doménami:

domena1.cz
domena2.cz
domena3.cz

Dál by měl obsahovat seznam jednotlivých uživatelů spolu s jejich mapováním

domena1.cz    DOMAIN
@domena1.cz    uzivatel

domena2.cz    DOMAIN
uzivatelx@domena2.cz    uzivatelx@seznam.cz
@domena2.cz    martin.sin

domena3.cz        DOMAIN
@domena3.cz    martin.sin


aliasy @domena.cz přitom pokrývají všechny adresy dané domény. ;-)

Do souboru /etc/postfix/main.cf  je třeba přidat/upravit řádek/řádky

mydestination = $myhostname, /etc/postfix/virtual/domains
virtual_maps  = hash:/etc/postfix/virtual/addresses

dál vytvořit příslušnou databázi:

postmap /etc/postfix/virtual/addresses

a načíst nové nastavení Postfixu

/etc/init.d/postfix reload

snadné, že? Více viz. tento návod.



čtvrtek 10. března 2011

Jak na certifikáty Apache (2)

Nejdůležitější jsou tyto řádky:

NameVirtualHost *:443

<VirtualHost *:443>
        ServerName jmeno_serveru.cz
        ServerAlias www.jmeno_serveru.cz

        DocumentRoot /var/www/
        ErrorLog /var/log/apache2/error.log
        CustomLog /var/log/apache2/access.log combined

        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/certifikat.cer
        SSLCertificateKeyFile /etc/apache2/ssl/klic.pem
        SSLCACertificateFile /etc/apache2/ssl/tcs-ca-bundle.cer

</VirtualHost>

Jak se ale pozná co je certifikát, co klíč a co certifikát certifikační autority, obzvlášť, když to může být v téměř libovolném formátu?

Odpověď: je to tam napsané!


Soubor s certifikátem má v hlavičce:
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----

Soubor se soukromým klíčem obsahuje na začátku
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----

Konečně certifikát samotné certifikační autority obsahuje těch certifikátů hned několik
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----

čtvrtek 17. února 2011

Jak na změnu šířky bloků v tématu Marinelli Drupal

Nastavení se nachází v souboru \logics\layout.inc, kde je třeba změnit poměr šířek jednotlivých bloků (Marinelli má jistou logiku, která vymýšlí šířku bloků za chodu podle počtu a rozvržení stránky).

Řádky 89 a 93 změnit na:

$class = 'grid_3';

$class= 'grid_3 pull_9';

z původních hodnot "grid_4" a "grid_4 pull_8"

a řádky 145 a 149 na:

$class = 'grid_9';

$class = 'grid_9 push_3';

Nastavení šířek se berou z nastavení dle šířky vlastního tématu Marinelli. Tj. souborů v adresáři css/grid

Více informací v tomto vláknu.

středa 5. ledna 2011

Jak omezit chybové hlášky PHP pomocí souboru .htaccess

Někdy se stane, že s novou verzí PHP vyskočí chybové hlášky týkající se zastaralých (deprecated) funkcí nebo různá upozornění (warning) z toho vyplývající.  V tomto a jiných případech můžete redukovat chybová hlášení zobrazovaná serverem přidáním obyčejného souboru .htaccess do kořenového adresáře webu. Soubor by měl obsahovat direktivu

php_flag display_errors off