2024. április 26., péntek

Gyorskeresés

OpenELEC + PXE avagy a valóban merevlemez nélküli HTPC

Írta: | Kulcsszavak: OpenELEC PXE XBMC TFTP LINUX

[ ÚJ BEJEGYZÉS ]

Mindenek előtt egy rövid bemutató videó hogyan is fog kinézni: LINK

A nagy érdeklődésre való tekintettel rávettem magam, hogy elkészítsem ezt a rövid How To-t. Mostanság a munkában is rengeteg ilyen dokumentációt kell készítenem, szóval eggyel több vagy kevesebb :DD

Hozzávalók:
• NAS
• HTPC
• Router
• SAMBA
• Tftpd-hpa
• DHCP(OpenWRT-s router esetén nem szükséges)

NAS
Nem kötelező NAS-nak lenni, lehet egy asztali gép is akár vagy bármi ehhez hasonló(Okos router, bár szerintem az lassú lehet hozzá), csak annyi a feltétele hogy valamilyen Linux dist.(Persze ahhoz hogy a leírást alkalmazható legyen, Windows serverrel is megoldható, kis kiinduló pont LINK) fusson rajta. Jelen esetben nekem egy Gigabyte 525TUD a „NAS”-om lelke, 3Gb RAM és sok-sok tárhellyel. Debian-t használok szervernek, de a leírás Ubuntu-ra is alkalmazható a hasonlóságok miatt, ha ezen kívül valami másod van akkor sajnos nem igen fogok tudni segíteni, tapasztalat hiánya miatt…

HTPC
Bármilyen HTPC, ATOM+ION(csak atom HD film miatt nem ajánlom)/Brazos/vagy ha nagyobbat akarsz amit szeretnél, de nálam:
ZOTAC IONITX-F-E alaplap 4Gb RAM és kb ennyi is, tárhelyet majd kap a szervertől…

De álltalában két részből áll! Egyszer engedélyezni kell magát a Network-boot opciót illetve a boot sorrendben előre kell venni, vagy quickboot menüvel kiválasztani minden indításnál. Mivel minden BIOS-ban kicsit máshol van, így ebben a google a barátod :)

Router
Tp-1043-ast használok OpenWRT-vel, de bármilyen gigabites router megfelel, a régebbi hálót azért nem ajánlom, mert annak kapacitása kb 8-10Mb, elkezdesz nézni egy HD filmet és elfogyott a sávszélességed…(Mielőtt bárki megkérdezni NEM wifi-n nem megoldható )

SSH vagy helyi konzol nyitás tetszés szerint:

sudo su

apt-get update

apt-get install tftpd-hpa
Ezzel feltelepítjük a TFTP szolgáltatás, ő fogja kiküldeni igény esetén a szükséges bootmenüt, és fájlokat(Kernel+OS).
(nem tudom ki milyen szövegszerkesztőt szeret konzolban tetszés szerint lehet választani, én mcedit-elek)

mcedit /etc/default/tftpd-hpa

Itt adjuk meg hogy hol lesz a TFTP helye

cp /usr/lib/syslinux/vesamenu.c32 /srv/tftp/
cp /usr/lib/syslinux/pxelinux.0 /srv/tftp/

ez a fájl lesz a mi boot menünk ami miatt emberi kinézete lesz, lehet hátteret állítani neki stb, de szükség van pár fájlra és mappára hogy megfelelően tudjon működni

mkdir /srv/tftp/pxelinux.cfg

cd /srv/tftp/pxelinux.cfg

mcedit default

Itt kapunk egy üres oldalt és kialakítjuk a bootmenu-t

DEFAULT vesamenu.c32
PROMPT 0
MENU TITLE Gudszent PXE Boot Menu
TIMEOUT 100
LABEL OpenELEC
kernel /srv/tftp/ION/KERNEL
append ip=dhcp boot=SMB=//IP-d/OpenELEC,user=guest disk=SMB=//ip-d/Storage,user=john,password=secret

(Azért írtam két fajta authentikációt mert ez egy bemutató )
A konfigban leírtakhoz hozzuk létre a mappákat:

mkdir /srv/tftp/ION (Itt lesz a kernel)
mkdir /srv/tftp/ION/OpenELEC (Itt lesz az OS img)
mkdir /srv/tftp/ION/Storage
(Ide töli/másolj a config fájlokat magának, illetve ebben az esetben a thumnailek, db-t illetve minden xbmc configot ha alap beállításokat használjuk)

Szerintem minden NAS-on van samba(fájlmegosztás) szerver, ha mégse lenne akkor egy gyors parancs
apt-get install samba

Ha feltelepül:

mcedit /etc/samba/smb.conf

És a végére illesszük be(ezzel létrehozzuk a szükséges megosztásokat)

[OpenELEC]
path = /srv/tftp/ION/OpenELEC
read only = No
guest ok = Yes
browseable = No
[Storage]
path = mkdir /srv/tftp/ION/Storage
read only = No
guest ok = Yes
browseable = No

indítsuk újra a samba-t és így utólak a tftp-t is

/etc/init.d/samba restart
/etc/init.d/tftpd-hpa restart

Már csak az OpenELEC fájlokat kell beszereznünk:

cd /srv/tftp

wget http://releases.openelec.tv/OpenELEC-ION.x86_64-1.95.4.tar.bz2 (Persze az én esetemben(ION))

ezután kicsomagoljuk:

tar –xvf OpenELEC*

Ha ezzel megvagyunk kimásoljuk a 2db szükséges file-t

cp OpenELEC-ION.x86_64-1.95.4/target/SYSTEM /srv/tftp/ION/OpenELEC
cp OpenELEC-ION.x86_64-1.95.4/target/KERNEL /srv/tftp/ION

OpenWRT-s router esetén kiváltható a routerrel
(<3OpenWRT<3)

Utolsó lépésnek pedig egy DHCP szervert fogunk telepíteni, itt lehetnek problémák a routerrel, hogyan van beállítva stb, de nálam szépen működött egymás mellett. Ha 24/7ben megy a NAS-unk akkor érdemes lehet a Router DHCP-jét kikapcsolni és mindent a szerverre bízni. Nem lesz tőle rosszabb a háló, lassabb vagy bármi ilyesmi és itt is be lehet állítani fix ip-t.

apt-get install dhcp3-server

telepítés után konfiguráljuk:

mcedit /etc/dhcp/dhcpd.conf

allow booting;
allow bootp;
ddns-update-style interim;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.50 192.168.1.99;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.1;
filename "pxelinux.0";
}

/etc/init.d/isc-dhcp-server restart

Hozzászólások

(#1) Vladi


Vladi
nagyúr

Menő a tévén a boot. :DD De komolyan. Openelecben nincs valami grafikus boot?

Mindjárt átolvasom, hogy miylen. :R

Nem félünk! Nem félünk! Itthon vagyunk e földön. Nem félünk! Nem félünk! Ez nem maradhat börtön!

(#2) Vladi


Vladi
nagyúr

Észrevételek:

Okos routerről nem biztos, hogy lassú. Elvileg a pxe csak az adatot tolja, a kliensen fut aminek kell.
Más rendszerrel is megy, kb az install parancsokban különbözik.

Meg érdemes kicsit feloldani, hogy mit miért csinálsz és miért így. Magyarázattal.
Mert így elég nyers.

De jó lesz ez, hajrá. :R

Nem félünk! Nem félünk! Itthon vagyunk e földön. Nem félünk! Nem félünk! Ez nem maradhat börtön!

(#3) Otes válasza Vladi (#1) üzenetére


Otes
tag

De van mint látod ki is rakja, de ott még csak a kernelt tölti be, utána átvált :(

Nekem Routerről pedig azért lassó mert 3-4MB-vel tudok róla másolni, és úgy áthúzni 100MB kicsit lassú nekem... megoldható de lassabb lesz sztem...

[ Szerkesztve ]

(#4) Csicsóka


Csicsóka
őstag

Egyszerűbb megoldás, ha a CD előkeresgélése, és onnan másolás helyett feltelepíted a syslinux csomagot. /usr/lib/syslinux-ban ott van a menu.c32 és a pxelinux.0 fájl is. Onnan szerintem egyszerűbb másolni.
Ha jól látom, a pxelinux.0-t még nem is másoltad a helyére, e nélkül nem fog bootolni.

(#5) Otes válasza Csicsóka (#4) üzenetére


Otes
tag

Jogos a pont! Köszönöm!

További hozzászólások megtekintése...
Copyright © 2000-2024 PROHARDVER Informatikai Kft.