Linux-kommandoer og skallferdigheter
curl: Kommandolinje-webklienten som kjører nettet
curl er pocket HTTP-klienten til hver operasjonsverktøykasse: diagnostisk, pipeline-vennlig og ærlig om hva som kom tilbake. Flaggoverflaten ser enorm ut og er stort sett ikke i spill: Omtrent et dusin flagg dekker daglig operativ bruk, og å kjenne dem er forskjellen mellom skriptede helsesjekker og heldige. Regelen som sparer mest personsøk er triviell: sett --max-time hver gang, fordi curls tålmodighet er uendelig og din ikke.
Nøkkelpunkter
- Se før du laster ned: curl -sSI https://host returnerer metode, overskrifter og status uten kropp; legg til -v når TLS-håndtrykk, proxyer eller vertsoverskrifter oppfører seg merkelig.
- Timeout-disiplin er ikke omsettelig: --connect-timeout 5 dreper døde forbindelser, --max-time 15 dreper trege; en helsesjekk uten begge kan vare ut strømbruddet den skulle oppdage.
- Avslutningskoder er kontrakten i skript: 7 er tilkoblingen nektet, 28 er tidsavbrudd, 22 er en HTTP-feil dukket opp av --fail; les koden, ikke bare utgangen, ellers lærer overvåkingen din ingenting.
- Par synlighet med håndheving: -w '%{http_code} %{time_total}\n' rapporterer hva som skjedde, mens --fail-with-body viser feilteksten; uten en av disse, ser fiasko nøyaktig ut som suksess.
- Test hva brukere faktisk treffer: --resolve example.com:443:10.1.2.3 sjekker en navngitt backend uten DNS-spill, og -H 'Host: vhost.example.com' dekker vhost-siden av samme forespørsel.
- Overføringer får bevisste flagg: -o navngir utdataene, -L følger omdirigeringer du har gjennomgått, --forsøk på nytt 3 --retry-delay 2 myker opp flaky oppstrøms, og -F håndterer flerdelte opplastinger som vi aldri brydde deg om.
- Overskrifter og sockets bærer verden utenfor nettleseren: -H 'Authorization: Bearer ...' for APIer og --unix-socket /run/app/app.sock for å undersøke lokale tjenester som aldri berører TCP i det hele tatt.
- Kjenn de to klassiske fellene: proxy-miljøvariabler som kaprer en forespørsel som -v eksponerer på sekunder, og omdirigeringer som stille gjør en POST til en GET med mindre du mente det.
Feltnotat
Helsesjekken som hang i femten minutter var krøll uten --max-tid inne i en cron-løkke, og den varte utbruddet den skulle oppdage. Tidsavbrudd går nå i prinsippet før URL-en.
Vanlige spørsmål
Hvorfor gikk curl ut 0 når nettstedet returnerte en 500?
curls suksess betyr at transporten fungerte; HTTP-nivå feil er usynlige uten --fail (avslutt 22) eller en lesing av %{http_code} fra -w. Overvåkingsskript insisterer på en av de to.
curl eller wget for skript?
curl for APIer, overskrifter, POST-kropper og presis kontroll; wget for speiling og rekursjon. For en one-shot GET fungerer begge deler, og en rørledning som blander begge er vanligvis et tegn på at ingen bestemte hvem som eide jobben.
Er det noen gang berettiget å hoppe over TLS-verifisering?
For én interaktiv diagnostikk mot et selvsignert laboratoriebevis, noen ganger; i alt scripted eller cron-drevet, nei. -k deaktiverer den eneste sjekken som stopper en mann i midten fra å eie overføringen din.
Hvordan finner jeg ut hvor en langsom forespørsel faktisk stopper?
Tidsvariabler: -w 'dns:%{time_namelookup} connect:%{time_connect} tls:%{time_appconnect} ttfb:%{time_starttransfer} total:%{time_total}\n' kjøres noen ganger, skiller DNS-flakiness fra håndtrykkssmerter fra backend-stopp.
Slik hjelper Kinetikatech med linux-kommandoer og skallferdigheter
Forslaget er enkelt: Kommandoene og skriptvanene som avgjør om en administrator driver en server eller bekjemper den: søk, transformer, overføring og overvåk tekst og prosesser med verktøyene som finnes i hver basisinstallasjon. Betro det til vår tjeneste Sikring av Linux-servere og Serveradministrasjon og du får full dekning: grundig evaluering, ren implementering, kontinuerlig overvåking.