{"id":805,"date":"2017-04-19T13:32:43","date_gmt":"2017-04-19T11:32:43","guid":{"rendered":"http:\/\/miroslaw.borodziuk.eu\/?p=805"},"modified":"2017-06-19T20:11:53","modified_gmt":"2017-06-19T18:11:53","slug":"autofs","status":"publish","type":"post","link":"http:\/\/miro.borodziuk.eu\/index.php\/2017\/04\/19\/autofs\/","title":{"rendered":"AutoFS"},"content":{"rendered":"<p><em>Auto File System (AutoFS) <\/em>to us\u0142uga realizowana po stronie klienta u\u017cywana do montowania zasob\u00f3w sieciowych (NFS i CIFS) na \u017c\u0105danie. Prawid\u0142owo skonfigurowana us\u0142uga AutoFS potrafi automatycznie montowa\u0107 zasoby sieciowe na podstawie detekcji aktywno\u015bci w punktach montowania zasobu. Tak\u0105 aktywno\u015bci\u0105 mo\u017ce by\u0107 pr\u00f3ba wej\u015bcia do punktu montowania (<em>cd<\/em>) lub pr\u00f3ba wy\u015bwietlenia zawarto\u015bci punktu montowania zasobu sieciowego (<em>ls<\/em>). <!--more-->W taki sam spos\u00f3b zas\u00f3b jest odmontowywany gdy nie jest on u\u017cywany przez okre\u015blony przedzia\u0142 czasu. Zasoby montowane przez AutoFS nie powinny by\u0107 montowane r\u0119cznie (<em>mount<\/em>) lub przez plik<em> \/etc\/fstab<\/em>. Demonem us\u0142ugi AutoFS jest <em>automount<\/em>, kt\u00f3ry po uruchomieniu czyta master map\u0119 i w pliku <em>\/etc\/mtab<\/em>\u00a0 tworzy odpowiednie punkty montowania. Zasoby montuje na \u017c\u0105danie i odmontowuje je gdy nie s\u0105 u\u017cywane. S\u0105 cztery typy map AutoFS: <em>master<\/em>, <em>special<\/em>, <em>direct<\/em> i <em>indirect<\/em>.<\/p>\n<p>Zalety korzystania z AutoFS:<\/p>\n<ul>\n<li>Nie korzysta z pliku <em>\/etc\/fstab<\/em>. Wymaga aby systemy plik\u00f3w NFS by\u0142y definiowane w plikach nazywanych mapami (<em>maps<\/em>), zlokalizowanymi w katalogu \/etc. Konfiguracja opiera si\u0119 na g\u0142\u00f3wnym pliku konfiguracyjnym <code>\/etc\/auto.master<\/code> oraz na plikach uzupe\u0142niaj\u0105cych <code>\/etc\/auto.*. <\/code>W pliku <code>\/etc\/auto.master<\/code> wskazywane s\u0105 katalogi, kt\u00f3re b\u0119d\u0105 kontrolowane przez AutoFS.<code><br \/>\n<\/code><\/li>\n<li>Nie wymaga uprawnie\u0144 roota do montowania zasob\u00f3w NFS. R\u0119czne montowanie przez <em>mount<\/em> i korzystaj\u0105c z pliku<em> \/etc\/fstab<\/em> wymaga uprawnie\u0144 roota.<\/li>\n<li>Zapobiega zawieszeniu si\u0119 klienta NFS je\u017celi zasoby sieciowe ustawione &#8220;na sztywno&#8221; (<em>mount<\/em> lub <em>fstab<\/em>) nie s\u0105 dost\u0119pne.<\/li>\n<li>Zasoby sieciowe odmontowywane s\u0105 automatycznie je\u017celi nie s\u0105 u\u017cywane przez pi\u0119\u0107 (domy\u015blnie) minut.<\/li>\n<li>Wspiera znaki wildcard i zmienne \u015brodowiskowe, kt\u00f3rych metody &#8220;na sztywno&#8221; nie wspieraj\u0105.<\/li>\n<li>Dost\u0119pna jest specjalna mapa, kt\u00f3ra montuje automatycznie wszystkie dost\u0119pne zasoby sieciowe z serwera NFS.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Plik konfiguracyjny AutoFS: \/etc\/sysconfig\/autofs.<\/span><\/p>\n<pre> MASTER_MAP_NAME=\"auto.master\"\r\n TIMEOUT=300\r\n NEGATIVE_TIMEOUT=60\r\n BROWSE_MODE=\"no\"\r\n MOUNT_NFS_DEFAULT_PROTOCOL=4\r\n APPEND_OPTIONS=\"yes\"\r\n LOGGING=\"none\"\r\n OPTIONS=\"\"<\/pre>\n<table style=\"width: 745px;\">\n<tbody>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #808080;\"><em>Dyrektywa<\/em><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\"><span style=\"color: #808080;\"><em>Opis<\/em><\/span><\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code>MASTER_MAP_NAME<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Definiuje nazw\u0119 master mapy. Domy\u015blnie jest to plik <em>\/etc\/auto.master<\/em>.<\/td>\n<\/tr>\n<tr style=\"height: 53px;\">\n<td style=\"width: 207.75px; height: 53px;\"><span style=\"color: #008000;\"><code> TIMEOUT<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 53px;\">Czas braku aktywno\u015bci, po kt\u00f3rym zas\u00f3b zostanie odmontowany. Domy\u015blnie 5 minut.<\/td>\n<\/tr>\n<tr style=\"height: 53.0667px;\">\n<td style=\"width: 207.75px; height: 53.0667px;\"><span style=\"color: #008000;\"><code> NEGATIVE_TIMEOUT<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 53.0667px;\">Specifies, in seconds, a timeout value for failed mount attempts. The default is one minute.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code> BROWSE_MODE<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Defines whether maps are to be made browsable.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code> MOUNT_NFS_DEFAULT_PROTOCOL<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Okre\u015bla domy\u015bln\u0105 wersj\u0119 NFS u\u017cywan\u0105 do montowania zasob\u00f3w NFS.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code> APPEND_OPTIONS<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Dodatkowe opcje dla dyrektywy OPTIONS.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code> LOGGING<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Poziom logowania. Inne opcje to: verbose i debug.<\/td>\n<\/tr>\n<tr style=\"height: 26px;\">\n<td style=\"width: 207.75px; height: 26px;\"><span style=\"color: #008000;\"><code> OPTIONS<\/code><\/span><\/td>\n<td style=\"width: 519.25px; height: 26px;\">Opcje globalne.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Mapa master: \/etc\/auto.master<\/span><\/p>\n<p>Mapa master zawiera wpisy dla map: <em>special<\/em>, <em>direct<\/em> i <em>indirect<\/em>. Przyk\u0142adowy wpisy zamieszczone s\u0105 poni\u017cej.<\/p>\n<pre>\/net\u00a0\u00a0\u00a0 \u2013hosts\r\n\/\u2013\u00a0\u00a0\u00a0\u00a0\u00a0 \/etc\/auto.direct\r\n\/misc\u00a0\u00a0 \/etc\/auto.misc<\/pre>\n<p>Pierwszy wpis jest dla mapy <em>special<\/em>, powoduje on montowanie wszystkich zasob\u00f3w dost\u0119pnych z serwera NFS wylistowanych jako <em>\/net\/&lt;serwer_NFS&gt;<\/em> gdy w tym punkcie montowania pojawi si\u0119 aktywno\u015b\u0107 u\u017cytkownika. Drugi wpis definiuje map\u0119 <em>direct<\/em> i wskazuje na plik <em>\/etc\/auto.direct<\/em>.\u00a0 Trzeci wpis okre\u015bla map\u0119 <em>indirect<\/em>, kt\u00f3ra jest u\u017cywana do automatycznego montowania wymiennych system\u00f3w plik\u00f3w takich jak CD, DVD, dyskietki, USB itd.<\/p>\n<p><span style=\"color: #3366ff;\">Mapa special.<\/span><\/p>\n<p>Mapa special <em>-hosts<\/em> pozwala na montowanie zasob\u00f3w z wszystkich dost\u0119pnych serwer\u00f3w NFS w punktach montowania <em>\/net\/&lt;serwer_NFS&gt;<\/em> bez montowania ka\u017cdego z zasob\u00f3w osobno. Domy\u015blny wpis <em>\/net\u00a0 -hosts<\/em> w pliku <em>\/etc\/auto.master<\/em> nie jest rekomendowany w \u015brodowisku z wieloma serwerami NFS i wieloma zasobami\u00a0 poniewa\u017c AutoFS b\u0119dzie pr\u00f3bowa\u0142 podmontowa\u0107 wszystkie zasoby nawet te nieu\u017cywane.<\/p>\n<p><span style=\"color: #3366ff;\">Mapa direct.<\/span><\/p>\n<p>Ka\u017cdy wpis w pliku konfiguracyjnym mapy direct ma swoje odbicie w pliku <em>\/etc\/mtab<\/em>, kt\u00f3ry zawiera list\u0119 wszystkich zamontowanych system\u00f3w plik\u00f3w lokalnych i zdalnych. Zasoby zamontowane na podstawie mapy direct zawsze widoczne s\u0105 dla standardowych u\u017cytkownik\u00f3w systemu i mog\u0105 koegzystowa\u0107 z zasobami lokalnymi w jednym nadrz\u0119dnym katalogu. Wej\u015bcie do katalogu zawieraj\u0105cego wiele punkt\u00f3w montowania\u00a0 powoduje podmontowanie wszystkich zasob\u00f3w.<\/p>\n<p><span style=\"color: #3366ff;\">Mapa indirect.<\/span><\/p>\n<p>U\u017cywana jest do automatycznego montowania zasob\u00f3w w jednym wsp\u00f3lnym nadrz\u0119dnym katalogu. Zasoby montowane map\u0105 <em>indirect<\/em> widoczne s\u0105 tylko gdy kto\u015b pr\u00f3buje si\u0119 do nich dosta\u0107 i mog\u0105 koegzystowa\u0107 z zasobami lokalnymi w jednym nadrz\u0119dnym katalogu. Ka\u017cda mapa <em>indirect<\/em> wprowadza tylko jeden wpis w pliku <em>\/etc\/mtab<\/em>. Wej\u015bcie do katalogu zawieraj\u0105cego wiele punkt\u00f3w montowania <em>indirect<\/em> spowoduje wy\u015bwietlenie tylko zasob\u00f3w, kt\u00f3re s\u0105 ju\u017c zamontowane.<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #3366ff;\">Automatyczne montowanie katalog\u00f3w domowych korzystaj\u0105c z maski wildcard.<\/span><\/p>\n<p>AutoFS pozwala na korzystanie w mapach <em>indirect<\/em> ze specjalnych znak\u00f3w: gwiazdki (<em>*<\/em>) i and (<em>&amp;<\/em>). Znaki te zmieniaj\u0105 odniesienie do okre\u015blonych punkt\u00f3w montowania, do serwer\u00f3w NFS i katalog\u00f3w z zasobami. Dodajmy do pliku master <em>\/etc\/auto.master<\/em> wpis:<\/p>\n<pre>\/home\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/etc\/auto.home<\/pre>\n<p>Teraz za\u0142\u00f3\u017cmy plik \/<em>etc\/auto.home<\/em> o zawarto\u015bci:<\/p>\n<pre>* \u00a0 \u00a0\u00a0 \u2013nfs4,rw\u00a0\u00a0\u00a0\u00a0\u00a0 &amp;:\/home\/&amp;<\/pre>\n<p>Dzi\u0119ki temu po zalogowaniu si\u0119 u\u017cytkownika na komputer-klient demon <em>automount<\/em> podmontuje tylko katalog domowy tego konkretnego u\u017cytkownika a nie ca\u0142y katalog <em>\/home.<\/em> Je\u017celi istnieje tylko jeden serwer NFS udost\u0119pniaj\u0105cy katalogi domowe u\u017cytkownik\u00f3w mo\u017cna pierwszy znak &amp; zast\u0105pi\u0107 nazw\u0105 tego serwera NFS.<\/p>\n<p>&nbsp;<\/p>\n<p>\u0106wiczenie 1. Dost\u0119p do zasobu NFS korzystaj\u0105c z mapy direct.<\/p>\n<p>Instalacja pakietu <em>autofs<\/em>:<\/p>\n<pre># yum \u2013y install autofs \r\n<span style=\"color: #808080;\">\u2026\u2026 . .<\/span> \r\n<span style=\"color: #808080;\">Package 1:autofs-5.0.7-40.el7.x86_64 already installed and latest version<\/span> <span style=\"color: #808080;\">Nothing to do<\/span><\/pre>\n<p>Utworzenie punktu montowania <em>\/autodir<\/em>:<\/p>\n<pre># mkdir \/autodir<\/pre>\n<p>Dodaj poni\u017cszy wpis do pliku <em>\/etc\/auto.master<\/em>. Wpis b\u0119dzie nakazywa\u0142 us\u0142udze AutoFS odnie\u015b\u0107 si\u0119 do pliku <em>auto.direct<\/em> celem zapoznania si\u0119 z mapami direct.<\/p>\n<pre>\/\u2013 \/etc\/auto.direct<\/pre>\n<p>Utworzenie pliku <em>\/etc\/auto.direct<\/em>\u00a0 i wprowadzenie do niego: punktu montowania, serwera NFS i zasobu:<\/p>\n<pre>\/autodir server1.example.com:\/nfsrhcsa<\/pre>\n<p>Dodanie do autostartu us\u0142ugi AutoFS:<\/p>\n<pre># systemctl enable autofs\r\n <span style=\"color: #808080;\">ln -s '\/usr\/lib\/systemd\/system\/autofs.service' '\/etc\/systemd\/system\/multi-user.target.wants\/autofs.service'<code><\/code><\/span><\/pre>\n<p>Uruchomienie us\u0142ugi <em>AutoFS<\/em> i sprawdzenie jej stanu:<\/p>\n<pre># systemctl start autofs\r\n# systemctl status autofs\r\n <span style=\"color: #808080;\">autofs.service - Automounts filesystems on demand<\/span>\r\n <span style=\"color: #808080;\">Loaded: loaded (\/usr\/lib\/systemd\/system\/autofs.service; enabled)<\/span>\r\n <span style=\"color: #808080;\">Active: active (running) since Mon 2015-03-16 23:35:47 MIST; 1h 1min ago<\/span>\r\n <span style=\"color: #808080;\">Main PID: 8219 (automount)<\/span>\r\n <span style=\"color: #808080;\">CGroup: \/system.slice\/autofs.service<\/span>\r\n <span style=\"color: #808080;\">L\u00a68219 \/usr\/sbin\/automount --pid-file \/run\/aut\u2026<code><\/code><\/span><\/pre>\n<p>Uruchomienie komendy<em> ll<\/em> na punkcie montowania<em> \/autodir<\/em> i weryfikacja czy zas\u00f3b zostanie automatycznie podmontowany:<\/p>\n<pre> # ll \/autodir\r\n # mount | grep autodir\r\n <span style=\"color: #808080;\">\/etc\/auto.direct on \/autodir type autofs (ro,relatime,fd=18,pgrp=9129,timeout=300,minproto=5,maxproto=5,direct)<\/span>\r\n <span style=\"color: #808080;\">server1.example.com:\/nfsrhcsa on \/autodir type nfs4<\/span>\r\n <span style=\"color: #808080;\">(ro,relatime,vers=4.0,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.0.120,local_lock=none,addr=192.168.0.110)<\/span><\/pre>\n<p>Tak wygl\u0105da automatyczne montowanie systemu plik\u00f3w NFS przy wykorzystaniu mapy direct na komputerze-kliencie<br \/>\nMo\u017cna poczeka\u0107 pi\u0119\u0107 minut i ponownie zweryfikowa\u0107 czy zas\u00f3b NFS jest nadal zamontowany.<br \/>\nKomendy <em>cd<\/em> lub<em> ll<\/em> wydane na punkcie montowania spowoduj\u0105 ponowne zamontowanie zasobu NFS.<\/p>\n<p>&nbsp;<\/p>\n<p>\u0106wiczenie 2. Dost\u0119p do zasobu NFS przy wykorzystaniu mapy indirect.<\/p>\n<p>Instalacja pakietu <em>autofs<\/em>:<\/p>\n<pre># yum \u2013y install autofs<\/pre>\n<p>Edycja pliku <em>\/etc\/auto.master<\/em> i upewnienie si\u0119, \u017ce poni\u017csza mapa indirect jest wprowadzona. Poni\u017cszy wpis wp\u0142ynie na AutoFS aby us\u0142uga odnios\u0142a si\u0119 do pliku <em>auto.misc<\/em> celem wczytania mapy indirect.<\/p>\n<pre>\/misc \/etc\/auto.misc<\/pre>\n<p>Utworzenie punktu montowania <em>\/autodir<\/em>:<\/p>\n<pre># mkdir \/misc<\/pre>\n<p>Edycja pliku<em> \/etc\/auto.mis<\/em>c i dodanie: punktu montowania, serwera NFS i zasobu:<\/p>\n<pre>autoind server1.example.com:\/nfsrhcsa<\/pre>\n<p>Dodanie do autostartu us\u0142ugi AutoFS:<\/p>\n<pre><code># systemctl enable autofs<\/code><\/pre>\n<p>Uruchomienie us\u0142ugi AutoFS i sprawdzenie jej stanu:<\/p>\n<pre># systemctl start autofs\r\n# systemctl status autofs<\/pre>\n<p>Uruchomienie komendy <em>ll<\/em> na punkcie montowania <em>\/misc\/autoind<\/em> i weryfikacja czy zas\u00f3b zostanie automatycznie podmontowany. Obserwacja utworzenia przez AutoFS podkatalogu autoind w katalogu<em> \/misc<\/em>:<\/p>\n<pre># ll \/misc\/autoind\r\n# mount | grep autoind\r\n <span style=\"color: #808080;\">server1.example.com:\/nfsrhcsa on \/misc\/autoind type nfs4<\/span>\r\n <span style=\"color: #808080;\">(ro,relatime,vers=4.0,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=192.168.0.120,local_lock=none,addr=192.168.0.110)<\/span><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Auto File System (AutoFS) to us\u0142uga realizowana po stronie klienta u\u017cywana do montowania zasob\u00f3w sieciowych (NFS i CIFS) na \u017c\u0105danie. Prawid\u0142owo skonfigurowana us\u0142uga AutoFS potrafi automatycznie montowa\u0107 zasoby sieciowe na podstawie detekcji aktywno\u015bci w punktach montowania zasobu. Tak\u0105 aktywno\u015bci\u0105 mo\u017ce by\u0107 pr\u00f3ba wej\u015bcia do punktu montowania (cd) lub pr\u00f3ba wy\u015bwietlenia zawarto\u015bci punktu montowania zasobu sieciowego &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/miro.borodziuk.eu\/index.php\/2017\/04\/19\/autofs\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;AutoFS&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"aside","meta":{"footnotes":""},"categories":[38],"tags":[],"_links":{"self":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/805"}],"collection":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/comments?post=805"}],"version-history":[{"count":38,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/805\/revisions"}],"predecessor-version":[{"id":1406,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/posts\/805\/revisions\/1406"}],"wp:attachment":[{"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/media?parent=805"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/categories?post=805"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/miro.borodziuk.eu\/index.php\/wp-json\/wp\/v2\/tags?post=805"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}