CIFS монтируется через fstab, не устанавливая при загрузке

У меня есть общий ресурс CIFS на моем NAS, который я хочу установить при загрузке - он используется моим 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

boot, когда я выдаю sudo mount -a, и никаких других проблем с ним нет.

Спасибо!

1
задан 4 January 2014 в 01:05

4 ответа

Вы пытались добавить параметр _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 должен задерживать монтировку до тех пор, пока сеть не подключится.

18
ответ дан 24 May 2018 в 13:24
  • 1
    Можете ли вы добавить контекст к тому, где это будет помещено в строку fstab? При этом и в период, когда я могу перезагрузить сервер, когда он не используется, я попробую его попробовать. Спасибо за ответ. – douggro 4 January 2014 в 02:33
  • 2
    Оказывается, у bodhi.zazen был правильный путь с его комментарием. Я дала вам помощь для вашей помощи. Благодаря! – douggro 4 January 2014 в 15:13
  • 3
    Это работало для меня в Ubuntu 12.04, но не в Ubuntu 16.04. Это изменилось в последней версии? – Katu 25 April 2016 в 17:46
  • 4
    Примечание. Я думаю, что _netdev фактически работает в 16.04, однако учетные данные = / home / user / .smbcreds больше не работают. По крайней мере, для меня, когда я использую user =, pass =, _netdev, он работает, когда я использую credentials =, _ netdev, это не так. Оба работают через sudo mount-a из командной строки после загрузки. – jb510 5 June 2016 в 05:59
  • 5
    На самом деле я думаю, что это может иметь больше общего с изменениями разрешений, внесенными в папку мультимедиа. В какой-то момент Ubuntu начал монтировать вещи в / media / имя пользователя / имя папки, а не / media / folder name. Если вы не подключаетесь к " имени пользователя " тогда у вас должны быть разрешения на уровне sudo для доступа. Если вы измените свой путь для использования пути / media / username, я думаю, что он все равно должен работать. – djmadscribbler 1 August 2016 в 21:01

, если _netdev не работает, попробуйте вариант:

x-systemd.automount

.

Чтобы проверить автомонт, отключите свою долю, если она установлена ​​на данный момент:

$ sudo umount /media/mybooklive

И затем перезапустите блок remote-fs systemd:

$ sudo systemctl daemon-reload
$ sudo systemctl restart remote-fs.target
6
ответ дан 24 May 2018 в 13:24

Я использую Raspbian-Stretch build от 2017-09-07 и испытал ту же проблему. Тем не менее, я смог преодолеть это, перейдя в raspi-config и в меню «Параметры загрузки», я включил опцию «Подождите, когда вы загружаете сеть».

3
ответ дан 24 May 2018 в 13:24
  • 1
    Это на самом деле ОЧЕНЬ полезно, у меня были проблемы, которые даже при загрузке сказали, что все ОК, это просто не смонтировано или не отображает папки – Alfred Espinosa 7 May 2018 в 22:29

- Использование косых черт (/) НЕ исправило это для меня. -Итак, добавление опции _netdev в мою запись /etc/fstab НЕ исправило это для меня.

Что я сделал, чтобы исправить эту проблему (на моем Pi3), это изменить /etc/rc.local, чтобы спать 20 секунд (вызывая sleep 20), а затем вызовите mount -a. Таким образом, несмотря на то, что сеть еще не подключена, когда система сначала считывает файл fstab, поэтому сбой в сбое, я заставляю систему ждать 20 секунд (давая сетевое время для подключения), после чего я заставляю ее звонить [ f7] снова, чтобы смонтировать все диски в файле 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

Выполнено! Это теперь отлично работает для меня!

Ссылки:

https://raspberrypi.stackexchange.com/a/63690/49091 https://www.raspberrypi.org/documentation/ linux / use / rc-local.md http://elinux.org/RPi_Email_IP_On_Boot_Debian
1
ответ дан 24 May 2018 в 13:24
  • 1
    Вы подключаетесь через Wi-Fi? – cbcoutinho 18 November 2017 в 02:27
  • 2
    Да, я использую Wi-Fi вместо ethernet. – Gabriel Staples 21 November 2017 в 17:41
  • 3
    Это действительно очень странно, но, вероятно, не связано с моей проблемой. У меня есть три сетевых диска, которые я пытаюсь подключить через Ethernet-кабель - нет Wi-Fi. У одного из имен дисков есть специальный символ, и это не позволяет подключиться после новой загрузки. Выполнение sudo mount -a решает проблему, но мне любопытно, почему она не работает во время загрузки. Я попробую ваше решение и посмотрю, поможет ли это. – cbcoutinho 21 November 2017 в 17:58

Другие вопросы по тегам:

Похожие вопросы: