Η ενότητα αυτή εξηγεί πώς να εγκαταστήσετε το Debian GNU/Linux από ένα υπάρχον from Unix ή Linux σύστημα, χωρίς τη χρήση του βασισμένου στις ncurses, και οδηγούμενου από το μενού εγκαταστάτη όπως εξηγείται στο υπόλοιπο αυτού του εγχειριδίου. Αυτό το "cross-install" HOWTO έχει ζητηθεί από χρήστες που αλλάζουν σε Debian GNU/Linux από διανομές όπως οι Redhat, Mandriva, και SUSE. Στην ενότητα αυτή προϋποθέτουμε κάποια οικειότητα στην εισαγωγή εντολών *nix και πλοήγησης στο σύστημα αρχείων. Εδώ, η παρακίνηση $
συμβολίζει μια εντολή που πρέπει να εισαχθεί στο υπάρχον σύστημα του χρήστη, ενώ το #
αναφέρεται σε μια εντολή που θα εισαχθεί στο περιβάλλον Debian chroot.
Από τη στιγμή που έχετε ρυθμίσει το καινούριο Debian σύστημά σας σύμφωνα με τις προτιμήσεις σας, μπορείτε να μεταφέρετε τα υπάρχοντα δεδομένα σας (αν υπάρχουν) σε αυτό, και να συνεχίσετε να δουλεύετε. Πρόκειται λοιπόν για μια εγκατάσταση Debian GNU/Linux με «μηδενικό χρόνο μη λειτουργίας». Είναι επίσης και ένας έξυπνος τρόπος να αντιμετωπίσει κανείς δυσκολίες με υλικό που διαφορετικά δεν είναι φιλικό με διάφορα μέσα εκκίνησης ή εγκατάστασης.
Σημείωση | |
---|---|
Καθώς πρόκειται κυρίως για μια διαδικασία με το χέρι, θα πρέπει να έχετε υπόψη ότι θα απαιτηθεί να κάνετε οι ίδιοι μεγάλο μέρος των βασικών ρυθμίσεων του συστήματος, κάτι που επίσης απαιτεί μεγαλύτερη γνώση του Debian και του Linux γενικά από την πραγματοποίηση μιας συνηθισμένης εγκατάστασης. Δεν θα πρέπει να περιμένετε ότι αυτή η διαδικασία θα οδηγήσει σε ένα σύστημα που θα είναι ταυτόσημο με αυτό που θα προκύψει από μια συνηθισμένη εγκατάσταση. Θα πρέπει ακόμα να κρατήσετε στο μυαλό σας ότι η παρούσα διαδικασία σας δίνει τα βασικά μόνο βήματα διαμόρφωσης ενός συστήματος. Πιθανόν να χρειάζονται επιπρόσθετα βήματα εγκατάστασης και/ή ρύθμισης. |
Με τα διαθέσιμα *nix εργαλεία διαμέρισης, επαναδιαμερίσετε τον σκληρό σας δίσκο όπως απαιτείται, δημιουργώντας τουλάχιστον ένα σύστημα αρχείων και μια κατάτμηση swap. Χρειάζεστε περίπου 1012MB διαθέσιμου χώρου για μια εγκατάσταση μόνο με κονσόλα, ή περίπου 2539MB αν σκοπεύετε να εγκαταστήσετε το παραθυρικό περιβάλλον X (και περισσότερα αν σκοπεύετε να εγκαταστήσετε κάποιο περιβάλλον επιφάνειας εργασίας όπως το GNOME ή το KDE Plasma).
Στην συνέχεια, δημιουργήστε συστήματα αρχείων στις κατατμήσεις. Για παράδειγμα, για να δημιουργήσετε ένα σύστημα αρχείων ext3 στην κατάτμηση /dev/sda6
(που είναι η ριζική κατάτμηση του παραδείγματος μας):
$ mke2fs -j /dev/sda6
. Αν αντίθετα θέλετε να δημιουργήσετε ένα σύστημα αρχείων ext2, παραλήψτε την παράμετρο -j
.
Διαμορφώστε και ενεργοποιήστε μια κατάτμηση swap (αντικαταστήστε τον αριθμό της κατάτμησης μ' αυτόν της κατάτμησης swap του δικού σας συστήματος Debian):
# mkswap /dev/sda5
# sync # swapon /dev/sda5
Προσαρτήστε μια κατάτμηση του δίσκου σαν /mnt/debinst
(το σημείο εγκατάστασης που θα γίνει το ριζικό σύστημα αρχείων (/
) στο καινούριο σας σύστημα). Το όνομα του σημείου προσάρτησης είναι αυστηρά αυθαίρετο, δείτε αναφορά γι' αυτό παρακάτω.
# mkdir /mnt/debinst
# mount /dev/sda6
/mnt/debinst
Σημείωση | |
---|---|
Αν θέλετε να έχετε μέρη του συστήματος αρχείων σας (πχ. /usr) προσαρτημένα σε διαφορετικές κατατμήσεις, θα πρέπει να δημιουργήσετε και να προσαρτήσετε αυτούς τους καταλόγους χειροκίνητα πριν προχωρήσετε στο επόμενο στάδιο. |
Το εργαλείο που χρησιμοποιεί ο εγκαταστάτης του Debian, και που αναγνωρίζεται σαν ο επίσημος τρόπος για να εγκαταστήσετε ένα βασικό σύστημα Debian, είναι το debootstrap. Χρησιμοποιεί ταwget και ar, αλλά κατά τ' άλλα εξαρτάται μόνο από το /bin/sh
και βασικά εργαλεία του Unix/Linux [22]. Εγκαταστήστε τα wget και ar αν δεν είναι ήδη εγκατεστημένα στο υπάρχον σύστημά σας, και στη συνέχεια κατεβάστε και εγκαταστήστε το debootstrap.
Ή μπορείτε να ακολουθήσετε την παρακάτω διαδικασία για να το εγκαταστήσετε με το χέρι. Δημιουργήστε έναν κατάλογο εργασίας για να αποσυμπιέσετε εκεί το πακέτο .deb:
# mkdir work # cd work
. Το πακέτο debootstrap βρίσκεται στην αρχειοθήκη του Debian (βεβαιωθείτε ότι διαλέγετε το σωστό αρχείο για την αρχιτεκτονική σας). Κατεβάστε το πακέτο debootstrap .deb από το pool, αντιγράψτε το πακέτο στον κατάλογο εργασίας, και εξάγετε από αυτό τα αρχεία που περιέχει. Πρέπει να έχετε προνόμια χρήστη root για να εγκαταστήσετε τα αρχεία αυτά.
# ar -xf debootstrap_0.X.X_arch.deb # cd / # zcat /full-path-to-work/work/data.tar.gz | tar xv
Το debootstrap μπορεί, όταν το τρέξετε, να κατεβάσει τα απαραίτητα αρχεία αυτόματα από την αρχειοθήκη. Μπορείτε να αντικαταστήσετε το http.us.debian.org/debian
στο παράδειγμα της εντολής που ακολουθεί με οποιονδήποτε καθρέφτη της αρχειοθήκης του Debian, κατά προτίμηση με κάποιον που να βρίσκεται δικτυακά κοντά σας. Οι διάφοροι καθρέφτες παραθέτονται στο http://www.debian.org/mirror/list.
Αν έχετε μια εικόνα εγκατάστασης της έκδοσης bookworm του Debian GNU/Linux προσαρτημένου στο /cdrom
, μπορείτε να αντικαταστήσετε με ένα URL αρχείου αντί του http URL: file:/cdrom/debian/
Αντικαταστήσετε μια από τις παρακάτω αρχιτεκτονικές ARCH
στην εντολή debootstrap: amd64
,
arm64
,
armel
,
armhf
,
i386
,
mips64el
,
mipsel
,
ppc64el
,
s390x
.
# /usr/sbin/debootstrap --arch ARCH bookworm \ /mnt/debinst http://ftp.us.debian.org/debian
Αν η επιθυμητή αρχιτεκτονική διαφέρει από αυτή του ξενιστή, θα πρέπει να προσθέσετε την επιλογή --foreign
.
Τώρα έχετε ένα πραγματικό, αν και κάπως στοιχειώδες, σύστημα Debian , στον δίσκο σας. Εκτελέστε την εντολήchroot στο:
# LANG=C.UTF-8 chroot /mnt/debinst /bin/bash
Αν η επιθυμητή αρχιτεκτονική διαφέρει από αυτή του ξενιστή, θα χρειαστεί πρώτα να αντιγράψετε το qemu-user-static στο νέο σύστημα:
# cp /usr/bin/qemu-ARCH-static /mnt/debinst/usr/bin # LANG=C.UTF-8 chroot /mnt/debinst qemu-ARCH-static /bin/bash
Μετά το chrooting θα χρειαστεί να ρυθμίσετε τον καθορισμό του τερματικού ώστε να είναι συμβατό με το βασικό σύστημα του Debian , για παράδειγμα:
# export TERM=xterm-color
Depending on the value of TERM, you may have to install the ncurses-term
package to get support for it.
Αν η επιθυμητή αρχιτεκτονική διαφέρει από αυτή του ξενιστή, θα πρέπει να ολοκληρώσετε τη διαδικασία multi-stage boot strap:
/debootstrap/debootstrap --second-stage
Σ' αυτό το σημείο, ο κατάλογος /dev/
περιέχει μόνο μερικά βασικά αρχεία συσκευών. Για τα επόμενα βήματα της εγκατάστασης πιθανόν να χρειάζονται περισσότερα. Υπάρχουν διαφορετικοί τρόποι για να κάνετε κάτι τέτοιο και το ποια μέθοδο θα πρέπει να χρησιμοποιήσετε εξαρτάται από το σύστημα ξενιστή που χρησιμοποιείτε για την εγκατάσταση, από το αν σκοπεύετε να χρησιμοποιήσετε έναν αρθρωτό (modular) πυρήνα ή όχι και από το αν σκοπεύετε να χρησιμοποιήσετε δυναμικά (δηλ. με χρήση του udev
) ή στατικά αρχεία συσκευών για το καινούριο σύστημα.
Μερικές απο τις διαθέσιμες επιλογές είναι:
εγκαταστήστε το πακέτο makedev και δημιουργήστε ένα and create a default set of static device files using (after chrooting)
# apt install makedev # mount none /proc -t proc # cd /dev # MAKEDEV generic
δημιουργία με το χέρι συγκεκριμένων μόνο αρχείων συσκευών με την εντολή MAKEDEV
προσαρτήστε δεσμευμένα (bind mount) τον κατάλογο /dev από το σύστημα ξενιστή στην κορυφή του καταλόγου /dev στο σύστημα στόχο. Σημειώστε ότι τα σενάρια postinst μερικών πακέτων προσπαθούν να δημιουργήσουν αρχεία συσκευών, οπότε η επιλογή αυτή θα πρέπει να χρησιμοποιείται μόνο με προσοχή
Πρέπει να δημιουργήσετε το αρχείο /etc/fstab
.
# editor /etc/fstab
Εδώ είναι ένα δείγμα που μπορείτε να τροποποιήσετε ώστε να ταιριάζει στις ανάγκες σας:
# /etc/fstab: static file system information. # # file system mount point type options dump pass /dev/XXX / ext3 defaults 0 1 /dev/XXX /boot ext3 ro,nosuid,nodev 0 2 /dev/XXX none swap sw 0 0 proc /proc proc defaults 0 0 /dev/cdrom /media/cdrom iso9660 noauto,ro,user,exec 0 0 /dev/XXX /tmp ext3 rw,nosuid,nodev 0 2 /dev/XXX /var ext3 rw,nosuid,nodev 0 2 /dev/XXX /usr ext3 rw,nodev 0 2 /dev/XXX /home ext3 rw,nosuid,nodev 0 2
Χρησιμοποιήστε την εντολή mount -a
για να προσαρτήσετε όλα τα συστήματα αρχείων που έχετε προσδιορίσει στο /etc/fstab
, ή, για να προσαρτήσετε συγκεκριμένα συστήματα αρχείων ξεχωριστά, χρησιμοποιήστε:
# mount /path # e.g.: mount /usr
Τα σύγχρονα συστήματα Debian έχουν σημεία προσάρτησης για αφαιρέσιμα μέσα κάτω από τον κατάλογο /media
, αλλά διατηρούν και συμβολικούς συνδέσμους για λόγους συμβατότητας κάτω από το /
. Δημιουργήστε αυτά τα σημεία σύμφωνα με τις ανάγκες σας, για παράδειγμα:
# cd /media # mkdir cdrom0 # ln -s cdrom0 cdrom # cd / # ln -s media/cdrom
Μπορείτε να προσαρτήσετε το σύστημα αρχείων proc πολλαπλές φορές και σε αυθαίρετα σημεία, αν και το σύνηθες είναι το /proc
. Αν δεν χρησιμοποιήσατε την εντολή mount -a
, βεβαιωθείτε ότι έχετε προσαρτήσει το σύστημα proc πριν συνεχίσετε:
# mount -t proc proc /proc
Η εντολή ls /proc
θα πρέπει τώρα να δείξει έναν μη-κενό κατάλογο. Σε περίπτωση αποτυχίας, μπορείτε να προσαρτήσετε το proc έξω από το chroot κατάλογο:
# mount -t proc proc /mnt/debinst/proc
Ο ορισμός της τρίτης γραμμής του αρχείου /etc/adjtime
σε«UTC» ή «LOCAL» καθορίζει αν το σύστημα θα ερμηνεύει την ώρα στο ρολόι του υπολογιστή ως ρυθμισμένης στην ζώνη UTC ή στην τοπική χρονική ζώνη αντίστοιχα. Οι ακόλουθες εντολές σας επιτρέπουν να κάνετε αυτή τη ρύθμιση.
# editor /etc/adjtime
Αυτό είναι ένα δείγμα:
0.0 0 0.0 0 UTC
Η ακόλουθη εντολή σας επιτρέπει να διαλέξετε τη χρονική ζώνη.
# dpkg-reconfigure tzdata
To configure networking, edit /etc/network/interfaces
, /etc/resolv.conf
, /etc/hostname
and /etc/hosts
.
# editor /etc/network/interfaces
Here are some simple examples from /usr/share/doc/ifupdown/examples
:
###################################################################### # /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # See the interfaces(5) manpage for information on what options are # available. ###################################################################### # The loopback interface isn't really required any longer, but can be used # if needed. # # auto lo # iface lo inet loopback # To use dhcp: # # auto eth0 # iface eth0 inet dhcp # An example static IP setup: (network, broadcast and gateway are optional) # # auto eth0 # iface eth0 inet static # address 192.168.0.42 # network 192.168.0.0 # netmask 255.255.255.0 # broadcast 192.168.0.255 # gateway 192.168.0.1
Enter your nameserver(s) and search directives in /etc/resolv.conf
:
# editor /etc/resolv.conf
A simple example /etc/resolv.conf
:
search example.com nameserver 10.1.1.36 nameserver 192.168.9.100
Enter your system's host name (2 to 63 characters):
# echo DebianHostName > /etc/hostname
And a basic /etc/hosts
with IPv6 support:
127.0.0.1 localhost 127.0.1.1 DebianHostName # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
If you have multiple network cards, you should arrange the names of driver modules in the /etc/modules
file into the desired order. Then during boot, each card will be associated with the interface name (eth0, eth1, etc.) that you expect.
To debootstrap θα έχει δημιουργήσει ένα πολύ στοιχειώδες αρχείο /etc/apt/sources.list
που θα σας επιτρέψει να εγκαταστήσετε επιπλέον πακέτα. Πιθανόν να θέλετε όμως να προσθέσετε κάποιες επιπλέον πηγές, για παράδειγμα για πακέτα πηγαίου κώδικα και αναβαθμίσεις ασφαλείας:
deb-src http://ftp.us.debian.org/debian bookworm main deb http://security.debian.org/ bookworm-security main deb-src http://security.debian.org/ bookworm-security main
. Βεβαιωθείτε, αφού κάνατε τις αλλαγές στην λίστα των πηγών, να εκτελέσετε την εντολή apt update
.
Για να ρυθμίσετε την τοπικοποίησή σας ώστε να χρησιμοποιήσετε μια γλώσσα διαφορετική από τα Αγγλικά, εγκαταστήστε το πακέτο υποστήριξης locales
και ρυθμίστε το. Προς το παρόν συνιστάται η χρήση της τοπικοποίησης UTF-8.
# apt install locales # dpkg-reconfigure locales
Για να ρυθμίσετε το πληκτρολόγιο σας (αν είναι απαραίτητο):
# apt install console-setup # dpkg-reconfigure keyboard-configuration
Σημειώστε ότι δεν μπορείτε να ορίσετε το πληκτρολόγιο όσο είσαστε στο περιβάλλον chroot, αλλά θα ρυθμιστεί με την επόμενη επανεκκίνηση.
Αν θέλετε να εκκινήσετε αυτό το σύστημα το πιθανότερο χρειάζεστε έναν πυρήνα Linux και έναν φορτωτή εκκίνησης. Προσδιορίστε διαθέσιμα πακέτα με πυρήνες με την εντολή:
# apt search linux-image
Στη συνέχεια εγκαταστήστε το πακέτο για τον πυρήνα της επιλογής σας χρησιμοποιώντας το κατάλληλο όνομα.
# apt install linux-image-arch-etc
Για να αταστήσετε το σύστημά σας Debian GNU/Linux εκκινήσιμο, ρυθμίστε τον φορτωτή εκκίνησης ώστε να φορτώνει τον εγκατεστημένο πυρήνα με την καινούρια ριζική κατάτμησή σας. Σημειώστε ότι η διαδικασία debootstrap δεν εγκαθιστά έναν φορτωτή εκκίνησης, αν και μπορείτε να χρησιμοποιήσετε την εντολή apt μέσα από το chroot σύστημα Debian για να κάνετε κάτι τέτοιο.
Ελέγξτε με την εντολή info grub
για οδηγίες σχετικά με την ρύθμιση του φορτωτή εκκίνησης. Αν διατηρήσετε το σύστημα που χρησιμοποιήσατε για να εγκαταστήσετε το Debian, προσθέστε απλά μια επιλογή για την εγκατάσταση του Debian στο υπάρχον αρχείο του grub2 grub.cfg
.
Η εγκατάσταση και ρύθμιση του grub2
είναι τόσο εύκολη όσο το να εκτελέσετε:
# apt install grub-pc
# grub-install /dev/sda
# update-grub
Η δεύτερη εντολή θα εγκαταστήσει το grub2 (στη συγκεκριμένη περίπτωση στο MBR του δίσκου sda
). Η τελευταία εντολή θα δημιουργήσει ένα εύλογο και λειτουργικό αρχείο /boot/grub/grub.cfg
.
Σημειώστε ότι αυτό προϋποθέτει ότι έχει δημιουργηθεί ένα αρχείο συσκευής /dev/sda
. Υπάρχουν εναλλακτικοί τρόποι να εγκαταστήσετε το grub, αλλά είναι έξω από τους στόχους αυτού του παραρτήματος.
Στην περίπτωση που μπορείτε να μπείτε στο σύστημα μέσω κονσόλας, μπορείτε να παραλείψετε αυτή την ενότητα. Αν το σύστημα πρέπει να είναι αργότερα προσβάσιμο μέσω του δικτύου, πρέπει να εγκαταστήσετε το SSH και να ρυθμίσετε την πρόσβαση.
# apt install ssh
Η πρόσβαση ως root με χρήση συνθηματικού είναι απενεργοποιημένη εξ ορισμού, συνεπώς η ρύθμιση της πρόσβασης μπορεί να γίνει ορίζοντας ένα συνθηματικό και επαναενεργοποιώντας την πρόσβαση ως root με χρήση συνθηματικού:
# passwd # editor /etc/ssh/sshd_config
Η επιλογή που πρέπει να ενεργοποιήσετε είναι αυτή:
PermitRootLogin yes
Η πρόσβαση μπορεί επίσης να οριστεί με την προσθήκη ενός κλειδιού ssh στον λογαριασμό του χρήστη root:
# mkdir /root/.ssh # cat << EOF > /root/.ssh/authorized_keys ssh-rsa .... EOF
Τέλος, η πρόσβαση μπορεί να οριστεί με την προσθήκη του λογαριασμού ενός χρήστη που δεν είναι ο root και τον καθορισμό ενός συνθηματικού πρόβασης:
# adduser joe # passwd joe
Όπως αναφέρθηκε προηγουμένως, το εγκατεστημένο σύστημα θα είναι πολύ στοιχειώδες. Αν θέλετε να κάνετε το σύστημα λίγο πιο "ώριμο", υπάρχει μια εύκολη μέθοδος για να εγκαταστήσετε όλα τα πακέτα με «standard» προτεραιότητα:
# tasksel install standard
Φυσικά, μπορείτε επίσης να χρησιμοποιήσετε απλά το apt για να εγκαταστήσετε μεμονωμένα πακέτα.
Μετά την εγκατάσταση θα υπάρχουν πολλά πακέτα που θα έχουν κατέβει στον κατάλογο /var/cache/apt/archives/
. Μπορείτε να ελευθερώσετε λίγο χώρο στον δίσκο τρέχοντας την εντολή:
# apt clean