Η μεταβλητή περιβάλλοντος είναι ένα ονοματιζόμενο αντικείμενο που περιέχει πληροφορίες που χρησιμοποιούνται από μία ή περισσότερες εφαρμογές. Πολλοί χρήστες (ειδικά αυτοί που είναι νέοι στο Linux) το βρίσκουν αυτό λίγο περίεργο ή κάτι που δεν διαχειρίζεται. Ωστόσο, αυτό είναι λάθος: χρησιμοποιώντας τις μεταβλητές περιβάλλοντος μπορεί κανείς να αλλάξει εύκολα τις ρυθμίσεις για μία ή περισσότερες εφαρμογές.
Ο παρακάτω πίνακας περιέχει ένα αριθμό μεταβλητών που χρησιμοποιούνται από το Linux και περιγράφει τη χρήση τους. Παραδείγματα τιμών παρέχονται μετά τον πίνακα.
Μεταβλητή | Περιγραφή |
---|---|
Παρακάτω θα βρείτε ένα παράδειγμα ορισμών για όλες αυτές τις μεταβλητές:
PATH="/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/games/bin" ROOTPATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin" LDPATH="/lib:/usr/lib:/usr/local/lib:/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3" MANPATH="/usr/share/man:/usr/local/share/man" INFODIR="/usr/share/info:/usr/local/share/info" PAGER="/usr/bin/less" EDITOR="/usr/bin/vim" KDEDIRS="/usr" CONFIG_PROTECT="/usr/X11R6/lib/X11/xkb /opt/tomcat/conf \ /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ \ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf"
Προκειμένου να είναι σε ένα κεντρικό σημείο οι ορισμοί όλων αυτών των μεταβλητών, το Gentoo εισήγαγε τον κατάλογο
Για παράδειγμα, όταν εγκαταστήσατε το
PATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2" ROOTPATH="/usr/i686-pc-linux-gnu/gcc-bin/3.2" MANPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/man" INFOPATH="/usr/share/gcc-data/i686-pc-linux-gnu/3.2/info" CC="gcc" CXX="g++" LDPATH="/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.3"
Άλλες διανομές σας πληροφορούν να αλλάξετε ή προσθέσετε τέτοιες μεταβλητές περιβάλλοντος στο αρχείο
Για παράδειγμα, όταν το
Από αυτό δεν κερδίζει μόνο το Portage, αλλά και εσείς, ως χρήστης. Περιστασιακά, μπορεί να σας ζητηθεί να θέσετε μια μεταβλητή περιβάλλοντος σε επίπεδο συστήματος. Για παράδειγμα, θα δούμε τη μεταβλητή
http_proxy="proxy.server.com:8080"
Χρησιμοποιώντας το ίδιο αρχείο για όλες σας τις μεταβλητές, έχετε μια γρήγορη σύνοψη για ποιες μεταβλητές έχετε ορίσει εσείς.
Αρκετά αρχεία στον κατάλογο
Το σενάριο
00basic 99kde-env 99local +-------------+----------------+-------------+ PATH="/bin:/usr/bin:/usr/kde/3.2/bin:/usr/local/bin"
Η αλληλουχία των μεταβλητών δε συμβαίνει πάντα, αλλά μόνο στις ακόλουθες μεταβλητές:
Όταν εκτελείτε το
Αν θέλετε να παρατηρήσετε την επίδραση του
# env-update && source /etc/profile
Δεν είναι επιθυμητό πάντα να ορίζετε μια μεταβλητή καθολικά. Για παράδειγμα, πιθανόν να χρειαστεί να προσθέσετε τη διαδρομή
(Μια άνω κάτω τελεία μη ακολουθούμενη από κατάλογο γίνεται αντιληπτό ως ο τρέχων κατάλογος) PATH="${PATH}:/home/my_user/bin:"
Όταν ξανασυνδεθείτε, η μεταβλητή σας
Μερικές φορές, ακόμα πιο αυστηροί ορισμοί είναι απαραίτητοι. Πιθανόν να χρειαστεί να χρησιμοποιήσετε εκτελέσιμα από ένα προσωρινό κατάλογο που δημιουργήσατε, χωρίς να χρησιμοποιείτε την πλήρη διαδρομή προς αυτά ή να επεξεργαστείτε το
Στην περίπτωση αυτή, μπορείτε να ορίσετε τη μεταβλητή
# export PATH="${PATH}:/home/my_user/tmp/usr/bin"