Zoeken op website

Stop met het gebruiken van deze 5 verouderde Linux-commando's (en wat je in plaats daarvan kunt gebruiken)


Linux heeft honderden beschikbare commando's, en tenzij je het laatste nieuws bijhoudt, kunnen wijzigingen aan de standaardtools aan je aandacht ontsnappen. Hoewel het waar is dat Linux erg stabiel is en het uitfaseren van tools zeldzaam is, zijn sommige van onze geliefde en bekende hulpmiddelen jaren geleden veranderd, en heeft niemand ons dat verteld. Ik heb vijf verouderde Linux-commando's en hun vervangers.

Laat arp varen voor ip n

Een moderne en kleurrijke alternatief

Voor degenen die het niet weten, communiceert netwerkhardware met MAC-adressen, maar software gebruikt IP-adressen. Wanneer software een verzoek doet, vraagt onze computer het lokale netwerk (LAN) welk MAC-adres bij een bepaald IP-adres hoort. Dit proces wordt een ARP (Address Resolution Protocol) verzoek genoemd.

Een MAC-adres is een (meestal) uniek, 6-byte hexadecimaal nummer dat de meeste LAN-apparaten in zich hebben ingebrand—tenzij gewijzigd door het besturingssysteem.

Zolang ik Linux gebruik, en zelfs Windows, was het commando om met ARP te werken altijd "arp." Maar nu al ongeveer tien jaar is de nieuwe norm het gebruik van ip neigh (neighbor) of kortweg ip n.




Het "ip"-commando maakt deel uit van het nieuwere iproute2-pakket, dat de verouderde net-tools heeft vervangen. De laatste release van net-tools was in 2021, en gesprekken over veroudering vonden al plaats in 2009.

Dus als je nog steeds 'arp' gebruikt, is het waarschijnlijk tijd om over te schakelen.

Laat ifconfig vallen voor ip a

ifconfig is verouderd en de ontwikkeling is lang geleden gestopt

Het ifconfig-commando was waarschijnlijk een van de eerste die je op Linux leerde. Het was gemakkelijk te onthouden en nog gemakkelijker om nuttige informatie uit te halen. ifconfig maakt echter deel uit van het inmiddels achterhaalde net-tools-pakket, en dus is de ontwikkeling ervan lang geleden gestopt, waardoor het zonder moderne functies is achtergebleven en tekenen van veroudering vertoont.

De vervanging ("ip a" of ip address) maakt opnieuw deel uit van iproute2, en het heeft een veel strakker en kleurrijker display:

Het is ook niet alleen voor het bekijken van informatie, want je kunt het ook gebruiken om interfaces direct aan te passen. Deze veranderingen zijn vluchtig en blijven niet behouden, dus pas op.

Schakel over van iptables naar nft

Het is efficiënter en is de nieuwe norm

Als je een firewall op Linux hebt geconfigureerd, heb je ongetwijfeld gehoord van iptables. Het is een oudcommando dat beheerders in staat stelt om complexe beleidsregels op te bouwen—bijv. het filteren, manipuleren en routeren van pakketten. Het is een van die commando's waarvan ik het moeilijk vond om er afstand van te doen vanwege de complexiteit van de rol die het vervult. Debian 10 maakte nftables echter standaard in 2019, en RHEL 9 heeft iptables formeel afgeschaft in 2022—iptables wordt nu overgelaten aan de verouderde firmware van je pratende broodrooster.

De Linux-gemeenschap handelt echter niet overhaast; er was duidelijk een vervanger, en nftables vond zijn weg naar de kernel in 2014. Het was een natuurlijke voortzetting van zijn voorganger, met verbeteringen in efficiëntie en verminderde codecomplexiteit. Als je geen firewallbeleid schrijft, zal dit je waarschijnlijk vervelen, maar als je dat wel doet, heb je geen andere keuze dan het te gebruiken.

Stop met het gebruik van which

Shell-binnenfunctie zijn minder verspillerig en aanbevolen

Iedereen heeft deze opdracht op een gegeven moment gebruikt, en ik gebruik hem nog steeds. In een notendop, als je op zoek bent naar een binaire pad op je systeem, vertelt het uitvoeren van which je waar het is. Hoewel het nog niet expliciet verouderd is, zijn andere opdrachten het voorbijgestreefd.

Een van de vervangers is type, een ingebouwd commando voor Bash, Zsh, en mogelijk anderen:

"type -p" gedraagt zich anders in Zsh. Raadpleeg de Zsh-handleiding.

Een ander alternatief is om command -v te gebruiken, wat ook een ingebouwd commando is:

Omdat ze beide in de shell zijn ingebouwd, zijn ze veel sneller uit te voeren vanuit scripts omdat de shell het proces niet hoeft te forken.

Schakel over van netstat naar ss

Het is krachtiger en gemakkelijker te gebruiken

De laatste op de lijst vervangt een klassieker. Netstat is ook beschikbaar op Windows, en het is nog een commando dat ik al tientallen jaren gebruik. Op Linux is netstat -altpn diep in mijn hersenstam verankerd, maar de nieuwere vervanger behoudt veel van de veelgebruikte opties:

Het is een verbetering op het gebied van snelheid en bruikbaarheid. Het ss-commando haalt informatie rechtstreeks uit kernelinterfaces, waardoor het veel sneller is. Het is ook niet beperkt tot netwerksockets, omdat het informatie over Unix-domain sockets kan weergeven:

Het "ss"-commando kan nog veel meer doen. Bijvoorbeeld:

  • ss -t state listening: Bekijk luisterende TCP-sockets.
  • ss state syn-sent: Bekijk de verbindingsstatus in verschillende stadia.
  • ss dport=:443: Bekijk verbindingen die zijn gebonden aan een externe poort.

Het "ss"-commando maakt ook deel uit van het iproute2-pakket, en het is een duidelijke upgrade van netstat.


Een groot deel van de vandaag behandelde opdrachten maakt deel uit van het iproute2-pakket, en daarom zou je wat dieper moeten graven in de hulpmiddelen die het biedt, omdat het uiteindelijk de vervanging is voor veel oudere, verouderde tools.

Hoewel de meeste commando's op Linux jarenlang hetzelfde zullen blijven, veranderen sommige af en toe. Het is altijd prettig om een opfrisser te hebben en jezelf kennis te laten maken met nieuwe hulpmiddelen. De oudere commando's zijn verre van perfect, dus zelfs kleine upgrades kunnen erg nuttig zijn.

Gerelateerde artikelen