Za projekt smo izbrali torrent odjemalec, saj je Raspberry za to idealen. Majhen in z zelo majhno porabo energije. Za osnovo smo vzeli čisto pravi Linux, zasnovan na distribuciji Fedora. V svetu Raspberry Pi so ga poimenovali malo drugače – Pidora. Celoten operacijski sistem zasede okoli 1,5 GB, zato je priporočljiva vsaj 4-GB pomnilniška kartica, za vsak primer raje 8-GB. Sistem si prenesemo s spletne strani www.pidora.ca. Ker vas bo večina to počela iz Windows okolja, potrebujemo še program Win32 Disk Imager, ki ga najdemo na tinyurl.com/at79tgn. Datoteko ZIP, v kateri je Pidora, razširimo in jo s pomočjo Win32 Disk Imagerja prenesemo na pomnilniško kartico. Ko je postopek končan, pomnilniško kartico vstavimo v Raspberry Pi in zabava se lahko začne.

Na začetku nas namestitveni program pozdravi in seznani z licenčnimi pogoji, ki so v nasprotju z večino Windows programov izredno kratki. Sledi izbira tipkovnice, med njimi je seveda slovenska, in že smo pri uporabniku. Ko mu določite ime in geslo, smo že pri nastavitvi časa. To lahko naredite ročno, priporočamo vam omrežno sinhronizacijo. Vse prenastavljene strežnike lahko izbrišete in vpišete ntp1.arnes.si in ntp2.arnes.si. Pri izbiri časovnega pasu je na voljo tudi Ljubljana. Naslednji korak lahko mirno preskočite, 512 MB prostora na disku je dovolj, če Raspberryju zmanjka osnovnega pomnilnika in potrebuje odlagališče. Zadnji korak je izbira, ali se bo sistem zbudil v grafičnem ali tekstovnem načinu. Za naše delo je primernejši slednji, saj grafični zahteva dodaten pomnilnik. Sledi nastavitev, kar malčku vzame nekaj minut, odvisno od velikosti pomnilniške kartice. Po ponovnem zagonu nas pričaka klasičen tekstovni način, v katerega se prijavimo kot root. A bodite pozorni, s tem uporabniškim imenom imate vse pravice, tudi za brisanje sistemskih datotek, kar posledično lahko pomeni, da bo postal Raspberry neuporaben in boste morali začeti z namestitvijo znova. Z malo sreče se to ne bo zgodilo in boste kljub nepoznavanju sistema Linux postavili vse stvari tako, kot je treba. Ob prvi prijavi preverimo z ukazom ifconfig IP-naslov, kajti celotno upravljanje sistema lahko zdaj opravimo na daljavo. Domača omrežja imajo praviloma IP-naslov 192.168.1.X ali 192.168.2.X, prehod (gateway) ima 1, naprave od 50 ali 100 dalje, odvisno od usmerjevalnika.

Za povezavo na Raspberry potrebujemo še program Putty, ki ga najdemo na tinyurl.com/2mp6fh. Z njegovo pomočjo se priklopimo na naš mini strežnik, lahko tudi z več povezavami hkrati. Linux ima nekaj posebnosti, za začetek v tekstovnem načinu na Pidori ne podpira samodejnega mapiranja USB pomnilniških naprav. Slednje bo naše prvo opravilo, da naš sistem prepozna in zna uporabljati USB-pomnilnik. Priporočamo USB-ključek s kapaciteto 32 GB ali več, odvisno, koliko podatkov boste želeli imeti na njem. Lahko priklopite tudi zunanji USB-disk, a mora obvezno imeti lastno napajanje. Linux ne pozna črk pogonov, ampak jih moramo pripeti obstoječim imenikom. Poleg tega je poševnica obrnjena v drugo stran, vse skupaj pa začnemo na vrhu, v "/". Priklopimo USB-pomnilnik in z ukazom dmesg poglejmo, kaj se je zgodilo. Med izpisanimi podatki bodimo pozorni predvsem na kaj v tem slogu:

[ 3.540821] scsi 0:0:0:0: Direct-Access USB 2.0 SD MMC Reader PQ: 0 ANSI: 0 CCS
[ 3.544847] sd 0:0:0:0: [sda] 122809344 512-byte logical blocks: (62.8 GB/58.5 GiB)
[ 3.545446] sd 0:0:0:0: [sda] Write Protect is off
[ 3.545477] sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
[ 3.546185] sd 0:0:0:0: [sda] No Caching mode page present
[ 3.552126] sd 0:0:0:0: Attached scsi generic sg0 type 0
[ 3.559622] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 3.577337] sd 0:0:0:0: [sda] No Caching mode page present
[ 3.589819] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 3.604323] sda: sda1
[ 3.610217] sd 0:0:0:0: [sda] No Caching mode page present
[ 3.615894] sd 0:0:0:0: [sda] Assuming drive cache: write through
[ 3.639065] sd 0:0:0:0: [sda] Attached SCSI removable disk

V našem primeru je sistem zaznal čitalec SD-kartic s pomnilniško kartico kapacitete 64 GB, kot glavno enoto je postavil sda in prvo particijo sda1. Nov pogon je v mapi /dev/, zdaj ga moramo priklopiti na obstoječi imenik. V mapi /mnt/ naredimo novo mapo z imenom usb z ukazom mkdir /mnt/usb. Sledi priklop z ukazom mount /dev/sda1 /mnt/usb. Če sistem ni sporočil nobene napake, nam je uspelo priklopiti zunanji diskovni pogon. Nam to ni uspelo, sistem je sporočil napako, da ne prepozna datotečnega sistema exfat, na srečo pa pozna vfat. Kar je pomenilo, da smo morali USB-ključek ponovno formatirati z ukazom mkfs.vfat /dev/sda1. Ko to naredimo, ponovimo mount ukaz in z df-h preverimo, ali nam je uspelo. Izpis bi moral pokazati nekaj podobnega:


tmpfs 219M 0 219M 0% /sys/fs/cgroup
tmpfs 219M 0 219M 0% /tmp
/dev/sda1 59G 16KB 59G 1% /mnt/usb

Ker želimo imeti USB-pomnilnik ves čas priklopljen, shranimo nastavitve v datoteko /etc/fstab. Linux ima kar nekaj tekstovnih urejevalnikov, morda najbolj domač je nano. Z ukazom nano /etc/fstab vstavimo na konec naslednjo vrstico: /dev/sda1 /mnt/usb auto.

Shranimo z ukazom CTRL+O in ob naslednjem zagonu nam bo operacijski sistem sam priklopil USB-pomnilnik. Program zapustimo z ukazom CTRL+X. Nano bomo še potrebovali pri nastavitvah za torrent in še kakšno malenkost. Za torrent odjemalec smo izbrali Transmission, ki ga nastavimo z ukazom yum install transmission transmission-daemon. Instalacijski program bo sam poskrbel za vse, kar še potrebuje, mi le še potrdimo. Preden začnemo, je treba program nastaviti, osnovne nastavitve dovoljujejo le dostop s strežnika, in ne iz ostalega omrežja. Najprej moramo izklopiti požarni zid, ki ga ima Pidora samodejno vključenega. Lahko bi pisali izjeme, a bomo to tokrat preskočili. To naredimo z naslednjima ukazoma systemctl disable iptables.service in systemctl disable firewalld.service. Z ukazom nano /var/lib/transmission/.config/transmission/settings.json popravimo naslednje nastavitve:

poiščemo "download-dir" in spremenimo mapo, kamor bomo shranjevali datoteke, v "/mnt/usb"
poiščemo "rpc-whitelist": in dovolimo dostop iz celotnega omrežja, namesto številk vpišemo "*.*.*.*"

Popraviti moramo še način, kako bo program deloval, z ukazom nano /usr/lib/systemd/system/transmission-daemon.service poiščemo User in spremenimo uporabnika v root. Zdaj lahko program zaženemo s service transmission-daemon start. Preizkus opravimo z brskalnikom, v naslov vpišemo naslov strežnika in dodamo vrata 9091, kjer nas čaka transmission. V našem primeru http://192.168.1.102:9091. Preizkusimo, ali lahko prenašamo datoteke, na www.mininova.org poiščemo kakšen film, glasbo ali igro, tu so namreč vse datoteke legalne in jih lahko brez skrbi prenašate. Potrebujemo le povezavo (desni klik in Kopiraj povezavo za Firefox), v drugem oknu, kjer imamo odprt Transmission, kliknemo na mapo in s CTRL+V spustimo povezavo ter potrdimo prenos. Transmission čez nekaj trenutkov že začne prenašati. Zdaj pa naš projekt preselimo v zadnjo fazo, saj želimo te datoteke prenesti na osebni računalnik. Najbolj preprosto je s programom PSCP (najdete ga na isti strani kot Putty) oziroma WinSCP, ki ima grafični vmesnik. Za PSCP vpišemo naslednje: pscp -r root@192.168.1.102:/mnt/usb/*. S tem bomo prenesli vse, kar je v mapi /mnt/usb. A če se še malo potrudimo, raje naredimo samostojni datotečni strežnik. Za ta del poskrbi Samba, ki jo nastavimo podobno, kot smo Transmission, yum install samba. Samba je nastala kot odprtokodni projekt na Microsoftove in Novellove datotečne strežnike in jo lahko nastavimo zelo različno, za naše potrebe ne bomo zahtevali uporabniškega imena in gesla za dostop. Nastavitvena datoteka je /etc/samba/smb.conf, ki jo bomo prepisali s svojo. Z ukazom rm /etc/samba/smb.conf izbrišemo osnovno in nastavimo novo z nano /etc/samba/smb.conf. Prepišemo naslednje podatke:

[global]
workgroup = WORKGROUP
server string = MediaServer
security = user
map to guest = Bad User
dns proxy = no

[usb]
path = /mnt/usb/
public = yes
only guest = yes
writable = yes
force user = root
write list = root

Ko to vpišemo, zaženemo Sambo z ukazom service smb start. V Windows preverimo, ali lahko dostopamo do mape z vpisom v Explorer \\192.168.1.102\usb. Če je vse pravilno, bi morali že videti datoteke, ki smo jih prenesli. Za konec poskrbimo le še za to, da se bosta Transmission in Samba samodejno zagnala skupaj z zagonom sistema, systemctl enable smb in systemctl enable transmission-daemon. Tako, naš mini torrent strežnik je postavljen in pripravljen za 24-urno delo. Za kaj več pa priporočamo poglobitev v sistem Linux. In vam obenem zagotavljamo, da vam ne bo žal.

Moj mikro, november december 2013 | Alan Orlič