Σελ. 1 από 74 12361121 ... ΤελευταίαΤελευταία
Εμφάνιση 1-15 από 1110
  1. #1
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    How-To: Arch Linux - Στοχεύστε στο κέντρο του Desktop ή του file server

    1. ΕΙΣΑΓΩΓΗ

    To Arch είναι μία διανομή φαινομενικά δυσκολότερη στο να στηθεί καί από το Debian. Αν συνεχίσετε όμως επί της οθόνης, θα διαπιστώσετε πολύ γρήγορα ότι τα φαινόμενα απατούν.

    Πάμε λοιπόν.

    [break=Απαιτήσεις Γνώσεων]
    2. ΑΠΑΙΤΗΣΕΙΣ ΓΝΩΣΕΩΝ

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Απαιτήσεις Γνώσεων

    [break=Απαιτήσεις Hardware]
    3. ΑΠΑΙΤΗΣΕΙΣ HARDWARE

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Απαιτήσεις Hardware

    [break=Απαιτήσεις Software]
    4. ΑΠΑΙΤΗΣΕΙΣ SOFTWARE

    Από software χρειαζόμαστε:

    Για το Arch:
    - το τελευταίο base installation CD (αρχείο ISO) του Arch που βρίσκουμε για την αρχιτεκτονική μας, είτε x86_64 είτε i686 δηλαδή:

    Πάμε στον κατάλογο:

    Κώδικας:
    .../iso/2008.06/...
    Και τραβάμε αντίστοιχα:

    Κώδικας:
    ----> .../x86_64/archlinux-2008.06-core-x86_64.iso
    ----> .../i686/archlinux-2008.06-core-i686.iso
    (στο εξής οι δύο αρχιτεκτονικές θα ονομάζονται amd64 και x86 αντίστοιχα)

    Τα παραπάνω τα κατεβάζουμε από τα Arch Mirrors.

    Επιπλέον χρειαζόμαστε:
    - Ένα Linux Live-CD που να προσφέρει γραφικό περιβάλλον και τη δυνατότητα να εγκατασταθούν κάποια πακέτα από εκεί. Π.χ. ένα τέτοιο πολύ καλό είναι το live-CD του Ubuntu. Κατεβάζουμε λοιπόν το live-CD του Ubuntu για την αρχιτεκτονική μας

    Τα live-CDs αυτά τα βρίσκουμε στα Mirrors του Ubuntu.

    Τέλος, αν υπάρχει διαθέσιμος στο τοπικό δίκτυο LAN (στο ίδιο subnet) και ένας δεύτερος υπολογιστής, και αυτός τρέχει μόνο Windows NT-Class, χρειαζόμαστε καί το PuTTY.

    [break=Ξεκινάμε με το BIOS]
    5. ΞΕΚΙΝΑΜΕ ΜΕ ΤΟ BIOS

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Ξεκινάμε με το BIOS

    [break=Οργάνωση Partitions]
    6. ΟΡΓΑΝΩΣΗ PARTITIONS

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Οργάνωση Partitions

    Επίσης:

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Παράδειγμα fstab

    Συν το swap:

    Κώδικας:
    /dev/sda3	swap		swap		defaults
    όπου προφανώς προσέχουμε μήπως αλλάζει η αρίθμηση του partition.

    Αφού λοιπόν αποφασίσουμε για το σχήμα partitioning που θα χρησιμοποιήσουμε, φτιάχνουμε προσεκτικά σε ένα χαρτί τακτοποιημένα και οργανωμένα, τις 4 παραπάνω στήλες με τις πληροφορίες αυτές, και το φυλάμε γιατί θα μας χρειαστεί αργότερα.

    [break=Βασική Εγκατάσταση]
    7. ΒΑΣΙΚΗ ΕΓΚΑΤΑΣΤΑΣΗ

    Θέτουμε στο BIOS του μηχανήματος να κάνει εκκίνηση από το CD-ROM, βάζουμε μέσα το τελευταίο base installation CD του Arch (για την αρχιτεκτονική μας) που κατεβάσαμε και στο boot: prompt πατάμε Enter.

    Αφού ξεκινήσει το CD κάποια στιγμή θα μας βγάλει μήνυμα:

    "Πατήστε Enter για να μπείτε σε ένα bash shell"

    Υπακούμε και πατάμε Enter.

    Δίνουμε:

    Κώδικας:
    cd /
    /arch/setup
    ώστε να ξεκινήσει ο απλός text-mode installer του Arch.

    Πάμε λοιπόν:

    Εδώ χρειάζεται λίγη προσοχή καθώς ξεκινά ο installer.

    Ο installer είναι σειριακός και "χειροκίνητος" με "μανιβέλα", αλλά όταν τελειώσουμε από εδώ δεν θα χρειαστεί να πειράξουμε σχεδόν κανένα άλλο conf αρχείο για χρόνια (και δεν είναι υπερβολή αυτό).

    Άρα προσέχουμε ώστε:

    - να πηγαίνουμε με τα βελάκια σε μία-μία επιλογή - ΟΠΩΣΔΗΠΟΤΕ ΜΕ ΤΗ ΣΕΙΡΑ από πάνω προς τα κάτω.
    - όταν τελειώνουμε με μία επιλογή να πατάμε DONE για να ξαναβγούμε στο κεντρικό μενού
    - μετά να πηγαίνουμε μία επιλογή πιο κάτω γιατί ο κέρσορας θα είναι ακόμα σε αυτήν που είμασταν πριν
    - να μην πάμε ξανά πίσω σε κάποια επιλογή, αλλά ΠΑΝΤΑ στην επόμενη

    [break=Δημιουργία Partitions]
    8. ΔΗΜΙΟΥΡΓΙΑ PARTITIONS

    Επιλέγουμε Prepare Hard Drive.

    Εδώ ΠΕΡΙΣΣΕΙΑ ΠΡΟΣΟΧΗ.

    - επιλέγουμε "χειροκίνητο" partitioning
    - επιλέγουμε τον φυσικό σκληρό δίσκο που θέλουμε να κάνουμε partitioning

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Δημιουργία Partitions

    Όταν τελειώσουμε με όλα όσα θέλουμε πατάμε DONE.

    [break=Δήλωση Partitions]
    9. ΔΗΛΩΣΗ PARTITIONS

    Επιλέγουμε Set Filesystem Mountpoints.

    Για τη δήλωση των partitions ο installer θα μας ρωτά κατά σειρά:

    α. Ποιό partition θα έχει καθένα από τους ρόλους που έχουμε επιλέξει (π.χ. "/", "/boot", "/home" κλπ.)

    β. Τί είδους σύστημα αρχείων θα έχει αυτό το partition (π.χ. ext3, reiserfs, xfs κλπ.)

    γ. Αν θέλουμε να φορμαριστεί το partition ή να διατηρηθούν τα δεδομένα που περιέχει.

    Για όλα τα παραπάνω θα συμβουλευόμαστε το χαρτάκι μας και θα απαντάμε ανάλογα με ΠΕΡΙΣΣΕΙΑ ΠΡΟΣΟΧΗ.

    Άρα θα ερωτηθούμε κατά σειρά για:

    - το swap partition
    ----> στο παράδειγμά μας έχουμε επιλέξει το sda3
    ----> του λέμε να το φορμάρει
    Θυμηθείτε ότι μπορείτε κάλλιστα να μοιράζεστε το swap partition μεταξύ κάμποσων διανομών Linux.

    - το "/" partition
    ----> στο παράδειγμά μας έχουμε επιλέξει το sda2
    ----> στο παράδειγμά μας έχουμε επιλέξει ext4 σύστημα αρχείων
    ----> του λέμε να το φορμάρει

    Αυτά είναι - κατά τον installer - τα "υποχρεωτικά" partitions (και λογικό είναι).

    Στο εξής θα μας ρωτήσει "ποιά άλλα partitions θέλετε να ορίσετε".

    Είναι προφανές ότι θα ορίσουμε όσα ακόμα χρειαζόμαστε (αυτά που έχουμε στο χαρτάκι μας), και ότι δεν είναι υποχρεωτικό να χρησιμοποιήσουμε όλα τα υπάρχοντα partitions των δίσκων.

    Επίσης θα πρέπει να προσέξετε εάν κάποιο από αυτά τα partitions θα τα χρησιμοποιείτε από κοινού με τυχόν άλλες διανομές που έχετε στο μηχανάκι σας (π.χ. κοινά "/boot", "/home" κλπ.).

    Σε αυτή την περίπτωση θα πρέπει να προσέξετε να επιλέξετε το ίδιο σύστημα αρχείων που ήδη έχει το συγκεκριμένο partition, και φυσικά να ΜΗΝ φορμαριστεί ώστε να μην χάσετε τα δεδομένα σας.

    Άρα επιλέγουμε κατά σειρά:

    - το "sda1" partition
    ----> στο παράδειγμά μας έχουμε επιλέξει ext3 σύστημα αρχείων (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)
    ----> στο παράδειγμά μας το ορίσαμε σαν "/boot"
    ----> του λέμε να το φορμάρει (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)

    - το "sda6" partition
    ----> στο παράδειγμά μας έχουμε επιλέξει xfs σύστημα αρχείων (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)
    ----> στο παράδειγμά μας το ορίσαμε σαν "/home"
    ----> του λέμε να το φορμάρει (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)

    - το "sda5" partition
    ----> στο παράδειγμά μας έχουμε επιλέξει ext4 σύστημα αρχείων (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)
    ----> στο παράδειγμά μας το ορίσαμε σαν "/mnt/repos"
    ----> του λέμε να το φορμάρει (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)

    - το "sda7" partition
    ----> στο παράδειγμά μας έχουμε επιλέξει xfs σύστημα αρχείων (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)
    ----> στο παράδειγμά μας το ορίσαμε σαν "/mnt/data"
    ----> του λέμε να το φορμάρει (ΠΡΟΣΟΧΗ στην περίπτωση κοινής χρήσης)

    Άρα με βάση τις παραπάνω οδηγίες και το σχήμα partitioning που επιλέξατε φτιάχνετε τα partitions σας (στην εικόνα φαίνεται η τελική κατάσταση - στο περίπου - του συγκεκριμένου παραδείγματός μας).

    Όταν τελειώσουμε με όλα όσα θέλουμε πατάμε DONE.

    [break=Επιλογή Βασικών Πακέτων]
    10. ΕΠΙΛΟΓΗ ΒΑΣΙΚΩΝ ΠΑΚΕΤΩΝ

    Επιλέγουμε Select Packages.

    α. Θα ερωτηθούμε από ποιά πηγή θα γίνει η εγκατάσταση -> επιλέγουμε από το CD

    β. Θα μας παρουσιαστούν όλα τα οπτικά drives του συστήματός μας -> επιλέγουμε αυτό το οποίο χρησιμοποιούμε (συνήθως θα είναι το πρώτο στη λίστα)

    γ.- Θα ερωτηθούμε αν θέλουμε να γίνει αυτόματα mount το οπτικό drive -> απαντάμε ΝΑΙ

    Στο βήμα β παρουσιάζονται και τα πραγματικά device names των οπτικών σας drives. Σημειώστε τα σε ένα χαρτάκι - δεν θα χάσετε - καθώς κατά πάσα πιθανότητα θα είναι τα ίδια και στο σύστημά σας μετά.

    Το CD αυτό έχει μόνο τα base πακέτα, των οποίων η εγκατάσταση είναι υποχρεωτική.

    Τα επιλέγουμε όλα λοιπόν (απαξάπαντα) και του λέμε να τα εγκαταστήσει.

    Όταν τελειώσουμε με όλα όσα θέλουμε πατάμε DONE.

    [break=Εγκατάσταση Βασικών Πακέτων]
    11. ΕΓΚΑΤΑΣΤΑΣΗ ΒΑΣΙΚΩΝ ΠΑΚΕΤΩΝ

    Επιλέγουμε Install Packages.

    Όταν τελειώσουν πατάμε DONE.

    [break=Βασικές Ρυθμίσεις Συστήματος]
    12. ΒΑΣΙΚΕΣ ΡΥΘΜΙΣΕΙΣ ΣΥΣΤΗΜΑΤΟΣ

    Επιλέγουμε Configure System.

    Εδώ αμέσως θα καταλάβετε ένα από τα μεγάλα πλεονεκτήματα του Arch καθώς έχει μία φιλοσοφία απλότητας σε όλα - και φαίνεται αυτό καί στα conf αρχεία του.

    Αυτά είναι δομημένα έτσι ώστε:

    - να είναι σχεδόν όλες οι ρυθμίσεις σε ένα αρχείο -> είναι σχεδόν όλες στο /etc/rc.conf

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

    - η προρύθμιση αυτών των αρχείων τώρα, να ελαχιστοποιεί τις πιθανότητες να χρειαστείτε ποτέ ξανά να τα αγγίξετε (θα καταλάβετε παρακάτω γιατί)

    Άρα λοιπόν εδώ θα μπαίνετε ΜΕ ΤΗ ΣΕΙΡΑ σε ένα-ένα από τα conf αρχεία, θα κάνετε τις αλλαγές που χρειάζονται, θα κάνετε save, και θα βγαίνετε.

    ΠΡΟΣΟΧΗ !!!

    Παρακάτω αναφέρονται ΜΟΝΟ τα αρχεία στα οποία θα κάνετε αλλαγές στο παρόν στάδιο.

    Τα υπόλοιπα αρχεία προς το παρόν δεν τα πειράζετε καθόλου.

    Επιλέξτε λοιπόν σαν editor τον nano.

    Να γνωρίζετε ότι με Ctrl+O κάνετε Save και με Ctrl+X βγαίνετε.

    Στα παρακάτω θα βάζετε τις γραμμές όπως τις βλέπετε - εκτός αν κάπου ρητά δηλωθεί να πράξετε διαφορετικά.

    Πάμε λοιπόν:

    - /etc/rc.conf

    Το θεμελιωδέστερο conf αρχείο του Arch.

    Εδώ μας ενδιαφέρουν οι παρακάτω γραμμές:

    Στο κομμάτι LOCALIZATION:

    Κώδικας:
    LOCALE="en_US.utf8"
    HARDWARECLOCK="localtime"
    TIMEZONE="Europe/Athens"
    KEYMAP="us"
    Στο κομμάτι HARDWARE:

    Κώδικας:
    MOD_AUTOLOAD="yes"
    MOD_BLACKLIST=()
    USELVM="no"
    Επίσης:

    Κώδικας:
    MODULES=(powernow-k8 !r8169 !skge !sky2)
    Εδώ δηλώνετε:

    - ποιά kernel modules θα φορτώνονται οπωσδήποτε στην αρχή
    - με ποιά επακριβώς σειρά θα φορτώνονται
    - ποιά kernel modules να μην φορτώνονται

    Η σειρά αυτή έχει πολύ μεγάλη σημασία για υπολογιστές που έχουν π.χ. πάνω από μία κάρτες δικτύου (οι περισσότεροι τα 2-3 τελευταία χρόνια).

    Εδώ χρειάζεται αρκετή προσοχή.

    Ύστερα από κάποια σχετικά πρόσφατα udpates στα initscripts του Arch, φαίνεται να αγνοείται σχεδόν πάντα η γραμμή MODULES=, σε ό,τι αφορά τη σειρά των interfaces, που πλέον είναι τυχαία.

    Άρα λοιπόν ο μόνος τρόπος για να πετύχετε να λάβει το eth0 μία συγκεκριμένη κάρτα δικτύου είναι:
    - να βάλετε οπωσδήποτε θαυμαστικό μπροστά απ' όλες τις υπόλοιπες κάρτες δικτύου


    π.χ. μερικά συνήθη kernel modules για δικτυακά interfaces:

    - nVidia nForce chipsets -> forcedeth
    - Realtek 8169 (καί 8110) -> r8169
    - Marvell Yukon -> skge (για τα 88E0xx) ή sky2 (για τα νεότερα 88E5xx)

    κλπ.

    Γενικά εσείς δεν θα χρειαστεί να προσθέσετε ή να αφαιρέσετε κάποιο, απλά να αλλάξετε τη σειρά τους κατά το δοκούν.

    Τέλος, εδώ είναι μία πολύ καλή ευκαιρία να δηλώσετε το module για τον PowerSaving Governor του επεξεργαστή σας (ασχολούμαστε με αυτό το βήμα μόνο εάν έχετε επεξεργαστή που υποστηρίζει power throttling - εάν δεν έχετε τέτοιον αγνοήστε τα περί power throttling module).

    Τέτοιοι επεξεργαστές είναι μόνο οι AMD Athlon64(X2) και Phenom-X4/3 Athlon-II-X4/3 Phenom-II-X4/3 (καί οι αντίστοιχοι Opteron και Sempron) και οι Intel Pentium-4 και Core (2) Solo/Duo και Core i5/7 (και οι αντίστοιχοι Xeon και Celeron).

    Τώρα εδώ θέλει λιγάκι ψάξιμο η υπόθεση. Πρέπει να βρούμε πώς ονομάζεται το module του πυρήνα που αναλαμβάνει αυτή τη δουλειά για τον επεξεργαστή μας. Το όνομά του θα αλλάζει ανάλογα με την αρχιτεκτονική μας και τον επεξεργαστή μας.

    π.χ. για τους AMD K8 & K10 λέγεται:

    Κώδικας:
    powernow-k8.ko
    ενώ για τους Core2 & Core i5/7 λέγεται:

    Κώδικας:
    acpi-cpufreq.ko
    Σημειώνουμε σε ένα χαρτάκι το όνομα του module που θέλουμε χωρίς την τελεία και την επέκτασή του (π.χ. powernow-k8).

    Αυτά για το πώς θα βρείτε το σωστό module. Αν δεν φροντίσατε από πριν να το έχετε βρει (απαιτήσεις γνώσεων), δεν χάθηκε ο κόσμος καθώς θα επανέλθουμε αργότερα. Απλά θα γλυτώνατε μία διόρθωση του αρχείου.

    Αν πάντως δηλώσετε power throttling module, φροντίστε ΟΠΩΣΔΗΠΟΤΕ να δηλωθεί πρώτο.

    Τέλος, μπορεί να χρειαστεί εδώ να δηλώσουμε και το module για τους σένσορες του επεξεργαστή μας. Ειδικά για Intel Core Socket 1156 CPUs, αυτή τη στιγμή (kernel 2.6.32), φαίνεται να πρέπει να δηλωθεί (coretemp). Μπορούμε να το βάλουμε δεύτερο, αμέσως μετά το CPU throttling module.

    Έστω λοιπόν ότι το σύστημά μας έχει το παρακάτω hardware:

    Κώδικας:
    MODULES=(powernow-k8 !r8169)
    Συν το forcedeth το οποίο είναι αυτό που θέλουμε να χρησιμοποιείται, και δεν χρειάζεται να το δηλώσουμε.

    Τί δηλώσαμε εδώ στο παράδειγμά μας:

    α. Έχει επεξεργαστή AMD K8 ή K10 που υποστηρίζει power throttling

    β. Έχει δύο δικτυακά interfaces από τα οποία θέλουμε να δηλωθεί σαν eth0 το:
    ----> nVidia nForce
    ο κόσμος να χαλάσει. Γι' αυτό βάλαμε θαυμαστικό σε όλα τα άλλα δικτυακά interfaces.

    Συνεχίζουμε να διορθώνουμε το /etc/rc.conf:

    Στο κομμάτι NETWORKING:

    Κώδικας:
    HOSTNAME="neo"
    Εδώ βάζουμε το όνομα του υπολογιστή μας. Μπορεί να είναι ό,τι θέλουμε αρκεί να έχει μικρά λατινικά γράμματα δίχως κενά. Εμείς π.χ. επιλέξαμε neo.

    Κώδικας:
    lo="lo 127.0.0.1"
    Δεν την πειράζουμε τη γραμμή αυτή.

    Κώδικας:
    eth0="eth0 192.168.1.7 netmask 255.255.255.0 broadcast 192.168.1.255"
    Για κάθε δικτυακό interface που έχουμε θα πρέπει να δώσουμε μία γραμμή σαν την παραπάνω. Πρώτα θα δηλώνουμε το όνομα του interface, μετά την IP address της μορφής 192.168.1.x -> π.χ. 192.168.1.7, και μετά διαδοχικά netmask και broadcast.

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

    Κώδικας:
    eth1="eth1 192.168.0.41 netmask 255.255.255.0 broadcast 192.168.0.255"
    Επίσης:

    Κώδικας:
    INTERFACES=(lo eth0)
    Εδώ δηλώνουμε όλα τα interfaces που θέλουμε να ενεργοποιούνται κατά την εκκίνηση - με προσοχή να μην ξεχνάμε καί το lo.

    Πάλι, αν έχουμε παραπάνω από ένα πρέπει να το δηλώσουμε π.χ.:

    Κώδικας:
    INTERFACES=(lo eth0 eth1)
    Τέλος για το δίκτυο:

    Κώδικας:
    gateway="default gw 192.168.1.19"
    ROUTES=(gateway)
    Δηλώνουμε το default gateway μας, δηλαδή στην ουσία η IP address του aDSL router μας. Δίνουμε λοιπόν την IP address του router μας π.χ. 192.168.1.19.

    ΠΡΟΣΟΧΗ στη δεύτερη γραμμή να βγάλουμε το "θαυμαστικό" μπροστά από τη λέξη gateway.

    Το τελεταίο πράγμα που πρέπει να αλλάξουμε στο παρόν στάδιο είναι οι δαίμονες:

    Κώδικας:
    DAEMONS=(syslog-ng network netfs crond)
    Προς το παρόν δεν τους αλλάζουμε. Θα επανέλθουμε αργότερα σε αυτούς, όπου θα δούμε για άλλη μια φορά την μεγάλη ισχύ και ευελιξία του Arch.

    Σώζουμε και βγαίνουμε από το nano.

    Αλλάζουμε αρχείο.

    - /etc/locale.gen

    Εδώ θα βρούμε αλφαβητικά, όλα τα locales απενεργοποιημένα (σχολιασμένα με "#" μπροστά).

    Εμείς θα "ξεσχολιάσουμε" μόνο όσα χρειαζόμαστε:

    Κώδικας:
    en_US.UTF-8	UTF-8
    en_US	ISO-8859-1
    Και:

    Κώδικας:
    el_GR.UTF-8	UTF-8
    el_GR	ISO-8859-7
    Επίσης, με πολλή προσοχή, κάτω από τα δύο ελληνικά locales θα προσθέσουμε και άλλη μία γραμμή:

    Κώδικας:
    el_GR@euro	ISO-8859-7
    Ώστε να έχουμε καί το σύμβολο του Ευρώ.

    Σώζουμε και βγαίνουμε από το nano.

    Αλλάζουμε αρχείο.

    - /etc/hosts

    Εδώ σε κάθε γραμμή δηλώνουμε μία IP address ενός υπολογιστή (ή άλλης IP συσκευής) που υπάρχει στο τοπικό μας δίκτυο, και μετά ένα όνομα που θέλουμε να έχει για λόγους ευκολίας. Πάντα τα ονόματα αυτά θα είναι με μικρά λατινικά γράμματα χωρίς κενά.

    π.χ.

    Κώδικας:
    192.168.1.7     neo
    192.168.1.19    router
    192.168.1.21    kitsos
    192.168.1.8     theitsa
    κλπ.

    Σώζουμε και βγαίνουμε από το nano.

    Αλλάζουμε αρχείο.

    - /etc/resolv.conf

    Εδώ σε αυτό το αρχείο βάζουμε τις IP διευθύνσεις των DNS Servers του ISP μας. Π.χ.

    Κώδικας:
    nameserver 193.92.150.3
    nameserver 194.219.227.2
    ΠΡΟΣΟΧΗ !!!
    Δεν θα βάλετε τις παραπάνω IP διευθύνσεις αλλά αυτές του δικού σας ISP.

    Σώζουμε και βγαίνουμε από το nano.

    Τέλος στην ερώτηση για κάποιον Pacman Mirror επιλέγουμε έναν που γεωγραφικά είναι κοντά σε μας (π.χ. ntua).

    Ουφ! Τελειώσαμε και πατάμε DONE.

    [break=Ρύθμιση και εγκατάσταση GRUB Loader]
    13. ΡΥΘΜΙΣΗ ΚΑΙ ΕΓΚΑΤΑΣΤΑΣΗ GRUB LOADER

    Κατόπιν θα μας ζητηθεί η ρύθμιση του GRUB Loader.

    Εδώ έχουμε δύο επιλογές:
    ----> να βάλουμε το GRUB στο MBR -> προτείνεται εάν δεν έχουμε εγκαταστάσεις Windows στο μηχανάκι μας - εμείς στο παράδειγμά μας αυτό θα κάνουμε
    ----> να ΜΗΝ βάλουμε το GRUB στο MBR -> προτείνεται εάν έχουμε εγκαταστάσεις Windows στο μηχανάκι μας

    Σε κάθε περίπτωση, επιλέγουμε σε ποιανού φυσικού δίσκου το MBR, ή σε ποιό partition, θα το βάλουμε.

    Στην πρώτη περίπτωση θα πρέπει να επιλέξουμε τη συσκευή του πρώτου φυσικού δίσκου του υπολογιστή μας (π.χ. sda).

    Στην δεύτερη θα πρέπει να επιλέξουμε το "/boot" partition μας - ή το "/" αν δεν έχουμε "/boot".

    Επιλέγουμε λοιπόν το επιθυμητό σημείο και πατάμε Enter.

    [break=Ορισμός root Password]
    14. ΟΡΙΣΜΟΣ ROOT PASSWORD

    Εδώ θα ερωτηθούμε κατά σειρά για το password του χρήστη root.
    !!! ΠΡΟΣΟΧΗ !!! εδώ:

    Θα πρέπει να φροντίσουμε το password να έχει μόνο λατινικά γράμματα, χωρίς κενά, και να είναι "δύσκολο". Φυσικά θα πρέπει και να μην το ξεχάσετε.

    Στο σημείο αυτό ο installer θα μας ειδοποιήσει ότι τελείωσε τη δουλειά του και ότι θα κάνει επανεκκίνηση. Θα μας προτρέψει επίσης να βγάλουμε το CD από το CD-ROM drive και να πατήσουμε Enter για επανεκκίνηση.

    Υπακούμε.

    [break=Ρύθμιση Package Management - Δήλωση Repositories]
    15. ΡΥΘΜΙΣΗ PACKAGE MANAGEMENT - ΔΗΛΩΣΗ REPOSITORIES

    Πολύ σβέλτα, βάζουμε μέσα στο οπτικό μας drive το linux live-CD μας (αυτό που έχουμε φροντίσει να έχουμε πρόχειρο από πριν), και σε λίγο θα μας υποδεχτεί ένα Gnome desktop. Εναλλακτικά μπορούμε να χρησιμοποιήσουμε αν υπάρχει και μία δεύτερη οποιαδήποτε διανομή Linux έχουμε εγκατεστημένη στο σύστημα.

    Σιγουρευόμαστε ότι η σύνδεσή μας internet είναι ενεργή.

    Στήνουμε από το πολύ απλό interface του Ubuntu τα του δικτύου μας όπως ξέρουμε -> στατική IP, default gateway, και DNS servers του ISP μας. Εναλλακτικά, σιγουρευόμαστε ότι όλα αυτά τα στοιχεία είναι εντάξει και λειτουργούν από την ήδη υπάρχουσα δεύτερη διανομή μας.

    Ορίζουμε όλα τα repositories, ανοίγουμε το Synaptic και εγκαθιστούμε τα παρακάτω πακέτα:

    - mc
    - screen
    - nano

    Εναλλακτικά, σιγουρευόμαστε ότι στην εγκατάστασή μας είναι εγκατεστημένα τα παραπάνω. ΠΡΟΣΟΧΗ διότι τα ονόματα και το πλήθος των πακέτων αλλάζουν από διανομή σε διανομή.

    Στο εξής μπορούμε ανετότατα για editing αρχείων να χρησιμοποιούμε έναν gedit με δικαιώματα root.

    Άρα πατάμε Run (τα γρανάζια):

    Κώδικας:
    gksudo gedit
    Το Ubuntu live-CD έχει κενό pass οπότε απλά πατάμε enter και πάμε.

    Επίσης για τυχόν αντιγραφές-δημιουργίες καταλόγων και αρχείων, μπορούμε κάλλιστα να χρησιμοποιούμε από την κονσόλα μας τον Midnight Commander.

    Κατόπιν:

    Ανοίγουμε ένα Gnome Terminal και παίρνουμε δικαιώματα root:

    Κώδικας:
    sudo -s -H
    Το Ubuntu live-CD έχει κενό pass οπότε απλά πατάμε enter και πάμε:

    Κώδικας:
    screen -i -U
    cd /
    Φτιάχνουμε mount-points και κάνουμε mount τα εξής partitions (προσέχοντας πολύ να επιλέξουμε το σωστό partition από το χαρτάκι μας και να μην κάνουμε λάθος)

    - το "/"
    Κώδικας:
    mkdir /mnt/arch
    mount /dev/sda2 /mnt/arch
    - το "/mnt/repos" (αν φτιάξαμε τέτοιο)
    Κώδικας:
    mount /dev/sda5 /mnt/arch/mnt/repos
    Αν δεν έχουμε φτιάξει partition για repositories φτιάξτε έναν προσωρινό κατάλογο μέσα στο "/mnt" του "/":
    Κώδικας:
    mkdir /mnt/arch/mnt/temp
    Πάμε:

    Κώδικας:
    cd /mnt/arch/mnt/repos
    mkdir arch-local
    cd arch-local
    Ανάλογα με την αρχιτεκτονική μας:

    για amd64
    Κώδικας:
    mkdir amd64
    cd amd64
    για x86
    Κώδικας:
    mkdir x86
    cd x86
    Και:

    Κώδικας:
    mkdir custom
    mkdir custom/packages
    mkdir custom/list
    cd /
    Η δημιουργία του τελευταίου directory είναι προαιρετική μεν, αλλά πολύ χρήσιμη δε.

    Μόλις φτιάξαμε "υποδομή" για τοπικό Arch repository στον σκληρό μας δίσκο.

    Μην ξεχνάτε ότι έχετε στη διάθεσή σας και έναν Firefox, και έναν Nautilus, μέσα από το Live-CD που βρίσκεστε.

    Πάμε τώρα να διορθώσουμε 5-6 αρχειάκα με τον gedit για τη δήλωση των repositories:

    - Αρχείο /mnt/arch/etc/pacman.conf

    Εδώ σβήνουμε τα πάντα και βάζουμε:

    Κώδικας:
    [options]
    LogFile     = /var/log/pacman.log
    NoUpgrade   = etc/passwd etc/group etc/shadow etc/sudoers
    NoUpgrade   = etc/fstab etc/raidtab etc/ld.so.conf
    NoUpgrade   = etc/rc.conf etc/rc.local
    NoUpgrade   = etc/modprobe.conf etc/modules.conf
    NoUpgrade   = etc/lilo.conf boot/grub/menu.lst
    HoldPkg     = pacman glibc
    SyncFirst   = pacman
    CleanMethod = KeepCurrent
    #XferCommand = /usr/bin/aria2c --allow-overwrite=true -c --file-allocation=none --log-level=error -m2 --max-connection-per-server=2 --max-file-not-found=5 --min-split-size=5M --no-conf --remote-time=true --summary-interval=60 -t5 -d / -o %o %u
    #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
    #XferCommand = /usr/bin/curl -C - %u > %o
    Μετά ανάλογα με την αρχιτεκτονική μας:

    για amd64
    Κώδικας:
    [custom]
    Server = file:///mnt/repos/arch-local/amd64/custom/packages
    
    [adslgr64]
    Server = http://archlinuxgr.tiven.org/archlinux/x86_64
    
    [kde4-eyecandy-64]
    Server = http://archlinuxgr.tiven.org/kde4-eyecandy/x86_64
    για x86
    Κώδικας:
    [custom]
    Server = file:///mnt/repos/arch-local/x86/custom/packages
    
    [adslgr32]
    Server = http://archlinuxgr.tiven.org/archlinux/i686
    
    [kde4-eyecandy-32]
    Server = http://archlinuxgr.tiven.org/kde4-eyecandy/i686
    Συνεχίζουμε:

    Κώδικας:
    [core]
    Include = /etc/pacman.d/mirrorlist
    
    [extra]
    Include = /etc/pacman.d/mirrorlist
    
    [community]
    Include = /etc/pacman.d/mirrorlist
    
    #[testing]
    #Include = /etc/pacman.d/mirrorlist
    
    #[unstable]
    #Include = /etc/pacman.d/mirrorlist
    Σώζουμε το αρχείο και το κλείνουμε.

    Τώρα στον κατάλογο /mnt/arch/etc/pacman.d/ έχει ένα αρχείο.

    Το ανοίγουμε.

    Θα δείτε πολλές γραμμές που ξεκινούν ως εξής:

    Κώδικας:
    Server =
    Εσείς σχολιάστε (βάλτε "#" μπροστά) όλες αυτές τις γραμμές, εκτός από μία.

    Είναι όλα τα Arch Repository Mirrors. Κρίνετε ποιός mirror πιστεύετε ότι θα πηγαίνει καλά και επιλέξτε.

    Θυμηθείτε όμως, μόνο έναν mirror να έχετε ενεργοποιημένο στο αρχείο αυτό κάθε φορά.

    Λογικά, ο καινούριος installer θα έχει κάνει ήδη την επιλογή mirror που του είπατε εσείς όταν τον τρέξατε. Αν δεν έγινε η σχετική επιλογή, ή θέλετε να την αλλάξετε, πράξτε ανάλογα.

    Αφού κάνετε τις μετατροπές σας, σώστε το αρχείο και κλείστε το.

    Τώρα θα φτιάξουμε ένα καινούριο αρχείο το οποίο θα το σώσουμε στο directory:

    Κώδικας:
    /mnt/arch/bin/
    Άρα πατάμε νέο αρχείο στο gedit και γράφουμε ανάλογα με την αρχιτεκτονική μας:

    Κώδικας:
    #!/bin/bash
    
    REPO=$1
    PLATFORM=$2
    
    if [ "$PLATFORM" = "amd64" ]
    then
    	ARCH=x86_64
    elif [ "$PLATFORM" = "x86" ]
    then
    	ARCH=i686
    fi
    
    cd /
    rm -f /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/"$REPO".db.tar.gz
    repo-add /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/"$REPO".db.tar.gz /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/*-"$ARCH".pkg.tar.xz
    repo-add /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/"$REPO".db.tar.gz /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/*-any.pkg.tar.xz
    repo-add /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/"$REPO".db.tar.gz /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/*-"$ARCH".pkg.tar.gz
    repo-add /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/"$REPO".db.tar.gz /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/*-any.pkg.tar.gz
    rm -f /mnt/repos/arch-local/"$PLATFORM"/"$REPO"/packages/.PKGINFO
    cd /
    Πατάμε τώρα να το σώσουμε με Western Locale και θα του δώσουμε όνομα:

    Κώδικας:
    update-local-repo
    Πάμε τώρα πίσω στην κονσόλα μας:

    Κάνουμε το σκριπτάκι εκτελέσιμο:

    Κώδικας:
    cd /mnt/arch/bin
    chmod 755 update-local-repo
    cd /
    Στο εξής να θυμόμαστε ότι κάθε φορά που θα τρέχουμε αυτό το σκριπτάκι θα αναμένει μετά από το όνομά του μία μεταβλητή, δηλαδή:

    Κώδικας:
    update-local-repo <αρχιτεκτονική> <όνομα-τοπικού-repo>
    η οποία ανάλογα με την αρχιτεκτονική μας θα μπορεί να έχει δύο δυνατές τιμές:

    για amd64
    Κώδικας:
    amd64
    για x86
    Κώδικας:
    x86
    Επίσης προς το παρόν έχουμε φτιάξει υποδομή μόνο για ένα τοπικό repo με όνομα "custom".

    Άρα οι δύο δυνατές κλήσεις του σκριπτακίου είναι μόνο οι παρακάτω:

    για amd64
    Κώδικας:
    update-local-repo custom amd64
    για x86
    Κώδικας:
    update-local-repo custom x86
    Αυτή η λεπτομέρεια δεν θα ξανααναφερθεί στη συνέχεια του παρόντος, και από εδώ και πέρα θα αναγράφεται απλά ως:

    Κώδικας:
    update-local-repo custom <αρχιτεκτονική>
    Άρα λοιπόν ΠΡΟΣΟΧΗ! Ποτέ μην τρέξετε το σκριπτάκι "σκέτο" χωρίς τις δύο μεταβλητές.

    [break=Ρύθμιση fstab]
    16. ΡΥΘΜΙΣΗ fstab

    Πάμε τώρα να ρυθμίσουμε σωστά το αρχείο /mnt/arch/etc/fstab.

    Μας ενδιαφέρουν οι γραμμές των οπτικών drives και του floppy.

    Καταρχήν δείτε σε ποιά directories μέσα στο "/mnt/arch/mnt/" έχει οριστεί να γίνονται mount και με ΠΕΡΙΣΣΕΙΑ ΠΡΟΣΟΧΗ πηγαίνετε στον Midnight Commander σας και σβήστε τα.

    Φτιάξτε κάτω από το "/mnt/arch/" directory ένα directory "media" και μέσα σε αυτό φτιάξτε καταλόγους της μορφής:

    Κώδικας:
    cdrom0
    cdrom1
    κλπ. ανάλογα με το πόσα οπτικά drives έχετε.

    Φτιάξτε επίσης και έναν κατάλογο:

    Κώδικας:
    floppy0
    για το floppy σας.

    Πάμε τώρα πίσω στο fstab.

    Οι γραμμές των οπτικών drives και του floppy που έβαλε ο installer είναι ούτως ή άλλως λάθος, και επομένως μπορείτε ελεύθερα να τις ξεκουμπίσετε.

    Σβήστε τις λοιπόν και προσθέστε τις γραμμές:

    Κώδικας:
    /dev/sr0 				/media/cdrom0   				udf,iso9660 	ro,user,noauto,iocharset=utf8,unhide   		0      	0
    /dev/sr1 				/media/cdrom1   				udf,iso9660   	ro,user,noauto,iocharset=utf8,unhide   		0      	0
    
    /dev/fd0 				/media/floppy0 					vfat   		user,noauto,iocharset=utf8   			0      	0
    Αυτά για το παράδειγμά μας, με δύο οπτικά drives και ένα floppy.

    Έχετε υπόψη ότι ανάλογα με το hardware σας μπορεί τα device names των συσκευών να μην είναι αυτά (εκτός του floppy που είναι σίγουρο).

    Για τα οπτικά drives μπορείτε να το πιστοποιήσετε αργότερα, μόλις βγείτε στο desktop, ανοίγοντας μια φορά το k3b.

    Πάνω αριστερά θα έχει την λίστα με τα οπτικά σας drives και κάτω από το καθένα θα λέει καί το device name του.

    Επίσης μας ενδιαφέρει από τους σκληρούς δίσκους να βγάλουμε τα UUIDs και τα labels (αν υπάρχουν) και να βάλουμε τα πραγματικά device names τους.

    Σώζουμε το αρχείο και το κλείνουμε.

    Τελειώσαμε και με το fstab.

    [break=Ρύθμιση Xorg]
    17. ΡΥΘΜΙΣΗ XORG

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Πάμε τώρα να ρυθμίσουμε τον X Server ώστε να έχουμε υψηλά ξεκούραστα refresh rates και 3D acceleration.

    Στην κονσολίτσα μας:

    Κώδικας:
    mkdir /mnt/arch/etc/X11
    Πατάμε νέο αρχείο.

    Το σώζουμε με Western Locale στο directory που φτιάξαμε αμέσως πιο πάνω, με όνομα:

    xorg.conf

    Το αρχείο είναι άδειο, και εμείς θα το γεμίσουμε:

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Ρύθμιση Xorg

    Σώζουμε το αρχείο, το κλείνουμε.

    Κλείνουμε το gedit.

    Στην κονσόλα μας, αν είμασταν μέσα σε Midnight Commander, τον κλείνουμε.

    Και κάνουμε μαζικό unmount όλα τα partitions που πριν κάναμε mount.

    Κώδικας:
    cd /
    Πολλή ΠΡΟΣΟΧΗ - εδώ κάνουμε το umount με την "αντίθετη" φορά απ' ό,τι κάναμε το mount - δηλαδή από το "ειδικότερο" προς το "γενικότερο". Δηλαδή θα ξεκινήσουμε από τα "κλαδιά" του δέντρου και θα ανεβαίνουμε προς την αρχή "/".

    Κώδικας:
    umount /mnt/arch/mnt/repos
    Κώδικας:
    umount /mnt/arch
    Σβήνουμε και το directory arch αφού δεν χρειάζεται πλέον.

    Κώδικας:
    rmdir /mnt/arch
    Στο σημείο αυτό δεν χρειαζόμαστε άλλο το περιβάλλον του live-CD. Κατεβάζουμε ρολά και κλείνουμε τα πάντα.

    Δίνουμε:

    Κώδικας:
    exit
    δύο με τρείς φορές, μέχρι να κλείσει πλήρως η κονσόλα.

    Επίσης κλείνουμε ό,τι άλλο τυχόν πρόγραμμα είχαμε ανοικτό, και δίνουμε εντολή επανεκκίνησης.

    Μόλις ξαναξεκινήσει ο υπολογιστής μας μπαίνουμε αμέσως στο BIOS και του δίνουμε εντολή να ξεκινά μόνιμα από τον σκληρό δίσκο.

    [break=Πρώτο Login]
    18. ΠΡΩΤΟ LOGIN

    Εδώ τώρα πια βρισκόμαστε κανονικά μέσα στο καινούριο Arch σύστημά μας.

    Κάνουμε login ως root.

    Από εδώ και πέρα και μέχρι να βγούμε στο desktop, περίσσεια ΠΡΟΣΟΧΗ στο τί κάνουμε. Ο root έχει απεριόριστη ισχύ στο σύστημα και εάν δεν προσέχει μπορεί και να το διαλύσει κιόλας.

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

    Δίνουμε:

    Κώδικας:
    cd /
    clear
    [break=Ρύθμιση ομάδων και χρηστών]
    19. ΡΥΘΜΙΣΗ ΟΜΑΔΩΝ ΚΑΙ ΧΡΗΣΤΩΝ

    Μετά φτιάχνουμε τον χρήστη μας, αυτόν που θα έχουμε για καθημερινή χρήση του συστήματος. Μπορούμε να τον ονομάσουμε όπως θέλουμε αρκεί το όνομά του να έχει μόνο μικρά λατινικά γράμματα χωρίς κενά.

    Έστω ότι τον λέμε nioubis:

    Κώδικας:
    useradd -m -G users,wheel,audio,video,optical,storage,camera,floppy -s /bin/bash nioubis
    Τώρα ορίζουμε το password του χρήστη μας:

    Κώδικας:
    passwd nioubis
    !!! ΠΡΟΣΟΧΗ !!! εδώ:

    Θα πρέπει να φροντίσουμε το password να έχει μόνο λατινικά γράμματα, χωρίς κενά, και να είναι "δύσκολο". Φυσικά θα πρέπει και να μην το ξεχάσετε.

    [break=Δοκιμή Τοπικού Repository]
    20. ΔΟΚΙΜΗ ΤΟΠΙΚΟΥ REPOSITORY

    Εδώ τώρα θα δοκιμάσουμε εάν λειτουργεί σωστά το τοπικό repository που έχουμε φτιάξει στο σκληρό μας δίσκο:

    Πάμε:

    Κώδικας:
    pacman -Sy
    update-local-repo custom <αρχιτεκτονική>
    pacman -Sy
    Τον εγκαθιστούμε:

    Κώδικας:
    pacman -Su
    Εάν μας πει ο Pacman ότι υπάρχει νεότερή του έκδοση απαντάμε να μην προχωρήσει αλλά πρώτα πάμε να την βάλουμε:

    Κώδικας:
    pacman -S pacman
    Και μετά συνεχίζουμε:

    Κώδικας:
    pacman -Su
    Αν όλα έχουνε πάει καλά, και δεν έχουμε κάνει κάπου λάθος, όλο το "κουπί" που τραβήξαμε μέχρι τώρα θα μας ανταμείψει και από εδώ και πέρα έχουν μείνει τα πολύ εύκολα.

    Κι ένα "φινιρισματάκι":

    Κώδικας:
    nano /etc/makepkg.conf
    Εδώ μας ενδιαφέρει η γραμμή:

    Κώδικας:
    export MAKEFLAGS="-j2"
    Εδώ βλέπετε να υπάρχει ένας αριθμός μετά το j στο τέλος. Εσείς θα πρέπει να αλλάξετε τον αριθμό αυτό και να βάλετε τον συνολικό αριθμό από πραγματικά CPU cores που έχει το σύστημά σας αυξημένο κατά ένα. Ειδικά για την περίπτωση που έχετε επεξεργαστή Intel με HyperThreading, πριν βάλετε το +1 στο τέλος, θα πρέπει πρώτα να διπλασιάσετε τον αριθμό των πραγματικών CPU cores που έχετε.

    Άρα έστω ότι ο υπολογιστής μας είναι ένας εταιρικό server που έχει π.χ. συνολικά 8 Opteron cores. Άρα εκεί θα βάλουμε 8+1=9.

    Δηλαδή θα βάλουμε π.χ.:

    Κώδικας:
    MAKEFLAGS="-j9"
    Τέλος μας ενδιαφέρουν και οι γραμμές:

    Κώδικας:
    PKGEXT='.pkg.tar.gz'
    SRCEXT='.src.tar.gz'
    όπου αλλάζουμε τα 2 τελευταία extensions από gz σε xz, δηλαδή τις κάνουμε:

    Κώδικας:
    PKGEXT='.pkg.tar.xz'
    SRCEXT='.src.tar.xz'
    Σώζουμε και βγαίνουμε από το nano.

    Επίσης πατάμε Ctrl+Alt+F2 για να κάνουμε ένα δεύτερο login.

    Το login αυτό δεν θα το κάνουμε ως "root" αλλά σαν τον απλό χρήστη μας.

    Άρα στο login prompt δίνουμε το όνομα του χρήστη μας (στο παράδειγμά μας "nioubis") και το password του.

    Πάμε:

    Κώδικας:
    cd ~
    nano .bashrc
    Το αρχείο μπορεί να υπάρχει ή να μην υπάρχει. Σε κάθε περίπτωση εμείς θα προσθέσουμε δυο γραμμές:

    Κώδικας:
    alias nicepac="nice -n 19 makepkg"
    alias manualpac="nice -n 19 makepkg -d"
    Αντί για τη λέξη "nicepac" και "manualpac" μπορούμε να βάλουμε ό,τι θέλουμε αρκεί:

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

    Σώζουμε και βγαίνουμε από το nano.

    Δίνουμε:

    Κώδικας:
    exit
    Και πατάμε Ctrl+Alt+F1 για να πάμε πίσω στο πρώτο μας login όπου είμασταν πριν.

    Θα μπορέσουμε να κάνουμε ένα "ντεμαράζ" τώρα.

    Αλλά ας βάλουμε κι άλλο ένα εργαλειάκι που προσωρινά θα μας βοηθήσει:

    Κώδικας:
    pacman -S nano screen openssh wget aria2 curl
    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο server. Για ρόλο desktop το παραλείπουμε.

    για ρόλο server
    Πάμε:

    Κώδικας:
    cd /etc/ssh
    cp sshd_config sshd-config-backup
    Και:

    Κώδικας:
    nano /etc/ssh/sshd_config
    Εδώ μας ενδιαφέρουν να υπάρχουν οι εξής γραμμές:

    Κώδικας:
    PermitRootLogin yes
    RSAAuthentication yes
    PubkeyAuthentication yes
    #IgnoreRhosts yes
    RhostsRSAAuthentication no
    HostbasedAuthentication no
    #IgnoreUserKnownHosts no
    PermitEmptyPasswords no
    ChallengeResponseAuthentication no
    #PasswordAuthentication yes
    UsePAM no
    Πολλή προσοχή εδώ.

    Κάποιες γραμμές μπορεί να υπάρχουν, κάποιες να μην υπάρχουν, κάποιες να υπάρχουν με άλλη τιμή στο τέλος (yes ή no) και κάποιες να είναι "σχολιασμένες" (με # μπροστά) και εμείς να τις θέλουμε ασχολίαστες ή το ανάποδο. Προσοχή λοιπόν μη βάλετε 2 και 3 φορές την ίδια γραμμή. Οι γραμμές αυτές θα είναι διάσπαρτες σε όλο το αρχείο.

    Σώζουμε και βγαίνουμε από το nano.

    Κώδικας:
    cp sshd_config sshd-config-root-login
    cd /
    Μετά:

    Κώδικας:
    nano /etc/rc.conf
    Μας ενδιαφέρει στο τέλος η γραμμή DAEMONS=:

    Εμείς την είχαμε αφήσει έτσι:

    Κώδικας:
    DAEMONS=(syslog-ng network netfs crond)
    Θα την κάνουμε έτσι:

    Κώδικας:
    DAEMONS=(syslog-ng network netfs crond sshd)
    Σώζουμε και βγαίνουμε από το nano.

    Επίσης στα δύο παρακάτω αρχεία:

    - /etc/hosts.allow
    - /etc/hosts.deny


    Μπαίνουμε μια φορά διαδοχικά με το nano και σιγουρευόμαστε ότι όλες οι γραμμές είναι σχολιασμένες -> ξεκινούν στην αρχή με "#".

    Τα σώζουμε και βγαίνουμε από το nano.

    Τέλος:

    Κώδικας:
    /etc/rc.d/sshd start
    Πάμε τώρα στον άλλο μας υπολογιστή. Σιγουρευόμαστε ότι είναι συνδεδεμένος στο τοπικό μας δίκτυο LAN, στο ίδιο subnet. Μπορούμε αν θέλουμε για λόγους ευκολίας να δηλώσουμε και τον υπολογιστή που στήνουμε στα hosts μας.

    Ανάλογα με το τί λειτουργικό σύστημα τρέχει πράττουμε:

    για Windows NT-Class
    Ανοίγουμε ένα PuTTY και του λέμε να συνδεθεί:

    Κώδικας:
    root@neo
    Δίνουμε το root password και πατάμε Enter.

    για UNIX-οειδές
    Ανοίγουμε μία κονσόλα και του λέμε να συνδεθεί:

    Κώδικας:
    ssh root@neo
    Δίνουμε το root password και πατάμε Enter.

    Απαντάμε yes ότι "εμπιστευόμαστε" τον neo.

    Δίνουμε:

    Κώδικας:
    screen -i
    [break=Γνωριμία με τον Pacman]
    21. ΓΝΩΡΙΜΙΑ ΜΕ ΤΟΝ PACMAN

    Ο Pacman είναι το Σύστημα Διαχείρισης Πακέτων (στο εξής ΣΔΠ) του Arch, το οποίο είναι κυριολεκτικά πανίσχυρο, εύκολο στη χρήση, και σας λύνει τα χέρια.

    Είναι δε εφάμιλλο σε αξιοπιστία, ταχύτητα και ευχρηστία με τις άλλες δύο μεγάλες σχολές package management, το apt-get του Debian και το Portage του Gentoo.

    Καλείται με την εντολή:

    Κώδικας:
    pacman
    η οποία μετά δέχεται και κάποιες επιλογές.

    Π.χ. ένα παράδειγμα μιας τυπικής κλήσης του Pacman είναι το εξής:

    Κώδικας:
    pacman -S gimageview comix
    Δηλαδή βλέπουμε ότι έχει τη δομή:

    Κώδικας:
    pacman -<δράση><επιλογές> <πακέτο-1> <πακέτο-2> <πακέτο-3> ... <πακέτο-όσο-όσο>
    (στο παράδειγμά μας δεν υπήρχαν επιλογές παρά μόνο μία δράση)

    Ας δούμε πρώτα τις βασικότερες από τις επιλογές:

    -y
    refresh
    Χρησιμοποιείται αποκλειστικά με την δράση S (βλέπε παρακάτω), συνήθως χωρίς την ύπαρξη πακέτων μετά. Αν χρησιμοποιηθεί χωρίς πακέτα μετά, ενημερώνει την database των διαθέσιμων πακέτων.

    Συντάσσεται δηλαδή ως εξής:

    Κώδικας:
    pacman -Sy
    Αντίστοιχη με τις άλλες δύο "σχολές" των:

    Κώδικας:
    apt-get update
    Κώδικας:
    emerge --sync
    Αν χρησιμοποιηθεί με πακέτα μετά, αφού κάνει τη γενική ενημέρωση της database, μετά θα ενημερώσει/εγκαταστήσει και τα πακέτα αυτά, σαν να δίναμε δηλαδή αμέσως μετά και μία "σκέτη" S με τα πακέτα.

    -w
    downloadonly
    Χρησιμοποιείται αποκλειστικά με την δράση S (βλέπε παρακάτω), μέ ή χωρίς την ύπαρξη πακέτων μετά. Κάνει ό,τι θα γινόταν και αν δεν είχε δοθεί, απλά δεν γίνεται καμμία αλλαγή στα εγκατεστημένα πακέτα, παρά μόνο κατεβαίνουν τα καινούρια πακέτα. Μπορεί να συνυπάρξει με την επιλογή u (βλέπε παρακάτω).

    Συντάσσεται δηλαδή ως εξής:

    Κώδικας:
    pacman -Sw
    Αντίστοιχη με τις άλλες δύο "σχολές" των:

    Κώδικας:
    -d
    Κώδικας:
    -f
    -u
    sysupgrade
    Χρησιμοποιείται αποκλειστικά με την δράση S (βλέπε παρακάτω), χωρίς την ύπαρξη πακέτων μετά. Πραγματοποιεί ολική αναβάθμιση του συστήματος. Μπορεί να συνυπάρξει με μία w και συνήθως ακολουθεί μία y.

    Συντάσσεται δηλαδή ως εξής:

    Κώδικας:
    pacman -Su
    Αντίστοιχη με τις άλλες δύο "σχολές" των:

    Κώδικας:
    apt-get upgrade
    Κώδικας:
    emerge -uDNpv --columns world
    Ας δούμε τώρα τις βασικότερες από τις δράσεις:

    -S
    SYNC
    Ενημέρωση ή/και προσθήκη πακέτων ή/και ολόκληρου του συστήματος.
    Αν έχει πακέτα μετά, μπορεί να συνοδεύεται μόνο από την επιλογή w, αλλιώς αν δεν έχει πακέτα, θα πρέπει να συνοδεύεται με μία από τις επιλογές y ή u. Σε κάθε περίπτωση, μπορεί να συνοδεύεται καί από την επιλογή w.

    Συχνότερες χρήσεις:
    ----> ενημέρωση database:
    Κώδικας:
    pacman -Sy
    ----> ολική αναβάθμιση συστήματος:
    Κώδικας:
    pacman -Su
    ----> Ενημέρωση ή/και προσθήκη πακέτων:
    Κώδικας:
    pacman -S gimageview comix
    Π.χ. στο παραπάνω παράδειγμα, θα ενημερωθούν ή/και εγκατασταθούν τα πακέτα gimageview και comix.

    Αντίστοιχη με τις άλλες δύο "σχολές" των:

    Κώδικας:
    apt-get install gimageview comix
    Κώδικας:
    emerge -uNpv --columns gimageview comix
    -R
    REMOVE
    Αφαίρεση πακέτων.
    Αφαιρεί όσα πακέτα βρει μετά από αυτήν.

    π.χ.:

    Κώδικας:
    pacman -R gimageview comix
    Π.χ. στο παραπάνω παράδειγμα, θα αφαιρεθούν τα πακέτα gimageview και comix.

    Αντίστοιχη με τις άλλες δύο "σχολές" των:

    Κώδικας:
    apt-get remove gimageview comix
    Κώδικας:
    emerge -pvC --columns gimageview comix
    [break=Ο κορμός του συστήματος]
    22. Ο ΚΟΡΜΟΣ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ

    Από εδώ και πέρα θα εγκαθιστούμε πακέτα σε "ριπές".

    Για όσα από αυτά μας λέει ο Pacman ότι υπάρχει ήδη εγκατεστημένη η τελευταία έκδοση, απλά θα του λέμε να μην την ξαναβάλει.

    Κώδικας:
    pacman -S base-devel make automake cvs hdparm patch subversion git fakeroot tar bzip2 unrar zip unzip p7zip aufs2 mc
    Κώδικας:
    pacman -S udev hal dbus acpid lm_sensors logrotate htop lsof ethtool fuse
    Κώδικας:
    pacman -S coreutils pciutils usbutils inetutils kbd hwdetect util-linux-ng chkrootkit
    Κώδικας:
    pacman -S rpcbind nfs-utils cups samba openssh ntp openntpd smartmontools net-snmp tcptraceroute netkit-ftp netkit-telnet
    Κώδικας:
    pacman -S reiserfsprogs xfsprogs xfsdump jfsutils ntfsprogs dosfstools
    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Κώδικας:
    pacman -S alsa-lib alsa-utils xorg xorg-input-drivers mesa
    [break=Εγκατάσταση drivers κάρτας γραφικών]
    23. ΕΓΚΑΤΑΣΤΑΣΗ DRIVERS ΚΑΡΤΑΣ ΓΡΑΦΙΚΩΝ

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    για nVidia σειρά GeForce6 και πάνω
    Κώδικας:
    pacman -S nvidia nvidia-utils
    για ATi RADEON
    Κώδικας:
    pacman -S xf86-video-ati libgl ati-dri
    για Intel
    Κώδικας:
    pacman -S xf86-video-intel
    [break=Εγκατάσταση Desktop]
    24. ΕΓΚΑΤΑΣΤΑΣΗ DESKTOP

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Εδώ θα εγκαταστήσουμε ένα από δύο Desktops, Gnome ή KDE.

    κοινά πακέτα
    Κώδικας:
    pacman -S kdelibs3 qtcurve-gtk2 qtcurve-kde3 qtcurve-kde4
    για Gnome
    Κώδικας:
    pacman -S gnome gnome-extra gnome-screensaver computertemp mail-notification deskbar-applet quick-lounge-applet gdm kdebase-workspace
    για KDE
    Κώδικας:
    pacman -S kde
    Τέλος πάμε να εγκαταστήσουμε και τα ξεκούραστα fonts της Microsoft:

    Πάμε:

    Κώδικας:
    cd /usr/share/fonts
    mkdir ms-fonts
    Το directory ms-fonts που φτιάξαμε δεν είναι απαραίτητο να το ονομάσουμε έτσι. Μπορούμε να το ονομάσουμε όπως μας καπνίσει. Αρκεί να έχει μόνο μικρά λατινικά γράμματα χωρίς κενά.

    Πετάμε εκεί μέσα όσα TrueType fonts θέλουμε από κάποια εγκατάσταση Windows που έχουμε και μετά δίνουμε:

    Κώδικας:
    fc-cache -f -v
    Ανάλογα με το desktop το οποίο εγκαταστήσαμε, θα έχουμε αποτέλεσμα κάτι σαν το παρακάτω:

    Gnome
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Gnome.png 
Εμφανίσεις:  388 
Μέγεθος:  40,7 KB 
ID: 16370

    KDE
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  KDE.png 
Εμφανίσεις:  335 
Μέγεθος:  49,8 KB 
ID: 16362

    [break=Εγκατάσταση συμπληρωματικών προγραμμάτων]
    25. ΕΓΚΑΤΑΣΤΑΣΗ ΣΥΜΠΛΗΡΩΜΑΤΙΚΩΝ ΠΡΟΓΡΑΜΜΑΤΩΝ

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Κώδικας:
    pacman -S aspell aspell-en aspell-el hicolor-icon-theme
    Κώδικας:
    pacman -S firefox firefox-i18n flashplugin thunderbird thunderbird-i18n xcursor-themes numlockx
    Κώδικας:
    pacman -S libdvdcss libdvdnav libdvdread libdts libmodplug dvd+rw-tools libarchive libdownload timidity++ xine-lib xvidcore x264 mplayer musicbrainz
    Κώδικας:
    pacman -S krusader krename kdiff3 k3b k3b-i18n
    Κώδικας:
    pacman -S audacious audacious-plugins qmmp
    Κώδικας:
    pacman -S smplayer vlc mediainfo mediainfo-gui
    Firefox
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Firefox.png 
Εμφανίσεις:  105 
Μέγεθος:  104,0 KB 
ID: 16347

    Thunderbird
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Thunderbird.png 
Εμφανίσεις:  75 
Μέγεθος:  53,7 KB 
ID: 16351

    krusader
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Krusader.png 
Εμφανίσεις:  117 
Μέγεθος:  144,9 KB 
ID: 16349

    k3b
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  k3b.png 
Εμφανίσεις:  104 
Μέγεθος:  191,9 KB 
ID: 16379

    [break=Εγκατάσταση εργαλείων amd64]
    26. ΕΓΚΑΤΑΣΤΑΣΗ ΕΡΓΑΛΕΙΩΝ AMD64

    Εδώ σε αυτό το τμήμα ασχολούμαστε ΜΟΝΟ εάν έχουμε αρχιτεκτονική amd64. Εάν έχουμε αρχιτεκτονική x86 το προσπερνάμε και πάμε στο επόμενο.

    για amd64
    Θα εγκαταστήσουμε κάποια εργαλεία συμβατότητας για να μπορούν να τρέχουν απρόσκοπτα 32-bit προγράμματα στο 64-bit περιβάλλον μας:

    Κώδικας:
    pacman -S lib32
    [break=Ρύθμιση Δαιμόνων]
    27. ΡΥΘΜΙΣΗ ΔΑΙΜΟΝΩΝ

    Πάμε τώρα να ρυθμίσουμε τους "Δαίμονες" (daemons) ή αλλιώς Υπηρεσίες (services) του συστήματος.

    Θυμάστε πρωτύτερα που είχαμε λίγο ασχοληθεί μαζί τους, και είχαμε πει ότι το Arch προσφέρει ευελιξία στον τομέα αυτό;

    Πάμε λοιπόν.

    Ανοίγουμε έναν Midnight Commander

    Κώδικας:
    mc
    Και πάμε να διορθώσουμε (με F4) το αρχείο:

    /etc/rc.conf

    Είναι καλύτερος editor από τον nano γιατί προσφέρει πιο εύκολο Cut, Copy, Paste, Delete.

    Μας ενδιαφέρει στο τέλος η γραμμή DAEMONS=:

    Εμείς την είχαμε αφήσει έτσι:

    Κώδικας:
    DAEMONS=(syslog-ng network netfs crond sshd)
    ΠΕΡΙΣΣΕΙΑ ΠΡΟΣΟΧΗ εδώ, γιατί ενώ έχουμε ευελιξία, αν κάνουμε πατάτα μετά δεν θα ξαναξεκινήσει το σύστημα.

    Να έχουμε υπόψη μας τα παρακάτω για τους δαίμονες:

    - Το σύστημα ξεκινά τους δαίμονες με τη σειρά που τους διαβάζει στη γραμμή αυτή, από τα αριστερά προς τα δεξιά.

    - Κάθε δαίμονας πρέπει να ολοκληρώσει την εκκίνησή του πριν πάμε στον επόμενο, εκτός αν του έχουμε βάλει μπροστά στο όνομα ένα "παπάκι" "@".

    - Κάποιοι δαίμονες για να ξεκινήσουν προαπαιτούν κάποιους άλλους ως προϋπόθεση. Αν δεν τους βρουν "έτοιμους", δεν θα ξεκινήσουν και θα σταματήσει το σύστημα.

    - Αν ένας δαίμονας χρειάζεται κάποιους άλλους, φροντίζουμε να είναι δεξιότερα αυτών.

    - Αν έναν δαίμονα τον χρειάζονται κάποιοι άλλοι, φροντίζουμε να είναι αριστερότερα από αυτούς ΚΑΙ ΝΑ ΞΕΚΙΝΑ ΧΩΡΙΣ ΠΑΠΑΚΙ.

    - Παπάκι βάζουμε μόνο στους δαίμονες τους οποίους ΔΕΝ χρειάζονται ως προϋπόθεση κάποιοι άλλοι δαίμονες.

    - Δεν είναι απαραίτητο να χρησιμοποιήσουμε όλους τους παρακάτω δαίμονες (θα σημειωθεί ποιοί είναι προαιρετικοί). Αλλά αν τους βγάλουμε, απλά θα τους βγάλουμε, δεν θα κάνουμε τίποτα άλλο. Ούτε θα αλλάξουμε τη σειρά, ούτε θα αλλάξουμε το status των παπακίων.

    - Αντί να βγάλουμε κάποιον δαίμονα τελείως, μπορούμε μπροστά και κολλητά από το όνομά του να του βάλουμε ένα "θαυμαστικό" "!"

    Ορίστε μία προτεινόμενη σειρά και παραλληλοποίηση δαιμόνων η οποία είναι ταυτόχρονα ασφαλής αλλά και ταχεία στην εκκίνηση:

    για ρόλο desktop
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond nfs-common nfs-server samba sensors hal alsa !cpufreq cups smartd @openntpd sshd)
    για ρόλο server
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond sshd nfs-common nfs-server samba acpid sensors !cpufreq cups smartd @openntpd)
    Παρατηρείστε ότι στον δαίμονα cpufreq έχω βάλει θαυμαστικό διότι αφορά το Power Throttling του επεξεργαστή μας - και πιθανόν ο δικός μας να μην το υποστηρίζει.

    Επίσης έχετε υπόψη σας άλλα δύο σημεία:

    - οι δαίμονες nfs-common nfs-server απαιτούνται για το "σερβίρισμα" δικτυακών nfs shares. Αν αυτό δεν μας ενδιαφέρει, μπορούμε να τους βγάλουμε.

    - ο δαίμονας samba απαιτείται για το "σερβίρισμα" δικτυακών samba shares αλλά και για να δούμε τα samba shares των άλλων. Αν αυτά δεν μας ενδιαφέρουν, μπορούμε να τον βγάλουμε.

    Πατάμε F2 για Save και F10 για να βγούμε.

    Για να ρυθμίσουμε μια και καλή άλλους δύο χρήσιμους δαιμονάκους:

    Τον openntpd (για αυτόματη ενημέρωση ώρας):

    Πάμε να διορθώσουμε (με F4) το αρχείο:

    /etc/ntpd.conf

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

    Αν δεν έχουμε τοπικό δίκτυο:

    Κώδικας:
    server ntp.forthnet.gr
    Βάζουμε μια γραμμή σαν την παραπάνω, όπου δηλώνουμε τον ntp server του ISP μας. Σε εσάς προφανώς θα είναι διαφορετικός.

    Αν τώρα έχουμε τοπικό δίκτυο, μπορούμε να δηλώσουμε αυτό το μηχανάκι μας να λειτουργεί και σαν τοπικός ntp server ως εξής:

    Κώδικας:
    listen on 127.0.0.1
    listen on 192.168.1.7
    όπου εμείς παραπάνω στη δεύτερη γραμμή "listen" θα βάλουμε την τοπική στατική IP address του υπολογιστή μας.

    Πατάμε F2 για Save και F10 για να βγούμε.

    Σε όλα τα άλλα μηχανάκια του δικτύου μπορούμε πολύ απλά στο ίδιο αρχείο να δηλώσουμε:

    Κώδικας:
    server 192.168.1.7
    όπου στη γραμμή server η τοπική στατική IP address του υπολογιστή που "σερβίρει" ώρα στο τοπικό μας δίκτυο.

    Τον smartmond (για παρακολούθηση των SMART στοιχείων των σκληρών μας δίσκων):

    Πάμε να διορθώσουμε (με F4) το αρχείο:

    /etc/smartd.conf

    Θα βρούμε κάπου προς την αρχή μια γραμμή:

    Κώδικας:
    DEVICESCAN
    Την σχολιάζουμε:

    Κώδικας:
    #DEVICESCAN
    Πάμε στο τέλος και προσθέτουμε μία γραμμή σαν την παρακάτω για κάθε σκληρό δίσκο που έχουμε:

    Κώδικας:
    /dev/sda -a -d sat
    Πατάμε F2 για Save και F10 για να βγούμε.

    Επίσης πάμε παντού στο "/" directory, και ξανά F10 για να βγούμε στην κονσόλα.

    Για να δούμε - αφού τελειώσουμε το στήσιμο - πληροφορία SMART για κάποιον σκληρό δίσκο θα δίνουμε στο εξής ως root:

    Κώδικας:
    smartctl -a <hard-disk-device-name>
    π.χ.

    Κώδικας:
    smartctl -a /dev/sdc
    Μπορούμε να το θέσουμε και σαν ένα alias στο .bashrc του root για ευκολία.

    [break=Ρύθμιση PowerSaving Governor]
    28. ΡΥΘΜΙΣΗ POWERSAVING GOVERNOR

    Τώρα ασχολούμαστε με αυτό το βήμα μόνο εάν έχουμε επεξεργαστή που υποστηρίζει power throttling. Εάν δεν έχουμε τέτοιον προχωράμε στο επόμενο βήμα.

    για επεξεργαστή που υποστηρίζει power throttling
    Τέτοιοι επεξεργαστές είναι μόνο οι AMD Athlon64(X2), AMD Phenom-X4, AMD Phenom-II-X4 (καί οι αντίστοιχοι Opteron και Sempron) και οι Intel Pentium-4 και Core (2) Solo/Duo/Quad, Intel Core i5/i7 (και οι αντίστοιχοι Xeon και Celeron).

    Κώδικας:
    pacman -S cpufrequtils
    Τώρα εδώ θέλει λιγάκι ψάξιμο η υπόθεση. Πρέπει να βρούμε πώς ονομάζεται το module του πυρήνα που αναλαμβάνει αυτή τη δουλειά για τον επεξεργαστή μας. Το όνομά του θα αλλάζει ανάλογα με την αρχιτεκτονική μας και τον επεξεργαστή μας.

    Ανοίγουμε λοιπόν έναν Midnight Commander:

    Κώδικας:
    mc
    Πάμε στο directory /lib/modules.

    Εδώ πολλή ΠΡΟΣΟΧΗ καθώς κανονικά υπάρχει ένα ξεχωριστό directory για κάθε ξεχωριστή έκδοση πυρήνα που είναι εγκατεστημένη στο σύστημα. Εμείς θα πρέπει να επιλέξουμε το directory που αντιστοιχεί σε αυτόν που χρησιμοποιούμε (λογικά θα είναι ο πιο πρόσφατος).

    Εκεί μέσα πάμε στο kernel/arch/x86/kernel/cpu/cpufreq.

    Εδώ τώρα θα δούμε αρκετά αρχεία με κατάληξη ".ko".

    Ένα από αυτά θα είναι αυτό που θέλουμε για τον επεξεργαστή μας.

    π.χ. για τους AMD K8 λέγεται:

    Κώδικας:
    powernow-k8.ko
    ενώ για τους Core2 λέγεται:

    Κώδικας:
    acpi-cpufreq.ko
    Σημειώνουμε σε ένα χαρτάκι το όνομα του module που θέλουμε χωρίς την τελεία και την επέκτασή του (π.χ. powernow-k8).

    Βγαίνουμε από τον Midnight Commander και από μία κονσόλα ως root, φορτώνουμε μόνο τώρα για την πρώτη φορά, το σωστό module με το χέρι:

    Κώδικας:
    modprobe powernow-k8
    Ξανά ΠΡΟΣΟΧΗ εδώ να φορτώσουμε το σωστό module που αντιστοιχεί στον επεξεργαστή μας.

    Ξαναπάμε τώρα στον Midnight Commander και πάμε στον κατάλογο /sys/devices/system/cpu/cpu0.

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

    Θα ελέγξουμε τώρα με F3 το περιεχόμενο κάποιων αρχείων ΧΩΡΙΣ να τα πειράξουμε:

    scaling_driver

    Θα πρέπει να έχει μέσα το όνομα του module που ενεργοποιήσαμε προηγουμένως π.χ.

    Κώδικας:
    powernow-k8
    scaling_max_freq
    scaling_min_freq

    Στα παραπάνω 2 αρχεία θα υπάρχει στο καθένα ένας αριθμός, ίσως γραμμένος και με περίεργο τρόπο. Σε ένα χαρτάκι σημειώνουμε αυτούς τους 2 αριθμούς ΕΠΑΚΡΙΒΩΣ όπως τους είδαμε σε αυτά τα αρχεία. Π.χ. μπορεί να δούμε αντίστοιχα κάτι σαν αυτό:

    Κώδικας:
    2200000
    Κώδικας:
    1000000
    scaling_available_governors

    Εδώ θα δούμε κάτι σαν αυτό:

    Κώδικας:
    ondemand performance
    μας ενδιαφέρει να υπάρχει η λέξη ondemand.

    ΠΡΟΣΟΧΗ !!!

    Πολύ πιθανόν να μην υπάρχει το ondemand αλλά μόνο το performance. Δεν ανησυχούμε, δεν μασάμε, διότι η κατάσταση είναι υπό έλεγχο.

    Πάμε τώρα να διορθώσουμε το αρχείο:

    /etc/conf.d/cpufreq

    Εδώ μας ενδιαφέρουν 2-3 γραμμές:

    Κώδικας:
    governor="ondemand"
    Και:

    Κώδικας:
    min_freq="1GHz"
    max_freq="2.2GHz"
    Προσοχή εδώ να ορίσουμε ΟΠΩΣΔΗΠΟΤΕ τα σωστά ελάχιστα και μέγιστα GHz του επεξεργαστή μας.

    Αυτές τις 2 τιμές, θα τις γράψουμε ΕΠΑΚΡΙΒΩΣ όπως μας τις δώσει η παρακάτω εντολή από μία κονσόλα:

    Κώδικας:
    cpufreq-info --hwlimits
    Πατάμε F2 για Save και F10 για να βγούμε.

    Μπορούμε τώρα να ξεκινήσουμε για πρώτη φορά με τον χέρι τον δαίμονα του cpufreq:

    Κώδικας:
    /etc/rc.d/cpufreq start
    Τώρα αν πάμε πάλι πίσω στο αρχείο:

    scaling_available_governors

    Θα δούμε να υπάρχει πλέον η λέξη ondemand.

    Λογικό, αφού ξεκίνησε τουλάχιστο για μία φορά ο δαίμονας, σωστά ρυθμισμένος.

    Πάμε τώρα πάλι να διορθώσουμε το αρχείο:

    /etc/rc.conf

    Εδώ θα αλλάξουμε δύο πράγματα:

    Στη γραμμή:

    Κώδικας:
    MODULES=(
    την είχαμε αφήσει να έχει τα δικτυακά interfaces μας:

    Κώδικας:
    MODULES=(powernow-k8 !r8169)
    Και ίσως να έχει το throttling module στη αρχή (όπως στο παράδειγμα), και το module για τους CPU σένσορες.

    Αν δεν το έχει, γιατί τότε δεν το είχαμε βρει, να το προσθέσουμε τώρα αλλά ΟΠΩΣΔΗΠΟΤΕ -> πρώτο-πρώτο στην αρχή.

    Επίσης πρέπει να προσθέσουμε το fuse module, αμέσως μετά το throttling module (ή το module για τους σένσορες του επεξεργαστή μας). Aν δεν μπορούμε να έχουμε throttling module (και module για τους CPU σένσορες), τότε το fuse μπαίνει πρώτο-πρώτο.

    Ακόμα πρέπει να προσθέσουμε μερικά απαραίτητα ACPI modules, αλλά ΟΠΩΣΔΗΠΟΤΕ -> στο τέλος και με την σειρά που βλέπουμε παρακάτω:

    Κώδικας:
    MODULES=(powernow-k8 fuse !r8169 loop)
    Τέλος να πάμε στη γραμμή των δαιμόνων:

    Κώδικας:
    DAEMONS=(
    και να βγάλουμε το θαυμαστικό από τον cpufreq:

    για ρόλο desktop
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond nfs-common nfs-server samba sensors hal alsa cpufreq cups smartd @openntpd sshd)
    για ρόλο server
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond sshd nfs-common nfs-server samba acpid sensors cpufreq cups smartd @openntpd)
    Πατάμε F2 για Save και F10 για να βγούμε.

    Βγαίνουμε παντού στο κεντρικό directory και βγαίνουμε από τον Midnight Commander.

    [break=Ρύθμιση LM-Sensors]
    29. ΡΥΘΜΙΣΗ LM-SENSORS

    Δίνουμε:

    Κώδικας:
    sensors-detect
    Εδώ ξεκινά ένα προγραμματάκι που ανιχνεύει αυτόματα τί σένσορες θερμοκρασίας έχει η μητρική μας.

    Εμείς απλά απαντάμε Yes σε όλες τις ερωτήσεις και ύστερα από λίγο θα μας βγάλει τα αποτελέσματα σε 2-5 γραμμές όπου θα μας λέει να πάει να ενημερώσει ένα αρχείο. Του λέμε Yes να το ενημερώσει.

    Βγαίνουμε από το sensors-detect.

    [break=Ρύθμιση ALSA]
    30. ΡΥΘΜΙΣΗ ALSA

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Δίνουμε:

    Κώδικας:
    alsaconf
    Εδώ ξεκινά ένα προγραμματάκι που ανιχνεύει αυτόματα τί κάρτα ήχου έχει το μηχανάκι μας.

    Εμείς απλά απαντάμε σε όλες τις απλές ερωτήσεις και ύστερα από λίγο θα μας βγάλει τα αποτελέσματα σε 2-5 γραμμές όπου θα μας λέει να πάει να ενημερώσει ένα αρχείο. Του λέμε Yes να το ενημερώσει.

    Σε ένα σημείο μόνο πρέπει να προσέξουμε πολύ:

    Εάν μας βγάλει πάνω από μία συσκευές ήχου και η μία έχει μέσα στην ονομασία της το "intel8x0" τότε ΟΠΩΣΔΗΠΟΤΕ επιλέγουμε αυτή και όχι την άλλη. Συνήθως αυτό συμβαίνει για κάποια nVidia nForce chipsets.

    Το ίδιο επιλέγουμε και για κάποια Intel chipsets - ΠΡΟΣΟΧΗ όμως, όχι για τα νεότερα (από 965 και πάνω, χωρίς να είμαι σίγουρος) αλλά για τα παλιότερα (νομίζω μέχρι καί 945). Για τα νεότερα Intel chipsets (965 και άνω) επιλέγουμε hda_intel.

    Βγαίνουμε από το alsaconf.

    Αν έχουμε μόνο μία συσκευή ήχου στο μηχανάκι μας, είμαστε έτοιμοι και μπορούμε να πάμε στο επόμενο τμήμα.

    Αν όμως έχουμε στο μηχανάκι μας πάνω από μία συσκευές ήχου τότε συνεχίζουμε:

    για πολλαπλές συσκευές ήχου

    Σε περίπτωση που θέλουμε να δηλώσουμε παραπάνω από μία συσκεύες ήχου, πέφτουμε πάνω σε εγγενές πρόβλημα του alsaconf που δεν έχει προβλέψει τέτοιο setup. Μπορούμε όμως με την ακόλουθη «ματσακονιά» (θεωρώντας ότι έχουμε τρέξει ήδη μία φορά το alsaconf και σετάρει την πρώτη μας συσκευή):

    Κώδικας:
    cp /etc/modprobe.conf /tmp
    alsaconf
    Επιλέγουμε τη δεύτερη συσκευή. Από το αρχείο /etc/modprobe.conf θα χαθούν οι ρυθμίσεις της προηγούμενης συσκευής, αλλά εμείς έχουμε κρατήσει τις σωστές:

    Κώδικας:
    cat /etc/modprobe.conf >> /tmp/modprobe.conf
    cp /tmp/modprobe.conf /etc
    nano /etc/modprobe.conf
    Αρκεί να διορθώσουμε τους δείκτες αρίθμησης για την τελευταία συσκευή από "-0" σε "-1".

    Επαναλαμβάνουμε κατά τον ίδιο τρόπο για επιπλέον συσκευές.

    (το κομμάτι για πολλαπλές ALSA συσκευές συντάχθηκε από τον Parsifal.

    [break=Ρύθμιση Runlevels]
    31. ΡΥΘΜΙΣΗ RUNLEVELS

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop

    Κώδικας:
    nano /etc/inittab
    Εδώ μας ενδιαφέρει να διορθώσουμε 2 σημεία:

    Καταρχήν πάμε στις γραμμές:

    Κώδικας:
    ## Only one of the following two lines can be uncommented!
    # Boot to console
    id:3:initdefault:
    # Boot to X11
    #id:5:initdefault:
    Και τις κάνουμε έτσι:

    Κώδικας:
    ## Only one of the following two lines can be uncommented!
    # Boot to console
    #id:3:initdefault:
    # Boot to X11
    id:5:initdefault:
    Προσέξτε ότι κατά σειρά:
    - σχολιάσαμε την id:3
    - ΞΕ-σχολιάσαμε την id:5

    Μετά πάμε στο 2ο σημείο στις γραμμές:

    Κώδικας:
    # Example lines for starting a login manager
    x:5:respawn:/usr/bin/xdm -nodaemon
    #x:5:respawn:/usr/sbin/gdm -nodaemon
    #x:5:respawn:/usr/bin/kdm -nodaemon
    #x:5:respawn:/usr/bin/slim >& /dev/null
    Και τις κάνουμε έτσι:

    για Gnome
    Κώδικας:
    # Example lines for starting a login manager
    #x:5:respawn:/usr/bin/xdm -nodaemon
    x:5:respawn:/usr/sbin/gdm -nodaemon
    #x:5:respawn:/usr/bin/kdm -nodaemon
    #x:5:respawn:/usr/bin/slim >& /dev/null
    για KDE
    Κώδικας:
    # Example lines for starting a login manager
    #x:5:respawn:/usr/bin/xdm -nodaemon
    #x:5:respawn:/usr/sbin/gdm -nodaemon
    x:5:respawn:/usr/bin/kdm -nodaemon
    #x:5:respawn:/usr/bin/slim >& /dev/null
    Προσέξτε ότι κατά σειρά:
    - σχολιάσαμε τον xdm
    - ΞΕ-σχολιάσαμε τον gdm ή τον kdm, ανάλογα με ποιό DE τρέχουμε

    Σώζουμε και βγαίνουμε από το nano.

    [break=Ρύθμιση Grub]
    32. ΡΥΘΜΙΣΗ GRUB

    Καταρχήν ελέγχουμε αν στο menu.lst είναι καταχωρημένα τα partitions όχι με τα UUIDs και τα labels (αν υπάρχουν) αλλά με τα πραγματικά device names τους.

    Κώδικας:
    nano /boot/grub/menu.lst
    Δηλαδή κοιτάμε τα σημεία του τύπου:

    Κώδικας:
    kernel /vmlinuz26 root=/dev/sdc3
    να περιέχει καθαρό device name.

    Σώζουμε και βγαίνουμε από το nano.

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop

    Κώδικας:
    nano /boot/grub/menu.lst
    Σε όσες καταχωρήσεις έχουμε στο menu.lst μας - λογικά 2, την κανονική και την fallback - πάμε και προσθέτουμε αμέσως μετά το root=/dev/sdc3 ro ένα 5 (ΠΡΟΣΕΞΤΕ το κενό space πριν το 5).

    Δηλαδή από έτσι που είμασταν (ΠΡΟΣΕΞΤΕ πάντα να έχετε το σωστό device για το σύστημά σας στις μεταβλητές root=):

    Κώδικας:
    title  Arch Linux
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro
    initrd /kernel26.img
    
    title  Arch Linux Fallback
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro
    initrd /kernel26-fallback.img
    Το φτιάχνουμε έτσι:

    Κώδικας:
    title  Arch Linux
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 5
    initrd /kernel26.img
    
    title  Arch Linux Fallback
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 5
    initrd /kernel26-fallback.img
    Τέλος, κάνουμε άλλο ένα αντίγραφο των 2 αυτών καταχωρήσεων από κάτω και σε αυτά:

    - αλλάζουμε το τελευταίο 5 σε 3
    - προσθέτουμε στη γραμμή title στο τέλος κάτι που να μας υπενθυμίζει ότι αφορά εκκίνηση χωρίς X Desktop π.χ. προσθέτουμε ένα (no desktop)

    Άρα καταλήγουμε σε κάτι σαν αυτό:

    Κώδικας:
    title  Arch Linux
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 5
    initrd /kernel26.img
    
    title  Arch Linux Fallback
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 5
    initrd /kernel26-fallback.img
    
    title  Arch Linux (no desktop)
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 3
    initrd /kernel26.img
    
    title  Arch Linux Fallback (no desktop)
    root   (hd0,0)
    kernel /vmlinuz26 root=/dev/sdc3 ro 3
    initrd /kernel26-fallback.img
    Σώζουμε και βγαίνουμε από το nano.

    [break=Τελικό checkup και reboot]
    33. ΤΕΛΙΚΟ CHECKUP ΚΑΙ REBOOT

    Κώδικας:
    cd /
    clear
    Πάμε τώρα να τσεκάρουμε 2-3 τελικά πραγματάκια στα modules και στους δαίμονές μας:

    Κώδικας:
    nano /etc/rc.conf
    Ελέγχουμε για την ορθότητά τους δύο γραμμές:

    Κώδικας:
    MODULES=(powernow-k8 fuse !r8169 loop)
    Θυμηθείτε εδώ ότι πρέπει να έχουμε κατά σειρά:

    ----> το kernel module για το power-throttling του επεξεργαστή μας - αν υποστηρίζει τέτοιο πράγμα

    ----> το kernel module για τους σένσορες του επεξεργαστή μας (το χρειαζόμαστε αν έχουμε Intel Core i5/7 Socket 1156)

    ----> τα kernel modules για τα δικτυακά interfaces, με όλα αυτά που ΔΕΝ θέλουμε να χρησιμοποιούνται με θαυμαστικό μπροστά τους

    ----> τα βασικά απαραίτητα modules για το ACPI που είναι πολύ συγκεκριμένα

    Ελέγχουμε με προσοχή τη γραμμή των δαιμόνων:

    για ρόλο desktop
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond nfs-common nfs-server samba sensors hal alsa cpufreq cups @openntpd sshd)
    για ρόλο server
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond sshd nfs-common nfs-server samba acpid sensors cpufreq cups smartd @openntpd)
    Ξανά εδώ προσέχουμε να μην είναι αλλοιωμένη η σειρά, όπως και να μην προσθέσουμε κάπου παραπανίσια "παπάκια" (αν αφαιρέσουμε, δεν θα γίνει ζημιά απλά θα ξεκινά το σύστημά μας λιγάκι πιο αργά).

    Θυμηθείτε εδώ ότι αν ο επεξεργαστής σας δεν υποστηρίζει power-throttling, δεν θα πρέπει να υπάρχει ο δαίμονας cpufreq.

    Γενικά μία καλή τακτική για τη γραμμή των δαιμόνων, είναι να έχετε 2, 3, 6 κλπ. όσα configurations θέλετε το ένα κάτω από το άλλο, και να είναι όλα σχολιασμένα με "#" κάθε φορά, εκτός από ένα που θα χρησιμοποιείτε.

    Αφού βεβαιωθούμε ότι όλα είναι εντάξει, βγαίνουμε από το nano με Ctrl+X.

    Επίσης, αν θέλουμε να έχουμε πρόσβαση ssh έξω από το LAN μας (π.χ. από το internet) πρέπει οπωσδήποτε να πάμε να απενεργοποιήσουμε το ssh root login:

    Άρα:

    Κώδικας:
    nano /etc/ssh/sshd_config
    Και αλλάζουμε τη γραμμή:

    από:

    Κώδικας:
    PermitRootLogin yes
    σε:

    Κώδικας:
    PermitRootLogin no
    Σώζουμε και βγαίνουμε από το nano.

    Τέλος ελέγχουμε αν στο menu.lst είναι καταχωρημένα τα partitions όχι με τα UUIDs και τα labels (αν υπάρχουν) αλλά με τα πραγματικά device names τους.

    Κώδικας:
    nano /boot/grub/menu.lst
    Δηλαδή κοιτάμε τα σημεία του τύπου:

    Κώδικας:
    kernel /vmlinuz26 root=/dev/sdc3
    να περιέχει καθαρό device name.

    Σώζουμε και βγαίνουμε από το nano.

    Κατεβάζουμε ρολά, κλείνουμε τα πάντα και κάνουμε restart.

    Κώδικας:
    cd /
    clear
    reboot
    [break=Κέντρο !!!]
    34. ΚΕΝΤΡΟ !!!

    για ρόλο desktop
    Τώρα θα μας υποδεχθεί το γραφικό login του Desktop της επιλογής μας Gnome ή KDE.

    για ρόλο server
    Τώρα θα μας υποδεχθεί το login prompt της κονσόλας.

    Καλή απόλαυση.

    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  shot-0001.png 
Εμφανίσεις:  188 
Μέγεθος:  88,0 KB 
ID: 16415

    [break=Π-1: Προτεινόμενα έξτρα προγράμματα]
    Π-1. ΠΡΟΤΕΙΝΟΜΕΝΑ ΕΞΤΡΑ ΠΡΟΓΡΑΜΜΑΤΑ

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Π: Προτεινόμενα έξτρα προγράμματα

    Κάποια από τα προτεινόμενα έξτρα προγράμματα:

    audacious
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  audacious.png 
Εμφανίσεις:  680 
Μέγεθος:  25,4 KB 
ID: 16352

    amarok
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  amarok.png 
Εμφανίσεις:  105 
Μέγεθος:  134,3 KB 
ID: 16361

    gimageview
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  GImageView.png 
Εμφανίσεις:  105 
Μέγεθος:  612,5 KB 
ID: 16371

    gimp
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Gimp.png 
Εμφανίσεις:  65 
Μέγεθος:  1,08 MB 
ID: 16357

    comix (με την library του)
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  comix-1.png 
Εμφανίσεις:  90 
Μέγεθος:  1,49 MB 
ID: 16364

    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  comix-2.png 
Εμφανίσεις:  91 
Μέγεθος:  1,50 MB 
ID: 16365

    gftp
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  gFTP.png 
Εμφανίσεις:  71 
Μέγεθος:  59,4 KB 
ID: 16355

    kid3
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Kid3.png 
Εμφανίσεις:  79 
Μέγεθος:  73,2 KB 
ID: 16358

    celestia
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Celestia.png 
Εμφανίσεις:  70 
Μέγεθος:  322,2 KB 
ID: 16354

    openoffice ή openoffice-bin (writer & calc)
    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Writer.png 
Εμφανίσεις:  63 
Μέγεθος:  53,1 KB 
ID: 16372

    Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  Calc.png 
Εμφανίσεις:  66 
Μέγεθος:  80,1 KB 
ID: 16373

    [break=Π-2: Χτίσιμο Πακέτου από AUR]
    Π-2. ΧΤΙΣΙΜΟ ΠΑΚΕΤΟΥ ΑΠΟ AUR

    Το Arch έχει ένα repository, το AUR, όπου υπάρχουν έτοιμα τα sources για χιλιάδες πακέτα που φτιάχνουν οι χρήστες του, η κοινότητα του Arch.

    Τα πακέτα αυτά για να τα χρησιμοποιήσετε για πρώτη φορά, θα πρέπει μία φορά να τα χτίσετε.

    Μην φοβάστε, η διαδικασία είναι πολύ απλή, μόνο μία εντολή, και δεν θα χρειαστεί ποτέ στο μέλλον ό,τι χτιστεί μια φορά να ξαναχτιστεί. Και αυτά διότι έχουμε φροντίσει να υπάρχει η κατάλληλη υποδομή στο μηχανάκι μας.

    Ας δούμε πώς γίνεται:

    Καταρχήν - αν και τα έχουμε βάλει από τον κορμό του συστήματος, ας βεβαιωθούμε ότι έχουμε τα απαραίτητα πακέτα για τη διαδικασία του χτισίματος - τα οποία έτσι κι αλλιώς κακό δεν κάνουν να είναι εγκατεστημένα:

    Κώδικας:
    pacman -S base-devel make automake cvs wget patch subversion git fakeroot
    Ας πάρουμε ένα παράδειγμα:

    Π.χ. την καινούρια έκδοση του πακέτου firefox-branded

    Εκεί βλέπουμε

    - στην κορυφή της σελίδας το όνομα και την έκδοση και release του πακέτου

    - στη μέση της σελίδας τρία διαδοχικά links:

    Tarball - Files - PKGBUILD

    Κάνουμε δεξί κλικ στο Tarball και επιλέγουμε από τον web browser μας "Save Link As" και προσέχουμε να μην αλλάξει το όνομα του αρχείου.

    Αποσυμπιέζουμε το tarball.

    Θα δημιουργήσει ένα directory με όνομα το όνομα του πακέτου.

    Καλό είναι για δική μας καλύτερη οργάνωση να αλλάξουμε το όνομα αυτού του directory και να το κάνουμε ως εξής:

    Κώδικας:
    <πακέτο>-<έκδοση>-<release>
    π.χ. στην περίπτωσή μας από firefox-branded να το κάνουμε firefox-branded-2.0.0.4-1.

    Πάμε τώρα μέσα σε αυτό το directory όπου υπάρχει ένα αρχείο με όνομα PKGBUILD. Αυτό είναι το αρχείο που περιγράφει το πακέτο μας.

    Ας δούμε πρώτα τη δομή του αρχείου PKGBUILD γιατί θα μας βοηθήσει να καταλάβουμε τί γίνεται, και πολύ σύντομα , να διορθώνουμε μόνοι μας ήδη υπάρχοντα πακέτα, να φτιάχνουμε μόνοι μας νεότερες εκδόσεις ήδη υπάρχοντων πακέτων ή εκδόσεις τους με άλλα χαρακτηριστικά ενεργοποιημένα, ή καινούρια πακέτα που δεν υπάρχουν καθόλου.

    Κώδικας:
    ...........................
    pkgname=firefox-branded
    pkgver=2.0.0.4
    pkgrel=1
    pkgdesc="Standalone web browser from mozilla.org"
    arch=(i686 x86_64)
    license=('MPL' 'GPL' 'LGPL')
    depends=('gtk2>=2.10.11' 'pango>=1.16.1' 'gcc' 'libxt' 'libidl2' 'mozilla-common' 'nss>=3.11.5' 'desktop-file-utils')
    makedepends=('zip' 'imagemagick' 'pkgconfig')
    replaces=('mozilla-firebird' 'phoenix' 'mozilla-firefox' 'firefox')
    conflicts=('mozilla-firefox' 'firefox')
    provides=('mozilla-firefox' 'firefox')
    install=firefox.install
    url="http://www.mozilla.org/projects/firefox"
    source=(...........................)
    md5sums=(...........................)
    
    build() {...........................}
    Ας δούμε ένα-ένα από εδώ όσες γραμμές μας ενδιαφέρουν:

    Κώδικας:
    pkgname=firefox-branded
    Το όνομα του πακέτου.

    Κώδικας:
    pkgver=2.0.0.4
    Η έκδοση του πακέτου.

    Κώδικας:
    pkgrel=1
    Το revision του πακέτου.

    Κώδικας:
    pkgdesc="Standalone web browser from mozilla.org"
    Μια περιγραφή του πακέτου.

    Κώδικας:
    arch=(i686 x86_64)
    Ποιές αρχιτεκτονικές υποστηρίζει το πακέτο.
    Εδώ βλέπουμε ότι το συγκεκριμένο υποστηρίζει καί τις δύο αρχιτεκτονικές (που προς το παρόν) υποστηρίζει το Arch.
    Μας συμφέρει ένα πακέτο να υποστηρίζει καί τις δύο αρχιτεκτονικές.

    Κώδικας:
    depends=('gtk2>=2.10.11' 'pango>=1.16.1' 'gcc' 'libxt' 'libidl2' 'mozilla-common' 'nss>=3.11.5' 'desktop-file-utils')
    Ποιές εξαρτήσεις απαιτεί το πακέτο για να εγκατασταθεί-τρέξει.

    Κώδικας:
    makedepends=('zip' 'imagemagick' 'pkgconfig')
    Ποιές εξαρτήσεις απαιτεί το πακέτο για να χτιστεί.

    Κώδικας:
    source=...........................
    Τα download URLs για τα sources του πακέτου.

    Κώδικας:
    md5sums=...........................
    Είναι τα md5 checksums των sources του πακέτου.

    Κώδικας:
    replaces=
    Ορίζει ότι αντικαθιστά κάποια πακέτα. Αν τα βρει στο σύστημα όταν πάει να εγκατασταθεί, θα απεγκαταστήσει αυτά πρώτα, και μετά θα εγκατασταθεί. Συνήθως αυτά τα πακέτα θα είναι και στις γραμμές conflicts και provides.

    Κώδικας:
    conflicts=
    Ορίζει ότι δεν μπορεί να συνυπάρξει με αυτά τα πακέτα. Συνήθως αυτά τα πακέτα θα είναι και στις γραμμές replaces και provides.

    Κώδικας:
    provides=
    Ορίζει ότι παρέχει πλήρως τις υπηρεσίες (και εξαρτήσεις) που παρέχουν αυτά τα πακέτα. Συνήθως αυτά τα πακέτα θα είναι και στις γραμμές replaces και conflicts.

    Προσέξτε εδώ το εξής σημαντικό στοιχείο. Για όσες υπηρεσίες-εξαρτήσεις δηλώνει εδώ ότι παρέχει αυτό το πακέτο, σημαίνει ότι μπορεί να "εξυπηρετήσει" οποιοδήποτε άλλο πακέτο που περιλαμβάνει τις ίδιες υπηρεσίες-εξαρτήσεις οπωσδήποτε εντός "μονών" εισαγωγικών - και όχι "σκέτο" στις γραμμές makedepends= και depends=.

    Κώδικας:
    build()
    Εδώ είναι η πραγματική διαδικασία που ακολουθείται για να χτιστεί το πακέτο.

    Λοιπόν πάμε να χτίσουμε το πακέτο μας.

    Ανοίγουμε μία κονσόλα και σε αυτήν ανοίγουμε δύο tabs.

    Σε ένα μόνο από τα tabs παίρνουμε δικαιώματα root.

    Κάνουμε με τη σειρά τα εξής πράγματα:

    α. Σιγουρευόμαστε ότι οι εξαρτήσεις που περιγράφουν οι σειρές makedepends= και depends= ικανοποιούνται.

    Άρα δίνουμε μία pacman -S --asdeps με όλες κατά σειρά τις εξαρτήσεις που περιγράφονται στις γραμμές αυτές, χωρισμένες με κενά, χωρίς τις εκδόσεις τους, αλλά αν εσωκλείονται σε μόνα εισαγωγικά, τα βάζουμε και εμείς, αν όχι, δεν τα βάζουμε.

    Άρα ως root δίνουμε:

    Κώδικας:
    pacman -S --asdeps 'zip' 'imagemagick' 'pkgconfig' 'gtk2' 'pango' 'gcc' 'libxt' 'libidl2' 'mozilla-common' 'nss>=3.11.5' 'desktop-file-utils'
    Για όσα πακέτα ήδη υπάρχουν θα ερωτηθούμε κλασικά αν θα ξαναμπούν και θα απαντήσουμε όχι. Για όσα δεν υπάρχουν θα ερωτηθούμε κλασικά αν θα εγκατασταθούν και θα απαντήσουμε ναι.

    Όταν τελειώσει, πάμε στο άλλο tab που είμαστε ως απλός χρήστης.

    Πάμε στο directory που έχουμε σώσει όλα τα αρχεία του πακέτου.

    Θυμάστε που στο βήμα 21 είχαμε βάλει ένα alias στον χρήστη μας του τύπου:

    Κώδικας:
    alias nicepac="nice -n 19 makepkg"
    Αυτό ακριβώς το alias πρέπει να δώσετε τώρα.

    Άρα δίνουμε:

    Κώδικας:
    nicepac
    Αυτό ήταν.

    Τώρα ο pacman θα κάνει κατά σειρά τα εξής χωρίς καμμία δική μας επέμβαση:

    - θα μπεί σε ένα ιδεατό root περιβάλλον-filesystem (fakeroot)
    - θα κατεβάσει όλα τα sources (όσα δεν είναι ήδη κατεβασμένα)
    - θα ελέγξει με τα checksums όλα τα sources
    - θα ελέγξει εάν ικανοποιούνται όλες οι εξαρτήσεις τους
    - θα χτίσει το πρόγραμμα
    - θα χτίσει το πακέτο
    - θα βγει από το fakeroot

    Σημ.: Αντί για nicepac μπορούμε να δώσουμε και manualpac. Σε αυτή την περίπτωση ο pacman δεν θα ελέγξει για το εάν ικανοποιούνται οι εξαρτήσεις. Ούτως ή άλλως πρέπει να φροντίσουμε να ικανοποιούνται από μόνοι μας μόνο οι εξαρτήσεις makedepends και όχι οι depends.

    Θα καταλήξουμε στο directory μας να έχουμε πολλά αρχεία και καταλόγους. Σβήνουμε τα πάντα εκτός από τα 2 παρακάτω αρχεία:

    - το PKGBUILD
    - το αρχείο του πακέτου

    Το αρχείο του πακέτου θα έχει όνομα της μορφής:

    Κώδικας:
    <πρόγραμμα>-<έκδοση>-<revision πακέτου>-<αρχιτεκτονική>.pkg.tar.gz
    Η μεταβλητή <αρχιτεκτονική> προς το παρόν δέχεται δύο δυνατές τιμές:

    για amd64
    Κώδικας:
    x86_64
    για x86
    Κώδικας:
    i686
    Έτσι π.χ. στο παράδειγμα μας:

    Το πακέτο θα ονομάζεται ανάλογα με την αρχιτεκτονική για την οποία προορίζεται:

    για amd64
    Κώδικας:
    firefox-branded-2.0.0.4-1-x86_64.pkg.tar.gz
    για x86
    Κώδικας:
    firefox-branded-2.0.0.4-1-i686.pkg.tar.gz
    Προσεκτικά λοιπόν σβήνουμε όλα τα περιεχόμενα του καταλόγου εκτός από τα παραπάνω δύο αρχεία.

    Κλείνουμε το tab που είμαστε απλός χρήστης - δεν το χρειαζόμαστε άλλο.

    Το πακέτο μας είναι έτοιμο.

    Στο επόμενο βήμα τώρα θα δούμε πώς πολύ εύκολα - με την υποδομή που έχουμε φτιάξει - μπορούμε να χρησιμοποιήσουμε αυτό το πακέτο.

    [break=Π-3: Τοπικό Repository]
    Π-3. ΤΟΠΙΚΟ REPOSITORY

    Στα προηγούμενα, χρειάστηκε να φτιάξουμε τοπικό repository - και γενικά λόγω της φύσης του Arch κάτι τέτοιο είναι πολύ χρήσιμο.


    Μιας και όλη η υποδομή υπάρχει, ας δούμε πολύ σύντομα πώς μπορούμε να το διαχειριζόμαστε.

    Ας δούμε καταρχήν πώς ονομάζονται και πρέπει να ονομάζονται τα πακέτα του Arch:

    Κώδικας:
    <πρόγραμμα>-<έκδοση>-<revision πακέτου>-<αρχιτεκτονική>.pkg.tar.gz
    Η μεταβλητή <αρχιτεκτονική> προς το παρόν δέχεται δύο δυνατές τιμές:

    για amd64
    Κώδικας:
    x86_64
    για x86
    Κώδικας:
    i686
    Έτσι π.χ. αν έχουμε το παράδειγμα:
    ----> πρόγραμμα -> firefox-branded
    ----> έκδοση -> 2.0.0.4
    ----> revision πακέτου -> 1

    Το πακέτο θα ονομάζεται ανάλογα με την αρχιτεκτονική για την οποία προορίζεται:

    για amd64
    Κώδικας:
    firefox-branded-2.0.0.4-1-x86_64.pkg.tar.gz
    για x86
    Κώδικας:
    firefox-branded-2.0.0.4-1-i686.pkg.tar.gz
    Τα πακέτα μας θα πρέπει οπωσδήποτε να ονομάζονται έτσι. Αν δεν ισχύει αυτό, θα πρέπει να τους αλλάζουμε το όνομα εμείς οι ίδιοι ώστε να είναι σωστό (π.χ. πολλές φορές λείπει το "ταμπελάκι" της αρχιτεκτονικής).

    Τα αρχεία αυτά θα πρέπει να τα τοποθετούμε στο directory packages που είχαμε φτιάξει μέσα στο τοπικό repository μας. Δηλαδή στο παράδειγμά μας:

    για amd64
    Κώδικας:
    /mnt/repos/arch-local/amd64/custom/packages/
    για x86
    Κώδικας:
    /mnt/repos/arch-local/x86/custom/packages/
    Τέλος για κάθε ένα πακέτο που έχουμε στο directory packages θα πρέπει να έχουμε βρει και ένα text αρχείο με όνομα:

    Κώδικας:
    PKGBUILD
    Αυτό το αρχείο θα πρέπει να το βάζουμε μέσα στον δικό του κατάλογο, μέσα στο directory list που έχουμε (πάντα ανάλογα με την αρχιτεκτονική μας).

    για amd64
    Κώδικας:
    /mnt/repos/arch-local/amd64/custom/list/
    για x86
    Κώδικας:
    /mnt/repos/arch-local/x86/custom/list/
    Ο δικός του αυτός κατάλογος θα πρέπει να έχει όνομα της μορφής:

    Κώδικας:
    <πρόγραμμα>-<έκδοση>-<revision πακέτου>
    Άρα π.χ. για το παραπάνω πακέτο (το gimageview) θα πρέπει ανάλογα με την αρχιτεκτονική μας, να φτιάξουμε τον κατάλογο:

    για amd64
    Κώδικας:
    /mnt/repos/arch-local/amd64/custom/list/firefox-branded-2.0.0.4-1/
    για x86
    Κώδικας:
    /mnt/repos/arch-local/x86/custom/list/firefox-branded-2.0.0.4-1/
    Και να πετάξουμε εκεί μέσα το PKGBUILD του.

    Άρα όπως βλέπετε τα πράγματα είναι απλά:

    - Αφαίρεση πακέτου από το τοπικό repository
    ----> σβήνουμε το πακέτο του από το directory packages
    ----> σβήνουμε ολόκληρο τον κατάλογό του από το directory list

    - Προσθήκη πακέτου από το τοπικό repository
    ----> βάζουμε το πακέτο του στο directory packages
    ----> δημιουργούμε κατάλογο με το PKGBUILD του πακέτου, στο directory list

    - Ανανέωση πακέτου με νέα έκδοση
    ----> Αφαιρούμε το παλιό - όπως παραπάνω
    ----> Προσθέτουμε το καινούριο - όπως παραπάνω

    Αφού τελειώσουμε, να θυμηθούμε να τρέξουμε μια φορά το σκριπτάκι της ενημέρωσης:

    Κώδικας:
    update-local-repo custom <αρχιτεκτονική>
    Τώρα όποτε ξανακάνουμε SYNC με τον pacman:

    Κώδικας:
    pacman -Sy
    θα δει αμέσως τις αλλαγές μας.

    Κάποια επιπλέον στοιχεία και επιλογές που έχουμε:

    - Με τον νέο pacman 3.x και μετά xρειάζεται μόνο το directory packages. Δεν είναι απαραίτητο να υπάρχει το directory list. Είναι όμως άριστη πρακτική να αποθηκεύουμε εκεί όχι μόνο το PKGBUILD μας, αλλά και όλα τα υπόλοιπα αρχεία που χρειάζονται για το χτίσιμο του πακέτου π.χ. το πλήρες tarball που κατεβάζουμε από το AUR, συν το source tarball.

    - Μπορούμε να έχουμε όσα τοπικά repositories θέλουμε στο δίσκο μας, το καθένα φυσικά με ξεχωριστό όνομα και σε ξεχωριστό κατάλογο. Στο παράδειγμά μας μέχρι τώρα έχουμε μόνο ένα με όνομα "custom".

    Ακόμα και ένα τοπικό repository να έχουμε, ένα πολύ καλό σκριπτάκι για να το ανανεώνουμε όταν πρέπει είναι το εξής (π.χ. update-all-repos):

    <?PHP:
    #!/bin/bash

    PLATFORM=$1

    cd 
    /
    update-local-repo custom "$PLATFORM"
    update-local-repo compiz-fusion-git "$PLATFORM"
    if [ "$PLATFORM"amd64" ]; then
        update
    -local larch5 "$PLATFORM"
    fi
    pacman 
    -Sy
    cd 

    Π.χ. στο παραπάνω παράδειγμα έχουμε 3 τοπικά repos με ονόματα "custom", "compiz-fusion-git" και "larch5". Το δε τελευταίο larch5, είναι τοπικό, μόνο για την αρχιτεκτονική amd64.

    [break=Π-4: Διαφύλαξη Repositories]
    Π-4. ΔΙΑΦΥΛΑΞΗ REPOSITORIES

    Εδώ ασχολούμαστε με αυτό το παράρτημα μόνο αν φτιάξαμε ξεχωριστό partition για τα repositories.

    Ανοίγουμε μία κονσόλα και παίρνουμε δικαιώματα root.

    Δίνουμε:

    Κώδικας:
    abs
    Όταν τελειώσει, ανοίγουμε έναν Midnight Commander με δικαιώματα root, και πάμε στο mount-point του partition για τα repositories που φτιάξαμε - στο παράδειγμά μας το /mnt/repos.

    Φτιάχνουμε εκεί μέσα τα directories:

    Κώδικας:
    arch
    Στο παραπάνω directory μπαίνουμε μέσα και φτιάχνουμε ανάλογα με την αρχιτεκτονική μας:

    για amd64
    Κώδικας:
    amd64
    για x86
    Κώδικας:
    x86
    Εκεί μέσα φτιάχνουμε άλλα τρία directories:

    Κώδικας:
    etc-pacman-d
    var-cache-pacman-pkg
    var-lib-pacman-sync
    Εδώ τώρα χρειάζεται περίσσεια ΠΡΟΣΟΧΗ γιατί άμα κάνετε πατάτα, καταστρέψατε όλη τη δουλειά που έχετε κάνει μέχρι τώρα.

    Ανάλογα με την αρχιτεκτονική μας κάνουμε:

    για amd64
    α. Τρεις αντιγραφές:

    Όλα τα περιεχόμενα των τριών παρακάτω καταλόγων τα αντιγράφουμε σε άλλους καταλόγους:

    Κώδικας:
    /etc/pacman.d/ -> /mnt/repos/arch/amd64/etc-pacman-d/
    /var/cache/pacman/pkg/ -> /mnt/repos/arch/amd64/var-cache-pacman-pkg/
    /var/lib/pacman/sync/ -> /mnt/repos/arch/amd64/var-lib-pacman-sync/
    Πολλή ΠΡΟΣΟΧΗ εδώ.

    - Αντιγράφουμε όχι ολόκληρους τους τρεις καταλόγους αλλά μόνο τα περιεχόμενά τους - δηλαδή θα μπούμε ΜΕΣΑ σε αυτούς πριν δώσουμε εντολή για αντιγραφή.
    - Θα επιλέξουμε ΤΑ ΠΑΝΤΑ από εκεί μέσα -> ΑΠΑΞΑΠΑΝΤΑ
    - Στο παράθυρο επιλογών της αντιγραφής που θα μας βγάλει, θα επιλέξουμε να πάρει και όλους τους υποκαταλόγους, και να διατηρήσει τα attributes όπως είναι. Την επιλογή για τα symlinks ΔΕΝ την αγγίζουμε.

    Θα πρέπει λοιπόν να καταλήξουμε τα τρία παραπάνω ζεύγη καταλόγων να έχουν ΕΠΑΚΡΙΒΩΣ την ίδια δομή και περιεχόμενα. Εάν δεν είναι έτσι, κάπου κάναμε πατάτα και ΔΕΝ προχωράμε παρακάτω. Το ξανακάνουμε απ' την αρχή μέχρι να το κάνουμε σωστά.

    β. Σβήνουμε ΟΛΟΚΛΗΡΟΥΣ - δηλαδή βγαίνουμε ΕΞΩ από αυτούς - τρεις καταλόγους:

    Κώδικας:
    /etc/pacman.d
    /var/cache/pacman/pkg
    /var/lib/pacman/sync
    Πολλή ΠΡΟΣΟΧΗ εδώ μην σβήσετε και άλλα πράγματα και μετά τρέχετε και δεν φτάνετε.

    γ. Φτιάχνουμε τρία symlinks:

    Κώδικας:
    /etc/pacman.d -> /mnt/repos/arch/amd64/etc-pacman-d
    /var/cache/pacman/pkg -> /mnt/repos/arch/amd64/var-cache-pacman-pkg
    /var/lib/pacman/sync -> /mnt/repos/arch/amd64/var-lib-pacman-sync
    δ. Δύο αντιγραφές
    Αντιγράφουμε τα αρχεία

    Κώδικας:
    abs.conf
    pacman.conf
    από έναν κατάλογο σε άλλον:

    Κώδικας:
    /etc/ -> /mnt/repos/arch/amd64/
    ε. Σβήνουμε τα αρχεία:

    Κώδικας:
    /etc/abs.conf
    /etc/pacman.conf
    στ. Φτιάχνουμε symlinks:

    Κώδικας:
    /etc/abs.conf -> /mnt/repos/arch/amd64/abs.conf
    /etc/pacman.conf -> /mnt/repos/arch/amd64/pacman.conf
    για x86
    α. Τρεις αντιγραφές:

    Όλα τα περιεχόμενα των τριών παρακάτω καταλόγων τα αντιγράφουμε σε άλλους καταλόγους:

    Κώδικας:
    /etc/pacman.d/ -> /mnt/repos/arch/x86/etc-pacman-d/
    /var/cache/pacman/pkg/ -> /mnt/repos/arch/x86/var-cache-pacman-pkg/
    /var/lib/pacman/sync/ -> /mnt/repos/arch/x86/var-lib-pacman-sync/
    Πολλή ΠΡΟΣΟΧΗ εδώ.

    - Αντιγράφουμε όχι ολόκληρους τους τρεις καταλόγους αλλά μόνο τα περιεχόμενά τους - δηλαδή θα μπούμε ΜΕΣΑ σε αυτούς πριν δώσουμε εντολή για αντιγραφή.
    - Θα επιλέξουμε ΤΑ ΠΑΝΤΑ από εκεί μέσα -> ΑΠΑΞΑΠΑΝΤΑ
    - Στο παράθυρο επιλογών της αντιγραφής που θα μας βγάλει, θα επιλέξουμε να πάρει και όλους τους υποκαταλόγους, και να διατηρήσει τα attributes όπως είναι. Την επιλογή για τα symlinks ΔΕΝ την αγγίζουμε.

    Θα πρέπει λοιπόν να καταλήξουμε τα τρία παραπάνω ζεύγη καταλόγων να έχουν ΕΠΑΚΡΙΒΩΣ την ίδια δομή και περιεχόμενα. Εάν δεν είναι έτσι, κάπου κάναμε πατάτα και ΔΕΝ προχωράμε παρακάτω. Το ξανακάνουμε απ' την αρχή μέχρι να το κάνουμε σωστά.

    β. Σβήνουμε ΟΛΟΚΛΗΡΟΥΣ - δηλαδή βγαίνουμε ΕΞΩ από αυτούς - τρεις καταλόγους:

    Κώδικας:
    /etc/pacman.d
    /var/cache/pacman/pkg
    /var/lib/pacman/sync
    Πολλή ΠΡΟΣΟΧΗ εδώ μην σβήσετε και άλλα πράγματα και μετά τρέχετε και δεν φτάνετε.

    γ. Φτιάχνουμε τρία symlinks:

    Κώδικας:
    /etc/pacman.d -> /mnt/repos/arch/x86/etc-pacman-d
    /var/cache/pacman/pkg -> /mnt/repos/arch/x86/var-cache-pacman-pkg
    /var/lib/pacman/sync -> /mnt/repos/arch/x86/var-lib-pacman-sync
    δ. Δύο αντιγραφές
    Αντιγράφουμε τα αρχεία

    Κώδικας:
    abs.conf
    pacman.conf
    από έναν κατάλογο σε άλλον:

    Κώδικας:
    /etc/ -> /mnt/repos/arch/x86/
    ε. Σβήνουμε τα αρχεία:

    Κώδικας:
    /etc/abs.conf
    /etc/pacman.conf
    στ. Φτιάχνουμε symlinks:

    Κώδικας:
    /etc/abs.conf -> /mnt/repos/arch/x86/abs.conf
    /etc/pacman.conf -> /mnt/repos/arch/x86/pacman.conf
    Πάμε και τα δύο παράθυρα του Midnight Commander στο "/" και βγαίνουμε με F10.

    Αν τώρα τα έχουμε κάνει όλα σωστά:

    Δίνοντας κανονικά ένα:

    Κώδικας:
    pacman -Sy
    Το σύστημα θα πρέπει να "μην έχει πάρει χαμπάρι" και να είναι "σαν το σπίτι του".

    Σημ.: Είναι προφανές ότι μπορούμε αυτό το repository να το έχουμε και σε κάποιο "δικτυακό" partition π.χ. αν το "/mnt/repos" είναι δικτυακό share.

    [break=Π-5: Έχουμε καί εμείς Daemon Tools]
    Π-5. ΕΧΟΥΜΕ ΚΑΙ ΕΜΕΙΣ DAEMON TOOLS

    Τα Daemon Tools του Linux είναι το cdemu.

    Και είναι σωστά δομημένο.

    Αποτελείται από:
    - ένα kernel module vhba
    - μία βιβλιοθήκη διαβάσματος images libmirage
    - έναν δαίμονα cdemud

    Και:
    για Gnome:
    - ένα Gnome Panel Applet gcdemu

    για KDE:
    - ένα service menu και μία εφαρμογή kde-cdemu-manager

    Άρα λοιπόν:

    για Gnome
    Κώδικας:
    pacman -S gcdemu
    για KDE
    Κώδικας:
    pacman -S kde-cdemu-manager
    Πάμε τώρα να ρυθμίσουμε τον δαίμονα:

    Διορθώνουμε το αρχείο /etc/conf.d/cdemud:

    Από εδώ μας ενδιαφέρει η γραμμή:

    Κώδικας:
    # how many optical drives to emulate
    NUM_DRIVES=1
    Εδώ όπως καταλαβαίνετε ορίζετε πόσα εικονικά DVD drives θέλετε να έχετε.

    Π.χ. ας βάλουμε δύο:

    Κώδικας:
    NUM_DRIVES=2
    Τέλος, πρέπει να ρυθμίσουμε το rc.conf μας για 2 ενέργειες:

    - να φορτώνει το vhba module στη γραμμή MODULES=
    - να φορτώνει τον δαίμονα cdemud στη γραμμή DAEMONS=

    Πάμε λοιπόν:

    modules:

    Είχαμε:

    Κώδικας:
    MODULES=(powernow-k8 fuse !r8169 loop)
    Το κάνουμε:

    Κώδικας:
    MODULES=(powernow-k8 fuse vhba !r8169 loop)
    Δαίμονες:

    Είχαμε:

    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond nfs-common nfs-server samba sensors hal alsa cpufreq cups smartd @openntpd sshd)
    Το κάνουμε:

    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind netfs crond nfs-common nfs-server samba sensors hal alsa cpufreq cups smartd @openntpd sshd cdemud)
    Κάνουμε ένα restart.

    Και ξαναμπαίνοντας στο Gnome, απλά προσθέτουμε σε κάποιο Panel μας ένα gCDEmu applet.

    Είμαστε έτοιμοι.

    [break=Π-6: APC UPSes]
    Π-6. APC UPSes

    Σε αυτό το παράρτημα θα δούμε πώς στήνουμε ένα UPS της APC.

    Για UPSes άλλων εταιριών, το παρόν, ΔΕΝ σας καλύπτει.

    Κώδικας:
    pacman -S apcupsd
    Διορθώνουμε το αρχείο /etc/apcupsd/apcupsd.conf.

    Μας ενδιαφέρει να υπάρχουν οι παρακάτω γραμμές:

    Κώδικας:
    UPSCABLE usb
    UPSTYPE usb
    DEVICE /dev/usb/hid/hiddev[0-9]
    Αυτά για μοντέλα με σύνδεση USB (σχεδόν όλα είναι έτσι πια).

    Σώζουμε.

    Τέλος, φυσικά, πρέπει να δηλώσουμε και τον δαίμονα στο τέλος της γραμμής DAEMONS= στο /etc/rc.conf για να ξεκινά αυτόματα.

    Στο τέλος λοιπόν της γραμμής DAEMONS= αφήνουμε ένα κενό (space) και κοτσάρουμε:

    Κώδικας:
    apcupsd
    Τον ξεκινάμε:

    Κώδικας:
    /etc/rc.d/apcupsd start
    Είμαστε έτοιμοι.

    Για να βλέπουμε στο εξής την κατάσταση του UPS θα δίνουμε στο εξής - ακόμα και ως απλός χρήστης:

    Κώδικας:
    apcaccess status
    Μπορούμε να το θέσουμε και σαν ένα alias στο .bashrc του root για ευκολία.

    Για UPSes άλλων εταιριών, η μόνη λύση είναι το NUT αλλά ετοιμαστείτε για πολλά ακροβατικά.

    [break=Π-7: UPSes εκτός από APC]
    Π-7. UPSes ΕΚΤΟΣ ΑΠΟ APC

    Το παράρτημα τούτο έχει συνταχθεί από τον gkimonas.

    Αν το UPS σας είναι οποιασδήποτε άλλης μάρκας εκτός από APC ή ακόμα αν θέλετε να μοιράσετε το UPS σας στο τοπικό σας δίκτυο, η λύση λέγεται NUT.

    Ας δούμε πως:

    Πρώτα θα πρέπει να κάνουμε εγκατάσταση το NUT με τον package manager του Arch τον Pacman

    Κώδικας:
    pacman -S network-ups-tools
    Τώρα θα δείτε ότι δημιουργήθηκε ένας φάκελος ups στο /etc όπου μέσα σ' αυτόν τον φάκελο βρίσκονται όλα τα conf αρχεία που θα χρειαστούμε για να στήσουμε το NUT με το UPS μας.

    Πάμε λοιπόν:

    Στα παραδείγματα μας θα χρησιμοποιήσουμε τον κειμενογράφο nano

    * NUT σε ένα pc-τοπικά

    Το πρώτο αρχείο που θα πρέπει να τροποποιήσουμε είναι το ups.conf

    Ανοίγουμε λοιπόν το αρχείο, σβήνουμε ό,τι περιέχει εκεί και βάζουμε τα παρακάτω.

    Κώδικας:
    nano -w /etc/ups/ups.conf
    Κώδικας:
    [My_UPS_Name]
            driver = UPS_Driver
            port = seirial or usb
            desc = "File Server"
    My_UPS_Name: Εδώ βάζουμε το όνομα του UPS μας, πχ myups
    UPS_Driver: Εδώ βάζουμε τον driver του UPS μας, τον driver του UPS μας μπορούμε να δούμε ποιος είναι είτε από εδώ είτε από την πλήρης λίστα με τα περισσότερα UPS της αγοράς που βρίσκεται στο /usr/share/ups/driver.list

    seirial or usb: Εδώ βάζουμε την διεπαφή με την οποία συνδέεται το UPS μας με τον υπολογιστή.
    Η διεπαφή αυτή θα είναι είτε σειριακή είτε USB. Το UPS μας θα υλοποιεί μια από τις 2, λίγα είναι τα UPS της αγοράς που υποστηρίζουν και τις 2 διεπαφές.
    Αν πρόκειται για seirial τότε δίνουμε /dev/ttyS0 πρώτη σειριακή θύρα ή /dev/ttyS1 δεύτερη σειριακή θύρα κλπ
    συνήθως η 0 η πρώτη δηλαδή είναι στο επάνω μέρος όπως κοιτάζουμε το πίσω μέρους του κουτιού του υπολογιστή μας, αυτό βέβαια δεν είναι σίγουρο γι' αυτό καλό είναι να δοκιμάσετε.

    Αν η διεπαφή είναι usb τότε στο port γράφουμε την επιλογή auto.
    Στο desc βάζουμε ό,τι θέλουμε εμείς, είναι απλά μια περιγραφή.

    Στην συνέχεια πάμε και ανοίγουμε τα παρακάτω αρχεία και κάνουμε τις απαραίτητες αλλαγές.
    Σε κάθε αρχείο σβήνουμε όλα όσα περιέχει και γράφουμε τα παρακάτω.

    Κώδικας:
    nano -w /etc/ups/upsd.conf
    Κώδικας:
    ACL all 0.0.0.0/0
    ACL localhost 127.0.0.1/32
    
    ACCEPT localhost
    REJECT all
    Κώδικας:
    nano -w /etc/ups/upsd.users
    Κώδικας:
    [admin]
                    password = admin
                    allowfrom = localhost
                    actions = SET
                    instcmds = ALL
                    upsmon master
    Και τέλος

    Κώδικας:
    nano -w /etc/ups/upsmon.conf
    Κώδικας:
    RUN_AS_USER nut
    MONITOR myups@localhost 1 admin admin master
    MINSUPPLIES 1
    SHUTDOWNCMD "/sbin/shutdown -h +0"
    POLLFREQ 5
    POLLFREQALERT 5
    HOSTSYNC 15
    DEADTIME 15
    POWERDOWNFLAG /etc/killpowerlis 
    RBWARNTIME 43200
    NOCOMMWARNTIME 300
    FINALDELAY 5
    O Pacman κατά την εγκατάσταση του NUT δημιουργεί έναν χρήστη με όνομα nut και group nut. Έτσι ο αυτός ο χρήστης τρέχει και το πρόγραμμα.
    Αυτό που πρέπει να κάνουμε είναι να δώσουμε άδεια στον χρήστη nut έτσι ώστε να μπορεί να συνδεθεί στην διεπαφή που είναι συνδεδεμένο το UPS μας.

    Αν το UPS μας συνδέεται μέσω σειριακής θύρας (RS-232) θα πρέπει να εκτελέσουμε την παρακάτω εντολή ως root

    Κώδικας:
    usermod -G uucp nut
    Αν το UPS μας συνδέεται μέσω usb θύρας θα πρέπει να εκτελέσουμε την παρακάτω εντολή ως root

    Κώδικας:
    usermod -G usb nut
    Στην συνέχεια πολύ σημαντικό να κάνουμε τα παρακάτω chown

    Κώδικας:
    chown root:nut /var/state
    chown nut:nut /var/state/ups
    Τώρα πρέπει να ξεκινήσουμε τον δαίμονα upsd.

    Κώδικας:
    /etc/rc.d/upsd start
    Λογικά θ' ακούσετε 2 συνεχείς επαναλαμβανόμενους ήχους από το ups σας.

    Δίνουμε τώρα την παρακάτω εντολή

    Κώδικας:
    upsc myups@localhost
    Αν όλα έχουν πάει καλά θα δείτε στην οθόνη σας κάτι ανάλογο με αυτό εδώ.
    Κώδικας:
    battery.charge: 100.0
    battery.voltage: 13.70
    battery.voltage.nominal: 12.0
    driver.name: megatec
    driver.parameter.pollinterval: 2
    driver.parameter.port: /dev/ttyS1
    driver.version: 2.2.2
    driver.version.internal: 1.5.14
    input.frequency: 50.1
    input.frequency.nominal: 50.0
    input.voltage: 225.3
    input.voltage.fault: 140.0
    input.voltage.maximum: 228.7
    input.voltage.minimum: 225.3
    input.voltage.nominal: 220.0
    output.voltage: 218.6
    ups.beeper.status: enabled
    ups.delay.shutdown: 0
    ups.delay.start: 2
    ups.load: 12.0
    ups.mfr: 
    ups.model:  TR00071G
    ups.serial: unknown
    ups.status: OL
    ups.temperature: 30.0
    ups.type: standby
    Αν υπάρχει η ένδειξη ups.status: OL σημαίνει πως το UPS σας είναι ON LINE και όλα είναι εντάξει.

    Αν για οποιοδήποτε λόγο δεν δουλεύει το παραπάνω, καλό θα ήταν να δείτε ξανά αν ο χρήστης nut έχει πρόσβαση στην διεπαφή που είναι συνδεδεμένο το UPS σας, τα περισσότερα προβλήματα συνήθως οφείλονται σε αυτό.

    Τώρα ανοίγουμε το κύριο configuration αρχείο του Arch ως root εννοείται και πάμε στην γραμμή DAEMONS και βάζουμε το upsd έτσι ώστε να ξεκινάει κάθε φορά με την εκκίνηση του υπολογιστή.

    Κώδικας:
    nano -w /etc/rc.conf
    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind nfs-common nfs-server netfs crond sshd nessusd foldingathome upsd samba httpd mysqld)
    Αν τώρα το UPS μας το έχουμε συνδέσει με USB, καλό είναι να κάνουμε ένα restart ή stop|start τον hal δαίμονα.
    Δηλαδή

    Κώδικας:
    /etc/rc.d/hal restart
    και στην συνέχεια να ξεκινήσουμε τον upsd δαίμονα
    Κώδικας:
    /etc/rc./upsd start
    Η μόνη διαφορά είναι ότι στην γραμμή DAEMONS θα πρέπει να βάλουμε τον upsd να ξεκινάει μετά τον hal χωρίς το χαρακτηριστικό @.

    Κώδικας:
    DAEMONS=(syslog-ng network rpcbind nfs-common nfs-server netfs crond sshd nessusd foldingathome hal upsd samba httpd mysqld)
    Τέλος αν θέλουμε να μην γράφουμε όλη την εντολή για να παρακολουθούμε το UPS μας, ανοίγουμε στο .bashrc του καθημερινού μας χρήστη και φτιάχνουμε ένα alias.

    πχ
    Κώδικας:
    alias ups='upsc myups@localhost'
    σώζουμε το αρχείο και δίνουμε ένα
    Κώδικας:
    source .bashrc
    έτσι ώστε να ισχύει το alias που φτιάξαμε.

    Τώρα αν θέλετε να παρακολουθείτε το UPS από γραφικό περιβάλλον υπάρχει το knutclient, ένα πρόγραμμα για το KDE όπου υπάρχει και αυτό στο adslgr repo.

    Για να το εγκαταστήσετε αρκεί μόνο ένα
    Κώδικας:
    pacman -S knutclient
    Η ρύθμιση του είναι πολύ εύκολη, αρκεί να δώσουμε τα host, username, password που είχαμε δηλώσει στο αρχείο /etc/ups/upsd.users


    * NUT σε περισσότερα από ένα PC-LAN


    Η δύναμη του NUT είναι το γεγονός ότι πρόκειται για ένα δικτυακό εργαλείο με ό,τι αυτό μπορεί να συνεπάγεται.
    Ας υποθέσουμε ότι έχουμε ένα δεύτερο pc το οποίο τρέχει και αυτό Arch ή κάποια άλλη διανομή linux ή ακόμα και Microsoft Windows.
    Μπορούμε να ρυθμίσουμε το NUT έτσι ώστε να επικοινωνεί με το δεύτερο ή περισσότερα pc μέσω δικτύου και να δίνει εντολή σε τερματισμό αυτών σε περίπτωση διακοπής ρεύματος ή πτώσης.
    Το μόνο που χρειάζεται είναι να υπάρχει στο δεύτερο pc εγκατεστημένος ένας nut client.
    Βασική προϋπόθεση για το παραπάνω είναι και τα παραπάνω είναι τα 2 pc να βρίσκονται στο ίδιο δίκτυο με το ίδιο subnet.

    Ας δούμε πως:

    - Από την πλευρά του Server

    Server είναι το pc το οποίο συνδέεται με το UPS μας και επικοινωνεί μαζί του.
    Οι αλλαγές των .conf αρχείων περιγράφονται παρακάτω.

    To αρχείο /etc/ups/ups.conf παραμένει ως έχει.

    Το αρχείο /etc/ups/upsd.conf διαμορφώνεται ως εξής:

    Κώδικας:
    ACL localhost 127.0.0.1/32
    ACL mynet 192.168.1.0/24
    ACL all 0.0.0.0/0
    ACCEPT localhost mynet
    REJECT all
    To mynet ορίζω εγώ το όνομα του δικτύου μου, εσείς μπορείτε να βάλετε ό,τι όνομα θέλετε φυσικά και εκεί θέτουμε το ip range του δικτύου που θέλουμε να να έχει πρόσβαση στο UPS.
    Μπορούμε να βάλουμε φυσικά μόνο την ip address του host από τον οποίο θέλουμε να έχει πρόσβαση στον NUT server μας.

    Σώζουμε τις αλλαγές και πάμε στο επόμενο αρχείο που θα τροποποιήσουμε και είναι το /etc/ups/upsd.users

    Στο αρχείο αυτό προσθέτουμε έναν δεύτερο χρήστη που θα έχει περιορισμένα δικαιώματα στο UPS μας και θα έχει πρόσβαση από το τοπικό μας δίκτυο.

    Κώδικας:
    [gkimonas]
                    password  = gkimonas
                    allowfrom = mynet
                    upsmon slave
    Σώζουμε τις αλλαγές και πάμε στο τελευταίο αρχείο που θα τροποποιήσουμε και είναι το /etc/ups/upspon.conf

    Το μόνο που έχουμε να κάνουμε στο αρχείο αυτό είναι να θέσουμε το Monitor για αυτόν το χρήστη.


    Κώδικας:
    MONITOR myups@192.168.x.x gkimonas gkimonas slave
    Σώζουμε και κάνουμε restart τον upsd
    Κώδικας:
    /etc/rc.d/upsd restart
    - Από την πλευρά του client


    Client είναι ένα pc το οποίο συνδέεται σε lan με το pc το οποίο είναι συνδεδεμένο με το UPS μας και όπως είπαμε παραπάνω είναι ο ups server.

    Το client pc μπορεί να τρέχει ένα nut client είτε από κονσόλα, είτε από γραφικό όπως το knutclient όπως περιγράψαμε παραπάνω. Επίσης αυτό το pc μπορεί να τρέχει και windows λειτουργικό, κανένα πρόβλημα, υπάρχει και το winut client το οποίο μπορείτε να κατεβάσετε από εδώ

    Αν θέλουμε από κονσόλα να βλέπουμε το τοπικό μας Ups το μόνο που έχουμε να κάνουμε είναι να εγκαταστήσουμε το NUT και στον client και πάλι με τον pacman.

    Το μόνο που έχουμε να κάνουμε είναι ν' ανοίξουμε τα παρακάτω αρχεία και να θέσουμε παντού σχόλια ή να σβήσουμε ό,τι περιέχουν.
    Κώδικας:
    /etc/ups/ups.conf
    /etc/ups/upsd.conf
    /etc/ups/upsd.users
    Η μόνη ρύθμιση που έχουμε να κάνουμε είναι ν' ανοίξουμε το αρχείο /etc/ups/upsmon.conf και να βάλουμε τα παρακάτω.

    Κώδικας:
    RUN_AS_USER nut
    MONITOR myups@192.168.x.x gkimonas gkimonas slave
    MINSUPPLIES 1
    SHUTDOWNCMD "/sbin/shutdown -h +0"
    POLLFREQ 5
    POLLFREQALERT 5
    HOSTSYNC 15
    DEADTIME 15
    POWERDOWNFLAG /etc/killpowerlis 
    RBWARNTIME 43200
    NOCOMMWARNTIME 300
    FINALDELAY 5
    Ξεκινάμε τον upsd δαίμονα, που στην ουσία θα ξεκινήσει μόνο το upsmonitor και είμαστε έτοιμοι.

    Καλά xfs να έχετε.


    Τέλος θα ήθελα να ευχαριστήσω τους Hwoarang, mrsaccess και ranger για την βοήθεια και την προσφορά τους.

    [break=Π-8: Compiz-Fusion]
    Π-8. COMPIZ-FUSION

    Το παρακάτω κομμάτι μας ενδιαφέρει μόνο αν στήνουμε μηχανάκι για ρόλο desktop. Για ρόλο server το παραλείπουμε.

    για ρόλο desktop
    Σε αυτό το παράρτημα θα εγκαταστήσουμε το Compiz-Fusion.

    Απαραίτητη προϋπόθεση είναι να έχουμε μία από τις παρακάτω κάρτες γραφικών:
    - nVidia σειρά GeForce6 και πάνω
    - ATi RADEON μέχρι καί HD-1xxx

    Ανοίγουμε ένα Terminal.

    Κώδικας:
    su -
    Ενεργοποιούμε το compiz-fusion repo στο pacman.conf:

    Κώδικας:
    nano /etc/pacman.conf
    Προσθέτουμε κάτω-κάτω:

    για amd64
    Κώδικας:
    [compiz-fusion]
    Server = http://archlinuxgr.tiven.org/compiz-fusion-64
    Σώζουμε και βγαίνουμε από το nano.

    Τώρα ανάλογα με το desktop που τρέχουμε:

    για Gnome
    Κώδικας:
    pacman -S compiz-fusion-gtk
    για KDE
    Κώδικας:
    pacman -S compiz-fusion-kde
    καί για τα 2 DEs
    Κώδικας:
    pacman -S compiz-fusion
    Το xorg.conf μας είναι ήδη compiz-fusion-ready.

    Τώρα κάνουμε ένα restart και όταν ξαναμπούμε απλά τρέχουμε:

    Κώδικας:
    fusion-icon
    Κάνουμε δεξί κλικ στο παραλληλεπιπεδάκι κάτω-δεξιά και επιλέγουμε κατά σειρά:

    Και:

    για Gnome
    Κώδικας:
    - Select Window Decorator -> GTK Window Decorator
    για KDE
    Κώδικας:
    - Select Window Decorator -> KDE Window Decorator
    Αυτά θα χρειαστεί να τα κάνουμε μόνο μια φορά.

    Τέλος επιλέγουμε πάλι με τον ίδιο τρόπο:

    Κώδικας:
    - Select Window Manager -> Compiz
    Και έχουμε Compiz-Fusion.

    Στο εξής όποτε ξεκινά το fusion-icon θα τρέχει αυτόματα το Compiz-Fusion.

    Αν το αποτέλεσμα μας ικανοποιεί, μπορούμε να το βάλουμε και μόνιμα στα StartUp Programs του Session (βάζουμε fusion-icon).

    Συγκεκριμένα βάζουμε στο StartUp Manager του DE μας να τρέχει η καταχώριση:

    Κώδικας:
    fusion-icon
    Τώρα μένει να κάνουμε να τρέχει το Compiz-Fusion σαν ο default window manager.

    για Gnome
    Σαν απλοί χρήστες ανοίγουμε έναν text editor (π.χ. τον gedit) και φτιάχνουμε 2 σκριπτάκια.

    Το 1ο θέτει σαν default window manager το Compiz-Fusion.

    Το 2ο επαναφέρει σαν default window manager το Metacity - αν κάτι δεν πάει καλά.

    Κώδικας:
    #!/bin/bash
    
    gconftool-2 --set -t string /desktop/gnome/session/required_components/windowmanager compiz
    Το σώζουμε με ένα όνομα που να θυμόμαστε τί κάνει (θέτει σαν default window manager το Compiz-Fusion) π.χ. enable-compiz-fusion.

    Πάμε τώρα στο 2ο σκριπτάκι:

    Κώδικας:
    #!/bin/bash
    
    gconftool-2 --set -t string /desktop/gnome/session/required_components/windowmanager metacity
    Επίσης το σώζουμε με ένα όνομα που να θυμόμαστε τί κάνει (θέτει σαν default window manager το Metacity) π.χ. enable-metacity.

    Κλείνουμε τον text editor.

    Τώρα από μία κονσόλα, όπου έχουμε πάρει δικαιώματα root, ανοίγουμε έναν Midnight Commander και:

    - μετακινούμε αυτά τα 2 σκριπτάκια στο directory /bin/
    - τους αλλάζουμε το ownership σε -> root-root
    - τους αλλάζουμε τα permissions σε -> 100755

    Τώρα από μία κονσόλα, σαν απλός χρήστης, τρέχουμε:

    [code]enable-compiz-fusion[/b].

    Στο εξής θα ξεκινά με το Gnome σαν default window manager το Compiz-Fusion.

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

    [code]enable-metacity[/b].

    Για να επανέλθουμε στο Metacity.

    για KDE
    Από τα System Settings του KDE πάμε:

    General -> Personal -> Default Applications -> Window Manager

    Εδώ επιλέγουμε:

    Use a different Window Manager

    Και αμέσως από κάτω:

    Compiz.

    Υπόψη ότι ενώ είναι πιο εύκολο στο KDE (δεν χρειαζόμαστε τα σκριπτάκια) να σετάρουμε το Compiz-Fusion σαν default window manager, ωστόσο αν κάτι δεν πάει καλά, θα μείνουμε με το KDE στο χέρι, και θα χρειαστεί να κάνουμε ακροβατικά.

    Επίσης ΠΡΟΣΟΧΗ εάν τρέχουμε KDE, να είναι παντελώς και πλήρως απενεργοποιημένα τα δικά του 3D desktop effects.

    [break=Π-9: Jumbo Frames - Ενσύρματο gigabit ethernet υψηλών επιδόσεων]
    Π-9. JUMBO FRAMES - ΕΝΣΥΡΜΑΤΟ GIGABIT ETHERNET ΥΨΗΛΩΝ ΕΠΙΔΟΣΕΩΝ

    Τα Jumbo Frames είναι μία μέθοδος για να έχουμε αυξημένη απόδοση στο LAN μας και μειωμένο CPU usage.

    Απαραίτητες προϋποθέσεις στο δίκτυό μας για να τα ενεργοποιήσουμε:

    - να είναι ενσύρματο και gigabit
    - οι κάρτες δικτύου μας, οι drivers τους σε όλα τα λειτουργικά, καθώς και τα switches μας να υποστηρίζουν κάποιο μέγιστο μέγεθος MTU πάνω από 1500. Για το αν έχουμε εξοπλισμό που υποστηρίζει στην πράξη Jumbo Frames και ποιού μεγέθους, κοιτάμε στην παρακάτω σελίδα:

    Jumbo clean gear

    Βρίσκουμε λοιπόν το μέγιστο κοινό MTU που υποστηρίζουν οι συσκευές μας.

    Και πάμε να το ενεργοποιήσουμε:

    Θα διορθώσουμε τη γραμμή για το ethernet interface μας στο rc.conf:

    Κώδικας:
    nano /etc/rc.conf
    Να η γραμμή μας:

    Κώδικας:
    eth0="eth0 192.168.1.7 netmask 255.255.255.0 broadcast 192.168.1.255"
    Έστω ότι το μέγιστο κοινό MTU είναι π.χ. 4500. Τότε την αλλάζουμε ως εξής:

    Κώδικας:
    eth0="eth0 192.168.1.7 netmask 255.255.255.0 broadcast 192.168.1.255 mtu 4500"
    Σώζουμε και βγαίνουμε από το nano.

    Ξαναξεκινάμε το δίκτυο με τα νέα δεδομένα:

    Κώδικας:
    /etc/rc.d/network restart
    Τώρα αν δώσουμε:

    Κώδικας:
    ifconfig
    Θα πρέπει να μας βγάλει την eth0 με MTU=4500.

    Αν στο LAN μας έχουμε και Windows NT-Class, πάμε στον Device Manager και ενεργοποιούμε και από εκεί την αντίστοιχη τιμή για Jumbo Frames.

    Είμαστε έτοιμοι.

    [break=Π-10: Larch - Υπερσύγχρονο και πανάλαφρο Linux Live-CD για κάθε χρήση]
    Π-10. LARCH - ΥΠΕΡΣΥΓΧΡΟΝΟ ΚΑΙ ΠΑΝΑΛΑΦΡΟ LINUX LIVE-CD ΓΙΑ ΚΑΘΕ ΧΡΗΣΗ

    Σχετικά πρόσφατα δημιουργήθηκε από ένα μέλος της κοινότητας του Arch ένα σύστημα δημιουργίας ενός Arch Live-CD, όπου ο χρήστης έχει (σχεδόν) πλήρη έλεγχο στο τί θα συμπεριλάβει εκεί μέσα, όπως και στο configuration του προκύπτοντος live συστήματος (ρυθμίσεις δικτύου, ποιοί δαίμονες και με ποιές ρυθμίσεις θα σηκωθούν κλπ.).

    Το σύστημα αυτό λέγεται Larch και βρίσκεται πλέον στην έκδοση 5.3.

    Μέχρι πολύ πρόσφατα έτρεχε και ήταν δοκιμασμένο μόνο σε x86 αρχιτεκτονική, μετά όμως από σχετικές δοκιμές του γράφοντος τροποποιήθηκε, υποστήριξε, δοκιμάστηκε και πιστοποιήθηκε καί για amd64 αρχιτεκτονική.

    Το Larch μπορεί να φτιάξει 2 ειδών live-CDs:

    α. Από υπάρχουσα εγκατάσταση Arch
    Στην περίπτωση αυτή, ΠΡΟΣΟΧΗ πολύ, γιατί την καταστρέφει ανεπιστρεπτί. Άρα προτού το κάνετε, να έχετε φροντίσει να έχετε αποθηκεύσει tar backups όλων των partitions της εγκατάστασης αυτής ώστε μετά την "ζωντανοποίησή" της, να την κάνετε restore.

    β. Εκ του μηδενός καινούριο live-CD χωρίς να πειράξει την υπάρχουσα εγκατάστασή μας.
    Εδώ δεν διατρέχετε κανένα κίνδυνο, και δεν χρειάζεται να πάρετε κανένα backup.

    Εμείς στο παράρτημα αυτό θα ασχοληθούμε με την περίπτωση β.

    Ας δούμε τώρα (και στις 2 περιπτώσεις) ποιά μοναδικά και ισχυρότατα πλεονεκτήματα μας παρέχει το Larch:

    1. Χρησιμοποιεί τα ίδια ακριβώς conf αρχεία (με 1-2 πολύ μικρές εξαιρέσεις) που χρησιμοποιεί καί το κανονικό Arch.
    Άρα:
    - Δεν χρειάζεται να μάθουμε τίποτα καινούργιο -> είμαστε σαν το σπίτι μας.
    - Ξέρουμε να ρυθμίζουμε το Arch μας -> αυτομάτως ξέρουμε και πώς να ρυθμίσουμε το νέο μας live σύστημα.
    - Θέλουμε συγκεκριμένη ρύθμιση-συμπεριφορά στο live σύστημά μας -> όπως θα ρυθμίζαμε κανονικό Arch για να την πετύχουμε (π.χ. kernel modules, δαίμονες, δίκτυο, hosts, sshd, nfs, samba κλπ.) έτσι επακριβώς χωρίς να μυρίζουμε τα νύχια μας και να ψαχνόμαστε θα ρυθμίσουμε και το live σύστημά μας. Πουθενά και για τίποτα δεν θα χρειαστεί να ξαναεφεύρουμε τον τροχό.

    2. Χρησιμοποιεί τα ίδια ακριβώς standard εργαλεία, PMS, και repositories που χρησιμοποιεί καί το κανονικό Arch.
    Άρα:
    - Το live σύστημα χρησιμοποιεί τον standard pacman του Arch, τα standard repositories του Arch, και τα standard ονόματα πακέτων του Arch. Δεν χρειάζεται να μάθουμε τίποτα καινούριο. Είμαστε σαν το σπίτι μας.
    - Χωρίς καμμία δική μας απολύτως παρέμβαση, κάθε φορά που από το ίδιο profile (θα εξηγήσουμε τα profiles παρακάτω) χτίζεται live σύστημα, λαμβάνονται τα νεότερα πακέτα από τα επίσημα Arch repositories κανονικότατα, και με τη βούλα, με τον pacman.

    3. Υποστηρίζει πολλαπλά profiles (διαμορφώσεις)
    - Μπορούμε να έχουμε μόνιμα αποθηκευμένα όσα profiles θέλουμε για να καλύπτουμε ποικίλες ανάγκες.
    - Σε κάθε profile έχουμε απόλυτο έλεγχο - ένα-προς-ένα - σε ποιά πακέτα θα συμπεριλάβουμε.

    4. Είναι υπερχρήσιμο για δυσπρόσιτα μηχανάκια
    Έχετε έναν file server "εις την σοφίταν ψηλά εκεί" και πρέπει να κάνετε κάποιες εργασίες με live-CD πάνω του;
    Τί θα κάνατε μέχρι τώρα; Σαν τον Δ. Ψαθά -> ανοίγει την μεγάλη πόρτα, μπαίνει στη μικρή σοφίτα, κλείνει τον μικρούλη server, βγάζει το ρεύμα και το δίκτυο, τον παίρνει παραμάσχαλα, βγαίνει από τη μικρή σοφίτα, κλείνει τη μεγάλη πόρτα, τον κατεβάζει κάτω, κλείνει το δικό του υπολογιστή, βγάζει την οθόνη και το πληκτρολόγιο, τα συνδέει στον μικρούλη server... κλπ. (ήδη ζαλίστηκα)
    Τώρα με το Larch απλά χρειάζεται να έχετε από πριν στο BIOS του απομακρυσμένου μηχανήματος το boot sequence -> CD-ROM->SCSI και να βάλετε μέσα το Larch live-CD. Γιατί; Μα γιατί μπορείτε να του ορίσετε να ξεκινάει αυτόματα ο ssh server επιτρέποντας root logins. Και τα πάντα (backup, restore, maintenance, trouble-shooting κλπ.) να τα κάνετε ανετότατα από την υπερδιαστημική καρέκλα, οθόνη σας κλπ.

    5. Μπορεί να χτιστεί και από άλλες διανομές Linux
    Με λίγο πιο χειροκίνητο τρόπο (δεν το καλύπτουμε στο παρόν).

    6. Ένα τέτοιο live-CD είναι πανχρήσιμο και σε άλλες διανομές
    Γιατί:
    - Backup, restore, ενημέρωση grub, παντός είδους rescue, είναι κοινή ανάγκη για όλες τις διανομές.
    - Πολλές διανομές (π.χ. Gentoo και όχι μόνο) χρειάζονται κάποιο live-CD για να εγκατασταθούν. Όσο πιο υπερσύγχρονο είναι αυτό (με υπερπρόσφατο kernel) τόσο ευκολότερη η δουλειά λόγω υπέρμετρα καλύτερης υποστήριξης hardware. Και το Arch (μην ξεχνάτε ότι αυτόματα θα "τραβηχτούν" από τα επίσημα Arch repos ό,τι πιο τελευταίο σε software) είναι ως γνωστόν το πλέον υπερσύγχρονο-ενημερωμένο Linux. Ξεχάστε οι Gentoo χρήστες τα παλαιολιθικά Gentoo Live-CDs ανά 6 μήνες, όπου κολλάει το Realtek 8169 σας γιατί το Live-CD έχει ακόμα 2.6.18 ή παλιότερο, ή είναι τόσο καινούρια η κάρτα δικτύου σας που δεν μπορούν να την σηκώσουν, ή που δεν μπορούν να σηκώσουν τον καινούριο σας SATA disk controller. Τώρα με το Arch Live-CD, αν δεν μπορεί να τα σηκώσει το Arch, απλά δεν μπορεί να τα σηκώσει κανείς.
    - Πολλά άλλα Live-CDs (π.χ. Ubuntu) απαιτούν χρονοβόρες διαδικασίες ή και κουνγκ-φου πριν καταφέρετε να τα φέρετε σε τέτοια κατάσταση για να μπορείτε να κάνετε τη δουλειά σας. Ξεχάστε το κουνγκ-φου που πρέπει να παίξετε με τον network-manager του Ubuntu Live-CD (που με περίσσιο θράσος σας αποκαλεί συνεχώς "Μίστερ Άντερσον") απλά και μόνο για να σηκώσετε το τοπικό σας δίκτυο. Ξεχάστε στο Ubuntu που πρέπει να κατεβάσετε θεμελιώδη πακέτα για τη δουλειά σας που δεν τα έχει από τη μάνα του (π.χ. mc-utf8, screen, cfdisk, rpcbind, nfs, samba κλπ.). Ξεχάστε στο Ubuntu που πρέπει να σηκώσετε μόνοι σας απαραίτητους δαίμονες (συνήθως για δίκτυο -> nfs, samba κλπ.). Ξεχάστε στο Ubuntu που δεν έχετε απ' την αρχή υποστήριξη ελληνικών και υποστήριξη Unicode.

    Πάμε λοιπόν.

    Καταρχήν, εγκαθιστούμε κάποια απαραίτητα πακέτα:

    Κώδικας:
    pacman -S aufs2
    Μετά, πάμε να δηλώσουμε το repository του Larch:

    Άρα λοιπόν, πάμε στο pacman.conf μας και δηλώνουμε ΤΕΛΕΥΤΑΙΟ:

    Ανάλογα με την αρχιτεκτονική μας:

    για amd64
    Κώδικας:
    [larch5]
    Server = http://archlinuxgr.tiven.org/archlinux-live-cd/larch-5
    για x86
    Κώδικας:
    [larch5]
    Server = ftp://ftp.berlios.de/pub/larch/larch5.3/i686
    Είμαστε τώρα έτοιμοι να εγκαταστήσουμε το Larch.

    Κανονικά κάνουμε sync με τον pacman:

    για amd64
    Κώδικας:
    update-all-repos amd64
    για x86
    Κώδικας:
    update-all-repos x86
    Τώρα λίγη ΠΡΟΣΟΧΗ:

    Μόνο για αυτή τη στιγμή θα πάμε στο pacman.conf μας και θα δηλώσουμε πρώτο-πρώτο (πανω-πάνω) το Larch repository.

    Και αφού το κάνουμε, κανονικά:

    Κώδικας:
    pacman -S larch
    ΠΡΟΣΟΧΗ:

    Πάμε στο pacman.conf μας και επαναφέρουμε ΤΕΛΕΥΤΑΙΟ (κάτω-κάτω) το Larch repository.

    Είμαστε τώρα έτοιμοι να φτιάξουμε το πρώτο μας Arch Live-CD.

    Ας δούμε πώς:

    Καταρχήν φτιάχνουμε ένα προσωρινό directory κάπου, σε ένα partition που να έχει αρκετό ελεύθερο χώρο (τουλάχιστο 4-6 GBytes).

    Ας πούμε ότι φτιάχνουμε π.χ. το:

    Κώδικας:
    /mnt/larch-temp
    και το σημειώνουμε σε ένα χαρτάκι.

    Από κάτω του, φτιάχνουμε άλλα δύο directories:

    Κώδικας:
    build
    profiles
    Το Larch έχει εγκατασταθεί στον κατάλογο:

    Κώδικας:
    /opt/larch
    Από εκεί και κάτω, μας ενδιαφέρουν, κάποιοι κατάλογοι και αρχεία.

    Στο directory docs βρίσκεται και το documentation του Larch.

    Μας ενδιαφέρει καί το directory profiles.

    Ολόκληρα τα περιεχόμενά του τα αντιγράφουμε στο directory "profiles" κάτω από αυτό που φτιάξαμε προηγουμένως (που σημειώσαμε καί στο χαρτάκι μας):

    π.χ. στο παράδειγμά μας:

    Κώδικας:
    /mnt/larch-temp/profiles
    Αυτό το directory περιέχει όλα τα έτοιμα profiles-παραδείγματα του Larch. Από αυτά θα ξεκινάμε πάντα για να φτιάξουμε τα δικά μας. Πολύ καλό σημείο εκκίνησης είναι το profile "mini2".

    Πάμε λοιπόν σε ένα πραγματικό παράδειγμα:

    Για να λειτουργήσει το παράδειγμά μας κάνουμε τις παρακάτω παραδοχές:

    - υπάρχει ενεργός DHCP server στο LAN μας

    Άρα λοιπόν ξεκινάμε.

    Θα φτιάξουμε ένα δικό μας profile - ας το πούμε (δεν έχει σημασία πώς) "example" - και ας το βασίσουμε στο "mini2".

    Άρα λοιπόν κάτω από το directory "/mnt/larch-temp/profiles" φτιάχνουμε ένα νέο directory "example" και εκεί μέσα αντιγράφουμε όλα τα περιεχόμενα του directory "/mnt/larch-temp/profiles/mini2".

    Ας δούμε εδώ τί αλλαγές πρέπει να κάνουμε και τί κάνουν ένα-ένα τα αρχεία μέσα στο directory "example":

    - Αρχείο locale.gen:
    Κάνει ό,τι ακριβώς κάνει και το αντίστοιχο αρχείο στο κανονικό μας Arch.

    Άρα λοιπόν πάμε και του βάζουμε κατά τα γνωστά:

    Κώδικας:
    # locales for larch (/etc/locale.gen)
    
    en_US.UTF-8	UTF-8
    en_US	ISO-8859-1
    el_GR.UTF-8	UTF-8
    el_GR	ISO-8859-7
    el_GR@euro	ISO-8859-7
    Αν οι ανάγκες μας, απαιτούν περισσότερα locales, τα προσθέτουμε.

    - Αρχείο addepacks:

    Εδώ ορίζουμε ποιά πακέτα θέλουμε να περιέχει εγκατεστημένα το Live-CD μας. Μπορούμε να χρησιμοποιήσουμε οποιοδήποτε standard πακέτο Arch θέλουμε, και τα ονόματα είναι επακριβώς τα ίδια.

    Άρα λοιπόν το διορθώνουμε και βάζουμε οπωσδήποτε:

    Κώδικας:
    # These are needed to build a live CD
    squashfs-tools
    initcpio_larch
    
    # You need a kernel. At the moment the only standard Arch kernel
    # which works (because of needing 'squashfs' and 'unionfs') is 'beyond'.
    #kernel26 is now in 'base'
    aufs2
    
    # To eject a cd, also session saving
    cdrkit
    dvd+rw-tools
    
    # Highly recommended
    larchin
    #larch
    
    # Needed by the installer
    python
    # dialog is now in basepacks!
    diffutils
    
    # If using 'abs':
    subversion
    git
    cvs
    
    # Useful for use as installer, etc.
    ntfsprogs
    parted
    mdadm
    lvm2
    hwdetect
    Και από εδώ και πέρα είμαστε ελεύθεροι να βάλουμε όποια και όσα πακέτα ικανοποιούν τις ανάγκες για τις οποίες φτιάχνουμε το Live-CD.

    Π.χ. συνήθως βάζω:

    Κώδικας:
    # generally useful tools which don't require X
    acpid
    openssh
    dosfstools
    lynx
    mc
    screen
    unzip
    zip
    fakeroot
    rpcbind
    nfs-utils
    samba
    tcptraceroute
    htop
    chkrootkit
    util-linux-ng
    lsof
    - Αρχείο baseveto:

    Εδώ περιέχονται όσα πακέτα από το addedpacks ΔΕΝ θέλουμε να εγκατασταθούν.

    Για το παράδειγμά μας, ας τα σχολιάσουμε όλα.

    - Αρχείο rcconfx:

    Αυτό αποτελεί το rc.conf του Live-CD μας.

    Έχει επακριβώς την ίδια δομή - λειτουργία - κανόνες - συμπεριφορά με το γνωστό μας rc.conf.

    Π.χ. ένα τυπικό setup θα μπορούσε να είναι:

    Κώδικας:
    #
    # patch file for /etc/rc.conf
    #
    
    LOCALE="en_US.utf8"
    HARDWARECLOCK="localtime"
    TIMEZONE="Europe/Athens"
    KEYMAP="us"
    CONSOLEFONT=iso07u-16.psfu.gz
    CONSOLEMAP=
    USECOLOR="yes"
    
    MODULES=(powernow-k8 !r8169 !sk98lin !skge)
    
    HOSTNAME="liveexample"
    
    USELVM="no"
    
    eth0="dhcp"
    
    DAEMONS=(syslog-ng network rpcbind netfs crond sshd acpid)
    ΠΡΟΣΟΧΗ εδώ.

    Φτιάξτε ανάλογα με τις ανάγκες σας δηλαδή:

    - σωστό CPU power-throttling module (αν υπάρχει)
    - σωστά ethernet modules με ενεργό το πρώτο, και σε όλα υπόλοιπα θαυμαστικό
    - σωστοί δαίμονες (πολύ προσοχή στα παπάκια) και με τη σειρά που απαιτούνται

    Επίσης έχετε υπόψη σας ότι ανάλογα με τις ρυθμίσεις σας θα χρειαστεί να ρυθμίσετε και κάποια άλλα αρχεία παρακάτω (π.χ. conf για hosts, nfs, samba, sshd, κλπ.)

    - Αρχείο cd-root/isolinux/isolinux.cfg

    Αυτό αποτελεί το menu.lst του grub για το Live-CD μας.

    Εδώ μπορείτε να ορίσετε τις επιλογές boot, ποιά θα είναι default κλπ.

    Πάλι ανάλογα με τις ανάγκες σας.

    Π.χ. συνήθως βάζω πρώτη και default επιλογή να αντιγραφούν όλα στη RAM (copy-to-ram -> είναι η "linux-c2r").

    ΠΡΟΣΟΧΗ εδώ:

    Αν κάνετε κάτι τέτοιο σιγουρευτείτε ότι:

    - Έχετε αρκετή RAM (τουλάχιστο 1GByte).

    - Έχετε swap partition κάπου στους δίσκους σας.

    Άρα ας πούμε για το παράδειγμά μας:

    Κώδικας:
    default vesamenu.c32
    prompt 0
    timeout 50
    
    MENU BACKGROUND bkgd.jpg
    
    MENU TITLE larch live CD with 'example' profile
    
    label linux-c2r
    MENU LABEL larch-example copy-to-ram (also activates swap)
    kernel vmlinuz
    append initrd=larch.img c2r
    
    label linux
    MENU LABEL Default: no swap, no copy-to-ram
    kernel vmlinuz
    append initrd=larch.img
    # or with video mode for beyond kernel:
    #append initrd=larch.img video=vesafb:ywrap,mtrr,800x600@60
    
    label linux-swap
    MENU LABEL larch-example with swap
    kernel vmlinuz
    append initrd=larch.img swap
    
    label memtest
    MENU LABEL Memory tester
    kernel memtest
    Τέλος μας ενδιαφέρει το directory "root-overlay".

    Εδώ μέσα μας προσφέρεται τρομερή ευελιξία.

    Αυτό αποτελεί ουσιαστικά το εικονικό "/" directory του καινούριου Live-CD που θα φτιάξουμε.

    Δηλαδή, οποιοδήποτε αρχείο ή directory βάλουμε εδώ μέσα, θα συμπεριληφθεί στο Live-CD μας και ΠΡΟΣΟΧΗ επιπλέον, όσα αρχεία βάλουμε εδώ μέσα, αυτόματα σε αυτά έχει πρόσβαση μόνο ο root.

    Όπως καταλαβαίνετε, αυτό μας επιτρέπει να συμπεριλάβουμε σχεδόν όποιο conf αρχείο θέλουμε, φέρνοντας έτσι το Live-CD απολύτως στα μέτρα μας.

    ΠΡΟΣΟΧΗ πολύ εδώ.

    Δεν αρκεί τα directories και αρχεία από δω κάτω, να είναι στη σωστή θέση και με σωστό περιεχόμενο.

    Θα πρέπει να έχουν και τα σωστά ownership-permissions, ένα-προς-ένα, και αυτά θα πρέπει εσείς να τα φτιάξετε με το χέρι.

    Αν δεν υπάρχουν στα παρακάτω οι κατάλογοι ή τα αρχεία θα πρέπει να τα φτιάξουμε εμείς.

    Άρα λοιπόν, πράγματα που πρέπει να πειράξουμε-διορθώσουμε εκεί μέσα:

    Πρώτα τα υποχρεωτικά:

    Στο etc/ssh/sshd_config:

    Κώδικας:
    Port 22
    Protocol 2
    PermitRootLogin yes
    StrictModes yes
    RSAAuthentication yes
    PubkeyAuthentication yes
    RhostsRSAAuthentication no
    HostbasedAuthentication no
    PermitEmptyPasswords yes
    ChallengeResponseAuthentication no
    UsePAM no
    UsePrivilegeSeparation yes
    Subsystem	sftp	/usr/lib/ssh/sftp-server
    ΠΡΟΣΟΧΗ εδώ.

    Ποτέ μα ποτέ μην φτιάξετε τέτοιο sshd_config για το κανονικό σας σύστημα. Είναι παντελώς ανασφαλές διότι επιτρέπει root ssh login με κενό password και το password του root στο Live-CD θα είναι όντως κενό.

    Επίσης ποτέ μα ποτέ μην βάλετε αυτό το Live-CD σε μηχανάκι στο LAN σας αν δεν είστε σίγουροι ότι είναι επαρκώς προστατευμένο από το WAN (π.χ. aDSL ethernet modem-router με SPI firewall & NAT ή μηχανάκι UNIX με iptables σηκωμένο), και ότι στο LAN σας δεν υπάρχουν συνδεδεμένοι κακόβουλοι χρήστες.

    Στο etc/hosts:

    Εδώ φροντίζουμε να συμπεριλάβουμε όλα τα hostnames που έχουμε στο LAN μας για δική μας ευκολία.

    Άρα στο παράδειγμά μας:

    Κώδικας:
    192.168.1.7     neo
    192.168.1.19    router
    192.168.1.21    kitsos
    192.168.1.8     theitsa
    Στο etc/hosts.allow:

    Κώδικας:
    ALL: 127.0.0.1
    sshd: ALL
    Στο etc/pacman.conf:

    Εδώ αρκούν τα repos core, extra, & community με έναν καλό mirror "καρφωτό" π.χ.:

    για amd64
    Κώδικας:
    [options]
    LogFile     = /var/log/pacman.log
    NoUpgrade   = etc/passwd etc/group etc/shadow etc/sudoers
    NoUpgrade   = etc/fstab etc/raidtab etc/ld.so.conf
    NoUpgrade   = etc/rc.conf etc/rc.local
    NoUpgrade   = etc/modprobe.conf etc/modules.conf
    NoUpgrade   = etc/lilo.conf boot/grub/menu.lst
    HoldPkg     = pacman glibc
    SyncFirst   = pacman
    CleanMethod = KeepCurrent
    #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
    
    [core]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/core/os/x86_64
    
    [extra]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/extra/os/x86_64
    
    [community]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/community/os/x86_64
    για x86
    Κώδικας:
    [options]
    LogFile     = /var/log/pacman.log
    NoUpgrade   = etc/passwd etc/group etc/shadow etc/sudoers
    NoUpgrade   = etc/fstab etc/raidtab etc/ld.so.conf
    NoUpgrade   = etc/rc.conf etc/rc.local
    NoUpgrade   = etc/modprobe.conf etc/modules.conf
    NoUpgrade   = etc/lilo.conf boot/grub/menu.lst
    HoldPkg     = pacman glibc
    SyncFirst   = pacman
    CleanMethod = KeepCurrent
    #XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
    
    [core]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/core/os/i686
    
    [extra]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/extra/os/i686
    
    [community]
    Server = ftp://ftp.sh.cvut.cz/MIRRORS/arch/community/os/i686
    Τώρα τα προαιρετικά, ανάλογα με τις ανάγκες μας:

    Στο etc/abs/abs.conf:

    Να ενεργοποιήσουμε όλα τα abs branches:

    Κώδικας:
    SUPFILES=(core extra community testing unstable)
    Στο root/.bashrc:

    Εδώ κανονικά, μπορούμε να ορίσουμε:

    - τη μορφή του bash prompt (π.χ. χρωματάκια gentoo)
    - aliases

    κλπ.


    Τέλος θυμηθείτε, αν χρειάζεστε:

    - nfs imports
    να είναι δηλωμένοι στο rcconfx και με τη σωστή σειρά και παπάκια οι δαίμονες network rpcbind netfs

    - nfs exports
    να είναι δηλωμένοι στο rcconfx και με τη σωστή σειρά και παπάκια οι δαίμονες network rpcbind netfs nfs-common nfs-server
    να φτιάξετε σωστό αρχείο etc/exports

    - samba imports
    να είναι δηλωμένοι στο rcconfx και με τη σωστή σειρά και παπάκια οι δαίμονες network rpcbind netfs samba
    να φτιάξετε σωστό αρχείο etc/samba/smb.conf που να έχει τουλάχιστο σωστό [global] τμήμα

    - samba imports
    να είναι δηλωμένοι στο rcconfx και με τη σωστή σειρά και παπάκια οι δαίμονες network rpcbind netfs samba
    να φτιάξετε σωστό αρχείο etc/samba/smb.conf που να έχει πέρα από σωστό [global] τμήμα και σωστά τμήματα για τα exported directories

    Είμαστε έτοιμοι.

    Πάμε τώρα να το χτίσουμε:

    Για να χτιστεί ένα Live-CD με βάση ένα συγκεκριμένο profile απαιτείται να δώσουμε:

    Κώδικας:
    mklarch -p <πλήρες-directory-του-profile> <πλήρες-directory-που-χτίζουμε>
    μέσα από το directory του profile.

    Άρα για το παράδειγμά μας:

    Κώδικας:
    cd /mnt/larch-temp/profiles/example
    mklarch -p /mnt/larch-temp/profiles/example /mnt/larch-temp/build
    Στις ερωτήσεις που θα μας τεθούν απαντάμε ΝΑΙ σε όλα.

    Ύστερα από λίγα λεπτά, θα φτιαχτεί ένα έτοιμο ISO:

    Κώδικας:
    /mnt/larch-temp/build/.larch/mylivecd.iso
    το οποίο μπορούμε να κάψουμε σε οποιοδήποτε οπτικό μέσο οποιουδήποτε φυσικού format (CD/DVD, R/RW/+R/+RW).

    Συνιστάται να χρησιμοποιούμε πάντα DVD+ διότι κοστίζουν το ίδιο, αντέχουν περισσότερο, γράφονται γρηγορότερα, και κυρίως, διαβάζονται γρηγορότερα.

    Επίσης για όσο κάνουμε δοκιμές, μπορούμε να χρησιμοποιούμε +RW μέσα. Όταν δοκιμάσουμε το αποτέλεσμα και είμαστε σίγουροι, μπορούμε να το κάψουμε μόνιμα σε ένα +R.

    Αποθηκεύστε κάπου ασφαλώς το ISO που προέκυψε.

    Πλέον μπορείτε να σβήσετε όλα τα περιεχόμενα του directory "/mnt/larch-temp/build".

    Μόλις αποκτήσαμε ένα πανάλαφρο - ταχύτατο - υπερσύγχρονο Linux Live-CD, κομμένο και ραμμένο απολύτως για τις ανάγκες μας.

    Να ευχαριστήσω εδώ ιδιαιτέρως τους Tiven & Flamelab για την αναντικατάσταση πρωτοβουλία τους και συνδρομή τους για τη δημιουργία αυτού του larch repository.

    [break=Π-11: aDSLgr Arch Linux Repository]
    Π-11. ADSLGR ARCH LINUX REPOSITORY

    Κάποια από τα πακέτα AUR - και όχι μόνο - που χρησιμοποιούνται σε αυτόν τον οδηγό - και όχι μόνο - βρίσκονται έτοιμα σε κανονικό on-line repository. Τα χρησιμοποιείτε κατά τα γνωστά απλά δηλώνοντας το repository αυτό πάνω-πάνω στο pacman.conf σας.

    για amd64
    Κώδικας:
    [adslgr64]
    Server = http://archlinuxgr.tiven.org/archlinux/x86_64
    
    [kde4-eyecandy-64]
    Server = http://archlinuxgr.tiven.org/kde4-eyecandy/x86_64
    για x86
    Κώδικας:
    [adslgr32]
    Server = http://archlinuxgr.tiven.org/archlinux/i686
    
    [kde4-eyecandy-32]
    Server = http://archlinuxgr.tiven.org/kde4-eyecandy/i686
    Να ευχαριστήσω εδώ ιδιαιτέρως τους Tiven & Flamelab για την αναντικατάσταση πρωτοβουλία τους και συνδρομή τους για τη δημιουργία αυτού του repository.

    [break=Π-12: Ειδικό τμήμα για SSD]
    Π-12. ΕΙΔΙΚΟ ΤΜΗΜΑ ΓΙΑ SSD

    Κοιτάμε εδώ:

    How-To: Linux - Κοινά στοιχεία διανομών Linux & Linux Reference - Ειδικό τμήμα για SSD

    [break=Π-13: Βιβλιογραφία]
    Π-13. ΒΙΒΛΙΟΓΡΑΦΙΑ

    Arch Linux
    Arch Linux Wiki
    Arch Linux Forums
    AUR
    The Arch Way
    Arch Compared To Other Distros
    ArchLinux User-community Repository (AUR)
    Official Arch Linux Install Guide
    Post Installation Tips
    Configuring network
    Pacman
    Groups
    Xorg7
    ALSA Setup
    Arch64 FAQ
    Install Flash on Arch64
    Composite
    Compiz-Fusion
    Solid State Drives
    Firefox Ramdisk
    larch -- a live CD/DVD/USB-stick construction kit for Arch Linux
    User Guide for larch-5.3
    Jumbo clean gear

    συν το "Thread του Arch" στο aDSLgr εδώ.

    [break=Π-14: Ευχαριστίες]
    Π-14. ΕΥΧΑΡΙΣΤΙΕΣ

    Θα ήθελα να ευχαριστήσω τους παρακάτω χρήστες (αλφαβητικά) οι οποίοι συνέβαλαν στη συγγραφή του παρόντος.

    AddictedToChaos
    Alex_Oz
    artem
    Caret
    DarthMoul
    daemonicus
    dimstog
    dou13
    emfragmatron
    EvilHawk
    flamelab
    giorgosb
    giorgosc61
    gkimonas
    GoofyX
    hayzel
    homer_k
    Hwoarang
    kymagr
    ludist
    mach
    matersci
    mrsaccess
    pancon
    panoc
    parsifal
    ranger
    teorid
    Theos
    Tiven
    Attached Thumbnails Attached Thumbnails mc.png  

    Τελευταία επεξεργασία από το μέλος WAntilles : 04-09-11 στις 01:04.

  2. #2
    Το avatar του μέλους AddictedToChaos
    AddictedToChaos Guest
    Πότε πρόλαβες ρε συ και έγραψες How-to για το Arch;;;

    Τα σέβη μου

  3. #3
    Το avatar του μέλους EvilHawk
    EvilHawk Guest
    Good timing! θα έχουμε να ασχοληθούμε με κάτι μετά τον οβελία!

    Τώρα που είπα τα καλά μου λόγια κάτσε να σε "δώσω" στην K-φράξια ...

    Αν το αποτέλεσμα μας ικανοποιεί, εάν και μόνο εάν τρέχουμε Gnome, μπορούμε να το βάλουμε και μόνιμα στα StartUp Programs του Session. Για αντίστοιχη δουλειά στο KDE χρειάζονται ακροβατικά, μιας και δεν διαθέτει Session Manager.

  4. #4
    Το avatar του μέλους AddictedToChaos
    AddictedToChaos Guest
    Σχετικά με αυτό που επισημαίνει ο Evil

    Αν το αποτέλεσμα μας ικανοποιεί, εάν και μόνο εάν τρέχουμε Gnome, μπορούμε να το βάλουμε και μόνιμα στα StartUp Programs του Session. Για αντίστοιχη δουλειά στο KDE χρειάζονται ακροβατικά, μιας και δεν διαθέτει Session Manager.
    Για τσεκάρετε αυτό...

    Edit. Όπως βλέπεις WAn, το KDE προνοεί για τους advanced χρήστες αλλά και για τους noobs
    Τελευταία επεξεργασία από το μέλος AddictedToChaos : 05-04-07 στις 19:32. Αιτία: Done Evil :p

  5. #5
    Το avatar του μέλους EvilHawk
    EvilHawk Guest
    Ούτε ένα flame της προκοπής δεν μπορείς να κάνεις χαοτικέ ...
    Τελευταία επεξεργασία από το μέλος EvilHawk : 05-04-07 στις 19:30.

  6. #6
    Εγγραφή
    22-09-2005
    Περιοχή
    Triandria City - Salonika!
    Ηλικία
    34
    Μηνύματα
    2.134
    Downloads
    7
    Uploads
    0
    Τύπος
    ADSL OTE
    Ταχύτητα
    14490/1019
    ISP
    OTEnet
    DSLAM
    Ο.Τ.Ε. - ΤΟΥΜΠΑΣ
    Router
    USR9108A
    SNR / Attn
    6.8(dB) / 33(dB)
    Ένα μεγάλο μπράβο στον Wan για τον πολύ καλό οδηγό που έφτιαξε. Θα δοκιμαστεί ενδελεχώς μετά το ψήσιμο του οβελία. Keep up the good work!

  7. #7
    Εγγραφή
    14-01-2005
    Περιοχή
    Σαπίλας και Σκουριάς 38-Ζαχλωρού Καλαβρύτων
    Μηνύματα
    12.877
    Downloads
    21
    Uploads
    3
    Τύπος
    Other / Άλλο
    Ταχύτητα
    100Τbit fiber
    ISP
    sdikr-net
    DSLAM
    Ο.Τ.Ε. - Ν.ΣΜΥΡΝΗΣ
    Router
    Fuzzy gutsu-gutsu
    SNR / Attn
    112(dB) / 0.9(dB)
    Κοίτα να δεις !!!
    Άλλος ένας τρομερός και λεπτομερέστατος οδηγός!
    Βρε κοίτα να δεις που προσπαθεί με τόση θέρμη να με ρίξει στην dark side των non-ρουπουμοειδών διανομών και εγώ ακόμα το παίζω στυλοβάτης της ήθικής
    Eλπίζω να μπορέσω να κρατήσω, ώστε να μην πάνε χαμμένα τα ξενύχτια των shadowman και addicted

    You're not taking me alive ....

    Good... Bad... I'm tha guy with tha Gun...
    WAntilles: Ούτε σε όλους έχει αφαιρεθεί με βάναυσο - γκεμπελικό χειρουργείο, το μέρος του εγκεφάλου που συμπαθεί τα Windows.
    Trolling με γεύση παπάγια

  8. #8
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    Ενημερώθηκε ο οδηγός για nVidia + beryl + Gnome 2.18.
    Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.

  9. #9
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    - προστέθηκε το fam
    - SMP χτίσιμο πακέτων καί με μέγιστο (+19) niceness (αλά Gentoo)
    Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.

  10. #10
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    - προστέθηκαν εργαλεία spelling
    - εικονογράφηση
    Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.

  11. #11
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    - ο χρήστης προστίθεται πλέον καί στο group storage
    - αφαιρέθηκαν οι γραμμές από το fstab για USB εξωτερικές storage devices αφού είναι πλέον deprecated
    Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.

  12. #12
    Εγγραφή
    18-11-2004
    Περιοχή
    Αγία Παρασκευή
    Ηλικία
    43
    Μηνύματα
    1.331
    Downloads
    4
    Uploads
    0
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΧΑΛΑΝΔΡΙ
    Απλά τέλειος ο οδηγός.

    Το μόνο πρόβλημα που αντιμετωπίζω είναι με τα fonts στον Firefox...
    Enthoo Pro | Maximus VII Hero | i7 4770K | 8GB Kingston HyperX 2400 | 290 Tri-X OC | 840 Evo | AX760

  13. #13
    Εγγραφή
    02-11-2003
    Περιοχή
    40-65N 22-9E
    Ηλικία
    45
    Μηνύματα
    56.163
    Downloads
    64
    Uploads
    73
    Τύπος
    VDSL2
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΒΑΡΝΑΣ
    Router
    ZTE Speedport Plus
    Path Level
    Fastpath
    Παράθεση Αρχικό μήνυμα από Lazy Dog Εμφάνιση μηνυμάτων
    Το μόνο πρόβλημα που αντιμετωπίζω είναι με τα fonts στον Firefox...
    Δεν καταλαβαίνω γιατί.

    Τα ίδια ακριβώς που έκανα στα Windows και στις άλλες διανομές κάνω καί εδώ.

    Άρπαξα απλά το profile μου, το πέταξα κάπου στο "~" μου, και απλά το δήλωσα στον Firefox Profile Manager.

    Φυσικά πρέπει να έχεις εγκατεστημένες τις ίδιες γραμματοσειρές.

    Συνιστώνται εντονότατα αυτές της Microsoft.

    Πιθανόν να πρέπει απλά να ξαναεπιλεχθούν οι επιθυμητές γραμματοσειρές, διότι δυστυχώς είναι το μόνο στοιχείο που εν μέρει (κακώς) δεν κρατά ο Firefox στο profile, αλλά τα αποθηκεύει εν μέρει καί στο σύστημα (σε όλα τα λειτουργικά το κάνει αυτό).

    Η ίδια απόλυτη και μοναδική-αποκλειστική μεταφερσιμότητα (φυσικά) ισχύει και για ολόκληρο τον στόλο των Mozillo-ειδών -> + Thunderbird + Sunbird.
    Τελευταία επεξεργασία από το μέλος WAntilles : 10-04-07 στις 14:50.
    Επιτέλους το ελάχιστο δυνατό, ευέλικτο, και ψηφιακό κράτος. Με διαρκή αξιολόγηση.

  14. #14
    Εγγραφή
    18-11-2004
    Περιοχή
    Αγία Παρασκευή
    Ηλικία
    43
    Μηνύματα
    1.331
    Downloads
    4
    Uploads
    0
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΧΑΛΑΝΔΡΙ
    Την βρήκα την λύση τελικά....Λείπανε τα tahoma bold fonts
    Enthoo Pro | Maximus VII Hero | i7 4770K | 8GB Kingston HyperX 2400 | 290 Tri-X OC | 840 Evo | AX760

  15. #15
    Εγγραφή
    18-11-2004
    Περιοχή
    Αγία Παρασκευή
    Ηλικία
    43
    Μηνύματα
    1.331
    Downloads
    4
    Uploads
    0
    Ταχύτητα
    51200/5120
    ISP
    ΟΤΕ Conn-x
    DSLAM
    ΟΤΕ - ΧΑΛΑΝΔΡΙ
    Να και ένα screenshot...Πατήστε στην εικόνα για να τη δείτε σε μεγέθυνση. 

Όνομα:  snapshot1wk6.png 
Εμφανίσεις:  762 
Μέγεθος:  881,8 KB 
ID: 16484
    Τελευταία επεξεργασία από το μέλος EvilHawk : 13-04-07 στις 12:05.
    Enthoo Pro | Maximus VII Hero | i7 4770K | 8GB Kingston HyperX 2400 | 290 Tri-X OC | 840 Evo | AX760

Σελ. 1 από 74 12361121 ... ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. Μηνύματα: 322
    Τελευταίο Μήνυμα: 17-08-11, 14:48

Tags για αυτό το Θέμα

Bookmarks

Bookmarks

Δικαιώματα - Επιλογές

  • Δεν μπορείτε να δημοσιεύσετε νέα θέματα
  • Δεν μπορείτε να δημοσιεύσετε νέα μηνύματα
  • Δεν μπορείτε να αναρτήσετε συνημμένα
  • Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας
  •  
  • Τα BB code είναι σε λειτουργία
  • Τα Smilies είναι σε λειτουργία
  • Το [IMG] είναι σε λειτουργία
  • Το [VIDEO] είναι σε λειτουργία
  • Το HTML είναι εκτός λειτουργίας