A Raspberry Pi lehetőségei korlátlanok, vannak olyanok, amelyekhez azért nem árt komolyabb technikai felkészültség, netán egy forrasztópáka, de akadnak olyan hasznos projektek is, amelyekhez nem kell bepiszkolni a kezünket, mégis hasznos és szórakoztató lehet.
A címből már látható, hogy nagyjából miről fog szólni ez a bemutató. A lényege, hogy mit kezdjünk akkor, ha ott van a kezünkben egy Pi, és van otthon elfekvőben egy (lehetőleg) jó nagy USB-s winchester. Könnyedén fájl szervert építhetünk ezek segítéségével. Előnyeit nem kell ecsetelni nagyon, de röviden: a Pi segítségével megoszthatjuk a hálózatunkon a merevlemezt és annak tartalmát, amit később használhatunk biztonsági mentésre, média tárolásra, vagy közös munkára.
Kezdjünk bele a műveletbe. Feltételezzük, hogy a Pi-n már fut valamilyen – itt preferált a Raspian Wheezy – operációs rendszer. Indítsunk egy terminált a gépen, vagy nyissunk egy SSH kapcsolatot a Pi-ra asztali számítógépünkről. Ha ez megvan, gépeljük be a következő parancsokat, majd figyeljük a „kimenetét”.
tail -f /var/log/messages
Ezzel nem teszünk mást, mint a /var/log alatt lévő messages fájl tartalmát figyeljük. Ide kerül be többek között az az üzenet is, amikor valamit csatlakoztatunk a Pi-hoz. Dugjuk tehát be az USB port-ba a külső merevlemezt, és figyeljük az SSH ablakot, hogy milyen üzeneteket kapunk.
Ha mindent jól csináltunk, itt olyan soroknak kell megjelenni, amik tartalmazzák a „new USB device found” szavakat, majd később meg is jelenik a meghajtó – valószínűleg – /dev/sda néven. Ha valami ilyesmit látunk még további adatok mellett, akkor minden rendben van, egy CTRL+C lenyomásával megszakíthatjuk az előző parancsot. A lényeget már tudjuk, hogy milyen néven ismerte fel a Linux a merevlemezt.
Most csinálunk egy helyet, ahova csatlakoztatni tudjuk a merevlemezt, hogy a tartalmát el is tudjuk érni. Adjuk ki folyamatosan ezeket a parancsokat a terminálba, vagy az SSH kapcsolaton a programban:
Készítsük el a könyvtárat:
sudo mkdir /media/USBDRIVE
Mountoljuk, azaz csatlakoztassuk az eszközt a megfelelő beállításokkal a helyre. Ebben az esetben feltételezzük, hogy NTFS formátumra van formázva a meghajtó.
sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda1 /media/USBDRIVE/
Ha tudjuk, hogy FAT32 formátumú a meghajtó, akkor a következő parancsot adjuk ki:
sudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /media/USBDRIVE/
Ha netán olyan hibaüzenetet kapunk, hogy az ntfs-3g nem támogatott, semmi pánik, a következő paranccsal tudjuk orvosolni a hibát, telepítjük a hiányzó szoftvert, majd ismét próbálkozzunk meg az előzővel.
sudo apt-get install ntfs-3g
Ezzel máris megvagyunk ez első lépéssel, a meghajtót látja a Pi, és fel is van csatlakoztatva. Ellenőrizzük le, lépjünk be a mappába: cd /media/USBDRIVE és adjuk ki az ls parancsot. Ekkor az USB-s merevlemez gyökerében lévő fájlokat és mappákat fogja kilistázni a terminálba a Pi.
Viszont ha most újraindítjuk a rendszert, kezdhetünk minden elölről, nem fogja megjegyezni a beállításokat a Linux. Mi sem könnyebb azonban, mint hogy megmondjuk neki, végezze el ezeket a parancsokat induláskor.
Mentsük le a biztonság kedvéért az fstab nevű fájlt, ami a csatolási információkat tárolja:
sudo cp /etc/fstab /etc/fstab.backup
Ezek után nyissuk meg a fájlt a következő paranccsal:
sudo mcedit /etc/fstab
Ha azt a hibát kapjuk, hogy nem található ez a parancs, akkor az előbb már megismert parancs segítségével telepíthetjük:
sudo apt-get install mc
A programból, ha megnyitottuk a fájlt, és a következő sort beleírtuk az F10 billentyű lenyomásával tudunk kilépni. Ezt a sort vigyük fel:
/dev/sda1 /media/USBDRIVE ntfs-3g rw,defaults 0 0
Ha ez kész, még állítsuk be a jogosultságokat:
sudo chmod 775 /media/USBDRIVE
Meg is vagyunk, innentől a Pi minden egyes indítást követően automatikusan felcsatolja a merevlemezt, ha az elérhető. Ha a külső HDD-nek kell táp, természetesen fontos, hogy legyen bekapcsolva.
A Pi tehát már látja a merevlemez tartalmát, most már csak azt kell megoldani, hogy a hálózaton is megossza. Pár parancs után erre is könnyedén rávehetjük.
Frissítsük a telepítési információkat tartalmazó állományokat, ha még nem tettük volna meg, majd telepítsük a samba programot, aminek a segítségével tudjuk Windows hálózaton elérni a fájlokat.
sudo apt-get update
sudo apt-get install samba samba-common-bin
Frissítés és telepítés után készen áll a samba a megosztásra, már csak létre kell hozni egy felhasználót és beállítani pár dolgot:
sudo smbpasswd -a pi
Adjunk meg egy jelszót, amivel majd később elérjük a hálózaton keresztül a merevlemez tartalmát. Ha ez kész, akkor a samba beállításokat tartalmazó fájlt (amit telepítéskor generált) szépen a már megismert módon lementjük a biztonság kedvéért:
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.backup
Szerkesszük a fájlt:
sudo mc/etc/samba/smb.conf
Első lépésben a munkacsoport, azaz WORKGROUP részt keressük meg. Windows XP, illetve Vista alatt érdemes erre beállítani (ugyanis ezeknél ez az alapértelmezett telepítéskor)
workgroup = WORKGROUP
Ha Windows 7-et vagy Windows 8-at használunk, akkor más az alapértelmezett:
workgroup = HOME
Természetesen, ha mi ezt korábban beállítottuk másra, akkor azt használjuk.
Engedélyezzük a biztonsági beállításoknál a belépéseket, azaz vegyük ki a # jelet a következő sor elől:
security = user
A jobb teljesítmény érdekében érdemes a következő sor elől is kivenni a komment (#) jelet:
socket options = TCP_NODELAY
Ne adjuk fel, mindjárt itt a vége, csak létre kell hozni az USB meghajtóhoz tartozó beállításokat:
[USB]
path = /media/USBDRIVE
comment = My USB Drive
valid users = pi
writeable = yes
browseable = yes
Mentsük el a fájlt, és lépjünk ki a szerkesztőből. Indítsuk újra a samba szolgáltatást:
sudo /etc/init.d/samba restart
Valami hasonlót kell látnunk:
[ok] Stopping Samba daemons: nmbd smdb.
[ok] Starting Samba daemons: nmbd smdb.
Ha ez így történt, akkor a hálózaton vagyunk, gratulálunk! Na jó, de milyen néven is? Derítsük ki, a Pi milyen címen érhető el a hálózaton. Ehhez adjuk ki a következő tömör és rövid parancsot:
hostname
Amit visszaír a Pi, azzal a címmel már a Windows-t futtató számítógépek is elérik azt. Legegyszerűbb, ha nyitunk egy Start menüt, és oda beírjuk a következőt (kacsacsőrök nélkül):
\\<a hostnev amit kaptunk az előbb>
Ekkor egy új ablaknak kellene felbukkanni, ahol látni kellene az USB néven megosztott külső merevlemezt. Ha így van, kattintsunk a mappára. Ne ijedjünk meg, felhasználónevet és jelszót fog kérni. Adjuk meg azt, amit az imént beállítottunk. Voila, kész is a fájlszerverünk! A legnagyobb kényelem érdekében érdemes egy hálózati meghajtóként csatlakoztatni a Pi által megosztott könyvtárat. Kattintsunk jobb egérrel a mappán, és csatlakoztassuk egy nekünk tetsző meghajtó névvel. Ha gond lenne a csatlakozással, kicsit túrjuk fel az internetet, van pár tuti tipp, például a titkosítás visszaállítása. Ez szokott rendszeresen előfordulni, de általában megoldható.