CIFS монтується через fstab, не встановлюється під час завантаження


20

У мене в NAS є частка CIFS, яку я хочу встановити під час завантаження - це використовується моїм сервером MythTV як основний медіа-магазин. Я додав запис, fstabщоб встановити його, але це не так. Здається, що після перегляду моїх системних журналів fstabчитається до того, як мої мережеві інтерфейси з’являться в Інтернеті. Чи можу я внести будь-яку зміну до fstabзапису, яка могла б змінити це?

fstabВхід для установки частки є:

\\192.168.0.26\mythtv\media  /media/mybooklive  cifs  username=user,password=pass,umask=002,uid=136,gid=144,iocharset=utf8   0       0

Він справно працює після завантаження, коли я видаю, sudo mount -aі інших проблем з цим немає.

Спасибі!


2
Якщо на сервері працює Ubuntu, швидше за все, вам знадобиться \ / "//192.168.0.26/mythtv/media" Дивіться wiki.ubuntu.com/MountWindowsSharesPer Stally
Panther

@ bodhi.zazen Можливо, був / коли я ввійшов до нього, але тепер він читається з \
douggro

Перевірте синтаксис (/ vs \) у fstab
Panther

@ bodhi.zazen Я майже впевнений, що стаття Вікі - це те, за чим я дотримувався під час її налаштування. Я перевіряю синтаксис пізніше, коли отримаю час посидіти зі своїм сервером.
douggro

1
@ bodhi.zazen Перетворіть ваш коментар у відповідь - змінивши \ на / вирішити.
douggro

Відповіді:



24

Ви спробували додати цю опцію _netdevдо свого fstabзапису? Ви додали б його за допомогою інших параметрів у рядку так

//192.168.0.26/mythtv/media  /media/mybooklive  cifs  username=user,password=pass,_netdev,umask=002,uid=136,gid=144,iocharset=utf8   0       0

_netdev повинен затримати кріплення до моменту підключення мережі.


Чи можете ви додати контекст до того, де це було б розміщено в fstabрядку? З цим, і період, коли я можу перезавантажити сервер, коли він не використовується, я спробую це. Дякую за відповідь.
douggro

1
Це працювало для мене в Ubuntu 12.04, але не в Ubuntu 16.04. Чи змінилося це в останній версії?
Кату

2
Примітка: Я думаю, що _netdev насправді працює з 16.04, проте облікові дані = / home / user / .smbcreds більше не працюють. Принаймні для мене, коли я використовую user =, pass =, _netdev, це працює, коли я використовую облікові дані =, _ netdev це не робить. Обидва працюють через sudo mount-a з командного рядка після завантаження.
jb510

1
Я фактично думаю, що це може мати більше стосунку змін дозволу, внесених до папки медіа. У якийсь момент Ubuntu почав монтувати речі до / media / username / ім'я папки, а не / media / name folder. Якщо ви не зможете встановити місце розташування "ім'я користувача", тоді ви повинні мати дозволи на рівні sudo для доступу. Якщо ви зміните свій шлях на використання / media / username path, я думаю, він повинен працювати.
djmadscribbler

1
_netdev - Діє лише з fstype nfs
Михайло Чупринський

15

якщо _netdev не працює, спробуйте варіант:

x-systemd.automount

замість цього. Це працює, встановивши привід при першому доступі.

Щоб перевірити автоматичну кількість, демонтуйте свою частку, якщо вона наразі встановлена:

$ sudo umount /media/mybooklive

А потім перезапустіть remote-fsсистемний блок:

$ sudo systemctl daemon-reload
$ sudo systemctl restart remote-fs.target

2
дякую, це працювало для мене в 18.04 LTS
начальник

1
_netdev не працював 18.04, це спрацювало чудово :)
Брайан каже, що

6

Я використовую збірку Raspbian-Stretch від 2017-09-07 і зіткнувся з тією ж проблемою. Однак мені вдалося подолати це, перейшовши в raspi-config і в меню «Параметри завантаження» увімкнув опцію «Зачекати мережу при завантаженні».


1
Це насправді ДУЖЕ корисно, у мене виникли проблеми, що навіть якщо завантажувач сказав усе гаразд, він просто не встановив його або відобразив папки
Альфред Еспіноса

3

-Використання прямих косої риски (/) НЕ виправляє це для мене.
-Также, додавши параметр _netdevдо мого /etc/fstabзапису, НЕ виправив це для мене.

Що я зробив, щоб виправити цю проблему (на моєму Pi3) - це змінити /etc/rc.localрежим сну 20 секунд (зателефонувавши sleep 20), а потім зателефонувати mount -a. Таким чином, незважаючи на те, що мережа ще НЕ підключена, коли система вперше зчитує файл fstab, тож монтаж не вдається, я змушую систему чекати тут 20 секунд (даючи час мережі підключитися), а потім змушую її mount -aзнову зателефонувати. щоб змонтувати всі диски у fstabфайлі.

Ось як /etc/rc.localвиглядає мій файл зараз:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
#GS notes: a *minimum* of sleep 10 is required for the mount below to work on the Pi 3; it failed with sleep 5, but worked with sleep 10, sleep 15, and sleep 30
sleep 20
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
  mount -a #GS: mount all drives in /etc/fstab
fi

exit 0

Готово! Зараз це прекрасно працює для мене!

Список літератури:


Ви підключаєтесь через wifi?
cbcoutinho

Так, я використовую WiFi замість Ethernet.
Габріель Степлес

Це дійсно дуже дивно, але, мабуть, не стосується мого питання. У мене є три мережеві накопичувачі, які я намагаюся підключити через кабель Ethernet - без Wi-Fi. Ім'я одного з дисків має особливий характер у ньому, і це призводить до того, що він не підключається після нового завантаження. Виконання sudo mount -aвирішує проблему, але мені цікаво, чому вона не працює під час завантаження. Я спробую ваше рішення і побачу, чи допоможе це.
cbcoutinho
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.