Linux-komennot ja komentotulkkitaidot
wget: lataaja, joka ei koskaan nuku
wget on curl tunneissa mitattuille töille: peilit, arkistot, rekursiiviset vedot ja cron-erät, jotka suoritetaan, kun kukaan ei katso. Se toistaa, kunnioittaa robots.txt-tiedostoa, jatkaa keskeytettyjä siirtoja oletusarvoisesti ja tahdittaa itseään nopeusrajoilla ja odotusväleillä, mikä on kohteliaisuus, jonka soittaja jättää. Kahden työkalun välinen jako on puhdas: wget bulkkiin ja kärsivällisyyteen, curl tarkkuuteen ja molempien tietävä tiimi tarvitsee harvoin kolmatta asentajaa.
Keskeiset kohdat
- Peilaus on yksi rivi: wget --mirror --convert-links --adjust-extension --no-parent https://docs.example.com; Jätä pois --no-parent ja dokumentaatioarkisto muuttuu hiljaa kaiken sen yläpuolella olevan hakemiston.
- Jatka ja yritä uudelleen ilmaiseksi: wget -c poimii keskeytetyn siirron takaisin ja --tries=10 --waitretry=5 ajaa ulos palvelimista, jotka hikoilevat keskeneräisesti sen sijaan, että työ epäonnistuisi ensimmäisellä nykimisellä.
- Kohteliaisuudella on liput: --limit-rate=200k, --wait=1 ja --random-wait estävät peilin laukaisun ylävirran nopeusrajoituksista tai jaetun palvelimen väärinkäyttölausekkeesta; jaettu isännöinti plus hillitty indeksointirobotti on lyhyt ystävyys.
- robots.txt-tiedostoa kunnioitetaan oletusarvoisesti; -e robots=off ohittaa sen tarkoituksella, ja tämän ohituksen käyttäminen jonkun muun tuotantopaikkaan johtaa siihen, että joukkolataukset muuttuvat tapahtumalipuiksi.
- wget -O /dev/null -nv https://host/health on yksirivinen valvontaanturi, jonka poistumiskoodit sisältävät diagnoosin: 4 on verkkovika, 8 on palvelinvirhe ja molemmat lyövät hiljaisen cronin.
- Muunnolla on jälkikäteen merkitystä: --convert-links kirjoittaa peilatun sivuston uudelleen offline-navigointia varten, ja --adjust-extension tallentaa sisällönhallintajärjestelmän luomat sivut laajennuksiin, joita paikalliset työkalut voivat palvella.
- Cronin joukkotyöt saavat lukitustiedostoja tai päällekkäiset ajot kirjoittavat toistensa puolivalmiisiin tiedostoihin samalla kun --waitretry venyttää työn hiljaa ikkunansa ohi; wgetillä ei ole sisäistä mutexia.
- Tunne raja: lomakkeet, evästeitä sisältävät istunnot ja API-päätepisteet kuuluvat curlille, ja JavaScriptillä rakennetut sivut peilaavat tyhjinä kuorina, koska wget seuraa linkkejä, ei komentosarjoja.
Kenttämuistiinpano
Yksi peili ilman vanhempia vaelsi 40 gigatavuun asiakkaan mediakirjastossa yhdessä yössä ja melkein täytti levyn. Kohteliaisuusliput asetetaan kerran ja kopioidaan ikuisesti sen jälkeen.
Usein kysytyt kysymykset
Miksi peilissäni on vain yksi sivu?
Laajuusmerkinnät tekivät työn, jonka joku oli tarkoitus kumota: robots.txt-rajoitukset, --no-parent, syvyysrajoitus tai sivuston JavaScript-renderöinti. wget seuraa linkkejä, jotka se näkee; tarkista -o wget.log ennen kuin syyttät työkalua.
Milloin minun pitäisi valita wget over curl yhtä latausta varten?
Kaikille jatkettavalle tai cron-luotettavalle: -c-jatko, sisäänrakennetut uudelleenyritykset ja aikaleima (--aikaleima) tekevät wgetistä matalan tarkkaavaisuuden vaihtoehdon; curl antaa sinulle saman vain, jos kokoat sen itse.
Onko julkisen sivuston peilaus laillista vai kohteliasta?
Omistajuus ratkaisee laillisen, robots.txt ja lataus kohteliasta: kunnioita robottitiedostoa, kaasuta inhimilliseen tahtiin ja valitse virallinen vienti tai API heti, kun kohde tarjoaa sellaisen.
Miksi jotkut sivustot palauttavat 403:n tavalliseksi wgetiksi?
User-agent -suodatus, yleensä tarkoituksellinen; --user-agent='Mozilla/5.0' vie sinut läpi, mutta suodatettu 403 tarkoittaa myös, että operaattori katsoo, joten dialogi tai API on parempi seuraava askel.
Näin Kinetikatech auttaa: linux-komennot ja komentotulkkitaidot
Olemme hoitaneet tätä satoja kertoja: Komennot ja komentosarjatavat, jotka ratkaisevat, käyttääkö järjestelmänvalvoja palvelinta vai taisteleeko sitä vastaan: etsi, muunna, siirrä ja valvo tekstiä ja prosesseja työkaluilla, jotka ovat jokaisessa perusasennuksessa. Palvelulla Linux-palvelinten tietoturva ja Palvelinten ylläpito saat täyden kierron: arvioimme, otamme käyttöön, seuraamme keskeytyksettä ja reagoimme 30 minuutissa tarvittaessa.