If-Koubou

Kuinka jättää tiedostot pois Rsyncistä

Kuinka jättää tiedostot pois Rsyncistä (Miten)

Rsync on yksi palvelimen järjestelmänvalvojan hyödyllisimmistä apuohjelmista, mutta se synkronoikaikki oletuksena, mikä voi olla ärsyttävää, jos sovelluksesi luo paljon väliaikaisia ​​tiedostoja. Näin poistat tiedostoja rsyncin käytön aikana.

Ilman luettelon tiedostosta

Tämä on ihanteellinen tapa tiedostojen ja kansioiden poistamiseen, koska voit aina muokata luetteloa ja muokata asioita tarvittaessa. Tässä on syntaksi:

rsync --exclude-from = / path / to / syrjäytymiseen-tiedosto / path / to / source / path / to / dest

Rsyncin hankala asia on, että sinun on käytettävä suhteellista polkua, kun yrität jättää asioita pois, koska kun se yrittää sovittaa poikkeukset, se ei käytä ottelun polun ensimmäistä osaa ... se on outoa.

Sano esimerkiksi, että yrität varmuuskopioida / data / web / ja lähettää sen toiselle palvelimelle, joten käytä komentoa kuten rsync -a / data / web / user @ server: / varmuuskopiot / data / web / tapahtuu ... mutta haluat ohittaa synkronoinnin / data / web / välimuistin / kansion. Kun rsync menee tarkastaaksesi poissulkemisluettelosi jokaiselle synkronoitavalle kohteelle, se ei tarkista / data / web / cache / koska alkuperäinen rsync-komento perustuu / data / web / kansioon. Se vain tarkistaa "välimuistin" luettelosta. Joten sinun täytyy laittaa "välimuisti" luetteloon, ei koko polkuun. Esimerkki:

rsync -a --exclude-from = / data / exclusions / data / web / / varmuuskopiot /

Nyt, kun poistat / data / web / välimuistin ja / data / web / temp rsyncistä tällä komennolla, poistamme polun / data / web / -osan ja / data / exclusions -tiedosto sisältää yksinkertaisesti:

välimuisti * lämpötila *

Huomaat, että lisäsin * polkuun varmistaakseni, että se vastaa mitä tahansa, joka alkaa alussa "välimuistilla". Voit käyttää tätä tähtikuviota hyödyllisimmistä syistä, jos haluat - sanoa, että haluat jättää kaikki .txt-tiedostot synkronoitaviksi. Aloita kuvion tähdellä varmistaaksesi, että se vastaa aina ja lisää tämä:

* .txt

Tämä varmistaisi, että kyseiset tiedostotyypit ohitetaan synkronoinnin aikana. Se on melko yksinkertainen.

Ilman yksittäistä kohtaa

Tämä tekniikka on paljon hyödyllisempi, mutta voit käyttää sitä lennossa, jos tarvitset. Jos olet määrittänyt käsikirjoituksen käyttämään rsync-ohjelmaa, jota yleensä käytät, kannattaa ottaa ylimääräinen minuutti pois tiedostoluettelosta sen sijaan, että se olisi helpompaa tulevaisuudessa. Syntaksi on hyvin samanlainen:

rsync --exclude = suhteellinen / polku / to / exclusion / source / dest

Samaa suhteellista polkua tulisi soveltaa tässä yllä.