Δημοσιεύτηκε: 26 Αύγ 2008, 19:14
από ftso
Dimitris έγραψε:...

Για να μπορεί να αναγνωρίζεται από τη γραμμή εντολών θα πρέπει να προσθέσουμε αυτό το φάκελο στο path. path είναι μια μεταβλητή περιβάλλοντος η οποία περιέχει φακέλους στους οποίους βρίσκονται εκτελέσιμα. Αυτή συνήθως ορίζεται στο αρχείο .bashrc το οποιο βρίσκεται στον αρχικό μας κατάλογο (/home/dimitris). Η σύνταξη με ένα παράδειγμα είναι η εξής:
Κώδικας: Επιλογή όλων
export PATH=$PATH:/usr/bin/:/usr/local/:/home/dimitris/bin

H εντολή αυτή βάζει στη μεταβλητή path ό,τι υπήρχε προηγουμένως ($PATH), έπειτα το φάκελο /usr/bin/, έπειτα το /usr/local/ και στο τέλος το φάκελο /home/dimitris/bin


Προσοχή!!!
Οι κατάλογοι που προσθέτουμε στο PATH και έχουν δικαίωμα εγγραφής και άλλοι εκτός του root να μπαίνουν ΠΑΝΤΑ στο τέλος.

Και εξηγώ με ένα παράδειγμα:
Αν εκτελέσω εγώ την εντολή sudo τότε το shell θα αρχίσει να ψάχνει στους καταλόγους του PATH για την εντολή αυτή και την οποία θα την βρεί τελικά στον κατάλογο /usr/bin/ o οποίος είναι απο τους πρώτους στο PATH.
Αν όμως πριν του /usr/bin/ , υπήρχε παράδειγμα ο /home/dimitris/bin , τότε πολύ εύκολα θα μπορούσε κάποιος να μας βάλει ένα shellscript μέσα το όνομα sudo το οποίο θα μπορούσε να μας υποκλέψει τον κωδικό χωρίς να το πάρουμε καν πρέφα (Trojan horse).

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

Αυτά!
@Dimitris πολύ καλές οι οδηγίες σου.
Έμαθα αρκετά πράγματα. :)