pátek 29. července 2011

Test jabber klientů

Test Jabber klientůSparkPsiPidginMirandaJabbim

Test jabber klientů, a set on Flickr.

Ověřil jsem funkčnost 5ti Jabber/XMPP klientů na jednom firemním serveru.

Testováno na jabber.milcomdk.cz

Via Flickr:
psi-0.14-win-setup.exe
pidgin-2.9.0.exe
miranda-im-v0.9.25-unicode.exe
jabbim-win32-0.5.1.exe
spark_2_6_3.exe

čtvrtek 28. července 2011

Aplikace Nokia E72

Jsem uživatelem telefonu Nokia E72, který jsem vyfasoval v práci. Co potřebuji k práci to umí. Cisco VPNka ve spojeni s Putty je skutečně mocný nástroj. Již jsem ze zahradní párty kolegini rekonfiguroval Apache. Chvíli je člověk ve společnosti za autistu, ale dílo na serveru někde v tramtárii se povede. Osobně bych preferoval spíše telefon s Androidem, líbil se mi HTC Desire Z, dnes bych ale radši Samsung Nexus S. Ikdyž na Querty klavesnici jsem si již navykl.

Poznamenám si zde jaké aplikace hojně používám.
Na telefon někdy hodně zanadávám. Více puštěných aplikací telefon značně zpomalí. Někdy jsou reakce Symbianu, i s minimem aplikaci v paměti tak pomalé, že okamžitě dávám restart. Někdy telefon ne a ne komunikovat datově, opět až po restartu. Ale to se mi dlouho nestalo, takže to asi opravil poslední update. Jinak takovou aplikační a uživatelskou perlou je, že po posledním updatu telefonu prostě zahodil veškeré vazby na kontakty. Tím mám na mysli fotky u kontaktů, rychlou volbu vytáření atd.

čtvrtek 21. července 2011

GPSBabel

Kdo používá GPS tak povětčinou bude znát i aplikaci GPSBabel, která toho umí skutečně hodně. Podporuje nepřeberné množství GPS formátů a zařízení. Aplikace je hojně využívána pod Linux/Unix operačnímamy systémy, ale je portována pod kde co jiného. Jelikož si rád z cest na kole i z pěších tůr poznamenávam trasy, tato aplikace mi umožňuje stahovat track logy.

Pro stažení track logu používám následující příkaz:

gpsbabel -t -i garmin -f /dev/ttyUSB0 -o gpx -F DKnL_NA-20110719.gpx

Kde -f ukazuje na zařízení kernel modulu garmin_gps pokud modul nepoužíváme, můžeme použít volbu -f usb: Kolega RSA007 dohledal velmi pěkný příkaz, kterým můžeme z GPS získat tracklog jen z daného dne a hodiny. Přesněji řečeno, pokud máme v ACTIVELOGu zaznamenány data např. z dovolené, kde jsme jezdili na kole, můžeme si takto zpětně vytáhnout jen dané datumové intervaly.

gpsbabel -t -i garmin -f /dev/ttyUSB0 -x track,pack,split,move=+2h,title="DKnL > Nachod # %Y%m%d",start=2011071907,stop=2011071908 -o gpx -F DKnL_NA-20110719-07-08.gpx.gpx

Další variantou, kterou používám je script, který volám pro ulození GPX do GPS při stažení souboru např. z Geocaching.com

cat bin/gpx2gps
#!/bin/bash
FILE=$1
gpsbabel -i gpx -f $FILE -o garmin,power_off=0 -F /dev/ttyUSB0

Někdo možná bude mít dotaz k čemu takový track log je dobrý. Máme možnost si jej nahrát do aplikací jako je GoogleEarth nebo Viking či QLandkarte. Které nám ukáží mapu a pžez ní vidíme naši trasu. Dále můžeme např. získaný GPX soubor importovat do webové aplikace Endomondo nebo jí podobné. Toto občas dělám, když mi selže mobilní aplikace Endomondo. Pokud se extra nudíte, můžeme data z cesty zapsat do pořízených fotografii, pomocí aplikace GPSCorrelate. Po umístění takové fotky do inteligentních galerií se ukazuje fotka na mapě, kde byla pořízena. Ukázka např. na Flickru.

Jakožto vlastník GPS značky Garmin GPSMap 60CSx, musím si zde poznamenat tento odkaz.

pátek 15. července 2011

Test Archiva proxy

Jak otestovat funkčnost archiva proxy ? Toť moje otázka. Vzpoměl jsem si, že jsem kdysi v minulosti kompiloval projekt OpenNMS. A tak jsem oprášil starou dokumentaci, tak tetuji.


Aby Maven věděl, že má používat Archiva proxy, je třeba mu to říct a to v konfiguračním souboru ~/.m2/settings.xml

Pomocí gitu si stáhnu zdrojáky.

mkdir /tmp/test
cd /tmp/test
git clone git://opennms.git.sourceforge.net/gitroot/opennms/opennms
cd opennms
./run-tests.pl
[fbsd /tmp/test/opennms]$ ./run-tests.pl
[INFO] JAVA_HOME = /usr/local/diablo-jdk1.6.0/
[INFO] MVN = /tmp/test/opennms/maven/bin/mvn
[INFO] MAVEN_OPTS = -XX:PermSize=512m -XX:MaxPermSize=1g -Xmx1g -XX:ReservedCodeCacheSize=512m
[INFO] MAVEN_VERSION = 3.0.3
[INFO] running: /usr/local/bin/git clean -fdx .
[INFO] finished successfully
[INFO] running: /tmp/test/opennms/maven/bin/mvn -P!jspc install
[INFO] Scanning for projects......
....
Downloading: http://archiva.smejdil.cz/srv/archiva/repository/releases/dnsjava/dnsjava/2.1.1/dnsjava-2.1.1.jar
...

Vybral jsem jednu z mnoha knihoven dnsjava-2.1.1.jar pro dohledání v logách.

log archiva
2011-07-15 15:03:36 releases smejdil 80.250.16.10 "dnsjava/dnsjava/2.1.1/dnsjava-2.1.1.jar" "Modified File (proxied)"

log apache
80.250.16.10 - - [15/Jul/2011:15:03:36 +0200] "GET /srv/archiva/repository/releases/dnsjava/dnsjava/2.1.1/dnsjava-2.1.1.jar HTTP/1.1" 200 438761 "-" "Apache-Maven/3.0.3 (Java 1.6.0_07; FreeBSD 8.2-RELEASE)"

log tomcat
80.250.16.10 - - [15/Jul/2011:15:03:36 +0200] "GET /srv/archiva/repository/releases/dnsjava/dnsjava/2.1.1/dnsjava-2.1.1.jar HTTP/1.1" 200 438400

Po testu, kdy se stáhnou všechny závislosti ma repo mavenu 52M

Zase po sobe uklidim
rm -rf /tmp/test/

čtvrtek 14. července 2011

Archiva - Artifact Repository Manager

V práci na mě padlo provést aktualizaci Archiva - Artifact Repository Manager http://archiva.apache.org/, což je java aplikace. Něco jako repository pro Linux distribuce, ale Archiva slouží pro Java vývojáře. Aplikace má více rolí a jednou z nich je i Proxy. Jednoduše řečeno vývojáři nemusí ručně stahovat kamsi jednotlivé knihovny. O vše se postará Maven a Archiva. Doposud jsme používali verzi 1.2.2 a nově jsme přešli na aktuální verzi 1.3.5.

Popis prostředí

Jako server pro běh aplikace jsem zvolil Linux Ubunru 10.0.4 LTS 64bit. Aplikace Archiva vyžaduje ke svému běhu web server Apache, Java, Tomcat, Maven a databázi MySQL. Ikdyž existuje i verze Standalone s vlastnim web serverem Jetty. Použíl jsem veryi WAR, která běží pod se deployne v tomcatu.

  • Apache 2.2.14 - ubuntu package + moduly libapache2-mod-jk a libapache2-mod-macro
  • Java 1.6.0_26 64bit - instalována manuálně
  • Tomcat 6.0.26 - instalován manuálně
  • Maven 2.2.1 - instalována manuálně
  • MySQL 5.1.41 - ubuntu package
  • Archiva 1.3.5 - instalována manuálně
Konfigurace

Apache

Nastavení webserveru apache2 jsem řešil dle balíčkové konfigurace.

apt-get install cronolog
apt-get install apache2 libapache2-mod-macro libapache2-mod-jk

joe /etc/apache2/envvars
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_PID_FILE=/var/run/apache2.pid
export APACHE_ARGUMENTS="-Don -Dtrue -Dyes"
export APACHE_FG_INSTANCE_NAME="apache01"

joe /etc/apache2/ports.conf
NameVirtualHost 80.250.16.10:80
Listen 80.250.16.10:80

cd /etc/apache2/mods-enabled
ln -s ../mods-available/rewrite.load ./
ln -s ../mods-available/headers.load ./
ln -s ../mods-available/include.load ./
ln -s ../mods-available/info.conf ./
ln -s ../mods-available/info.load ./
ln -s ../mods-available/macro.load ./
ln -s ../mods-available/macro.conf ./

joe info.conf
joe status.conf
joe jk.conf
joe macro.conf

cd /etc/apache2/sites-
joe default
joe archiva

cd /www/
mkdir -p server_log/apache01/log/

/etc/init.d/apache2 restart


Tomcat

Tomcat byl instalován dle zvyklostí.

ubuntu:~/install/tomcat-6.0.26&gt ./install-tomcat.sh
Instaled 1 Tomcast's
Install tomcat01 ...
patching file catalina.sh
patching file setclasspath.sh
patching file server.xml
patching file tomcat-users.xml

Důležité nastavení je v těchto souborech.

cd /www/server/tomcat01/apache-tomcat
joe bin/setclasspath.sh
...
## Archiva
export CATALINA_OPTS="-Dappserver.home=/www/java/archiva-home -Dappserver.base=/www/java/archiva-home"

joe conf/server.xml

Archiva vyžaduje doinstalovat pár knihoven do tomcat lib

ubuntu:/www/server/tomcat01/apache-tomcat> cat lib/readme-lml.txt
Pridal jsem soubory (jsou potreba pro aplikaci Archiva):
activation-1.1.jar
derby-10.1.3.1.jar
derbytools-10.1.3.1.jar
mail-1.4.jar
mysql-connector-java-5.1.5.jar


Archiva

Je umístěna v adresáři

ubuntu:/www/java/> ls -1
archiva # link na aktualni verzi
archiva-1.2.2 # stara verze
archiva-1.3.5 # aktualni verze
archiva-home # repo conf log atd.

Další konfigurák je v conf adresáři Maven .m2

ubuntu:~/.m2> ls -1
archiva
archiva.xml
repository
settings.xml


Tyto záznamy jsou vesměs pro mě. Podrobně je vše zdokumentováno na tránkách projektu. Pokud bude zájem ještě mám v plánu archivu dokonfigurovat, aby se autentizovala oproti LDAPu.

Ještě malá poznámka na závěr. Verze 1.3.5 nevyžadovala žádné úpravy MySQL tabulek. Udělal jsem dump a ten nalil na nový server, kam jsem aplikaci stěhoval i s archiva-home a vše běží jak má. Na stěhování repo jsem užil rsync.

pondělí 11. července 2011

grub2 Ubuntu and FreeBSD

Na jednom počítači, který dříve okupoval nějaký grafik jsem si již v minulosti instaloval Ubuntu 10.04.2 LTS. Vyhledem k tomu, že tato stanice má 3 disky, rozhodl jsem si po nějaké době opět vyzkoušet FreeBSD 8.2 RELEASE amd64 jako Desktop s Gnome2.

Použil jsem grub jako zavaděč, což je v Ubuntu defaultní zavaděč. Bohužel stávající verze 1.98 zvaná jako grub2 se výrazně změnila co se konfigurování týže. Po instalaci FreeBSD jsem bootnul do Ubuntu a přidal následující.

sudo joe /etc/grub.d/40_custom
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.

menuentry "FreeBSD 8.2 RELEASE amd64" {
insmod ufs2
set root=(hd1,1,a)
search --no-floppy --fs-uuid --set 4a86db44195cac47
kfreebsd /boot/kernel/kernel
kfreebsd_loadenv /boot/device.hints
set kFreeBSD.vfs.root.mountfrom=ufs:/dev/ad8s1a
set kFreeBSD.vfs.root.mountfrom.options=rw
}


Pak už nechat jen vzgenerovat grub.cfg

sudo update-grub

Ten poslední disk jsem se rozhodl použít jako disk pro výměnu dat mezi systémy. Současné ubuntu používá ext4. Namontovat jde, ale FreeBSD naruší journal a je vždy třeba dělat fsck. Proto jsem daný disk naformátoval na ext2, který je ve FreeBSD plně podporován. Je třeba mít podporu v kernelu ext2fs.ko

/dev/ad10s1 on /media/disk (ext2fs, local, nosuid)

[root@lmlpc-bsd ~]# atacontrol list
ATA channel 0:
Master: ad0 ATA/ATAPI revision 5
Slave: acd0 ATA/ATAPI revision 5
ATA channel 2:
Master: no device present
Slave: no device present
ATA channel 3:
Master: no device present
Slave: no device present
ATA channel 4:
Master: ad8 SATA revision 2.x
Slave: no device present
ATA channel 5:
Master: ad10 SATA revision 2.x
Slave: no device present
ATA channel 6:
Master: no device present
Slave: no device present
ATA channel 7:
Master: no device present
Slave: no device present

čtvrtek 7. července 2011

Zabbix monitoruje sám sebe

Právě jsem si do Zabbix serveru přidal Template template_zabbix_server.xml , který se dá stáhnout z blogu autorů "monitoring how busy zabbix processes are" Blog popisuje jednotlivé typy procesů a spoustu dalších podrobností, které Zabbix interně používá. Template je možné použít v současné poslední verzi 1.8.5, využívá hlavně Itemu type Zabbix internal, což je novinka. Na grafech hnedle vidím který typ monitorovacího procesu Zabbixu je přetížen atd.