Server ne radi: što prvo provjeriti i kojim redom
· 6 min čitanja
Ovaj vodič govori o samom serveru: VPS-u, dediciranom ili cloud serveru kojim upravljate. Ako ne radi jedna web stranica, a sve ostalo na stroju radi, ili vaša stranica živi na zajedničkom hostingu, umjesto toga počnite s vodičem Web stranica ne radi: što učiniti. Ovdje gledamo stroj: odgovara li uopće, možete li ući i što je stalo.
Korak 1: što točno ne radi?
„Server ne radi“ može značiti tri vrlo različite stvari i svaka ima svoj popravak. Prvo provjerite izvana, s mreže koja nije vaša. Za web stranice na serveru provjera ispada web stranice u nekoliko sekundi kaže razrješava li se naziv, odgovara li port i koji statusni kôd stiže. Za stroj upotrijebite ping i test porta s vlastitog računala:
ping -c 3 203.0.113.10
nc -zv -w 5 203.0.113.10 22
nc -zv -w 5 203.0.113.10 443
Rezultate čitajte zajedno:
- Nema pinga, nema SSH-a, nema web porta: stroj je isključen, zamrznut ili mreža ispred njega ne radi. Idite na korak 2.
- Ping odgovara, SSH ne: stroj radi, ali je SSH blokiran, zaustavljen ili je server preopterećen za odgovor. Idite na korak 3.
- SSH radi, web stranica ne: server je u redu, usluga nije. Idite na korak 4.
Neki serveri namjerno odbacuju ping. Ako ping nikad nije radio, oslonite se na testove portova.
Korak 2: ništa ne odgovara
Prije svega otvorite kontrolnu ploču ili cloud konzolu svog pružatelja. Tri pitanja rješavaju većinu slučajeva u minuti:
- Radi li server? Zaustavljena instanca, suspendiran račun ili neuspjelo plaćanje izvana izgledaju točno kao ispad.
- Postoji li poznat incident? Provjerite statusnu stranicu pružatelja za svoju regiju ili podatkovni centar.
- Što pokazuje konzola? Web ili serijska konzola prikazuje zaslon stroja i bez mreže. Kernel panic, „Out of memory: Killed process“ u petlji ili pokretanje zaglavljeno na provjeri datotečnog sustava svaki govori gdje je problem.
Ako je stroj zamrznut, ponovno pokretanje iz konzole obično ga vraća. Prije ponovnog pokretanja napravite snimku zaslona konzole: nakon restarta dokazi nestaju. Ako se ne pokrene, većina pružatelja nudi rescue sustav iz kojeg možete montirati disk, čitati zapisnike i popraviti /etc/fstab ili pokvarenu mrežnu konfiguraciju.
Korak 3: ping odgovara, SSH ne
Stroj je živ, pa je uzrok na njemu. Pomoću konzole se prijavite, zatim provjerite uobičajene osumnjičene:
sudo ufw status verbose
sudo iptables -S | head -n 30
sudo fail2ban-client status sshd
sudo systemctl status ssh sshd 2>/dev/null | grep -E 'Loaded|Active'
Pravilo vatrozida dodano u žurbi, vaša vlastita IP adresa blokirana nakon nekoliko pogrešnih lozinki ili promjena SSH konfiguracije koja nije prošla test najčešće su brave. Deblokirajte svoju adresu pomoću sudo fail2ban-client set sshd unbanip YOUR_IP i uvijek pokrenite sudo sshd -t prije ponovnog pokretanja SSH-a. Ako SSH radi, ali je samo vrlo spor, server je preopterećen: idite na korak 4.
Korak 4: ušli ste, sada pročitajte četiri broja
uptime
free -m
df -h
df -i
sudo dmesg -T | grep -iE 'oom|killed process|i/o error|read-only' | tail -n 20
- Opterećenje (
uptime): daleko iznad broja CPU jezgri znači da je stroj preopterećen.topilihtoppokazuje koji je proces odgovoran. - Memorija (
free -m): nema slobodne memorije ni swapa, plus „Killed process“ udmesg, znači da je kernel zaustavio proces da bi preživio. Obično je to bila baza podataka ili PHP. - Disk (
df -h): pun disk najčešći je uzrok problema sa serverom. Baze podataka prestaju pisati, zapisnici staju, sesije ne uspijevaju.df -iprovjerava inode: disk može biti „pun“ uz slobodne gigabajte ako milijuni sitnih datoteka potroše sve inode. - I/O pogreške ili datotečni sustav samo za čitanje u
dmesg: problem je u samom disku. Prestanite pisati, napravite sigurnosnu kopiju ako još možete i kontaktirajte svog pružatelja.
Za sigurno oslobađanje prostora počnite sa sustavskim journalom i starim arhivama:
sudo journalctl --vacuum-size=200M
sudo du -xh / --max-depth=2 2>/dev/null | sort -h | tail -n 15
Nikad ne brišite datoteke baze podataka ni web stranice da biste napravili mjesta.
Korak 5: koja je usluga stala i zašto
systemctl --failed
sudo journalctl -u nginx -n 50 --no-pager
sudo nginx -t
systemctl --failed navodi svaku uslugu koja je stala s pogreškom. Journal te usluge imenuje razlog: port koji je već u uporabi, sintaksna pogreška u konfiguracijskoj datoteci, certifikat koji nedostaje, nema više prostora. Testirajte konfiguraciju prije svakog restarta (nginx -t, apachectl configtest, php-fpm -t), zatim pokrenite s sudo systemctl restart SERVICE. Restart bez testa može srušiti uslugu koja je još napola radila.
Korak 6: što se promijenilo?
Ispadi imaju uzroke, a uzrok je obično zadnja promjena. Potražite je:
grep -E ' (install|upgrade) ' /var/log/dpkg.log | tail -n 20
last -n 10
sudo journalctl --since "2 hours ago" -p err --no-pager | tail -n 40
Automatska ažuriranja, novi kernel koji čeka ponovno pokretanje, deploy, cron job koji je disk napunio sigurnosnim kopijama, istekao certifikat ili izmjena konfiguracije koju je napravio netko drugi: ako se jedan od ovih redaka poklapa s vremenom početka ispada, imate trag.
Kad se isti problemi servera vraćaju
Server koji je jednom stao zbog punog diska ili zaustavljene baze podataka učinit će to ponovno. Provjera izvana govori vam kad ne radi; provjera iznutra govori prije toga. Agent za servere izvješćuje o opterećenju, memoriji, diskovima i uslugama iznutra stroja i upozorava vas kad disk prijeđe vaš prag ili usluga koju ste označili stane, dok još ima vremena za djelovanje. Nadzor servera s agentom dio je plaćenih planova.
Kad to ne želite raditi u 3 ujutro
Ako vaš server ne radi, a radije biste da se popravi nego da ga sami otklanjate, Quick Fix rješava uobičajene uzroke po fiksnoj cijeni: ponovno pokreće zaustavljenu uslugu nakon uspješnog testa konfiguracije, oslobađa pun disk i obnavlja istekao certifikat, najprije uz sigurnosnu kopiju. Kad to nije dovoljno, preuzima Deep Fix kroz cijelu noć i dan, uz naplatu u blokovima od 15 minuta, s cijenom prikazanom prije narudžbe. Oboje radi preko Respondera, SSH-a kao root ili SSH pristupa vašem web prostoru. Pojedinosti na stranici popravak servera koji ne radi i hitna podrška za servere.
Što sad
Provjerite izvana
Je li stranica nedostupna svima ili samo vama i što server odgovara? Besplatno, bez registracije.
Provjera ispada web straniceIspad? Mi uskačemo.
Na vlastitom serveru ili u web prostoru s SSH pristupom: Quick Fix po fiksnoj cijeni za uobičajene uzroke, Deep Fix uz naplatu u blokovima od 15 minuta za ostalo, kroz cijelu noć i dan. Cijena prije narudžbe.
Naručite popravakViše vodiča
- Vaša web stranica ne radi. Evo što učiniti u prvih 15 minuta.
- Pogreška 502 Bad Gateway: uzroci i kako je popraviti
- Pogreška 503 Service Unavailable: preopterećenje ili održavanje?
- Pogreška 504 Gateway Timeout: što znači i kako je popraviti
- DNS_PROBE_FINISHED_NXDOMAIN: uzroci i popravci
- ERR_CONNECTION_REFUSED: uzroci i kako ga popraviti
- „Vaša veza nije privatna“: upozorenje o SSL certifikatu