Το προφίλ μας στο Google Plus
6

VirtualBSD: Πανέμορφο, ασφαλέστατο κι εντελώς εικονικό!

Θέλουμε να πιστεύουμε ότι όλοι έχετε διαβάσει τα δύο εισαγωγικά άρθρα του συνεργάτη μας @sonic2000gr πάνω στο FreeBSD, τα οποία είναι δημοσιευμένα εδώ κι εδώ. Όμως ας είμαστε ρεαλιστές. Ορισμένοι από εσάς –γύρω στους τριάντα σας υπολογίζουμε– ξεκινήσατε μ’ ενθουσιασμό αλλά στην πορεία κάπου απογοητευτήκατε και τα παρατήσατε. Γνωρίζουμε γιατί απομακρυνθήκατε, ξέρουμε και πώς να σας φέρουμε ξανά στον κόσμο του FreeBSD. Δεν μας πιστεύετε; Καλώς, δεν πειράζει. Προσπεράστε τότε αυτό το άρθρο, δείτε αν θα νοιαστούμε!

Εντάξει, πλάκα κάνουμε. Δεν θέλουμε να προσπεράσετε αυτό το άρθρο. Και δεν μας νοιάζει που είστε μόλις τριάντα — σας θέλουμε όλους ευχαριστημένους. Εξάλλου ένα από τα μότο μας είναι "κερδίζοντας τους αναγνώστες, έναν κάθε μέρα". Σήμερα μάλιστα αισθανόμαστε κάπως αισιόδοξοι, οπότε λέμε αντί για έναν να κερδίσουμε με μιας τριάντα αναγνώστες! Εξ ου λοιπόν το παρόν άρθρο.

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

Αρκετά αργότερα, στο τεύχος 30, ο @sonic2000gr είχε ξεκινήσει μια θρυλική σειρά άρθρων πάνω στο FreeBSD. Διήρκεσε έως και το τεύχος 38 και μέσα απ’ αυτή μάθαμε για την ιστορία του λειτουργικού, ενώ φυσικά είδαμε την εγκατάσταση και τη διαχείρισή του. Όμως αυτά ήταν μόνο η αρχή. Συζητήσαμε επιπρόσθετα για τις διαθέσιμες εφαρμογές και για το πώς τις διαχειριζόμαστε, είδαμε πώς μπορούμε να του φορέσουμε περιβάλλον –ή καλύτερα περιβάλλοντα– γραφικών, μάθαμε τι μπορούμε να κάνουμε με το λειτουργικό σ’ αληθινά σενάρια –ασχέτως αν νοιαζόμαστε για χρήση desktop ή server–, ακόμα και πώς αναμεταγλωττίζουμε τον πυρήνα του είδαμε!

Αλλά κάποιους δεν καταφέραμε να σας έχουμε καθ’ όλη τη διάρκεια αυτού του ταξιδιού. Νομίζουμε πως ξέρουμε το γιατί. Μάλλον είσαστε από ‘κείνους που πέρα από την κλασική κονσόλα απλού κειμένου θέλετε να ‘χετε και την επιλογή του περιβάλλοντος γραφικών. Και θέλετε να την έχετε χωρίς ατέλειωτες ρυθμίσεις, πολύωρες μεταγλωττίσεις και βασανιστικές για το σκληρό δίσκο εγκαταστάσεις. Μην ανησυχείτε, σας καταλαβαίνουμε απόλυτα. Το θέμα λοιπόν με το FreeBSD είναι ότι η απόσταση από την εγκατάσταση του συστήματος έως το σημείο που ο χρήστης έχει ένα πλήρες και λειτουργικό περιβάλλον γραφικών είναι, ομολογουμένως, πολύ μεγάλη. Κι όταν λέμε "μεγάλη" δεν εννοούμε μόνο χρονικά. Απαιτείται και πολύς κόπος, με τη CPU του υπολογιστή μας να κάνει καμιά 70ριά χιλιάδες μεταγλωττίσεις βιβλιοθηκών, εργαλείων, προγραμμάτων κι εφαρμογών. Δεν αποκλείεται, λοιπόν, κάπου στην πορεία να σκεφτήκατε ότι έχετε καλύτερους λόγους –ή έστω δικαιολογίες– για να βάλετε τη CPU του υπολογιστή σας να δουλέψει. Για άλλη μια φορά, μην ανησυχείτε: Εξακολουθούμε να σας καταλαβαίνουμε.

Από την άλλη αγαπάμε το FreeBSD και πιστεύουμε σ’ αυτό. Γι’ αυτό και στο παρόν άρθρο θέλουμε να σας δώσουμε άλλη μια αφορμή για ν’ ασχοληθείτε μαζί του. Υποψιαζόμαστε ότι αυτή τη φορά θα το δείτε μ’ άλλο μάτι.

Κυριολεκτικά.

Virtual is More

Η προσέγγιση που θ’ ακολουθήσουμε αυτή τη φορά ξεκινά ευθύς εξαρχής με μια *πλήρη* εγκατάσταση του FreeBSD, η οποία έρχεται μαζί μ’ ένα όμορφο περιβάλλον γραφικών, κατάλληλα τροποποιημένο ώστε να θυμίζει το Mac OS X. Αναρωτιέστε πώς είναι δυνατόν αυτό; Μα, χάρη σ’ ένα έτοιμο virtual appliance, δηλαδή μια εικονική μηχανή (virtual machine ή VM) με το guest OS της ήδη εγκατεστημένο!

Συγκεκριμένα αναφερόμαστε στο VirtualBSD, ένα VMware VM με guest OS το FreeBSD. Όμως προσέξτε: Δεν έχει το FreeBSD σκέτο αλλά μαζί με το περιβάλλον γραφικών του ελαφριού, γρήγορου κι όμορφου XFCE.

Χάρη στο VirtualBSD θα ‘στε από την πρώτη κιόλας στιγμή έτοιμοι να χρησιμοποιήσετε το FreeBSD σας για εφαρμογές γραφείου, μουσική, βίντεο, προγραμματισμό και φυσικά οτιδήποτε έχει να κάνει με το web ειδικότερα και τα δίκτυα γενικότερα. Παράλληλα, όποτε έχετε όρεξη να μάθετε το λειτουργικό εις βάθος θ’ ανοίγετε ένα τερματικό και με παρέα είτε τα άρθρα μας είτε το επίσημο Handbook θα παίζετε, θα πειραματίζεστε και θα μαθαίνετε. Επειδή μάλιστα μιλάμε για εικονική μηχανή κι όχι για αληθινό, φυσικό υπολογιστή, χάρη στα snapshots θα μπορείτε να κάνετε ό,τι θέλετε στο VirtualBSD σας χωρίς να φοβόσαστε μήπως το διαλύσετε. Ακόμα και να το καταφέρετε, εύκολα θα μπορείτε να γυρίζετε σε μια προηγούμενη, καλή κατάσταση, επαναφέροντας το αντίστοιχο snapshot.

Υπάρχει και μια άλλη, όχι άμεσα προφανής κατηγορία χρήσεων για ένα τέτοιο VM: Αυτή των επικίνδυνων αποστολών. Έχετε λάβει ένα παράξενο mail που περιλαμβάνει ύποπτο link; Σίγουρα καταλαβαίνετε αρκετά για να μην το ακολουθήσετε. Μερικές φορές όμως δεν αποκλείεται να ‘χετε την περιέργεια να δείτε πού στο καλό οδηγεί. Μην το σκεφτείτε πολύ. Φορτώστε το VirtualBSD σας, πάρτε ένα snapshot και μετά επισκεφτείτε το link από εκεί. Εδώ που τα λέμε το snapshot μάλλον δεν θα σας χρειαστεί, αφού είναι απίθανο να πέσετε σε malicious script που στοχεύει το FreeBSD. Ωστόσο επειδή ποτέ δεν μπορείς να ‘σαι 100% σίγουρος, αν δεν έχετε κάποιο πρόσφατο snapshot πάρτε πρώτα ένα και μετά προχωρήστε.

Θα μπορούσαμε να συνεχίσουμε με τα παραδείγματα, όμως νομίζουμε ότι καταλαβαίνετε τι θέλουμε να πούμε. Θ’ αναφερθούμε μόνο στο θέμα της προστασίας της ανωνυμίας, μιας και προσφάτως, μ’ όλα όσα συμβαίνουν στη γειτονιά μας, ήρθε ξανά στην επιφάνεια. Σκεφτήκαμε λοιπόν ότι ένας τρόπος για να προστατεύουμε την ανωνυμία μας στο ίντερνετ είναι σερφάροντας μέσα από ένα ασφαλές περιβάλλον σαν το VirtualBSD κι ένα ισχυρό δίκτυο ανωνυμίας σαν το Tor. Έτσι, σ’ αυτό το post βλέπουμε, αναλυτικά και βήμα προς βήμα, πώς εγκαθιστούμε και ρυθμίζουμε το Τor για χρήση στο VirtualBSD μας. Πρώτα όμως θα περάσουμε στην ίδια την εγκατάσταση του εν λόγω virtual appliance.

Προαπαιτούμενα

Το VirtualBSD είναι φτιαγμένο για τα προϊόντα virtualization της VMware (σ.σ. πλέον παρέχονται και οδηγίες για χρήση με το VirtualBox). Αν λοιπόν το host OS σας είναι τα Windows, τότε χρειαζόσαστε το VMware Workstation ή το δωρεάν VMware Player. Αν πάλι έχετε Mac θα δουλέψετε με το VMware Fusion, ενώ αν το host OS σας είναι το Linux έχετε την επιλογή της αντίστοιχης εκδοχής του VMware Worksation. Σημειώστε ότι τα VMware Worksation και Fusion δεν είναι δωρεάν, ωστόσο και για τα δύο προϊόντα παρέχεται δοκιμαστική περίοδος χρήσης.

Πέρα από το VMware υπάρχει και το VirtualBox της Oracle που διατίθεται δωρεάν για κάθε host OS, το οποίο μάλιστα μπορεί να "παίζει" και VMs που έχουν φτιαχτεί για το VMware! Δεν το δοκιμάσαμε πάντως με το VirtualBSD, επομένως αν το κάνετε κι ο υπολογιστής σας ανατιναχτεί στον αέρα με φοβερό κρότο κι ο γείτονας σάς κάνει μήνυση για διατάραξη της κοινής ησυχίας, μην έλθετε μετά να ζητήσετε από εμάς τα ρέστα.

Το VirtualBSD είναι προρυθμισμένο με 512MB εικονικής μνήμης, γεγονός που, όταν το VM είναι ενεργό, μεταφράζεται σε κατανάλωση ισόποσης φυσικής μνήμης. Βέβαια ο δημιουργός του VirtualBSD προτείνει 1024MB – και πολύ καλά κάνει. Εμείς πάντως, έτσι, από σκέτη αντίδραση, το δουλέψαμε στα 768MB. Είδαμε ότι και με τόση μνήμη μια χαρά πάει. Καταφέραμε μάλιστα ν’ αναμεταγλωττίσουμε μ’ επιτυχία το Open Office, διαδικασία που κατά την εκκίνησή της προτείνει 2GB RAM! Τελικά, το ηθικό δίδαγμα όσον αφορά στη *φυσική* μνήμη του υπολογιστή σας είναι πως πρέπει να ‘ναι τουλάχιστον 2GB. Από κει και πέρα, όσο περισσότερη τόσο το καλύτερο. Αλλά αυτό το ξέρατε ήδη :D 

Ο δε εικονικός δίσκος του VirtualBSD φτάνει τα 80GB αλλά είναι δυναμικός, γεγονός που στη συγκεκριμένη περίπτωση σημαίνει ότι η εικονική μηχανή αρχικά θα πάρει 5 περίπου GB από τον αληθινό δίσκο. Προφανώς, αναλόγως της χρήσης που θα κάνετε ο χώρος αυτός ενδέχεται να μεγαλώσει.

Εγκατάσταση και ρύθμιση

Οι διαδικασίες φαίνονται καλύτερα από τα screenshots που ακολουθούν. Προέρχονται από υπολογιστή Mac με VMware Fusion, ωστόσο παρόμοια θα δουλέψετε αν είστε σε Windows ή Linux και χρησιμοποιείτε κάποιο άλλο προϊόν desktop virtualization της VMware.

To VirtualBSD διανέμεται μόνο μέσω BitTorrent. Πηγαίνετε λοιπόν στην ιστοσελίδα http://www.virtualbsd.info/download.html και πάρτε το torrent file. Ακολούθως, με τον αγαπημένο σας BitTorrent client κατεβάστε το ίδιο το virtual machine.To VirtualBSD διανέμεται μόνο μέσω BitTorrent. Πηγαίνετε λοιπόν στην επίσημη ιστοσελίδα και πάρτε το torrent file. Ακολούθως, με τον αγαπημένο σας BitTorrent client κατεβάστε το ίδιο το virtual machine.

Αφού ολοκληρωθεί το κατέβασμα θα έχετε στο δίσκο σας το αρχείο VirtuaBSD-81.zip, μεγέθους 1,35GB. Αποσυμπιέστε το και θα πάρετε ένα έγγραφο, το README.rtf, με βασικές πληροφορίες, καθώς κι έναν φάκελο, τον VirtualBSD 8.1. Αυτός περιλαμβάνει όλα τα αρχεία που απαρτίζουν την εικονική μηχανή του VirtualBSD.Αφού ολοκληρωθεί το κατέβασμα θα έχετε στο δίσκο σας το αρχείο VirtuaBSD-81.zip, μεγέθους 1,35GB. Αποσυμπιέστε το και θα πάρετε ένα έγγραφο, το README.rtf, με βασικές πληροφορίες, καθώς κι έναν φάκελο, τον VirtualBSD 8.1. Αυτός περιλαμβάνει όλα τα αρχεία που απαρτίζουν την εικονική μηχανή του VirtualBSD.

Τον φάκελο VirtualBSD 8.1 μετονομάστε τον όπως θέλετε και μεταφέρετέ τον σ' ένα βολικό σημείο. Εμείς, π.χ., τον βάλαμε μέσα στον ~/vmware, όπου έχουμε όλες τις εικονικές μηχανές του χρήστη από το λογριασμό του οποίου δουλεύουμε. Προσέξτε το αρχείο που πρέπει να δώσουμε στο VMware την πρώτη φορά που θα του υποδείξουμε την παρουσία του νέου VM: Πρόκειται για το VirtualBSD.vmx, μέσα στο φάκελο με τα αρχεία της μηχανής.
Τον φάκελο VirtualBSD 8.1 μετονομάστε τον όπως θέλετε και μεταφέρετέ τον σ’ ένα βολικό σημείο. Εμείς, π.χ., τον βάλαμε μέσα στον ~/vmware, όπου έχουμε όλες τις εικονικές μηχανές του χρήστη από το λογαριασμό του οποίου δουλεύουμε. Προσέξτε το αρχείο που πρέπει να δώσουμε στο VMware την πρώτη φορά που θα του υποδείξουμε την παρουσία του νέου VM: Πρόκειται για το VirtualBSD.vmx, μέσα στο φάκελο με τα αρχεία της μηχανής.

Την πρώτη φορά που θ' ανοίξουμε το αρχείο VirtualBSD.vmx, το VMware ενδέχεται να ξεκινήσει αυτόματα τη μηχανή (έτσι τουλάχιστον συμβαίνει με το Fusion). Καλό θα 'ταν να μη βιαστούμε και να σταματήσουμε το boot, π.χ., δίνοντας Virtual Machine --> Shut Down. Αξίζει, βλέπετε, να δούμε πρώτα τις παραμέτρους του VM - και ειδικά τη μνήμη και τον αριθμό των επεξεργαστών. Εξ ορισμού, το VirtualBSD είναι ρυθμισμένο για έναν επεξεργαστή και 1024MB μνήμης RAM. Αν ο φυσικός σας υπολογιστής έχει πάνω από δύο πυρήνες, τότε αυξήστε τον αριθμό των εικονικών επεξεργαστών. Μην το παρακάνετε, όμως, αφού από ένα σημείο και μετά το πιθανότερο είναι να 'χετε μείωση επιδόσεων. Στην πράξη, αν ο υπολογιστής σας έχει τέσσερις πυρήνες τότε δώστε στο VirtualBSD δύο επεξεργαστές. Αν έχει 6 ή 8 δώστε στο VirtualBSD τέσσερις. Θα λέγαμε πάντως να μην περάσετε τους δύο, όσους πυρήνες κι αν έχει ο φυσικός υπολογιστής. Όσον αφορά στη μνήμη RAM του VM, εξ ορισμού ανέρχεται στα 1024ΜΒ. Εμείς την κατεβάσαμε στα 768ΜΒ και διαπιστώσαμε ότι το VirtualBSD δουλεύει μια χαρά ακόμη και με τόση.Την πρώτη φορά που θ’ ανοίξουμε το αρχείο VirtualBSD.vmx, το VMware ενδέχεται να ξεκινήσει αυτόματα τη μηχανή (έτσι τουλάχιστον συμβαίνει με το Fusion). Καλό θα ‘ταν να μη βιαστούμε και να σταματήσουμε το boot, π.χ., δίνοντας Virtual Machine –> Shut Down. Αξίζει, βλέπετε, να δούμε πρώτα τις παραμέτρους του VM – και ειδικά τη μνήμη και τον αριθμό των επεξεργαστών. Εξ ορισμού, το VirtualBSD είναι ρυθμισμένο για έναν επεξεργαστή και 1024MB μνήμης RAM. Αν ο φυσικός σας υπολογιστής έχει πάνω από δύο πυρήνες, τότε αυξήστε τον αριθμό των εικονικών επεξεργαστών. Μην το παρακάνετε, όμως, αφού από ένα σημείο και μετά το πιθανότερο είναι να ‘χετε μείωση επιδόσεων. Στην πράξη, αν ο υπολογιστής σας έχει τέσσερις πυρήνες τότε δώστε στο VirtualBSD δύο επεξεργαστές. Αν έχει 6 ή 8 δώστε στο VirtualBSD τέσσερις. Θα λέγαμε πάντως να μην περάσετε τους δύο, όσους πυρήνες κι αν έχει ο φυσικός υπολογιστής. Όσον αφορά στη μνήμη RAM του VM, εξ ορισμού ανέρχεται στα 1024ΜΒ. Εμείς την κατεβάσαμε στα 768ΜΒ και διαπιστώσαμε ότι το VirtualBSD δουλεύει μια χαρά ακόμη και με τόση.

Αφού κάνουμε τις όποιες αλλαγές στις παραμέτρους του VM, είναι ώρα να ξεκινήσουμε το VirtuaBSD. Όσοι έχετε bootάρει έστω και μία φορά το FreeBSD θα δείτε γνώριμα πράγματα. Όμως σε αντίθεση με το προαναφερθέν το VirtualBSD θα σηκώσει αυτόματα το περιβάλλον γραφικών και θα σας περιμένει να συνδεθείτε. Σημειώστε ότι ο ένας και μοναδικός, προκαθορισμένος χρήστης του συστήματος, έχει username το virtualbsd και password το ίδιο. Υπάρχει βέβαια κι ο χρήστης root, με password το root4u. Προς το παρόν, κάντε κλικ πάνω στο εικονίδιο του χρήστη VirtualBSD (το πλήρες όνομά του είναι πεζοκεφαλαία ενώ το username με πεζά), πληκτρολογήστε τον κωδικό του και θαυμάστε το όμορφο desktop του VirtualBSD!Αφού κάνουμε τις όποιες αλλαγές στις παραμέτρους του VM, είναι ώρα να ξεκινήσουμε το VirtuaBSD. Όσοι έχετε bootάρει έστω και μία φορά το FreeBSD θα δείτε γνώριμα πράγματα. Όμως σε αντίθεση με το προαναφερθέν το VirtualBSD θα σηκώσει αυτόματα το περιβάλλον γραφικών και θα σας περιμένει να συνδεθείτε. Σημειώστε ότι ο ένας και μοναδικός, προκαθορισμένος χρήστης του συστήματος, έχει username το virtualbsd και password το ίδιο. Υπάρχει βέβαια κι ο χρήστης root, με password το root4u. Προς το παρόν, κάντε κλικ πάνω στο εικονίδιο του χρήστη VirtualBSD (το πλήρες όνομά του είναι πεζοκεφαλαία ενώ το username με πεζά), πληκτρολογήστε τον κωδικό του και θαυμάστε το όμορφο desktop του VirtualBSD!

Δεν θα σας πούμε κάτι για το desktop του VirtualBSD, παρά μόνο ότι αξίζει να το εξερευνήσετε και να μάθετε πώς μπορείτε να το αλλάξετε (δώστε Applications --> Settings --> Xfce 4 Settings Manager). Πάντως μια αλλαγή που καλό είναι να κάνετε ευθύς εξαρχής αφορά στην ανάλυση του VM. Εξ ορισμού είναι στα 1024 x 768 pixels και για τα σημερινά δεδομένα κρίνεται ιδιαίτερα περιοριστική. Δώστε λοιπόν Applications --> Settings --> Display κι αλλάξτε τη σε κάτι μεγαλύτερο, όπως, π.χ., 1280 x 1024, 1280 x 800 (wide), 1440 x 900 (wide), 1400 x 1050 κ.ο.κ.Δεν θα σας πούμε κάτι για το desktop του VirtualBSD, παρά μόνο ότι αξίζει να το εξερευνήσετε και να μάθετε πώς μπορείτε να το αλλάξετε (δώστε Applications –> Settings –> Xfce 4 Settings Manager). Πάντως μια αλλαγή που καλό είναι να κάνετε ευθύς εξαρχής αφορά στην ανάλυση του VM. Εξ ορισμού είναι στα 1024 x 768 pixels και για τα σημερινά δεδομένα κρίνεται ιδιαίτερα περιοριστική. Δώστε λοιπόν Applications –> Settings –> Display κι αλλάξτε τη σε κάτι μεγαλύτερο, όπως, π.χ., 1280 x 1024, 1280 x 800 (wide), 1440 x 900 (wide), 1400 x 1050 κ.ο.κ.

Με το που θ' αλλάξετε την ανάλυση του VirtualBSD desktop θα δείτε ότι η κάτω οριζόντια μπάρα με τις εφαρμογές (wbar, πρόκειται για έναν application launcher) μένει ακίνητη, στην προηγούμενή της θέση. Αυτό σίγουρα δεν είναι καλό αλλά μην ανησυχείτε: Κάντε ένα δεξί κλικ πάνω της κι αμέσως θα πάει εκεί που πρέπει!Με το που θ’ αλλάξετε την ανάλυση του VirtualBSD desktop θα δείτε ότι η κάτω οριζόντια μπάρα με τις εφαρμογές (wbar, πρόκειται για έναν application launcher) μένει ακίνητη, στην προηγούμενή της θέση. Αυτό σίγουρα δεν είναι καλό αλλά μην ανησυχείτε: Κάντε ένα δεξί κλικ πάνω της κι αμέσως θα πάει εκεί που πρέπει!

Είπαμε να μη σας ζαλίσουμε με τις ρυθμίσεις του desktop, αξίζει όμως να ενεργοποιήσετε την εξομάλυνση των γραμματοσειρών (anti-aliasing), καθώς και να φροντήσετε ώστε τα DPI του monitor της εικονικής μηχανής να είναι στα 96. Για να τα κάνετε αυτά ακολουθήστε τη διαδρομή Applications --> Settings --> Appearance και στο παράθυρο που θα εμφανιστεί πηγαίνετε στην καρτέλα Fonts.Είπαμε να μη σας ζαλίσουμε με τις ρυθμίσεις του desktop, αξίζει όμως να ενεργοποιήσετε την εξομάλυνση των γραμματοσειρών (anti-aliasing), καθώς και να φροντίσετε ώστε τα DPI του monitor της εικονικής μηχανής να είναι στα 96. Για να τα κάνετε αυτά ακολουθήστε τη διαδρομή Applications –> Settings –> Appearance και στο παράθυρο που θα εμφανιστεί πηγαίνετε στην καρτέλα Fonts.

Σημειώνουμε μόνο ότι ορισμένες διανομές Linux *δεν* παίζουν Flash βίντεο out of the box :PΣημειώνουμε μόνο ότι ορισμένες διανομές Linux *δεν* παίζουν Flash βίντεο out of the box :P

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

Αληθινή Διασκέδαση: Αρχίζει τώρα!

Μη σας ξεγελά το όμορφο desktop του VirtualBSD. Το λειτουργικό εξακολουθεί να βασίζεται στο στιβαρό FreeBSD, πράγμα που μεταξύ άλλων σημαίνει ότι αφενός η κονσόλα είναι παρούσα, αφετέρου συχνά – πυκνά έχει την τιμητική της. Ίσως να μη σας λέει κάτι αυτό, αν όμως αρχίσετε ν’ ασχολείστε μαζί της υποψιαζόμαστε ότι θ’ αλλάξετε στάση. Για τη συνέχεια, λοιπόν, ας δούμε μαζί μερικές βασικές εργασίες διαχείρισης συστήματος που αφορούν στις εφαρμογές. Ανοίξτε μία κονσόλα τώρα: Applications –> Terminal. Για τις δουλειές που θέλουμε να κάνουμε πρέπει να ‘μαστε στο λογαριασμό του υπερχρήστη root, επομένως αλλάξτε τώρα σ’ αυτόν πληκτρολογώντας

VirtualBSD$ whoami
virtualbsd
VirtualBSD$ su
Password: root4u
VirtualBSD# whoami
root

Προκειμένου να ‘χουμε τις τελευταίες εκδόσεις του λογισμικού που χρησιμοποιούμε, θα εγκαθιστούμε με βάση το σύστημα των ports. Φυσικά, πριν κάνουμε οτιδήποτε οφείλουμε να ενημερώσουμε το τοπικό ports tree. Για τη δουλειά αυτή καταφεύγουμε στο εργαλείο portsnap:

VirtualBSD# portsnap fetch
Looking up portsnap.FreeBSD.org mirrors... 5 mirrors found.
Fetching public key from portsnap5.FreeBSD.org... done.
Fetching snapshot tag from portsnap5.FreeBSD.org... done.
Fetching snapshot metadata... done.
Fetching snapshot generated at Tue Feb  8 02:01:49 EET 2011:
d2559de117b8dd9fff8ca281ad883ebdb74a77b52a079b100% of   64 MB  607 kBps 00m00s
Extracting snapshot... done.
Verifying snapshot integrity... done.
Fetching snapshot tag from portsnap5.FreeBSD.org... done.
Fetching snapshot metadata... done.
Updating from Tue Feb  8 02:01:49 EET 2011 to Tue Feb  8 20:52:54 EET 2011.
Fetching 3 metadata patches.. done.
Applying metadata patches... done.
Fetching 0 metadata files... done.
Fetching 31 patches.....10....20....30 done.
Applying patches... done.
Fetching 0 new ports or files... done.

Μόλις κατεβάσαμε κι αποθηκεύσαμε, στον κατάλογο /var/db/portsnap, το πλέον πρόσφατο ports tree σε συμπιεσμένη μορφή. Θέλουμε τώρα να ενημερώσουμε -ουσιαστικά ν’ αναβαθμίσουμε- αυτό που ήδη έχει το VirtualBSD κάτω από τον κατάλογο /usr/ports. Επειδή όμως το υπάρχον ports tree *δεν* έχει δημιουργηθεί από το portsnap, την πρώτη φορά και μόνο θα χρειαστεί να το διαγράψουμε:

VirtualBSD# rm -fr /usr/ports/*

Ακολούθως, αναπτύσσουμε αυτό που κατεβάσαμε πληκτρολογώντας

VirtualBSD# portsnap extract

Η διαδικασία θα διαρκέσει λίγα -σας το υποσχόμαστε- λεπτά, κατά τη διάρκεια των οποίων οι διαδρομές όλων των φακέλων με τα διαθέσιμα ports του FreeBSD θα παρελαύνουν στο τερματικό. Στο εξής, όποτε θέλουμε ν’ αναβαθμίσουμε το τοπικό ports tree θα δίνουμε πρώτα ένα

VirtualBSD# portsnap fetch

κι αμέσως μετά ένα

VirtualBSD# portsnap update

Ξεχνάμε δηλαδή το portsnap extract, εκτός φυσικά κι αν για κάποιο λόγο έχουμε διαγράψει το ports tree. Αξίζει εδώ να σημειώσουμε ότι τα επόμενα portsnap fetch που θα κάνετε θα διαρκούν λιγότερο από το πρώτο, αφού πλέον δεν θα κατεβαίνει ολόκληρο το ports tree αλλά μόνο οι διαφορές (τα λεγόμενα deltas) του τοπικού αντίγραφου σε σχέση με το καινούργιο, που βρίσκεται Εκεί Έξω (ΤΜ). Για τον ίδιο λόγο, τα επόμενα portsnap update θα διαρκούν λιγότερο από το πρώτο.

Ας δούμε τώρα πώς μπορούμε να εγκαθιστούμε προγράμματα ξεκινώντας από τα αντίστοιχα ports. Ως παράδειγμα, ας υποθέσουμε ότι θέλουμε να εγκαταστήσουμε τον text editor ονόματι nano, μιας κι όπως βλέπουμε δεν είναι παρών στο σύστημα:

VirtualBSD# nano
nano: Command not found.

Αρχικά εντοπίζουμε το αντίστοιχο port:

VirtualBSD# whereis nano
nano: /usr/ports/editors/nano

Ακολούθως μεταβαίνουμε στον κατάλογό του:

VirtualBSD# cd /usr/ports/editors/nano

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

VirtualBSD# make install clean
===>  Vulnerability check disabled, database not found
===>  License GPLv3 accepted by the user
=> nano-2.2.6.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch http://www.nano-editor.org/dist/v2.2//nano-2.2.6.tar.gz
nano-2.2.6.tar.gz	100% of 1535 kB  548 kBps
===>  Extracting for nano-2.2.6
=> SHA256 Checksum OK for nano-2.2.6.tar.gz.
===>  Patching for nano-2.2.6
===>  Applying FreeBSD patches for nano-2.2.6
===>   nano-2.2.6 depends on shared library: intl - found
===>  Configuring for nano-2.2.6
...
===>   Compressing manual pages for nano-2.2.6
===>   Registering installation for nano-2.2.6
===>  Cleaning for nano-2.2.6

Μετά την εγκατάσταση του nano το κέλυφος του root (/bin/csh) πρέπει να ενημερωθεί για το νέο εκτελέσιμο. Αρκεί ένα

VirtualBSD# rehash

κι όλα θα ‘ναι μια χαρά. Ας πούμε για τη συνέχεια ότι θέλουμε να ‘χουμε το συμπιεστικό/αποσυμπιεστικό 7zip, το οποίο απουσιάζει από την προκαθορισμένη εγκατάσταση. Το θέμα είναι πως δεν ξέρουμε τ’ όνομα του αντίστοιχου port. Δεν υπάρχει λόγος να πελαγώνουμε. Πηγαίνουμε κατ’ αρχάς στον κατάλογο με τα ports:

VirtualBSD# cd /usr/ports/

Από εκεί κάνουμε την αναζήτησή μας με τη βοήθεια του εργαλείου make:

VirtualBSD# make search name=7zip
Port:	kio_p7zip-0.3.1_5
Path:	/usr/ports/archivers/kio_p7zip
Info:	Kioslave for KDE to handle 7zip files
Maint:	makc@FreeBSD.org
...
WWW:	http://www.kde-apps.org/content/show.php?content=17829

Port:	p7zip-9.13_1
Path:	/usr/ports/archivers/p7zip
Info:	File archiver with high compression ratio
Maint:	nox@FreeBSD.org
B-deps:	
R-deps:	
WWW:	http://p7zip.sourceforge.net/

Κοιτάζοντας τ’ αποτελέσματα είναι προφανές ότι το port που ψάχνουμε λέγεται p7zip (ο αριθμός έκδοσης δεν μας ενδιαφέρει) και βρίσκεται μέσα στον κατάλογο /usr/ports/archivers. Πλέον, μπορούμε να το εγκαταστήσουμε με τον τρόπο που ήδη γνωρίζουμε:

VirtualBSD# cd /usr/ports/archivers/p7zip/
VirtualBSD# make install clean

Κατά τη μεταγλώττιση ορισμένων ports θα παρατηρήσετε ότι η διαδικασία σταματά κι εμφανίζεται ένα παράθυρο με επιλογές. Ο χρήστης καλείται είτε να τις αφήσει ως έχουν είτε να κάνει τροποποιήσεις. Τις περισσότερες φορές δεν θα χρειάζεται να πειράζετε τις προεπιλογές, εκτός κι αν γνωρίζετε καλά τι κάνετε. Πάντως στην περίπτωση του 7zip, όπως μπορείτε να δείτε και στο σχετικό screenshot, δεν αξίζει να κάνουμε κάποια αλλαγή. Πατάμε, λοιπόν, το πλήκτρο [Tab] διαδοχικά μέχρι να βρεθεί πάνω από το κουμπί OK, μετά πατάμε κι ένα [Enter] και η μεταγλώττιση προχωρά. Μετά την εγκατάσταση του 7zip -για την ακρίβεια του port ονόματι p7zip- μην ξεχάσετε να πληκτρολογήσετε κι ένα

VirtualBSD# rehash

Παράδειγμα παραθύρου (ncurses-based) επιλογών που εμφανίζεται κατά την εγκατάσταση ενός port. Εκτός κι αν ξέρουμε τι κάνουμε, τις περισσότερες φορές μπορούμε να αφήνουμε τις προεπιλογές και να προχωράμε χωρίς το παραμικρό πρόβλημα.

Και μετά τις εγκαταστάσεις, είναι ώρα να δούμε πώς αναβαθμίζουμε ήδη εγκατεστημένες εφαρμογές. Υπάρχουν διάφοροι τρόποι γι’ αυτή τη δουλειά. Αυτή τη φορά επιλέγουμε να την κάνουμε με τη βοήθεια του εργαλείου portmaster. Το εν λόγω πρόγραμμα έχει το καλό ότι βασίζεται σε εργαλεία που υπάρχουν ήδη στο βασικό σύστημα του FreeBSD, επομένως κατά την εγκατάστασή του δεν θα εγκατασταθούν κι άλλα εργαλεία ή/και βιβλιοθήκες.

VirtualBSD# cd /usr/ports/ports-mgmt/portmaster
VirtualBSD# make install clean

Με το που θα δώσετε τη make θα δείτε ένα παράθυρο με δύο επιλογές για την εγκατάσταση του portmaster (βλ. και σχετικό screenshot). Είναι καλή ιδέα να ενεργοποιήσετε την Install programmable completions for Bash, πατώντας το [Space] πάνω από το κουτάκι της στ’ αριστερά. Μετά πατήστε το [Tab] διαδοχικά μέχρι ο δρομέας να βρεθεί πάνω από το κουμπί OK και τότε χτυπήστε το [Enter]. Η εγκατάσταση του portmaster θα ολοκληρωθεί σχεδόν ακαριαία.

Για την περίπτωση του portmaster ενεργοποιούμε την επιλογή Install programmable completions for Bash. Κατ' αυτόν τον τρόπο, σε περίπτωση που χρησιμοποιείται το κέλυφος BASH η σύνταξη εντολών με το portmaster επιταχύνεται.
Ας βρούμε τώρα τα όποια ports χρειάζονται αναβάθμιση:

VirtualBSD# portmaster -L | grep "[nN]ew"
	===>>> New version available: en-freebsd-doc-20110110
	===>>> New version available: libogg-1.2.2,4
	===>>> New version available: pciids-20101124
	===>>> New version available: pcre-8.12
	...
	===>>> New version available: openoffice.org-3.3.0
	===>>> New version available: pidgin-2.7.9
	===>>> New version available: samba34-3.4.9_1
	===>>> New version available: vlc-1.1.7,3
	===>>> 34 have new versions available

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

VirtualBSD# portmaster -a

έτσι ώστε να προκαλέσουμε την αναβάθμιση *όλων* αυτών των port, που έχουν μείνει πίσω. Αν το κάνετε, έχετε υπόψη σας ότι η διαδικασία ενδέχεται να διαρκέσει αρκετή ώρα. Ειδικά όταν εμπλέκονται ports σαν εκείνο του Open Office, μιλάμε ακόμα και για μια μερούλα – για να μην πούμε περισσότερο. Εξάλλου, μετά από μια μαζική αναβάθμιση είναι πιθανό να διαπιστώσετε ότι το desktop του VirtualBSD δεν ανταποκρίνεται φυσιολογικά, ούτε αναμενόμενα. Για το λόγο αυτό, αν τελικά αποφασίσετε να προβείτε σε μαζική αναβάθμιση πάρτε πρώτα ένα snapshot του VM σας. Αν αργότερα δείτε ότι κάποια πράγματα έχουν σαλατοποιηθεί χωρίς ελπίδα γι’ αντιστροφή, γυρίστε στο παλιό σας snapshot κι όλα θα ‘ναι ξανά όμορφα κι ωραία.

Πάντως πέρα από μαζικές αναβαθμίσεις, το portmaster μπορεί ν’ αναβαθμίζει κι επιλεκτικά:

VirtualBSD# portmaster vlc

Σημειώστε ότι το portmaster είναι αρκετά έξυπνο ώστε όποτε χρειάζεται ν’ αναβαθμίζει και να εγκαθιστά κι άλλα ports, προκειμένου να αναβαθμίσει σωστά αυτό που του ζητάτε. Δείτε, π.χ., το παράδειγμα του VLC:

===>>> The following actions will be taken if you choose to proceed:
	Upgrade vlc-1.1.5_2,3 to vlc-1.1.7,3
	Upgrade libogg-1.2.1,4 to libogg-1.2.2,4
	Install devel/libtool
	Upgrade dbus-1.4.0 to dbus-1.4.1
	Install devel/qt4-moc
	Install devel/qmake4
	Install devel/qt4-rcc
	Install devel/qt4-uic
	Upgrade ffmpeg-0.6.1_2,1 to ffmpeg-0.6.1_3,1
	Install devel/binutils
	Install math/gmp
	Install math/mpfr
	Install devel/yasm
	Install textproc/texi2html
	Install multimedia/v4l_compat
	Install net/liveMedia
===>>> Proceed? y/n [y]

Πατήστε το πλήκτρο [Y] και η διαδικασία θα προχωρήσει. Ωραία όλα αυτά, με τις εγκαταστάσεις και τις αναβαθμίσεις. Πώς όμως απεγκαθιστούμε; Ένας τρόπος είναι με τη βοήθεια του εργαλείου pkg_delete. Ας πούμε, π.χ., ότι για κάποιο λόγο δεν θέλουμε άλλο το nano. Πρώτα μαθαίνουμε την ακριβή έκδοση που είναι ήδη εγκατεστημένη, π.χ., πληκτρολογώντας

VirtualBSD# pkg_info | grep nano
nano-2.2.6 Nano's ANOther editor, an enhanced free Pico clone

Ακολούθως απεγκαθιστούμε με

VirtualBSD# pkg_delete nano-2.2.6

Αυτό ήταν. Δεν ξέρουμε για εσάς, εμείς όμως πολύ το χαιρόμαστε να δουλεύουμε με το FreeBSD – ειδικά όταν φοράει ένα όμορφο desktop σαν αυτό του VirtualBSD. Αν καταφέραμε να σας κάνουμε έστω και λίγο να ενδιαφερθείτε, έχετε υπόψη σας ότι όλα όσα συζητήσαμε εδώ είναι η αρχή της αρχής (της αρχής). Για πολλά περισσότερα κι απείρως πιο ενδιαφέροντα, ξέρετε: Από τη μία είναι τα άρθρα που δημοσιεύουμε εδώ, από την άλλη είναι και το επίσημο Handbook.

Καλή συνέχεια και καλή διασκέδαση!

6 Responses to “VirtualBSD: Πανέμορφο, ασφαλέστατο κι εντελώς εικονικό!”

  1. genmeister | 24/02/2012 at 12:58

    Δυο μιιιιικρές ερωτήσεις.
    Τι είναι ακριβώς τα ports γιατί δεν το κατάλαβα;Έκανα μια γενική εικόνα στο μυαλό μου. Και τα snapshot που ακριβώς βρίσκονται γιατί δεν μπόρεσα με τίποτα να τα βρω!!
    Κατα τα άλλα ευτυχώς που υπάρχετε και μου γνωρίσατε αυτό το λειτουργικό!!

    • subZraw | 24/02/2012 at 17:38

      Κάθε port είναι ένα σύνολο από αρχεία που περιγράφουν πού βρίσκεται το source code μιας εφαρμογής κι ενδεχομένως κάποια patches που πρέπει να εφαρμοστούν για την επιτυχή μεταγλώττιση της εφαρμογής. Επιπρόσθετα, ένα port περιλαμβάνει κι όλες τις πληροφορίες για τις λεγόμενες εξαρτήσεις (dependencies), δηλαδή για όλες εκείνες τις βιβλιοθήκες ή προγράμματα που είτε πρέπει να ‘ναι ήδη εγκατεστημένα είτε επίσης να μεταγλωττιστούν κι εγκατασταθούν, προκειμένου να πετύχει η μεταγλώττιση της εφαρμογής. Επίσης, στα λεγόμενα Makefiles που υπάρχουν στα ports, εμπεριέχονται και οδηγίες για την εγκατάσταση της εκάστοτε εφαρμογής, στάδιο που ακολουθεί μετά από κάθε επιτυχημένη μεταγλώττιση. Δες οπωσδήποτε και το άρθρο του sonic2000gr στο

      http://deltahacker.gr/2011/09/07/freebsd-installation-part-2

      και θα καταλάβεις πολλά περισσότερα. Εξάλλου εκείνος είναι ο expert στο FreeBSD — εγώ ένας απλός θαυμαστής είμαι!

      Τέλος, πες μου λίγο ποιον hypervizor χρησιμοποιείς (VMware-κάτι, Virtualbox) και θα προσπαθήσω να σου πω πού ακριβώς βρίσκονται τα snapshots. (Αν δεν έχω εγκατεστημένο τον ίδιο hypervizor θα σου πω κάτι γενικό — αλλά όχι πολύ αόριστο :D)

      • genmeister | 24/02/2012 at 19:14

        Έχω το vmware στα windows.

        • subZraw | 24/02/2012 at 19:34

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

  2. genmeister | 24/02/2012 at 19:50

    Οκ το έπιασα. Κάτι σαν την επαναφορά συστήματος είναι!! Ευχαριστώ για τον χρόνο σας!

    • subZraw | 24/02/2012 at 20:03

      Είναι πολύ περισσότερο από την επαναφορά συστήματος, αφού “φωτογραφίζει” ακόμα και τα χαρακτηριστικά της μηχανής (μνήμη, δίσκοι κ.λπ.) και φυσικά τα επαναφέρει *και* αυτά!

Leave a Reply

You must be logged in to post a comment.

Σύνδεση

Αρχείο δημοσιεύσεων