CIFS dipasang melalui fstab yang tidak dipasang saat boot


20

Saya memiliki saham CIFS di NAS saya yang ingin saya pasang saat boot - ini digunakan oleh server MythTV saya sebagai toko media utama. Saya menambahkan entri ke fstabuntuk memilikinya mount tetapi tidak. Tampaknya, setelah memeriksa log sistem saya, fstabsedang dibaca sebelum antarmuka jaringan saya online. Apakah ada pengeditan yang dapat saya buat untuk fstabentri yang akan mengubah ini?

The fstabentri untuk pemasangan saham adalah:

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

Mount baik-baik saja setelah boot ketika saya mengeluarkan sudo mount -adan tidak ada masalah dengan itu.

Terima kasih!


2
Jika server menjalankan Ubuntu, kemungkinan Anda memerlukan / alih-alih \ - "//192.168.0.26/mythtv/media" Lihat wiki.ubuntu.com/MountWindowsSharesPermanently
Panther

@ bodhi.zazen Mungkin memiliki / ketika saya memasukinya, tetapi sekarang dibacakan dengan \
douggro

Periksa sintaks (/ vs \) di fstab
Panther

@ bodhi.zazen Saya cukup yakin bahwa artikel wiki adalah apa yang saya ikuti ketika mengaturnya. Saya akan memeriksa sintaks nanti ketika saya mendapatkan waktu untuk duduk dengan server saya.
douggro

1
@ bodhi.zazen Harap ubah komentar Anda menjadi jawaban - ubah \ menjadi / dipecahkan.
douggro

Jawaban:



24

Sudahkah Anda mencoba menambahkan opsi _netdevke fstabentri Anda ? Anda akan menambahkannya dengan opsi lain di string Anda seperti itu

//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 seharusnya menunda mount sampai setelah jaringan terhubung.


Bisakah Anda menambahkan konteks ke tempat yang akan ditempatkan di fstabbaris? Dengan itu, dan periode di mana saya bisa reboot server ketika tidak digunakan, saya akan mencobanya. Terimakasih telah menjawab.
douggro

1
Ini bekerja untuk saya di Ubuntu 12,04 tetapi tidak di Ubuntu 16,04. Apakah ini berubah dalam versi terbaru?
Katu

2
Catatan: Saya pikir _netdev benar-benar berfungsi di 16.04, namun kredensial = / home / user / .smbcreds tidak lagi berfungsi. Setidaknya bagi saya ketika saya menggunakan user =, pass =, _netdev berfungsi, ketika saya menggunakan kredensial =, _ netdev tidak. Keduanya bekerja melalui sudo mount-a dari baris perintah setelah booting.
jb510

1
Saya sebenarnya berpikir ini mungkin lebih berkaitan dengan perubahan izin yang dibuat ke folder media. Pada titik tertentu, Ubuntu mulai memasang berbagai hal ke / media / nama pengguna / nama folder daripada / media / nama folder. Jika tidak memasang ke lokasi "nama pengguna" maka Anda harus memiliki izin tingkat sudo untuk akses. Jika Anda mengubah jalur Anda untuk menggunakan jalur / media / nama pengguna, saya pikir itu masih berfungsi.
djmadscribbler

1
_netdev - Hanya valid dengan fstype nfs
Mikhail Chuprynski

15

jika _netdev tidak berfungsi, coba opsi:

x-systemd.automount

sebagai gantinya. Ini bekerja dengan memasang drive pada akses pertama.

Untuk menguji automount, unmount share Anda jika sedang dipasang:

$ sudo umount /media/mybooklive

Dan kemudian restart remote-fsunit systemd:

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

2
terima kasih, ini berhasil untuk saya dalam 18,04 LTS
Chief

1
_netdev tidak berfungsi pada 18,04, ini bekerja dengan sempurna :)
Brian mengatakan Reinstate Monica

6

Saya menggunakan Raspbian-Stretch build tanggal 2017-09-07 dan mengalami masalah yang sama. Namun, saya dapat mengatasi ini dengan masuk ke raspi-config dan di bawah menu Boot Options, saya mengaktifkan opsi "Tunggu jaringan saat boot".


1
Ini sebenarnya SANGAT membantu, saya punya masalah yang bahkan jika boot mengatakan semuanya OK itu tidak dipasang atau folder tampilan
Alfred Espinosa

3

-Menggunakan garis miring (/) TIDAK memperbaikinya untuk saya.
-Juga, menambahkan opsi_netdev ke /etc/fstabentri saya TIDAK memperbaikinya untuk saya.

Apa yang telah saya lakukan untuk memperbaiki masalah ini (pada Pi3 saya) adalah memodifikasi /etc/rc.localuntuk tidur 20 detik (dengan menelepon sleep 20) dan kemudian menelepon mount -a. Dengan cara ini, meskipun jaringan belum terhubung ketika sistem pertama kali membaca file fstab, jadi mount gagal, saya memaksa sistem untuk menunggu 20 detik di sini (memberikan waktu jaringan untuk terhubung) maka saya memaksanya untuk memanggilmount -a lagi untuk memasang semua drive dalam fstabfile.

/etc/rc.localSeperti inilah tampilan file saya sekarang:

#!/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

Selesai! Sekarang berfungsi dengan baik untuk saya!

Referensi:


Apakah Anda terhubung melalui wifi?
cbcoutinho

Ya, saya menggunakan WiFi, bukan ethernet.
Gabriel Staples

Itu memang sangat aneh, tetapi mungkin tidak terkait dengan masalah saya. Saya memiliki tiga drive jaringan yang saya coba sambungkan melalui kabel ethernet - tidak ada wifi. Salah satu nama drive memiliki karakter khusus di dalamnya, dan itu menyebabkannya tidak terhubung setelah boot baru. Mengeksekusi sudo mount -amenyelesaikan masalah, tapi saya ingin tahu mengapa itu tidak berhasil saat boot. Saya akan mencoba solusi Anda dan melihat apakah itu membantu.
cbcoutinho
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.