Linux ja ID-kaart

jaanuar 20, 2008

ID-kaardi lugeja ühendamine ning kasutamine Linuxi all – üldiselt on see lihtne, aga hoolimata kõigest võib esineda probleeme mille lahendamine võib teinekord päevi võtta.

Üldiselt tuleb alustada siit : http://ideelabor.ee/id-kaart/linux – paigalda vajalikud paketid, käivita vajalik tarkvara, laadi vajalik moodul Firefoxi’le ning asu aga kasutama.

Gentoo õpetus on ehk natuke liiga pikk, üldjoontes käib asi nii:

/etc/portage/package.use faili tuleb lisada rida

dev-libs/opensc pcsc-lite

seejärel installeerida vajalik tarkvara

emerge sys-apps/pcsc-lite
emerge app-crypt/ccid
emerge dev-libs/opensc

ning käivitada deemon:

/etc/init.d/pcscd start

Lisame selle ka bootimisel käivitatavate programmide hulka

rc-update add pcscd default

Kui kaardilugeja on ühendatud, siis eduka toimimise puhul peaks umbes sellist asja nägema

$ opensc-tool --list-readers
Readers known about:
Nr. Driver Name
0 pcsc SCM SCR 331 (60102616) 00 00

Nagu näha, siis on edukalt ühendatud lugeja SCR331 (selliseid jagas vahepeal ntx Haridus- ja Teadusministeerium). Kui aga väljundis ei näidata ühtegi lugejat tuleks hakata uurima logisid või proovida käivitada nii, et teated tuleks kohe konsoolile:

/usr/sbin/pcscd -f -d

Võimalikud probleemid ja lahendused
Logis on peale pcscd käivitamist selline tekst:

...
localhost pcscd: ccid_usb.c:397:OpenUSBByName() Found Vendor/Product: 04E6/E001 (SCM SCR 331)
localhost pcscd: ccid_usb.c:399:OpenUSBByName() Using USB bus/device: 002/004
localhost pcscd: ccid_usb.c:719:ccid_check_firmware() Firmware (4.13) is bogus! Upgrade the reader firmware or get a new reader.
localhost pcscd: ifdhandler.c:95:IFDHCreateChannelByName() failed
localhost pcscd: readerfactory.c:1152:RFInitializeReader() Open Port 200000 Failed (usb:04e6/e001:libusb:002)
localhost pcscd: readerfactory.c:1025:RFUnloadReader() Unloading reader driver.
localhost pcscd: readerfactory.c:252:RFAddReader() SCM SCR 331 (60102616) init failed.
...

Aitas see, kui tootja lehelt (Näiteks scr331 puhul http://www.scmmicro.com/support/pcs_downloads.php -> Trieber/Firmware -> SCR331/SCR531 CCID USB -> Windows XP -> aksepteeri EULA -> Witer ning laadi endale “Firmware” sektsioonist .zip fail. Selle jooksutamiseks tuleb küll windowsi masin leida (või oskab keegi kommenteerida kas see wine all ka õnnestuks) ning oma lugejas olev tarkvara ära uuendada.

Kõik peaks toimima, aga .. logides on midagi analoogset (PowerUP failed)

...
localhost pcscd: ifdhandler.c:841:IFDHPowerICC() lun: 0, action: PowerUp
localhost pcscd: commands.c:200:CmdPowerOn Card absent or mute
localhost pcscd: ifdhandler.c:877:IFDHPowerICC() PowerUp failed
localhost pcscd: eventhandler.c:431:EHStatusHandlerThread() Card inserted into SCM SCR 331 (60102616) 00 00
localhost pcscd: eventhandler.c:445:EHStatusHandlerThread() Error powering up card.
localhost pcscd: winscard.c:362:SCardConnect() Card Not Powered
...

Küllap võib siin palju teisigi muresid olla, minul konkreetselt aga tuli välja, et kaart ise on katki. Töökaaslase id-kaart näiteks töötas perfektselt. Seetõttu tuleb lähipäevil KMA’s ära käia.

Lõpuks veel asjalikke linke
http://ideelabor.ee/id-kaart/linux Üldine õpetus
http://ideelabor.ee/opensource/wiki/IdKaardiTarkvara/UnixiKaardilugejad millised lugejad on toetatud
http://ideelabor.ee/opensource/wiki/IdKaardiTarkvara/Gentoo Gentoo õpetus
http://ideelabor.ee/opensource/wiki/IdKaardiTarkvara/UbuntuLinux tiba parem selgitus vigade kohta

http://ideelabor.ee/opensource/wiki/IdKaardiTarkvara/SuvalineUnix
seadistuste kohta
Paar sõna Firefoxile mooduli lisamsiest


Mis värk selle lehekülgedeks jagamisega ikkagi on?

jaanuar 16, 2008

Te kõik olete ju näinud ja kogenud seda – leiate lingi lehele kus peaks olema teid huvitav informatsioon, avate selle ja leiategi selle mida vaja…

… ainuke häda, et kogu artikkel on löödud väikesteks alamosadeks ning jaotatud laiali mitme eraldi lehe peale. Kohutavalt ebamugav lugeda või mingit konkreetselt tekstijuppi otsida.

Ja küsimus ei ole ju mitte ainult ühes saidis, vaid seda kasutatakse massiliselt! On arusaadav, et tänases päevas, kus lugejale tuleb võimalikult palju reklaami näidata selline lähenemine õigustab ennast. Aga on ka teine pool – nimelt minu esimese suurema tarkvaraprojekti juures ütles projektijuht mulle, et lehekülgedeks jaotamine on hea – inimestele ei meeldi pikka lehekülge kerida. Olla isegi mingeid analüüse tehtud, et kui info ei ole lehe avamisel kohe näha, siis on see kasutu leht (siinkohal, palju õnne Delfile ja teitsele reklaamiorjadele). Ehk, inimene pigem klõpsib “next -> next -> next” kui kasutab hiire rulli.

Mul on selle kõige pärast tunne, et ma ei ole normaalne. Mulle meeldib Firefoxi “ctrl+f” kasutada, ning ka hiire rulliku läbisõit on väga suur. Ka lehekülje mõningane laadimisaja pikenemine ei ole probleemiks kui info on vaja kätte saada – kokkuvõttes võtab ju jaotatud lehekülgede klõpsimine ning kordi rohkema reklaami laadimine rohkem aega ja võrguresurssi kui ühe lehe tõmbamine.

Aga mis teie arvate? Ootaks mõne jaotamise pooldaja arvamust.


DigiTV, dünaamiline IP ja doomen

jaanuar 10, 2008

Enne DigiTV saabumist oli teenusepakkujaks Starman (sealjuures, ei ühtegi halba sõna!) ning siis oli välismaailmast ligipääsu probleem lahendatud dyndns.org teenuse kaudu. Lahendus ise seisnes selles, et Linuxi bootimise ajal tõmmati ddclient nimeline programm käima mis teatas dyndns serverile oma IP aadressi ning nõnda sai .dyndns.org kaudu ilusasti oma masinale ligi.
DigiTV puhul aga selline lahendus enam ei tööta. Nimelt on ruuter ise arvuti ning tekitab enda taha privaatvõrgu, nii et kui arvuti dhcp’ga endale IP saab siis on see privaatvõrgu oma ning dyndns’ile selle teatamine ei anna kopika eestki mingit kasu. Samamoodi ei leidnud ma vähese proovimise järel ühtegi võimalust ruuteri välist IP aadressi kuidagi välja uurida, ei ping, route ega traceroute seda kätte ei näidanud. Et mis siis edasi? Esimene mõte, et tuleb sajakroonine lisakulutus teha ja endale staatiline IP aadress tellida?!

Lahendus
On tegelikult lihtsam kui oleks osanud algul arvatagi. Nimelt oskab ruuteris olev tarkvara ise dyndns (ja paljude teiste analoogsete teenusepakkujate) kliendi funktsionaalsust täita. Selle kasutamiseks tuleb oma masinas avada browser, minna aadressile 192.168.1.254, liikuda Toolbox -> Dynamic DNS. Vaikimisi on see see sektsioon disabletud.
Edasi tuleb valida ülevalt paremast äärest “Configure”, vajutada linnuke valikule “enabled” ning täita ülejäänud seadistuste lahtid. “Host” juures tuleb tähele panna, et kirja tuleb panna _terve_ hosti nimi koos doomeniga (ei tasu lootma jääda, et ruuter ise oskab kokku panna .. Edasi “Apply” ja ongi olemas.

Edasi jääb teha veel portide suunamine – Toolbox -> Firewall -> “Assign a game or application to a local network device” ning avanenud lehel lisada näiteks ssh ja http protokollid suunaga oma arvutile.

Edit 19.02.2008: Tundub, et vahepeal on digiboxi softi uuendatud, ja enam ei pea hosti nime koos teenuse doomeniga sisestama.


AU840 ja Linuxi kooskasutamisest

jaanuar 6, 2008

AU840
Peale Elioni DigiTV’ga liitumist õnnestus endale saada pisike mobiilne multimeediakeskus AU840. Riistapuu oskab nii muusikat mängida, videosid esitada kui ka tekstifaile näidata. Ka raadiot mängimine või heli salvestamine pole probleemiks. Kettamahtu konkreetsel seadmel 2GB.

Kui aeg jõudis sinna maale, et hakata arvutist faile seadmesse laadima tekkisid probleemid. Kuigi toote lehel on toetatud OS’ideks märgitud ainult windowsid aga kodus on ainult Linux, siis sellegi poolest oli ju tahtmine proovida mis saab. USB kaabel külge ja.. error, dmesg näitas sellist hädakisa:

usb 2-5: new full speed USB device using ohci_hcd and address 2
usb 2-5: device descriptor read/64, error -62
usb 2-5: device descriptor read/64, error -62
usb 2-5: new full speed USB device using ohci_hcd and address 3
usb 2-5: new full speed USB device using ohci_hcd and address 4
usb 2-5: device descriptor read/64, error -110
usb 2-5: device descriptor read/64, error -110
usb 2-5: new full speed USB device using ohci_hcd and address 5
usb 2-5: device descriptor read/64, error -110
usb 2-5: device descriptor read/64, error -110
usb 2-5: new full speed USB device using ohci_hcd and address 6
usb 2-5: device not accepting address 6, error -110
usb 2-5: new full speed USB device using ohci_hcd and address 7
usb 2-5: device not accepting address 7, error -110

Peale väikest googeldamist oli ainuke mõistlikuna tunduv lahendus uuesti ühendamine. Lasin seadme lõpuni laadida (uh, lugege korralikult manuali, selle jubina laadimine on üsna peen teadus) ning peale juhtme uuesti külgepistmist tuligi kerneli teadetesse et seade on leitud.
Kui seade mounditud, sai musa ja filmid seadmesse kopeeritud ja katsetatud. mp3′ed mängivad ilusasti, kuigi lugude kerimist ei ole mul õnnestunud veel kasutada. Võibolla failide viga? UI jätab tegelikult natuke soovida, sest alustuseks pannakse esimene/viimatimängitud lugu mängima ja siis saab alles hakata otsima lugu mida tahad tegelikult kuulata.

Videodega oli aga natuke keerulisem. Toetatud on küll .avi failid, aga arvutist võetud neli esimest faili said vastuseks “File Format Error”.
Seadmega on kaasas CD, seal olev converter sai wine abil ilusti ära installeeritud, aga kasu sellest polnud midagi. Esiteks on programmis kasutatud fondid katki (nupudel paistavad ainult mingid imelikud märgid seega orenteeruma peab manualis olevate screenshot’ide järgi) ning tulemusfail mis tekkis oli vigane.
Lähemal uurimisel selgus, et programmil on aga asjalik .ini fail ning et tegelikult on programm frontendiks mencoder nimelisele programmile. Mencoder programmi saamiseks gentoo all on vaja see kompileerida võtmega encode ning samuti on vajalik xvid võti.

Näide kuidas ümber teha fail “minu_video.mpg” failiks “test.avi”

> mencoder -ofps 20 -vf-add scale=224:176 -vf-add expand=224:176:-1:-1:1 -srate 44100 -ovc xvid -xvidencopts bitrate=500:max_bframes=0:quant_type=h263 -oac lavc minu_video.mpg -o converted/test.avi

Nõnda ongi põhilised mured murtud ja jääb üle ainult laadida, konvertida ja nautida!


Üks humoorikas seik aastavahetusest

jaanuar 2, 2008

Oli juba hämaraks kiskumas kui kahest autost koosnev kolonn hakkas lähenema Lõuna-Eestis asuva ürituse toimumise kohta. Sai ühendust võetud sõbraga, ürituse peremehega, nagu kokkulepitud ja seda selleks, et ta tuleks meile oma autoga suure tee peale vastu. Ja nagu plaan ette nägi, nii ka läks. Jõudsime kokkulepitud asulasse ja kokkulepitult ootas tee ääres sinine Opel. Kolonn peatus. Sinine Opel keeras otsa ringi ning sõitis ilusti meist mööda ning keeras metsavahele, meie järgi. Kohe läks pedaalitallamiseks, tekitades imestust, et küll kohalikud alles kihutavad. Olles vast kilomeetri sõitnud helistab sõber…

“KUS te olete?!”

“…. ee.. AGA KAS ME SIIS EI SÕIDA SINU JÄREL?!”

“ei. ma ootan teid tee ääres..”

-pidur-

Sinine Opel kadus silmist, metsavahele…

Ilmnes, et huumor ründas meid ilma pikemalt ette teatamata ja kõige keerulisemal hetkel. Keerasime metsavahel otsa ümber, ning suure tee peale tagasi jõudes saime ka sõbraga üsna varsti kokku (vahepeale jäi veel oma asukoha määramine tingimustes kus linna inimesele ainuke hea objekt oma kordinaatide kirjeldamiseks oli “.. erm, ma näen kolme.. EI, nelja puud”). Järgnes söök, jook, mõnus saun, lumesadu, Eesti-Läti ilutulestik ja puhas huumor:)

Aga mida võis mõelda tolle teise Opeli juht?
a) Näe, sõbrad jõudsidki, nüüd meie juurde.. sõidame-sõidame – EH?! miks nad seisma jäid või kuhu kadusid?
b) Nii, telefonikõne tehtud, aeg tagasi koju sõita. .. huvitav miks need vandid mulle sappa võtsid? pedaali .. uh, maha raputasin
c) …