25.8. Διαγραφή Παρωχημένων Αρχείων, Καταλόγων και Βιβλιοθηκών
Προηγ | Κεφάλαιο 25. Ενημέρωση και Αναβάθμιση του FreeBSD | Επόμενο

## 25.8. Διαγραφή Παρωχημένων Αρχείων, Καταλόγων και Βιβλιοθηκών

Βασισμένο σε σημειώσεις που παρείχε ο Anton Shterenlikht.

Κατά την συνεχή ανάπτυξη του FreeBSD είναι φυσιολογικό κάποια αρχεία κατά καιρούς να χαρακτηρίζονται ως παρωχημένα. Αυτό μπορεί να συμβεί αν οι λειτουργίες που παρείχαν υλοποιούνται πλέον διαφορετικά, αν ο ο αριθμός έκδοσης της βιβλιοθήκης έχει αλλάξει ή ακόμα και αν έχει διαγραφεί οριστικά από το σύστημα. Στα αρχεία αυτά περιλαμβάνονται επίσης βιβλιοθήκες κατάλογοι που πρέπει να διαγραφούν όταν γίνεται αναβάθμιση του συστήματος. Το όφελος για το χρήστη είναι ότι το σύστημα του δεν γεμίζει από παλιά αρχεία τα οποία καταλαμβάνουν άχρηστο χώρο στο μέσο αποθήκευσης και στο backup. Επιπρόσθετα, αν κάποια παλιά βιβλιοθήκη είχε προβλήματα σταθερότητας ή ασφάλειας θα πρέπει να την αναβαθμίσετε για να κρατήσετε το σύστημα σας σταθτερό και ασφαλές. Τα αρχεία, οι κατάλογοι και οι βιβλιοθήκες που θεωρούνται παρωχημένες φαίνονται στο `/usr/src/ObsoleteFiles.inc`. Οι παρακάτω οδηγίες θα σας βοηθήσουν να διαγράψετε αυτά τα αρχεία κατά τη διαδικασία αναβάθμισης του συστήματος.

Υποθέτουμε ότι χρησιμοποιείτε τα βήματα που περιγράφονται στο Τμήμα 25.7.1, &#x201C;Ο Κανονικός Τρόπος να Ενημερώσετε το Σύστημα σας&#x201D;. Μετά την επιτυχή εκτέλση της εντολής `make `installworld`` και του `mergemaster` που ακολουθεί, θα πρέπει να ελέγξετε για παρωχημένα αρχεία και βιβλιοθήκες όπως φαίνεται παρακάτω:

`#` `cd /usr/src` `#` `make check-old`

Αν βρεθούν παρωχημένα αρχεία, μπορείτε να τα διαγράψετε με τις παρακάτω εντολές:

`#` `make delete-old`

### Υπόδειξη:

Δείτε το `/usr/src/Makefile` για περισσότερες ενδιαφέρουσες επιλογές της `make`.

Για κάθε αρχείο που θα διαγραφεί, θα σας ζητηθεί να επιβεβαιώσετε την ενέργεια. Μπορείτε να παραλείψετε την ερώτηση και να αφήσετε το σύστημα να διαγράψει αυτά τα αρχεία αυτόματα χρησιμοποιώντας την μεταβλητή του make `BATCH_DELETE_OLD_FILES` με τον τρόπο που φαίνεται παρακάτω:

`#` `make -DBATCH_DELETE_OLD_FILES delete-old`

### Προειδοποίηση:

Η διαγραφή παρωχημένων αρχείων, θα προκαλέσει δυσλειτουργία των εφαρμογών που εξακολουθούν να βασίζονται σε αυτά. Αυτό συμβαίνει ιδιαίτερα σε παλιές βιβλιοθήκες. Στις περισσότερες περιπτώσεις, θα πρέπει να επαναμεταγλωττίσετε τα προγράμματα, ports ή βιβλιοθήκες που χρησιμοποιούσαν την παλιά βιβλιοθήκη πριν εκτελέσετε την εντολή `make `delete-old-libs``.

Μπορείτε να βρείτε προγράμματα που ελέγχουν τις εξαρτήσεις των κοινόχρηστων βιβλιοθηκών στη Συλλογή των Ports, στο `sysutils/libchk` ή `sysuilts/bsdadminscripts`.

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

/usr/bin/ld: warning libz.so.4, needed by /usr/local/lib/libtiff.so, may conflict with libz.so.5 /usr/bin/ld: warning: librpcsvc.so.4, needed by /usr/local/lib/libXext.so may conflict with librpcsvc.so.5

Για να επιλύσετε τέτοιου είδους προβλήματα, βρείτε ποιο port εγκατέστησε την βιβλιοθήκη:

`#` `pkg_info -W /usr/local/lib/libtiff.so` /usr/local/lib/libtiff.so was installed by package tiff-3.9.4 `#` `pkg_info -W /usr/local/lib/libXext.so` /usr/local/lib/libXext.so was installed by package libXext-1.1.1,1

Έπειτα, απεγκαταστήστε, επαναμεταγλωττίστε και επανεγκατασήστε το port. Για να αυτοματοποιήσετε αυτή τη διαδικασία μπορείτε να χρησιμοποιήσετε τα βοηθητικά προγράμματα `ports-mgmt/portmaster` και `ports-mgmt/portupgrade`. Αφού βεβαιωθείτε ότι οι παλιές βιβλιοθήκες δεν χρησιμοποιούνται πλέον από κανένα πρόγραμμα, μπορείτε να τις διαγράψετε με την παρακάτω εντολή:

`#` `make delete-old-libs`

Προηγ | Πάνω | Επόμενο
25.7. Μεταγλωττίζοντας το Βασικό Σύστημα (&#x201C;world&#x201D;) | Αρχή | 25.9. Διαδικασία για Πολλαπλά Μηχανήματα

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.