Video και Audio

Arch & XBMC eden-11

14/01/2012 05:43 μμ | martinoff από martinoff


Τις τελευταίες μέρες στην προσπάθεια να καθαρίσω την αποθήκη μάζεψα ότι παλαιό είχα από αποσυρμένα pc και αντί να τα πετάξω στην ανακύκλωση είπα να τους δώσω μια ευκαιρία να ζωντανέψουν

 

O λόγος για ένα intel pentium D 3.0 Ghz,motherboard gigabyte GA-8I945PLGE-RH, RAM Kingston 667Mhz DDR2, GPU Nvidia GT-8500 256MB και ένα noname PSU 400W

 

Tο πείραμα :

 

HTPC με Standalone XBMC

 

Το Xbmc είναι ένα media player που παίζει σχεδόν τα πάντα και χωρίς πολλές γρίνιες, οι περισσότερες γρίνιες αφορούν τον ήχο σε δύσκολα format (TRUE-HD,DTS-MA κτλ)

Το XBMC κυκλοφορεί και σαν live cd με την ονομασία openelec το οποίο στηρίζεται πάνω σε Ubuntu αρκετά ποιο ελαφρωμένο από το γνήσιο

 

Tο Xbmc όμως μπορεί να τρέξει σε οποιαδήποτε διανομή linux (και όχι μόνο) και αυτό θα κάνουμε και εμείς

 

H απάντηση γιατί σε άλλη διανομή και όχι σαν openelec είναι πολύ απλή


  •  
  • γιατί το hardware μας είναι παλιό και θέλουμε κάτι ελαφρύ
  • γιατί βγάζουμε σπυριά να τρέχει ένα VM σαν root
  • γιατί δεν χρειάζεται να κάνουμε εγκατάσταση άλλο ένα OS στο PC μας
  • γιατί δεν θέλουμε να αλλάξουμε συνήθειες
  • γιατί είμαστε fanboy του Arch

 

Τα βήματα που θα γράψω είναι τα απαραίτητα και χωρίς πολλές εξηγήσεις μιας και υπάρχει το πολύ αναλυτικό άρθρο στο wiki του Arch το οποίο και συνιστώ να το επισκεφθείτε πρώτο πριν το google στην αναζήτηση πληροφοριών για τυχόν προβλήματα η απορίες

 

Ας ξεκινήσουμε

 

Κατεβάζουμε το τελευταίο iso για την αρχιτεκτονική μας, εάν ο cpu μας το υποστηρίζει εννοείτε προτιμάμε το x86-64 (64 bit), επίσης συνιστώ το netinstall αντί του core εάν έχουμε net στο pc μας για να εγκαταστήσουμε κατευθείαν τα τελευταία πακέτα

Σε περιβάλλον windows το "καίμε" σε χαμηλή ταχύτητα σε ένα cd με το poweriso πχ, η μπορούμε να χρησιμοποιήσουμε και ένα usb stick με το pendrive

Σε περιβάλλον linux πολύ εύκολα το κάνουμε σε ένα usb stick με την εντολή η αν μας φαίνεται δύσκολο με το πρόγραμμα της διανομής μας (για gnome το brasero)

>dd if=/path/to/arch.iso of=/δεν/sdx

όπου x το γράμμα του usb stick που μπορούμε να βρούμε με την εντολή

>#fdisk -l

 

Ρυθμίζουμε το bios με πρώτη επιλογή boot το μέσο που θα χρησιμοποιήσουμε (cd η usb) η πατάμε συνήθως F12 η F2 (ανάλογα το motherboard που έχουμε )

Aφού φορτώσει το live-cd μας έχουμε μερικές επιλογές για boot από το cd, boot από το υπάρχον OS και έλεγχο της μνήμης ram

Στην πρώτη εικόνα επιλέγουμε

Boot Arch Linux

και θα βγούμε σε κονσόλα

Η πρώτη εντολή που πρέπει να δώσουμε είναι

>/arch/setup

για να ξεκινήσουμε την εγκατάσταση

πάμε πρώτη επιλογή το

Select Source

όπου επιλέγουμε το core-remote και multilib-remote (για 64 δεν υπάρχει αυτή η επιλογή)

Επιλέγουμε με space και πατάμε ok

 

Επιλέγουμε ένα server κοντά μας (otenet και ntua είναι καλές επιλογές)

 

Οk συνέχεια μέχρι να μας ρωτήσει αν θέλουμε να δώσουμε dhcp στο ethernet και επιλέγουμε Yes( ποιο μετά θα δώσουμε static ip αλλά εδώ είναι ποιο εύκολο να αφήσουμε dhcp)

εάν όλα πήγαν καλά θα δούμε

The Network was Configured Ok

 

Επόμενη επιλογή

Set Editor

Επιλέγουμε το ποιο εύκολο nano, εάν επιλέξετε vi που σημαίνει ότι το κατέχετε σταματήστε το διάβασμα τώρα γιατί δεν αφορά εσάς :P

 

Set Clock

Επιλέγουμε Europe και μετά Athens

Στην επιλογή

Set Time and Date, επιλέγουμε ntp

Eλέγχουμε εάν πήρε σωστή ώρα και επιλέγουμε

Looks good,back το main menu

 

Prepare Hard Drive

H ποιο εύκολη επιλογή είναι αυτό prepare και αυτή χρησιμοποιούμε,

*για να αποφύγετε να χρησιμοποιείστε το γαλλικό λεξιλόγιο σας θα πρότεινα να αφήσετε συνδεμένο μόνο το δίσκο που θέλετε να κάνετε εγκατάσταση

* εάν θέλουμε να το εγκαταστήσουμε παράλληλα με κάποιο άλλο λογισμικό σας προτείνω να ετοιμάσετε τα partitions του δίσκου πριν με το live gparted και σε αυτό το στάδιο να επιλέξετε

Manually configure block devices, filesystem and mountpoints

 

Φυσικά μπορούμε να το κάνουμε και εδώ χειροκίνητα με το cfdisk η fdisk (που αν το κάνετε και πάλι δεν καταλαβαίνω γιατί συνεχίζεται και διαβάζετε) αλλά επιμένω στο gparted

η πρώτη επιλογή είναι το /boot partition και έχει προεπιλεγμένο 100MB το αφήνουμε όπως είναι και προχωράμε (και με 50MB είναι καλά όμως το Αrch)

το επόμενο partition είναι το swap και έχει προεπιλογή 256MB

Η αρχή για το swap είναι το διπλάσιο από την μνήμη μας αλλα εάν έχουμε πάνω από 4GB μνήμη δεν το χρειαζόμαστε καν και εάν έχουμε 2GB αλλα 2GB swap είναι πολύ καλά

για το / partition (root) επιλέγουμε το λιγότερο 6GB (προτείνω 10GB) και το υπόλοιπο για το /home μας

 

Η επόμενη επιλογή είναι σε τι Filesystem θα είναι το / και /home partition και επιλέγουμε ext4

Μας ζητάει επιβεβαίωση απαντάμε yes και τα partition μας είναι έτοιμα (εάν διαλέξατε λάθος δίσκο είναι η ώρα να αρχίσετε τα γαλλικά σας μιας και κάνανε φτερά όλα τα δεδομένα του δίσκου σας)

 

Return το Main Menu

 

Επόμενη επιλογή

Select Packages

και εδώ μας ρωτάει τι bootloader θα χρησιμοποιήσουμε

επιλέγουμε grub (σίγουρη λύση και άπειρη πληροφορία στο net για τυχόν προβλήματα σε dual-boot)

μετά επιλέγουμε και τις τρεις επιλογές


  1.  
  2. base
  3. base-devel
  4. multilib

 

(είπαμε επιλογή με το space)

 

Θα μας βγάλει μια μεγάλη λίστα εάν θέλουμε να προσθέσουμε και άλλα πακέτα και βρίσκουμε και επιλέγουμε τα openssh και sudo

Ok και Install Packages και ξεκινάει το κατέβασμα και εγκατάσταση

 

Πίνουμε το καφέ μας, το τσιγάρο δεν κάνει καλό και ρίχνουμε καμιά ματιά στο net μέχρι να τελειώσει

 

Πατάμε Continue όταν τελειώσει και πάμε στη επόμενη επιλογή

 

Configure Systeme

Εδώ πρέπει να δώσουμε προσοχή μιας και πρόκειται για τα αρχεία του συστήματος μας και είναι πολύ σημαντικά για την σταθερότητα του συστήματος

στην πρώτη επιλογή που αφορά το αρχείο rc.conf πατάμε enter

και σε αυτό το αρχείο πρέπει να αλλάξουμε μερικές επιλογές

(εάν σας τρομάξει η μαυρίλα που θα ανοίξει μπροστά σας μην κολλάτε δεν είναι DOS και είναι εύκολο)

 

πάμε με το down στην επιλογή

και γράφουμε μέσα στην παρένθεση fuse

MODULES=(fuse)

πάμε πιο κάτω στο HOSTNAME και αντί του myhost γράφουμε την ονομασία που θέλουμε να δώσουμε στο pc μας, ας το ονομάσουμε xbmc

HOSTNAME="xbmc"

στην τελευταία γραμμή στους daemons προσθέτουμε ntpd sshd netfs

DAEMONS=(syslog-ng dbus network ntpd netfs sshd crond)

 

*προσέχουμε την σειρά όπως στο παράδειγμα και γενικά ότι χρειαστεί να προσθέσουμε μετά θα είναι στο τέλος

Αφού σιγουρευτούμε ότι είναι όλα σωστά σώζομε με ctrl+Χ μάς ζητάει επιβεβαίωση πατάμε y και enter

Δεν αλλάζουμε κάτι άλλο αλλά πάμε στην τελευταία επιλογή

Root-Password

και βάζουμε το password που θέλουμε (δεν θα δούμε γράμματα αστέρια η κάτι, το γράφουμε και πατάμε enter)

Μας ζητάει επιβεβαίωση, ξανά γράφουμε το password και enter

Done return to main menu

 

Ιnstall Βootloader

Εδώ πριν το εγκαταστήσει το grub-bootloader θα μας ανοίξει το configuration file του για τυχών αλλαγές που θέλουμε να κάνουμε

Αν έχουμε άλλο λογισμικό στον ίδιο δίσκο( η θα βάλουμε μετά) και θέλουμε dual-boot είναι απαραίτητο ένα καλό διάβασμα στο wiki του grub

Για την ώρα δεν αλλάζουμε κάτι, πατάμε ctrl+x για να κλείσει

Μας ρωτάει σε ποιο δίσκο θα κάνει εγκατάσταση, εδώ μια καλή επιλογή είναι ο πρώτος δίσκος επιλεγμένος στο bios για boot αρα /dev/sda

Grub was successfully installed

 

πάμε στην τελευταία επιλογή

Exit Install

 

ελπίζουμε ότι όλα πήγαν καλά και εδώ πατάμε reboot (εάν έχουμε στο bios πρώτη επιλογή boot από cd όταν κάνει reboot το pc δεν ξεχνάμε να το βγάλουμε)

 

Σε αυτή την φάση έχουμε μια νέα εγκατάσταση Arch Linux στο pc μας έτοιμο και ενημερωμένο με τα τελευταία πακέτα

Επόμενο βήμα διαμόρφωση και προετοιμασία του συστήματος μας για να εγκαταστήσουμε το XBMC

 

Αφού κάνει restart το pc μας βγάζει σε κονσόλα και ζητάει login, δίνουμε

root

και password ότι βάλαμε πριν, θυμίζω στο password δεν βλέπουμε κάτι απλά το γράφουμε σωστά και πατάμε enter

 

*Στης εντολές που θα δούμε από εδώ και μετά το # σημαίνει ότι είμαστε root (διαχειριστές) στο σύστημα και το $ ότι είμαστε απλοί user

 

H πρώτη εντολή είναι να συγχρονίσουμε το σύστημα μας

># pacman -Syyu

 

Πάμε να ρυθμίσουμε static ip για το σύστημά μας, για να το κάνουμε θα πρέπει να επεξεργαστούμε το αρχείο /etc/rc.conf με την εντολή

># nano /etc/rc.conf

στο

>interface=etho
address=
netmask=
broadcast=
gateway=

βάζουμε

>interface=eth0
address=192.168.1.105        ==> μια ελεύθερη ip στο δίκτυό μας
netmask=255.255.255.0        ==> το netmask του δικτύου μας
broadcast=192.168.1.200      ==> την τελευταία ip που δίνει το router μας, αυτή η επιλογή δεν είναι απαραίτητη μπορούμε να την αφήσουμε κενή 
gateway=192.168.1.1          ==> την ip του router μας

 

ctrl+o σώζουμε

ctrl+x βγαίνουμε

 

δίνουμε την εντολή

># rc.d restart network

 

ρυθμίζουμε το αρχείο /etc/resolv.conf με την εντολή

># nano /etc/resolv.conf

και προσθέτουμε στο τέλος την ip του royter μας

>nameserver 192.168.1.1

ctrl+x

y

enter

δίνουμε ξανά

># rc.d restart network

 

δοκιμάζουμε εάν όλα είναι καλά με την εντολή

># ping -c 3 google.com

εάν έχουμε πρόβλημα τρέχουμε στο wiki network

 

σε αυτή την φάση πλέον μπορούμε να ρυθμίσουμε το σύστημα μας και απομακρυσμένα με ssh

από windows με putty και από linux(freebsd,mac κτλ unix) με κονσόλα με την εντολή

>$ ssh [email protected]

την ip που δώσαμε πριν στο Arch

 

 

 

Εγκαθιστούμε τα απαραίτητα για το xorg με

># pacman -S xorg-server xorg-server-utils xorg-xinit xorg-utils

 

εάν έχεις ati και έχεις διαβάσει μέχρι εδώ ήρθε η ώρα να σου πω

you are now ar your own risk.Good Luck

για την κάρτα γραφικών μας

># pacman -S nvidia nvdia-utils vdpau-video 

 

της απαραίτητες βιβλιοθήκες για το xbmc

># pacman -S xine-lib wavpack mesa libbluray bluez 

 

διάφορα απαραίτητα πακέτα

># pacman -S dbus fuse samba alsa-utils pulseaudio ntp consolekit upower slim

 

φτιάχνουμε τον νέο μας user με την εντολή

># adduser

>Login name for new user = ότι σας κατέβει
User ID ('UID') bla bla = τίποτα πατάμε enter
Initial group = τίποτα πατάμε enter
Additional groups 0comma separated []= power,wheel,audio,video,disk,storage
Home directory= τίποτα
Shell= τίποτα
Expiry date = τίποτα

πατάμε συνέχεια enter μέχρι να μας ρωτήσει για το password του νέου user όπου βάζουμε ένα και ο πρώτος μας user είναι έτοιμος

 

Πάμε να βάλουμε το user στους sudoers

>#EDITOR=nano visudo

κατεβαίνουμε κάτω εκεί που θα δούμε

>root ALL=(ALL) ALL

και προσθέτουμε από κάτω το όνομα του user που δημιουργήσαμε πριν

>root ALL=(ALL) ALL
user ALL=(ALL) ALL

 

ctrl+x

y

enter

 

 

πάμε να φτιάξουμε το xinitrc

 

κάνουμε login σαν user

(εάν έχουμε κάνει login σαν root με την εντολή)

># su - onoma-user

 

>$ nano .xinitrc

και γράφουμε κάτω (αν θέλουμε διαγράφουμε ότι έχει μέσα)

>/usr/bin/start-pulseaudio-x11 &
exec ck-launch-session xbmc --standalone --fs

 

για να πάρουμε μια γεύση από xbmc θα εγκαταστήσουμε το xbmc drama-10 από το repo, εάν θέλετε να μην το κάνετε παρακάμπτετε αυτό το βήμα

># pacman -Sy xbmc

 

πάμε να ρυθμίσουμε το slim (login manger) να κάνει autologin στο xbmc κατευθείαν

># nano /etc/slim.conf

βρίσκουμε την γραμμή

>login_cmd   exec /bin/bash -login ~/.xinitrc %session

και προσθέτουμε

>login_cmd   exec ck-launch-session /bin/bash -login ~/.xinitrc %session

βρίσκουμε την γραμμή

>#default_user  simeone

βγάζουμε την δίεση # και αντί simeone βάζουμε το user μας

>#auto_login    no

βγάζουμε δίεση # και αντί no το κάνουμε yes

 

βαζουμε το slim στους daemon με

># nano /etc/rc.conf

και προσθέτουμε

>DAEMONS=( .... bla bla slim)

 

είμαστε έτυμοι να κάνουμε restart

># reboot

 

αν τα κάναμε όλα σωστά θα βγούμε στο γραφικό περιβάλλον του xbmc

 

Πάμε να εγκαταστήσουμε τώρα το Xbmc eden-11 beta από source

 

κάνουμε login σαν user (μην ξεχνάμε μπορούμε να κάνουμε login me ssh για να μην βγάλουμε τα μάτια μας στην tv)

Πριν εγκαταστήσουμε το xbmc-eden συνιστω να ρυθμίσουμε το αρχείο /etc/makepkg.conf ώστε να εκμεταλλευτούμε πλήρως το cpu μας όταν θα κάνουμε compile το xbmc

># nano /etc/makepkg.conf

βρίσκουμε την γραμμή

>...

CFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
CXXFLAGS="-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -D_FORTIFY_SOURCE=2"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu"
#-- Make Flags: change this for DistCC/SMP systems
#MAKEFLAGS="-j2"

...

το κάνουμε

>...

CFLAGS="-march=native -O2 -pipe"
CXXFLAGS="$CFLAGS"
LDFLAGS="-Wl,-O1,--sort-common,--as-needed,-z,relro,--hash-style=gnu"
#-- Make Flags: change this for DistCC/SMP systems
MAKEFLAGS="-j3" ==> εδώ βάζουμε όσα core έχει ο cpu μας +1 εάν έχουμε τετραπύρινο βάζουμε 5 

...

ο ποιο εύκολος τρόπος να δείτε τα core του cpu είναι να εγκαταστήσετε το πακέτο htop

 

 

για να είμαστε και όπως αρμόζει στην διανομή μας δλδ blending edge βάζουμε και ένα aurhelper, στην περίπτωσή μας packer για να κάνουμε update το σύστημα και τα πακέτα από aur εύκολα

 

>$ wget http://aur.archlinux.org/packages/pa/packer/packer.tar.gz

>$ tar zxvf packer.tar.gz

>$ cd packer

>$ makepkg -s

>$ sudo pacman -U packer-*.tar.xz

 

τώρα αναβαθμίζουμε όλο το σύστημα μας με την εντολή (δεν τρέχουμε ποτέ το packer σαν root)

>$ packer -Syu

 

αφού έχουμε κάνει login σαν user

>$ packer -S --noedit xbmc-eden-git

 

 

Σε αυτό το στάδιο αρχίζει η βροχή και μόλις γίνατε hacker :P

 

Ανάλογα με το cpu που έχουμε θα πρέπει να δείξουμε λίγη υπομονή γιατί θα αργήσει

 

 

Είμαστε έτοιμοι και μόλις εγκαταστήσαμε το τελευταίο xbmc-eden-beta από source

 

 

to be continued με μερικά tricks για σωστή ρύθμιση xorg.conf για να δούμε άριστα 24p

 

ΚΑΛΕΣ ΘΕΑΣΕΙΣ