Dvije konfiguracije rješavaju isti problem i padaju u suprotnim smjerovima. Montiranje dijeljenog resursa pri podizanju daje svakoj usluzi datotečni sistem koji ili postoji ili objašnjava zašto se podizanje zaustavilo. Automatsko montiranje na zahtjev daje mašini brzo podizanje i predaje čekanje onome ko prvi dotakne putanju. Iza VPN-a drugo je obično bolja razmjena, a razlog je što tunel nameće redoslijed koji slijed podizanja ne može vidjeti.

Montiranje pri podizanju nasuprot automatskom montiranju

Montiranje pri podizanju lako je razumjeti. Cilj datotečnog sistema čeka montiranje, usluge koje izjave zavisnost od njega startaju poslije, a ako je server nedostupan, mašina ili čeka ili pada zavisno od opcija. Sve nizvodno nasljeđuje tu jednu odluku.

Automatsko montiranje to preokreće. Putanja postoji odmah, stvarno montiranje se dogodi kada je nešto otvori, a usluge koje startaju rano ne blokiraju se na tunelu koji još nije podignut.

Poređenje se svodi na to ko treba da upije kašnjenje. Radna stanica kojoj treba dijeljeni resurs prije nego korisnik može raditi vjerovatno treba čekati. Laptop koji se podiže u torbi, ili server čiji je dijeljeni resurs opcionalan, ne treba.

Nijedna opcija ne popravlja nedostajuću rutu. Obje samo odlučuju kada će se kvar primijetiti.

fstab linija, opcija po opcija

Pretpostavite da je postojeća klijentska instanca OpenVPN [email protected], server files.corp.example, a tačka montiranja /mnt/work. Zamijenite sve tri dozvoljenim vrijednostima s vaše lokacije. Jedna upotrebljiva linija izgleda ovako:

files.corp.example:/export/work /mnt/work nfs _netdev,nofail,x-systemd.automount,[email protected],x-systemd.mount-timeout=30s 0 0

_netdev označava montiranje kao ono kojem treba mreža i ne imenuje nijedan tunel. nofail zadržava dijeljeni resurs opcionalnim za uobičajeni cilj datotečnog sistema. x-systemd.automount stvara okidač na zahtjev umjesto trenutnog montiranja.

x-systemd.requires= je dio koji veže pokušaj montiranja za VPN jedinicu i pripada montažnoj operaciji, a ne okidaču. Staviti širok redoslijed na samu jedinicu automatskog montiranja jeste način na koji ljudi stvaraju cikluse na koje se systemd poslije žali jezikom koji niko ne čita dvaput.

x-systemd.mount-timeout=30s ograničava početnu komandu montiranja. Ne ograničava ništa što se dogodi kasnije, i to je najčešći nesporazum o ovoj opciji.

Šta „pokrenuto“ ne znači

Provjerite šta aktivno stanje znači za VPN jedinicu koju ste naveli. Usluga tunela može se prijaviti kao pokrenuta prije nego što ruta do datotečnog servera postoji ili prije nego što se privatno ime razriješi, a redoslijed poslije nje tada vam ništa ne kupuje. U toj praznini živi gotovo svaki neuspjeli pokušaj. Ona je i nevidljiva osim ako gledate rutu i razrješivač, a ne stanje jedinice.

Koristite vlastiti signal spremnosti vlasnika veze kao dodatni preduslov gdje postoji. Fiksno spavanje je nagađanje koje radi na vašem stolu i pada na sporijoj mreži ili poslije ponovnog spajanja.

Pregledajte generisane jedinice za putanju iz primjera: mnt-work.automount i mnt-work.mount. Poslije pregledane izmjene fstab-a ponovo učitajte systemd i upravljajte tim jedinicama direktno umjesto pokretanja sveobuhvatne komande montiranja koja vježba nepovezane unose.

Ovdje spada još jedna napomena. Usluga koja dotakne /mnt/work pri pokretanju i dalje pokreće montiranje i i dalje ga čeka, pa označavanje dijeljenog resursa opcionalnim ne čini svaku aplikaciju strpljivom.

Poslije montiranja kvar je drugi

Kad je NFS montiran, ponašanje datotečnog sistema pri ponovnom pokušaju i oporavku određuje šta kasniji prekid čini s čitanjem ili pisanjem. Vremensko ograničenje montiranja koje ste postavili nema utjecaja na to.

Meko montiranje skraćuje neka čekanja i mijenja semantiku grešaka, s posljedicama po integritet podataka koje je lako previdjeti kada je cilj brže podizanje. Biranje toga da osvojite dvije sekunde starta rijetko je dobra razmjena. Ako je zahtjev zaista ograničena operacija tokom prekida, to je odluka na nivou aplikacije, a ne fstab zastavica.

Odlučite šta treba da se dogodi s procesom koji je nasred pisanja kada tunel padne i zapišite to. Taj odgovor je korisniji od bilo kojeg niza opcija.

Testirajte četiri stanja, ne jedno

Normalno podizanje s dostupnim tunelom lak je slučaj i ne dokazuje gotovo ništa. Potvrđuje da je niz ispravno napisan i ništa više. Testirajte prvi pristup bez VPN-a, zatim oporavak kada se podigne, zatim kontrolisani prekid poslije uspješnog montiranja.

Četiri stanja, četiri zapažanja, a bilješke idu uz fstab unos. Sljedeća osoba nasljeđuje ponašanje umjesto konfiguracije koju mora obrnuto projektovati.

Povezani članci