Posts Tagged ‘ubuntu’

Levélküldés tesztelése

Wednesday, August 25th, 2010

Manapság már nem nagy dolog olyan alkalmazást fejleszteni ami emailt tud küldeni. Ellenben fejlesztés alatt egyáltalán nem biztos, hogy szerencsés, ha a valódi felhasználók a fejlesztők viccesebbnél viccesebb tárgyú leveleit kapják kézhez (pl. szerződését díjrendezettség hiányában töröltük, stb). Ezt elkerülendő lehet mindenféle if-eket írni a kódba, de ez sajnos megváltoztatja a program működését, és ezzel a metódussal elég sok potenciális hibaforrást elrejthetünk a kódban. Célszerűbb csinálni egy saját smtp szervert, ami e leveleket fogadja, de nem küldi ki, hanem lementi egy könyvtárba.

Erre a legegyszerűbb megoldás linux alatt a fakemail nevű program, ami a phytonnal együtt jön.

Tehát a telepítés

sudo apt-get install python

Az indítás (pl. init.d-ből)

sudo su -c ‘fakemail.py –host=voji.hu –port=10025 –path=/var/samba/servers/smtp –background’ voji

A lényeg a ‘ ‘ jelek közötti rész, a su -c csak azért felel, hogy voji userként fusson a szerver.

A paraméterek:

  • host – a cím, ahol a szerver fut
  • port – port ahol hallgatózik majd az smtp szerverünk
  • path – könyvtár ahova a leveleket lementi amit a szerveren keresztül küldenek.
  • background – háttérben fusson, ne a konzolon

Mindenkinek saját dns szervert

Friday, June 11th, 2010

Amennyiben az otthoni számítógépünk nem rendelkezik fix ip-címmel, sokat segíthet a DynDNS szolgáltatás. Ennek segítségével beregisztrálhatunk magunknak egy tetszőleges domain nevet (ingyen) és a szolgáltatáshoz adott kis kliens program segítségével (linux alatt ddclient apt-get-tel telepíthető) az otthoni gépünk mindig frissítheti a saját dns-éhez tartozó ip címét (tehát akkor is elérhetjük a gépünket, ha a gonosz szolgáltató más ip-t adott neki).

Tegyük fel, adott Lajos, aki szeretné a számítógépét elérni otthonról. Beregisztrálja magának a lajos.homeip.net címet. Ezek után az otthoni számítógépét mindig eléri ezen a címen, aminek nagyon örül. Ellenben ha Lajos belső hálózatot is használ, akkor két dolgot tapasztalhat:

1. Olyan szerencsés, hogy a routere támogatja a nat loopback funkciót, és ha beírja otthon, hogy lajos.homeip.net akkor minden működik

2. Nem szerencsés

A nem szerencsés esetet két féle képpen orvosolhatjuk. Ha beírjuk a hostfile-ba, hogy lajos.homeip.net az a szerver lokális ip címe (pl 192.168.2.1). Ez jó, de ha Lajos hazamegy, midnig át kell írnia a host-fájlt, ha meg elmegy otthonról midnig vissza kell írni. Lássuk be ez nem a legelegánsabb megoldás.

Másik alternatíva, hogy Lajos saját dns szervert csinál. Ez azért is hasznos, mert megismeri a DNS szerverek működését, és felépítését (persze csak nagyon felületesen) és mert lát ilyet is…

Linux alatt dns szerverre a bind nevű csomagot szokták használni, amit az alábbi módon telepíthetünk:

sudo apt-get install bind9

Ezekután már van jól működő DNS szerverünk, ami a 67-68 udp portokon üzemel már csak konfigurálni kell. A dns szerver konfigurációját az alábbi helyen találjuk: /etc/bind

Ide kell két fájlt létrehoznunk, ami alapján a dns szerver megoldja majd a név-ip és ip-név fordítást.
db.1.168.192
;
$TTL 604800
@ IN SOA localhost. lajos.homeip.net. (
28 ; Serial
604800 ; Refresh
86400 ; Retry
241920 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS localhost.
2 IN PTR lajos.homeip.net.

db.homeip.net
;
$TTL 604800
@ IN SOA homeip.net. lajos.homeip.net. (
28 ; Serial
604800 ; Refresh
86400 ; Retry
241920 ; Expire
604800 ) ; Negative Cache TTL
;

@ IN NS dns1.hu.
@ IN NS dns2.hu.

@ IN A 204.13.248.119
www IN A 204.13.248.119
lajos IN A 192.168.1.2

Az db.1.168.192 nevű fájl megmondja, hogy a 192.168.1 tartományban a 2 ip cím (192.168.1.2) az nem más mint a lajos.homeip.net.

A második db.homeip.net nevű fájl pedig megmondja, hogy a homeip.net domainban a sima hivatkozás nemmás mint a homeip.net szerver neve (ezt ping homeip.net-el meg lehet tudni), és a lajos.homeip.net pedig nemmás mint a 192.168.1.2 ami a szerverünk címe…

Ezek után már csak használni kell ezeket a fájlokat, a named.conf.local fájlba fel kell venni az alábbi két sort:

include “/etc/bind/zones.rfc1918″;

zone “1.168.192.in-addr.arpa” {
type master;
file “/etc/bind/db.1.168.192″;
};

zone “homeip.net” {
type master;
file “/etc/bind/db.homeip.net”;
};

Ezek után kell egy bind újraindítás (/etc/init.d/bind9 restart), ha elrontottunk valamit arról a var/log/syslog-ban fogunk kapni infót.

Az eredményről magunk is meggyőződhetünk:

dig @localhost lajos.homeip.net

Értelemszerűen a dhcp szervernek meg kell adni, hogy a DNS szerver címe a lokális szerver (192.168.1.2) legyen.

Websphere telepítése Ubuntu alá

Tuesday, May 11th, 2010

Régi topic, de időnként mindig beleütközök…

sudo unlink /bin/sh
sudo ln -s /bin/bash /bin/sh

Csak ez után települ/működik (mert szakemberek írták)

Trac upgrade után nincs wiki editing toolbár

Saturday, May 1st, 2010

Kijött egy újabb LTS ubuntu release is, és frissítés után majdnem minden működött, csak a trac-ból tűnt el a toolbar (igazából az tűnt fel, hogy a wyswyg editor tűnt el, az csak később esett le, hogy egyébként is kellene ott lennie még másnak is). A napló fájl a barátunk (bár kerestem azért a hibát majdnem 1 óráig, aztán jutott eszembe, hogy csekkolni kellene), és láthatjuk is mi a baj:

2010-05-01 16:15:31,606 Trac[chrome] WARNING: File js/jquery.js not found in any of ['/usr/lib/python2.6/dist-packages/trac/htdocs']
2010-05-01 16:15:31,621 Trac[main] WARNING: HTTPNotFound: 404 Not Found (File js/jquery.js not found)

Nincs nagy trükk, itt megvan a fájl: /usr/share/pyshared/trac/htdocs/js/

Itt pedig nincs: /usr/lib/python2.6/dist-packages/trac/htdocs

A megoldás innen már elég egyértelmű:
ln -s /usr/share/pyshared/trac/htdocs/js/jquery.js /usr/lib/python2.6/dist-packages/trac/htdocs/js/jquery.js

XFCE Ubuntu alatt

Sunday, September 20th, 2009

XFCE telepítése:
sudo aptitude update && sudo aptitude install xubuntu-desktop

Az alapértelmezett session managert az alábbi utasítással állíthatjuk be:
sudo update-alternatives --config x-window-manager

Ubuntu CPU és alaplap típusa

Saturday, September 13th, 2008

cpu:
cat /proc/cpuinfo
alaplap:
sudo dmidecode | more

mstsc és tsclient

Monday, January 21st, 2008

Ha az ember a windows beépített terminál szerverét használja (msts) akkor módja van arra, hogy a kapcsolódó gép fájlrendszerét elérje a bejelentkezés ideje alatt, ha ezt engedélyezi. Ezen elérés látszik explorer alatt, ellenben total commander alatt nem.
Ahhoz, hogy ezt a meghajtót el tudjuk érni, nem kell mást tennünk mint beírni ezt a parancsot total commanderbe:

cd \\tsclient

És már látszanak is a kliens oldali megosztot meghajtók ügyesen.

Alkalmazás kimenete log fájlba

Wednesday, January 2nd, 2008

Aki sokat használ konzolos alkalmazásokat, gyakran beleütközhet abba, hogy szüksége van az alkalmazás outputjára egy fájlban. Ez elég egyszerű feladat, és az alábbi módon lehet megoldani:
test.exe > out.log

Ha nem csak a sima kimenetet szeretnénk látni a fájlban, hanem a hibacsatornára kerülő dolgokat is, az alábbit kell tennünk:
test.exe 2>&1 > out.log

Egy picit elegánsabb megoldás, ha a kimenetet kiírjuk fájlba, ugyanakkor kiírjuk a képernyőre is:
test.exe 2>&1 | tee out.log

A log fájlok nézegetésére egy jó megoldás a less utasítás. Amennyiben úgy szeretnénk nézni a napló fájlt, hogy az új bejegyzéseket is azonnal lássuk, azt az alábbi módon tehetjük meg egyszerűen:
less +M out.log