elfsightSari la conținut
Comenzi esențiale Linux pentru administratori de servere

Comenzi esențiale Linux pentru administratori de servere web

Administrarea unui server web presupune cunoașterea unui set de comenzi Linux esențiale care vă permit să gestionați fișierele, să monitorizați procesele, să diagnosticați problemele și să mențineți serverul funcțional și securizat.

Fie că folosiți un VPS, un server dedicat sau accesați terminalul din cPanel, aceste comenzi reprezintă instrumentele de bază ale oricărui administrator care dorește să gestioneze eficient infrastructura de hosting.

Deși interfețele grafice precum cPanel simplifică multe operațiuni, anumite sarcini de administrare sunt mai rapide și mai precise din linia de comandă.

Diagnosticarea unei probleme de performanță, identificarea unui fișier malițios sau restaurarea unui backup sunt operațiuni pe care un administrator experimentat le execută în câteva secunde din terminal, față de minutele necesare într-o interfață grafică.

Linia de comandă oferă, de asemenea, posibilitatea de a automatiza sarcinile repetitive prin scripturi și cron jobs.

În acest ghid veți găsi o referință cu cele mai importante comenzi Linux organizate pe categorii – de la gestionarea fișierelor și proceselor până la administrarea rețelei și a serviciilor.

Fiecare comandă include exemple practice relevante pentru administrarea unui server web, astfel încât să puteți aplica imediat cunoștințele dobândite.

Comenzi esențiale Linux pentru administratori de servere web

Comenzile prezentate în acest ghid sunt compatibile cu toate distribuțiile Linux majore folosite pentru servere web: Ubuntu, AlmaLinux, CentOS, Debian și Rocky Linux. Diferențele între distribuții sunt minore și sunt semnalate acolo unde este cazul. Pentru a executa comenzile administrative, veți avea nevoie de privilegii root sau de un cont cu acces sudo.

Comenzi pentru navigare și gestionarea fișierelor

Gestionarea fișierelor este activitatea cea mai frecventă în administrarea unui server. Aceste comenzi înlocuiesc operațiunile din File Manager-ul cPanel cu mai multă flexibilitate și viteză:

  • pwd – afișează directorul curent (print working directory)
  • ls -lah – listează fișierele cu detalii complete: permisiuni, proprietar, dimensiune, dată modificare, inclusiv fișierele ascunse
  • cd /var/www/html – navigați la directorul specificat
  • mkdir -p /var/www/html/proiect/css – creează directorul și toate directoarele părinte necesare
  • cp -r sursa/ destinatie/ – copiază un director cu tot conținutul
  • mv fisier.php /var/www/html/ – mută sau redenumește un fișier
  • rm -rf director/ – șterge un director cu tot conținutul (atenție – ireversibil)
  • find /var/www -name „*.php” -mtime -1 – caută fișiere PHP modificate în ultimele 24 de ore
  • find /var/www -size +100M – caută fișiere mai mari de 100 MB
  • du -sh /var/www/html/* – afișează dimensiunea fiecărui element din director
  • df -h – afișează spațiul pe disc disponibil pe fiecare partiție

Exemple practice de utilizare a comenzilor pentru fișiere:

# Verifică spațiul ocupat de directorul WordPress
du -sh /var/www/html/wordpress/

# Găsește fișierele PHP modificate recent (posibil compromise)
find /var/www -name "*.php" -newer /var/www/html/index.php

# Listează fișierele ordonate după dimensiune
ls -lhS /var/www/html/ | head -20

Comenzi pentru permisiuni și proprietate

Permisiunile corecte sunt esențiale pentru securitatea și funcționarea website-ului. Permisiuni prea permisive expun serverul la riscuri de securitate, iar permisiuni prea restrictive pot împiedica funcționarea aplicației:

  • chmod 644 fisier.php – setează permisiuni de citire pentru toți și scriere doar pentru proprietar (standard pentru fișiere)
  • chmod 755 director/ – setează permisiuni de citire și execuție pentru toți, scriere doar pentru proprietar (standard pentru directoare)
  • chmod -R 755 /var/www/html/ – aplică recursiv pe întreg directorul
  • chown www-data:www-data fisier.php – schimbă proprietarul la utilizatorul serverului web
  • chown -R www-data:www-data /var/www/html/ – schimbă proprietarul recursiv
  • stat fisier.php – afișează informații detaliate despre fișier, inclusiv permisiunile în format numeric și simbolic

Permisiunile recomandate pentru WordPress:

# Setează permisiunile corecte pentru WordPress
find /var/www/html/wordpress -type f -exec chmod 644 {} ;
find /var/www/html/wordpress -type d -exec chmod 755 {} ;
chmod 600 /var/www/html/wordpress/wp-config.php
chown -R www-data:www-data /var/www/html/wordpress/

Comenzi pentru monitorizarea proceselor și resurselor

Monitorizarea resurselor vă ajută să identificați problemele de performanță și să preveniți supraîncărcarea serverului. Aceste comenzi completează funcțiile de monitorizare din cPanel:

  • top – afișează procesele active în timp real, sortate după utilizarea CPU; apăsați M pentru a sorta după memorie
  • htop – versiune îmbunătățită a top cu interfață colorată și navigare intuitivă; permite uciderea proceselor cu tasta F9
  • free -h – afișează memoria RAM totală, utilizată și disponibilă
  • uptime – arată de cât timp funcționează serverul și load average (media ultimelor 1, 5 și 15 minute)
  • ps aux | grep apache – afișează toate procesele Apache active
  • kill -9 PID – oprește forțat un proces după ID-ul său
  • lsof -i :80 – afișează ce proces folosește portul 80
  • netstat -tlnp – afișează toate porturile deschise și serviciile care le folosesc
  • vmstat 1 10 – afișează statistici despre memorie, swap, IO și CPU la fiecare secundă, de 10 ori
  • iostat -x 1 – afișează statistici detaliate despre activitatea discului

Interpretarea valorilor load average din comanda uptime sau top: o valoare mai mică sau egală cu numărul de nuclee CPU indică un server care funcționează normal. Valori mai mari indică o supraîncărcare care necesită investigare.

# Verifică procesele care consumă cel mai mult CPU
ps aux --sort=-%cpu | head -10

# Verifică procesele care consumă cea mai multă memorie
ps aux --sort=-%mem | head -10

# Monitorizează în timp real un singur proces
watch -n 1 "ps aux | grep apache2 | grep -v grep"

Comenzi pentru gestionarea serviciilor

Pe serverele moderne cu systemd, serviciile se gestionează cu systemctl. Cunoașterea acestor comenzi este esențială pentru repornirea serviciilor după modificări de configurare sau pentru depanarea problemelor:

  • systemctl status apache2 – verifică starea serviciului Apache, inclusiv ultimele linii din jurnal
  • systemctl restart apache2 – repornește Apache (folosiți după modificarea configurărilor)
  • systemctl reload nginx – reîncarcă configurația Nginx fără downtime
  • systemctl enable mariadb – configurează serviciul să pornească automat la boot
  • systemctl stop serviciu – oprește un serviciu
  • systemctl list-units –type=service –state=running – afișează toate serviciile active
  • systemctl is-active serviciu – returnează „active” sau „inactive” (util în scripturi)
  • systemctl daemon-reload – reîncarcă configurația systemd după adăugarea unor fișiere de serviciu noi
# Verifică toate serviciile eșuate
systemctl list-units --type=service --state=failed

# Repornește un serviciu și verifică starea
systemctl restart php8.1-fpm && systemctl status php8.1-fpm

Comenzi pentru rețea și diagnosticare

Diagnosticarea problemelor de rețea este o abilitate critică pentru administratorii de servere. Aceste comenzi vă ajută să verificați conectivitatea, să analizați traficul și să identificați configurările greșite:

  • ping -c 4 google.com – verifică conectivitatea la internet
  • curl -I https://domeniul-dvs.ro – afișează headerele HTTP ale website-ului (util pentru verificarea redirecționărilor)
  • dig domeniul-dvs.ro – verifică înregistrările DNS ale domeniului
  • traceroute domeniul-dvs.ro – arată traseul pachetelor către destinație
  • wget https://domeniul-dvs.ro -O /dev/null – testează descărcarea unei pagini (util pentru verificarea vitezei)
  • ss -tlnp – afișează conexiunile de rețea active (înlocuiește netstat pe distribuțiile noi)
  • nmap -sV localhost – scanează porturile deschise pe server (util pentru audit de securitate)
  • curl -w „%{time_total}” -o /dev/null -s https://domeniul-dvs.ro – măsoară timpul de răspuns al website-ului
# Testează headerele de securitate ale website-ului
curl -sI https://domeniul-dvs.ro | grep -i "strict-transport|x-frame|x-content"

# Verifică certificatul SSL
echo | openssl s_client -connect domeniul-dvs.ro:443 2>/dev/null | openssl x509 -noout -dates

Comenzi pentru jurnale și diagnosticare

Verificarea jurnalelor este esențială pentru diagnosticarea problemelor. Un administrator experimentat știe să citească și să filtreze jurnalele rapid pentru a identifica sursa unei probleme:

  • tail -f /var/log/apache2/error.log – urmărește în timp real erorile Apache
  • tail -100 /var/log/nginx/access.log – ultimele 100 de linii din logul de acces Nginx
  • journalctl -u mysql –since „1 hour ago” – logurile MySQL din ultima oră
  • grep „error” /var/log/syslog – caută erori în logul de sistem
  • cat /var/log/auth.log | grep „Failed” – afișează încercările de autentificare eșuate (util pentru detectarea atacurilor brute force)
  • journalctl -p err –since today – toate erorile din ziua curentă
# Analizează erorile 500 din jurnalul Apache
grep " 500 " /var/log/apache2/access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -10

# Monitorizează jurnalele mai multor servicii simultan
journalctl -fu nginx -u apache2 -u php8.1-fpm

Comenzi pentru backup și sincronizare

Backup-urile regulate sunt fundamentul unei infrastructuri web sigure. Aceste comenzi vă permit să creați, să gestionați și să restaurați copii de siguranță ale datelor:

  • tar -czf backup.tar.gz /var/www/html/ – creează o arhivă comprimată a website-ului
  • tar -xzf backup.tar.gz – extrage o arhivă
  • rsync -avz /var/www/html/ user@server:/backup/ – sincronizează fișierele cu un server remote
  • mysqldump -u root -p baza_de_date > backup.sql – creează un backup al bazei de date
  • mysql -u root -p baza_de_date < backup.sql – restaurează un backup al bazei de date
  • rsync -avz –delete /var/www/html/ /mnt/backup/ – sincronizare cu ștergerea fișierelor care nu mai există în sursă

Automatizați backup-urile folosind cron și rsync pentru a vă asigura că aveți întotdeauna o copie recentă a datelor:

# Script simplu de backup zilnic
#!/bin/bash
DATE=$(date +%Y%m%d)
BACKUP_DIR="/mnt/backup"
tar -czf "$BACKUP_DIR/website-$DATE.tar.gz" /var/www/html/
mysqldump -u root -p"parola" baza_de_date | gzip > "$BACKUP_DIR/db-$DATE.sql.gz"
# Șterge backup-urile mai vechi de 30 de zile
find "$BACKUP_DIR" -mtime +30 -delete

Comenzi pentru securitate

Monitorizarea securității serverului este o responsabilitate continuă. Aceste comenzi vă ajută să detectați activitățile suspecte și să mențineți serverul securizat:

  • grep -r „eval(base64_decode” /var/www/html/ – caută cod malițios obfuscat în fișierele website-ului
  • last -20 – afișează ultimele 20 de autentificări pe server
  • who – afișează utilizatorii conectați în acest moment
  • passwd utilizator – schimbă parola unui utilizator
  • ufw status verbose – verifică starea și regulile firewall-ului UFW
  • fail2ban-client status – verifică starea fail2ban și jail-urile active
  • rkhunter –check – verifică prezența rootkit-urilor și a modificărilor suspecte
# Verifică dacă există procese care ascultă pe porturi neașteptate
ss -tlnp | grep -v "apache|nginx|ssh|mysql"

# Caută fișiere cu bit SUID setat (potențial periculos)
find / -perm -4000 -type f 2>/dev/null

# Verifică integritatea fișierelor de sistem
rpm -Va 2>/dev/null | grep "^..5"   # AlmaLinux/CentOS
debsums -c 2>/dev/null              # Ubuntu/Debian

Alias-uri utile pentru productivitate

Puteți crea alias-uri pentru comenzile frecvente adăugând linii în fișierul ~/.bashrc sau ~/.bash_aliases. Alias-urile economisesc timp și reduc erorile de tastare:

# Alias-uri utile pentru administratori
alias ll='ls -lah'
alias ports='ss -tlnp'
alias logs-apache='tail -f /var/log/apache2/error.log'
alias logs-nginx='tail -f /var/log/nginx/error.log'
alias restart-apache='sudo systemctl restart apache2'
alias reload-nginx='sudo systemctl reload nginx'
alias diskusage='df -h && echo "---" && du -sh /var/www/* 2>/dev/null'

Aplicați modificările fără a reporni sesiunea:

source ~/.bashrc

Comenzi WP-CLI pentru administrarea WordPress din terminal

WP-CLI este instrumentul de linie de comandă oficial pentru WordPress. Dacă administrați unul sau mai multe site-uri WordPress pe server, WP-CLI economisește considerabil din timpul de administrare față de interfața grafică:

  • wp core update – actualizează WordPress la ultima versiune
  • wp plugin update –all – actualizează toate pluginurile
  • wp cache flush – golește cache-ul obiectelor (Redis/Memcached)
  • wp db optimize – optimizează tabelele bazei de date
  • wp search-replace „http://domeniu-vechi.ro” „https://domeniu-nou.ro” – înlocuiește URL-urile în baza de date (util la migrări)
  • wp user list – listează utilizatorii WordPress
  • wp cron event list – listează evenimentele cron WordPress programate
  • wp media regenerate – regenerează thumbnail-urile media
# Verifică starea generală a unui site WordPress
wp core version
wp plugin list --status=inactive
wp theme list

# Backup rapid al bazei de date WordPress
wp db export backup-$(date +%Y%m%d).sql

Instalați WP-CLI pe server cu:

curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wp

Cunoașterea acestor comenzi Linux vă transformă dintr-un utilizator al interfețelor grafice într-un administrator capabil să diagnosticheze și să rezolve probleme rapid, să optimizeze performanța serverului și să mențină un mediu de hosting securizat. Exersați comenzile pe un server de test, construiți-vă propriile scripturi pentru sarcinile repetitive și consultați manualele comenzilor (man comanda) pentru opțiuni avansate.

Servicii SEO speciale – Oferim servicii speciale de optimizare SEO și promovare pentru motoarele de căutare. Contactați-ne acum!

Dorel Tănase

Dorel Tănase – specialist SEO și Web Design-er cu peste 18 ani de experiență. Dorel Tănase este unul dintre specialiștii în optimizare SEO din România, cu o activitate neîntreruptă în mediul online de peste 18 ani.

Parcursul său profesional a început în anul 1997, odată cu lansarea website-ului cisnet.ro – unul dintre primele proiecte web românești axate pe servicii IT și prezență online.

Articolul precedent
Următorul articol

Comments (0)

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Înapoi sus
Caută
ROEN