(Re) zamontuj wszystkie dyski sieciowe z fstab

12

Z Gentoo pamiętam osobny /etc/init.dwpis dotyczący montowania dysków sieciowych (tj. Oddzielnie od dysków lokalnych). W Ubuntu istnieje taki umountnfs.sh, który jest używany podczas zamykania (w celu zapewnienia czystego odmontowywania, gdy sieć jest nadal dostępna), i którego można użyć do odmontowania wszystkich (aktualnie zamontowanych) dysków sieciowych.

Brakuje mi jednak szybkiego sposobu

  • montowanie wszystkich napędów sieciowych z /etc/fstabtego jeszcze nie jest uruchomionych i / lub
  • ponowne zamontowanie wszystkich dysków sieciowych (np. jeśli referencje / prawa montowań cifs zostały zmienione).

Wolę utrzymywane rozwiązanie innej firmy niż jednoliniowy hack powłoki.

hans_meine
źródło
2
Zdefiniuj „jednowierszowe włamanie do powłoki”. Czy to obejmuje mount -a -O cifsna przykład?
terdon
Dzięki, to naprawdę dobra odpowiedź. Właśnie dowiedziałem się, że -topcja mountmoże być używana w połączeniu z -atakim, który sudo mount -a -t cifsrobi to, czego potrzebuję.
hans_meine
Właściwie -Ojest prawdopodobnie lepiej. Poczekaj, piszę to teraz.
terdon
Jak powinienem przejść do tego pytania? Kiedy odpowiadałeś w swoim komentarzu, zastanawiałem się, czy powinienem sam odpowiedzieć? Czy powinieneś udzielić oficjalnej „odpowiedzi”, którą mogę zaakceptować? Czy powinienem usunąć pytanie?
hans_meine
Możesz opublikować własną odpowiedź. Jest to zarówno dozwolone, jak i zalecane w sieci wymiany stosów. Wysłałem również moje, ale to nie znaczy, że powinieneś czuć presję, aby je zaakceptować, jeśli nie jest to preferowane podejście. Oczywiście możesz to zaakceptować, jeśli tego właśnie chcesz;)
terdon

Odpowiedzi:

15

Szukasz -tflagi dla mount. Od man mount:

   -t, --types vfstype
   [...]

   More than one type may be specified in a comma  separated  list.
   The  list of filesystem types can be prefixed with no to specify
   the filesystem types on which no action should be taken.   (This
   can be meaningful with the -a option.) For example, the command:

            mount -a -t nomsdos,ext

To polecenie zamontuje wszystkie cifssystemy plików:

sudo mount -a -t cifs
terdon
źródło
Nie rozumiem, dlaczego -Oogólnie powinno być lepiej, ponieważ zależy to od opcji ustawionej w sieciowych systemach plików. W rzeczywistości nie działa dla mnie (chociaż -tdziała), ponieważ nie pasuje do kolumny fstype.
hans_meine
@ Hans_meine Stoję poprawiony, odpowiedź edytowana.
terdon
Wygląda na to, że na każde pytanie, które pyta, jak zrobić coś z fstab, odpowiada „użyj mount”, a każde pytanie dotyczące używania mount mówi, że należy użyć fstab. Ludzie, czasem te pytania są tu z jakiegoś powodu. Jeśli instaluję dysk sieciowy za pomocą programu fstab, prawdopodobnie dzieje się tak, ponieważ polecenie mount wymaga roota, a nawet jeśli używasz sudo, podłączone foldery są WŁASNE przez root, a zatem są odczytywane tylko przez wszystkie polecenia, które nie są również wykonywane za pomocą sudo.
Nuzzolilo,
@Nuzzolilo, OP poprosił o szybki, ręczny sposób montażu wszystkich mocowań sieciowych fstab. Oczywiście odpowiedź brzmiała mount: co jeszcze by to było? Jeśli masz inne pytanie, zadaj je, zamiast narzekać na to, że odpowiedzi na czyjeś pytanie nie odpowiadają na twoje. Poza tym nie ma powodu, dla którego rootnależy posiadać zamontowane katalogi ani dlaczego powinny one być tylko do odczytu. Spójrz na mountstronę podręcznika .
terdon
@terdon Skąd mam wiedzieć, co to powinno być? A skoro pytałeś, tak, zadawałem własne pytania, nie krępuj się odpowiedzieć na nie, jeśli myślisz, że możesz to zrobić.
Nuzzolilo
7

Właśnie dowiedziałem się, że -topcja mountmoże być używana w połączeniu z -a, na przykład

sudo mount -a -t cifs

robi to, czego potrzebuję. ( sudo mount -a -t cifs -o remountdziała również w przypadku ponownego montażu po zmianie uprawnień / hasła).

hans_meine
źródło