- Lär dig navigera i filsystemet med ls, cd och pwd och hantera mappar med mkdir, rm och cp.
- Bemästra visning och sökning i textfiler med hjälp av cat, less, grep, sed, awk och find.
- Kontrollera behörigheter, processer och nätverk med chmod, chown, ps, top, htop, ping, ip och ss i servermiljöer.
- Installera och uppdatera programvara med apt, använd tar/zip, wget och scp, och automatisera uppgifter genom att kombinera kommandon och omdirigeringar.

Oavsett om du arbetar med servrar, webbutveckling eller helt enkelt vill få ut det mesta av din datorFörr eller senare kommer du att hamna i Linuxterminalen. Och där kan du antingen de grundläggande kommandona, eller så stirrar du på den blinkande markören, osäker på vad du ska göra. Den goda nyheten är att du inte behöver memorera hundratals kommandon: att behärska en gedigen uppsättning kommandon kommer att täcka 90 % av dina dagliga uppgifter.
I den här guiden hittar du En enhetlig och mycket komplett samling av grundläggande Linux-kommandon, en blandning av det bästa från flera referensguider: filhantering, processer, nätverk, paket, behörigheter, automatisering… Allt förklarat på spanska från Spanien, med verkliga exempel på serveradministration, hosting och lokalt arbete, och organiserat så att du kan använda det som ett fusklapp när du behöver det.
Vad är Linux-kommandon och varför är de så viktiga?
Un Ett Linux-kommando är ett program eller verktyg som körs från kommandoraden.Istället för att klicka på knappar skriver du kommandonamnet, eventuellt några alternativ (eller flaggor) och en eller flera argument såsom filsökvägar, mönster eller tjänstnamn.
Idén är enkel: Terminalen är ett mycket effektivt textgränssnittAtt göra saker med ett enda klick är okej, men att kedja kommandon, automatisera säkerhetskopior med cron, granska stora loggar med filter eller hantera en fjärrserver via SSH är oändligt mycket bekvämare genom att skriva några få kommandon än att kämpa med grafiska menyer.
I nästan vilken modern distribution som helst (Ubuntu, Debian, CentOS, Fedora, Arch, etc.) öppnar du en terminal med Ctrl + Alt + T eller genom att söka efter det som "Terminal" i programmenyn. På en server är den vanliga proceduren Logga in via SSH från din lokala dator.
Det första du behöver bemästra är hur navigera i filsystemet: veta var du är, vad som finns på varje plats och hur du snabbt byter mapp.
ls: lista filer och kataloger
Kommandot ls Den visar innehållet i den aktuella katalogen (eller den sökväg du anger). Det är ett av de kommandon du kommer att använda oftast:
ls– Listar synliga filer och mappar i den aktuella katalogen.ls -l– Visar detaljer: behörigheter, ägare, storlek, datum.ls -a– Inkluderar dolda filer (de som börjar med en punkt).ls -lh– Precis som-lmen med läsbara storlekar (K, M, G).ls -lah– Kombinerar långa, dolda och läsbara storlekar.ls -R– Rekursiv lista över underkataloger.ls -t– Sortera efter ändringsdatum.ls -S– Sortera efter storlek.
På webbservrar är det vanligt att göra något liknande ls -lah /var/www/html för att visa alla projektfiler, inklusive dolda konfigurationsfiler som .htaccess eller mappen .git.
lösenord: vet vilken mapp du befinner dig i
När man har hoppat mellan olika rutter ett tag är det väldigt lätt att gå vilse. Med pwd (skriv ut arbetskatalogen) får du den fullständiga sökvägen till den aktuella katalogen, till exempel:
/home/usuario/proyectos/mi-sitio
Det är särskilt användbart i skript, när du behöver veta var du befinner dig för att arbeta med relativa rutter på ett säkert sätt.
cd: ändra katalog
För att navigera i filsystemet använder du cd (ändra katalog). Några viktiga variationer:
cd /ruta/completa– Det går åt en absolut håll.cd carpeta– Ange en mapp i förhållande till den aktuella katalogen.cd ~– Hoppa till personlig katalog av användaren.cd -– Återgå till föregående katalog (väldigt användbar, den verkar fånig tills du använder den).cd ..– Gå upp en nivå i hierarkin.cd ../..– Gå upp två nivåer, och så vidare.
Om du arbetar med Linux-hosting kommer du att tröttna på att använda cd /var/www/html eller liknande sökvägar för att komma åt din webbplats rotkatalog.
Grundläggande fil- och katalogkommandon
När du väl bemästrar hur man rör sig är det dags att lära sig skapa, kopiera, ta bort och visa filer och mapparDetta är en vardaglig företeelse på både en PC och en VPS.
mkdir och rmdir: skapa och ta bort tomma kataloger
med mkdir Du skapar nya mappar. Den stöder flera sökvägar samtidigt och har mycket praktiska alternativ:
mkdir nuevo_directorio– Skapa en enkel mapp.mkdir dir1 dir2– Skapa flera samtidigt.mkdir -p padre/hijo/nieto– Skapa en komplett kapslad struktur, utan att klaga om en del av den redan finns.mkdir -m 755 carpeta_web– Skapa mappen med specifika behörigheter.
Ett typiskt mönster när man sätter upp ett projekt är något i stil med detta: mkdir -p /var/www/mi-sitio/{public_html,logs,backups} att få allt organiserat från minut ett.
För att ta bort tomma kataloger finns det rmdir:
rmdir carpeta_vacia– Ta bort en mapp så länge den inte innehåller något.rmdir -p dir1/dir2/dir3– Ta bort hela kedjan om alla nivåer är tomma.
Om katalogen har innehåll måste du använda rm -rvilket vi snart ska se.
tryck: skapa tomma filer eller uppdatera datum
Kommandot touch Den används huvudsakligen för skapa tomma filer eller uppdatera ändringsdatumet utan att röra dess innehåll:
touch archivo.txt– Skapa filen om den inte finns.touch archivo1 archivo2– Skapa flera samtidigt.touch -t 202501010000 archivo.txt– Tvinga fram en specifik tidsstämpel.
Det är väldigt bekvämt att generera konfigurationsfiler eller platshållare typ touch .env o touch index.html.
rm: radera filer (och kataloger) försiktigt
med rm Du tar bort filer och, med rätt alternativ, katalogträd. Det finns ingen soptunnaOm du gör ett misstag kan det vara komplicerat eller omöjligt att återställa något.
rm archivo.txt– Ta bort en fil.rm archivo1 archivo2– Ta bort flera.rm -i archivo.txt– Be om bekräftelse, helst medan du lär dig.rm -r carpeta– Tar bort en mapp och allt dess innehåll rekursivt.rm -rf carpeta– Tvinga fram rekursiv radering utan att fråga; Använd den bara när du är helt säker på vad du gör..rm *.tmp– Ta bort alla filer med den filändelsen i den aktuella katalogen.
Kombinationer som rm -rf / eller liknande är snabba lösningar för att göra ett system oanvändbart, så Var försiktig när du blandar RM och RF med generella rutter eller jokerteckenrutter..
cp och mv: kopiera, flytta och byt namn
För att duplicera filer du använder cp Och för att flytta eller byta namn använder du mvNi två kan hantera all filomorganisering.
Några typiska användningsområden för cp:
cp origen.txt destino.txt– Kopiera en fil.cp archivo.txt /otra/ruta/– Kopiera till en annan katalog.cp -i archivo.txt copia.txt– Fråga innan du bankar.cp -p archivo.txt backup.txt– Spara tillstånd, ägare och datum.cp -r carpeta_origen carpeta_destino– Rekursiv kopiering av en katalog.
För kompletta kopior av webbplatser är något liknande mycket vanligt. cp -rp /var/www/html /backup/html-$(date +%Y%m%d), vilket lämnar en daterad säkerhetskopia som bibehåller behörigheter och ägarskap.
med mv Du kan både flytta och byta namn på:
mv archivo.txt nuevo_nombre.txt– Byt namn.mv archivo.txt /otra/ruta/– Flytta den.mv directorio nuevo_nombre– Byt namn på en mapp.mv *.log /var/log/backups/– Flytta alla stockar.
Ett vanligt förekommande mönster vid driftsättning av projekt är mv sitio-nuevo/* /var/www/html/ att ersätta den gamla versionen av webbplatsen med den nya.
katt, mindre, huvud och svans: visa filinnehåll
För att inspektera innehållet i en textfil har du flera verktyg, vart och ett med sina egna fördelar.
cat archivo.txtVisar hela filen i terminalen. Idealisk för små filer eller sammanfoga flera:cat archivo1 archivo2.less archivo.logtjänar till stora filereftersom det låter dig navigera sida för sida, söka (/texto), gå fram och tillbaka och avsluta medq.head archivoDen visar de första 10 raderna som standard; medhead -n 50Du väljer hur många.tail archivoDen visar de sista raderna; medtail -f archivo.logDu kan se hur loggen uppdateras i realtid, vilket är mycket användbart när du återskapar ett fel på webbplatsen.
Vid felsökning av webbservern kommer du ständigt att se kombinationer som tail -f /var/log/nginx/error.log o less /var/log/apache2/access.log att förstå vad som händer.
Kommandon för att söka efter filer och text
Allt eftersom systemet växer och fylls med projekt, loggar och konfigurationer blir det avgörande att veta snabbt hitta filer och textsträngar.
hitta och lokalisera: sök efter filer efter namn, storlek eller datum
Kommandot find Den skannar filsystemet och låter dig söka efter namn, typ, storlek, ändringsdatum etc., och till och med vidta åtgärder utifrån resultaten:
find /ruta -name "nombre_archivo"– Sök efter exakt namn.find /var/www -name "*.php"– Leta reda på alla PHP-filer i det området.find /home -type f -size +100M– Filer större än 100 MB.find /var/log -mtime -7– Filer som ändrats under de senaste 7 dagarna.find . -name "*.tmp" -delete– Sök efter och ta bort tillfälliga filer.find /var/www -type f -exec chmod 644 {} \;– Justera behörigheter för alla filer.
För sin del, locate drag av en indexerad databasDärför är det mycket snabbare för enkla namnsökningar:
locate nombre_archivolocate -i "*.php"– Ignorerar versaler/gemener.sudo updatedb– Uppdatera indexet (viktigt på servrar).
Nackdelen med lokalisera Den ser inte nyskapade filer förrän databasen har uppdaterats, medan finna Titta alltid på det verkliga systemet.
grep, sed och awk: sök, filtrera och transformera text
För att arbeta med loggar, konfigurationer eller annan vanlig text är de bästa grep, sed y awk.
- grep Leta efter linjer som matchar ett mönster:
grep "ERROR" /var/log/apache2/error.loggrep -i "texto" archivo.txt– Ignorera versaler.grep -r "cadena" /directorio– Rekursiv sökning.grep -n "texto" archivo.txt– Visa radnummer. - törst tillåta ersätta eller ta bort text utan att öppna filen i en editor:
sed 's/viejo/nuevo/g' archivo.txt– Ersätt alla förekomster.sed -i 's/old_database/new_database/g' wp-config.php– Redigera på plats (var mycket försiktig med detta). - awk det är perfekt för processkolumner (till exempel loggar):
awk '{print $1}' access.log– Extrahera den första kolumnen (vanligtvis IP).awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -10– Dina 10 mest aktiva IP-adresser.
Även om de kan verka skrämmande till en början, när du väl fått kläm på dessa verktyg Du kan utföra analyser på några sekunder som skulle vara en mardröm i en editor..
Hantering av behörigheter, ägare och grundläggande säkerhet
Linux är baserat på ett mycket tydligt behörighetssystem som låter dig kontrollera vem som kan läsa, skriva eller köra vadDetta är avgörande i miljöer med flera användare och framför allt på webbservrar.
ls -l: se behörigheter och ägare
Vi har redan nämnt det, men det är värt att betona: ls -l Den lär dig, förutom filnamn, även behörigheter, ägare, grupp och storlekEtt typiskt exempel:
-rw-r--r-- 1 usuario grupo 12345 Jan 1 12:34 archivo.txt
drwxr-xr-x 2 usuario grupo 4096 Jan 1 12:34 carpeta/
Den första kolumnen lyder som följer: typ (- arkiv, d katalog) och sedan tre uppsättningar behörigheter: användare, grupp och andra (r läsning, w handstil, x utförande).
chmod: ändra behörigheter
med chmod Du justerar behörigheterna för en fil eller mapp. Du kan göra detta med numerisk notation o symbolisk:
chmod 755 script.sh– rwxr-xr-x (ägare av allt, resten läser/kör endast).chmod 644 index.html– rw-r–r–, mycket vanligt för webbfiler.chmod u+x backup.sh– Lägg till körning för användaren.chmod g-w archivo.txt– Ta bort texten från gruppen.chmod -R 755 directorio– Ändra behörigheter rekursivt.
De numeriska värdena läggs ihop: 4 läsningar, 2 skrivningar, 1 körningDet är därför 7 = 4+2+1 (rwx), 6 = 4+2 (rw-), 5 = 4+1 (rx), etc.
chown och chgrp: ägare och grupp
Förutom behörigheter har varje fil en ägare och en associerad gruppDetta låter dig till exempel få webbservern att äga de filer den måste hantera.
chown usuario archivo.txt– Ägarbyte.chown usuario:grupo archivo.txt– Byt ägare och grupp.chown -R www-data:www-data /var/www/html– Typiskt på Apache/Nginx-servrar på Debian/Ubuntu.chgrp grupo archivo.txt– Byt bara grupp.
När du laddar upp filer via FTP med en användare och webbservern (en annan användare) sedan inte kan läsa eller skriva till dem, Du kan nästan alltid fixa det med en välplacerad chown eller chmod..
sudo: kör som administratör utan att vara root
Kommandot sudo (superuser do) är det rekommenderade sättet att köra administrativa uppgifter utan att logga in direkt som root, vilket är farligt.
helt enkelt Du skriver `sudo` före det du vill köra med förhöjda rättigheter.:
sudo apt update– Uppdatera paketlistan (Debian/Ubuntu).sudo systemctl restart nginx– Starta om Nginx.sudo useradd nuevo_usuario– Skapa en användare.
Den kommer att fråga efter ditt lösenord, och om din användare är i rätt grupp kommer du att köra kommandot med root-behörighet. Detta förhindrar att du blir Att vara root hela tiden, med risk för att av misstag radera eller ändra kritiska filer.
Processhantering och systemprestanda
När något är långsamt eller konstigt är det dags att ta en titt. vilka processer som körs och hur de använder resurserDessa kommandon är dina bästa vänner för det.
ps, top och htop: se vad som körs
Kommandot ps Ta ett fotografi av de processer som är aktiva just då. ps aux Du ser alla systemprocesser, inklusive användaraktivitet, CPU- och RAM-användning etc. Du kan filtrera med grep:
ps aux | grep nginx– Visa endast Nginx-processer.ps -u usuario– Processer hos en specifik användare.
Om du vill ha något dynamisk, realtid, du använder top eller dess vitaminförstärkta version htop:
top– Listar processer sorterade efter CPU-användning och uppdateras.- Överst kan du sortera efter minne (
M), döda processer (k), Etc htop– Samma men med färger, CPU-staplar, musstöd, processträd… på många system måste det installeras först (sudo apt install htopeller liknande).
På en crawlande server, öppna htop Det är oftast det första steget att se Vad förbrukar CPU eller RAM?.
döda och döda alla: avsluta oönskade processer
Om en process hänger sig eller startar och inte svarar kan du stoppa den med kill o killall.
kill 1234– Skicka TERM (15)-signalen till processen med PID 1234 och be den avsluta "tyst".kill -9 1234– KILL-signal (9), avbryter processen omedelbart; använd den som en sista utväg.killall nombre_proceso– Avsluta alla processer som har det namnet, till exempelkillall php-fpm.
Det vanliga sättet att hitta PID är med ps o topp och sedan ge den en kill Försiktigt. Om den inte lyder, drar du i -9.
df och du: styra diskutrymme
När en server får slut på utrymme, allt börjar gå felDatabaser som inte kan skrivas till, loggar som inte växer, tjänster som kraschar hela tiden. För att övervaka detta använder du df y du.
df -h– Visar använt och ledigt utrymme på varje monterat filsystem, i ett läsbart format.df -h /var– Information endast från den partitionen.du -sh /var/www/*– Storleken på varje webbprojekt inom den rutten.du -h --max-depth=1 /– Vilka rotkataloger tar upp mest plats.
Ett mycket praktiskt kommando för att lokalisera de tyngsta mapparna Det är något i stil med du -h --max-depth=1 /var | sort -hr | head -5, som listar de fem största sorterade från störst till minst.
Viktiga nätverkskommandon
Så snart du arbetar med servrar, domäner och webbtrafik behöver du veta Om det finns anslutning, vilken IP-adress har du, vilka portar är öppna och hur svarar din webbplats?.
ip, ifconfig, ping och route
Moderna system, stjärnkommandot är ip, särskilt ip a (o ip addr), som visar alla nätverksgränssnitt, deras IP-adresser, status etc. Där det tidigare användes ifconfigIdag rekommenderas det ip, Även ifconfig Det finns fortfarande i många system via paket net-tools.
ip a– Alla gränssnitt och IP-adresser.ip addr show dev eth0– Detaljer om ett specifikt gränssnitt.ping google.com– Kontrollera om du löser problemet och når Google, vilket visar tider.ping -c 4 8.8.8.8– Skicka endast 4 paket till den IP-adressen.route -noip route show– Rutttabell, för att se var trafiken kommer ifrån.
Om en server "inte syns" är de första stegen alltid Pinga domänen, pinga IP-adressen, titta på serverns IP-adress och dess gateway. med ip route.
netstat/ss och curl: öppna portar och HTTP-svar
För att se vad Vilka portar är öppna och vilka processer lyssnar? I dem har du netstat (klassisk) och ss (modern, snabbare):
ss -tuln– TCP/UDP-portar lyssnar utan att tolka namn.ss -tlnp | grep :80– Hörs det något vid port 80?netstat -tuln– Motsvarande i system som har det.
För snabb testning hur en webbplats reagerar från själva servern, inget som curl:
curl -I https://tu-dominio.com– Endast HTTP-rubriker (statuskod, server, etc.).curl https://tu-dominio.com– Ladda ner den råa HTML-koden.
Kombinerande ping, ip, ss och curl Du kan diagnostisera nästan alla grundläggande anslutnings- eller serviceavbrottsproblem.
Pakethantering: installera, uppdatera och rensa programvara
Varje familj av Linuxdistributioner har sin egen pakethanterarenAtt bemästra det låter dig Installera och uppdatera programvara utan att behöva kämpa med manuella binärfiler..
apt och apt-get i Debian/Ubuntu
I Debian, Ubuntu och derivator är standarden apt (eller dess klassiska version) apt-get):
sudo apt update– Uppdatera listan över tillgängliga paket.sudo apt upgrade– Uppdatera alla installerade paket till den senaste versionen.sudo apt install nombre_paquete– Installera ett eller flera paket.sudo apt remove nombre_paquete– Avinstallera paketet men behåll dess konfiguration.sudo apt purge nombre_paquete– Det raderar allt, inklusive inställningarna.sudo apt autoremove– Ta bort beroenden som inte längre används.
Du har också apt-cache eller direkt apt show till Visa paketinformation, dess beroenden och versioner:
apt show nginxapt search php
yum/dnf och pacman: andra familjer
På Red Hat-baserade system som CentOS eller RHEL kommer du att ha yum eller dess efterträdare dnf:
sudo yum install httpd– Installera Apache.sudo dnf update– Uppdatera allt till nyare versioner.
I Arch Linux och derivator är managern pacman:
sudo pacman -S gimp– Installera GIMP.sudo pacman -Syu– Synkronisera och uppdatera systemet.
Även om syntaxen ändras, Filosofin är densammauppdatera index, installera paket, ta bort dem och rensa upp överblivna beroenden.
Komprimera, dekomprimera och överföra filer
Hantering av stora filer eller filuppsättningar förenklas avsevärt med komprimerade filer och med verktyg för fjärrnedladdning och kopiering.
tjära, zip/unzip: paketering och komprimering
Kommandot tar Det är standarden i Linux för att skapa och extrahera tar-arkiv (filerna .tar, .tar.gz, .tar.bz2, etc.):
tar -czvf backup.tar.gz carpeta/– Skapa en .tar.gz-fil komprimerad med gzip.tar -xzvf backup.tar.gz– Extrahera innehållet.tar -tzvf backup.tar.gz– Lista vad som finns inuti utan att ta bort det.
De vanligaste flaggorna är c (skapa), x (extrahera), t (lista), v (utförlig), f (fil), z (gzip), j (bzip2), J (xz).
Att arbeta med ZIP-filer (väldigt vanligt i Windows-miljöer) du har zip y unzip:
zip archivo.zip fichero1 fichero2unzip archivo.zip
wget, curl och scp: ladda ner och kopiera mellan maskiner
Förutom att surfa med curl kan du använda wget För att ladda ner filer från HTTP eller FTP:
wget https://wordpress.org/latest.zip– Ladda ner den senaste versionen av WordPress.wget -c URL– Återuppta en avbruten nedladdning.
till kopiera filer säkert mellan din dator och en server via SSH har du scp:
scp archivo.txt usuario@servidor:/ruta/destino/– Ladda upp en fil.scp -r carpeta usuario@servidor:/ruta/– Kopierar en mapp rekursivt.scp usuario@servidor:/ruta/archivo.txt ./– Ladda ner från servern.
Bakom allt detta finns SSH, vilket också är vad du använder för att anslut till fjärrterminalen (kommando ssh usuario@servidor).
Automation, historik och små produktivitetsknep
När du väl bemästrat grunderna är nästa steg att börja... kombinera kommandon och automatisera repetitiva uppgifterDet är här Linux verkligen börjar glänsa.
historik, alias och vilket: genvägar och snabbreferenser
med history Du kan se de senaste kommandona du körde och återanvända dem utan att skriva om dem:
history– Lista med radnummer.!255– Kör kommando nummer 255 igen.
till skapa tillfälliga genvägar är alias:
alias ll="ls -lah"– Härifrånllär lika medls -lah.unalias ll– Ta bort aliaset.
Och om du vill veta var ett program är installerat Och vilken körbar applikation anropas använder du? which:
which php– Visa sökvägen till PHP, till exempel/usr/bin/php.which -a python– Alla matcher i PATH.
Omdirigeringar och pipes: kombinera kommandon som ett proffs
Kommandoradens verkliga kraft kommer från kraften kedjeverktyg för småDetta görs med rörledningar (|) Och omdirigeringar (>, >>, 2>, Etc.).
comando1 | comando2– Utgången avcomando1går in som en post icomando2.
Exempelvis:ls -la | grep ".php"– Lista endast filer som innehåller “.php”.ls > listado.txt– Spara utdata till en fil (skriv över).echo "línea" >> archivo.txt– Lägg till i slutet av en fil.comando > todo.log 2>&1– Omdirigerar normal utdata och fel till samma fil.comando &> /dev/null– Skicka allt till det "svarta hålet".
Med detta kan du göra fantastiska saker, som till exempel räkna 404-fel i en logg med ett kommando som grep " 404 " access.log | wc -len rensa upp gamla filer med find y -delete.
Om du har kommit så här långt har du redan en ganska komplett karta över de grundläggande (och inte så grundläggande) Linux-kommandona. som används dagligen inom systemadministration, utveckling och hosting: från att bläddra bland kataloger, hantera filer, behörigheter och processer, till att övervaka nätverket, installera paket och automatisera uppgifter genom att kombinera kommandon med pipes och omdirigeringar; från och med nu kommer varje gång du öppnar en terminal inte längre att vara en skrämmande svart skärm och kommer att bli ett verktyg för att arbeta snabbare och med mer kontroll än med något grafiskt gränssnitt.
Innehållsförteckning
- Vad är Linux-kommandon och varför är de så viktiga?
- Viktiga kommandon för katalognavigering
- Grundläggande fil- och katalogkommandon
- Kommandon för att söka efter filer och text
- Hantering av behörigheter, ägare och grundläggande säkerhet
- Processhantering och systemprestanda
- Viktiga nätverkskommandon
- Pakethantering: installera, uppdatera och rensa programvara
- Komprimera, dekomprimera och överföra filer
- Automation, historik och små produktivitetsknep