Μερικές εντολές που ανήκουν στο χρονοντούλαπο της ιστορίας

Ξεφύλλιζα προχθές ένα παλιό βιβλίο για Linux. Πάρα πολλές εντολές πλέον έχουν καταργηθεί. Όμως υπάρχουν ακόμα και πολλοί από εμάς τις χρησιμοποιούμε. Ακόμα χειρότερα θα τις βρούμε ακόμα και σήμερα σε άρθρα που θα βρούμε μπροστά μας. Ώρα για αναβάθμιση. Ας δούμε μερικές από αυτές

1. apt-get

Γιατί να γράψεις apt-get αντί να γράψεις απλά apt;

H εντολή apt ήταν μια αναγκαιότητα που έγινε πράξη. Ένα επαναλαμβανόμενο θέμα που θα δούμε και στη συνέχεια είναι η οργάνωση με υποεντολές με τη μορφή εντολή υποεντολή παράμετροι. Πρώτη η διανομή Mint έκανε κάτι αντίστοιχο με ένα απλό script. Υπήρχε για χρόνια αλλά δεν το διαφήμιζε περιμένοντας την επίσημη υλοποίηση. Μου αρέσει καλύτερα, ειδικά στην αναζήτηση, αλλά δεν έχει κάποια ιδιαίτερη σημασία. Η βασική χρήση είναι ίδια.

2. nslookup

Η εντολή nslookup έχει αντικατασταθεί από την εντολή dig.

3. ifconfig, route, nameif, arp, iwconfig

Υπάρχει σήμερα η εντολή ip που υποστηρίζει νέες τεχνολογίες και συντηρείτε ενεργά. Ο παρακάτω πίνακας δείχνει τη νέα σύνταξη

Linux Deprecated Commands Linux Replacement Commands
arp ip n (ip neighbor)
ifconfig ip a (ip addr), ip link, ip -s (ip -stats)
iptunnel ip tunnel
iwconfig iw
nameif ip link, ifrename
netstat ss, ip route (for netstat -r), ip -s link (for netstat -i),
ip maddr (for netstat -g)
route ip r (ip route)

4. egrep

Απλά γράψε grep -E αν και συνιστώ τη rg (ripgrep)

5. service

Θα κάνεις καλύτερα τη δουλεία σου με τη systemctl.

6. gnome-open, gvfs-open

Πλέον υπάρχει στανταρ και είναι η εντολή xdg-open.

7. netstat

Χρησιμοποίησε την εντολή ss ή ip

8. rm

Η εντολή rm παρακάμπτει τον κλάδο απορριμάτων. Χρησιμοποίησε τις εντολές trash ή gvfs-trash. Στο Debian η πρώτη είναι στο πακέτο trash-cli. Η δεύτερη υπήρχε παλιά εγκατεστημένη, αλλά πλέον όχι, δεν ξέρω αν θα έχουμε το gvfs στον μακρό χρόνο, όποτε μείνετε με την πρώτη που έχει και περισσότερες δυνατότητες.

9. telnet, rwho, rlogin,…

Αλήθεια έχεις αλλάξει χιλιετία;

10. poweroff, shutdown

Δεν κάνουν την καλύτερη δουλεία στο να τερματίσουν τον υπολογιστή σωστά. Χρησιμοποίησε πάλι τo systemctl. Πολύ πιθανό να το κάνει κρυφά η διανομή σου, αλλά καλύτερα να είσαι σίγουρος.

Πίσω στα θρανία;

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

Για περισσότερα καθώς και για παραδείγματα

7 «Μου αρέσει»

Ειναι ενα απο τα πραγματα που δεν μου αρεσει στο linux. Ξεκινας γνωριζοντας ενα αλφα σετ εντολων και αναβαθμιζοντας σιγα σιγα ψαχνεσαι να βρεις τις καινουριες.

Προσωπικα θεωρω φαουλ να διαβαζω πως θα κανω ενα πραγμα σε ubuntu 12 και σε ubuntu 20 να εχει αλλαξει η εντολη.

Αυτα ουτε στο dos δεν συνεβαιναν!!!

Μα πολλές από αυτές τις εντολές είναι από τις εποχές του DOS, κάποιες ακόμα παλαιότερες :slight_smile:

Κάποιες άλλες είναι από τις απαρχές του Internet. Σίγουρα πολλά έχουν αλλάξει από τότε. Μια από τις πρώτες που είχα δει και θαυμάσει ήταν η εντολή rwho, τα πράγματα ήταν πολύ αθώα τότε. Επίσης, χάσαμε το uucp το νοσταλγεί κανένας;

Αλλά υπάρχει επίσης και μια μικρή διαφορά. Μπορείς στα Windows να κάνεις ότι έκανες στο DOS τότε; Δε νομίζω. Αλλά στο Linux μπορείς. Οι παλιές εντολές υπάρχουν. Υπάρχει ο δρόμος προς τα πίσω.

Συχνά η αλλαγή είναι κρυμμένη, το δίκτυο για παράδειγμα το χειρίζεται συνήθως ο network-manager οι παλιές εντολές μπορεί να είναι πλέον κάποια script που τον καλούν, αλλά οι παλιοί αυτοματισμοί δουλεύουν. H εντολή service στο σύστημα μου είναι ένα script, που θα καλέσει το systemctrl.

Ας πάρουμε σαν παράδειγμα την εντολή grep κάτι πολύ πρωτοποριακό και καινοτόμο (τη δεκαετία του 70). Τότε τα μηχανήματα της εποχής δεν μπορούσαν να κάνουν και πολλά. Επεκτάθηκε με την εντολή egrep που ήταν καλύτερη αλλά ήθελε περισσότερη μνήμη. Υπάρχει λόγος σήμερα να έχουμε και τις 2; Και γιατί να μην περάσουμε στην rg που είναι δεκάδες φορές ταχύτερη;

Τώρα, θα μου πεις βίτσια είναι αυτά, εγώ το εκτιμώ που το Linux διαρκώς αλλάζει :slight_smile:

1 «Μου αρέσει»

apt-get

Υπάρχουν πληροφορίες αν το apt θα ενσωματώσει λειτουργίες και από άλλες apt-* εντολές; Πιστεύω πως αυτό ήταν το αρχικό σχέδιο αλλά δεν βρίσκω κάτι.

xdg-open

Να σημειωθεί πως το xdg-open είναι script που απλά τρέχει διαφορετική εντολή ανάλογα με το περιβάλλον. Σε GNOME (τώρα) είναι gio open και σε KDE είναι kde-open(5).

gvfs-trash

Λογικά την εντολή αντικαθιστά η gio trash. Το KDE παρέχει κι αυτό μια παρόμοια εντολή. Οπότε, συγκρίνοντας με το προηγούμενο, xdg-trash πότε;

Συμπληρώστε τη λίστα στα σχόλια.

iptables => nft (nftables)

Καλά όχι ακριβώς καθώς μπορεί να χρησιμοποιηθεί μια παραλλαγή των iptables εργαλείων που έχουν το nftables ως backend (και αυτή η παραλλαγή είναι που υπάρχει σε τελευταίες εκδόσεις κάποιων διανομών, π.χ. Debian). Βέβαια για πλήρη πρόσβαση στις δυνατότητες του νέου υποσυστήματος χρειάζεται η χρήση της nft.

@Kostas_Kostas

Οι καινούργιες είτε βελτιώνουν την εμπειρία υπαρχόντων εντολών (apt) είτε εισάγονται γιατί υπάρχουν λειτουργίες που δεν μπορούν να εισαχθούν (ή διαφέρουν λειτουργικά εκτενώς από αυτές) στις προηγούμενες (nft). Ωστόσο οι παλιές παραμένουν. Τα net-tools (ifconfig κτλ) αντικαθίσταται από το iproute2 σχεδόν 15 χρόνια τώρα.

2 «Μου αρέσει»

Μέχρι να γίνει αυτή η ενσωμάτωση το apt-get θα δουλεύει απρόσκοπτα και χωρίς θέμα. Το apt μου θυμίζει λίγο το aptitude αν και δεν έχω βρει παρόμοιο εργαλείο για λύση προβλημάτων εξαρτήσεων.

Επίσης

11. ps aux | grep

Το χρησιμοποιώ συνέχεια. Αλλά υπάρχει καλύτερος τρόπος

pgrep -af <command>
1 «Μου αρέσει»