วิธี mount smb share บน Ubuntu 18.04


17

ผมติดตั้งเซิร์ฟเวอร์ที่ใช้ร่วมกันบนเครือข่ายท้องถิ่นของฉันใช้ GUI smb://myServer/myFolderเชื่อมต่อกับเซิร์ฟเวอร์และที่อยู่ที่ผมเข้ามาเป็น จากนั้นฉันพยายามเพิ่มโฟลเดอร์ที่แชร์ไปยัง/mntไดเรกทอรีเพื่อให้ฉันสามารถเข้าถึงผ่าน IDE ของฉันได้ แต่ฉันล้มเหลวแม้ว่าฉันจะลอง unmount เซิร์ฟเวอร์และใช้ CLI ด้วยคำสั่ง

gio mount smb://myServer/myFolder**.

ใครเคยมีปัญหานี้มาก่อนหรือไม่

คำตอบ:


15

ฉันเพิ่งทำตามคำแนะนำของ wiki smb ของ Ubuntuและมันใช้ได้กับฉันกับ Ubuntu 18.04.1

โดยเฉพาะ: ฉันสร้างไดเรกทอรีสำหรับเมานต์ก่อน

sudo mkdir /media/NAS

ฉันเพิ่มบรรทัดต่อไปนี้ใน fstab ของฉัน

//192.168.1.209/public /media/NAS cifs guest,uid=1000,iocharset=utf8 0 0

แล้ววิ่ง

sudo mount -a

จากนั้นไดรฟ์ NAS ของฉันก็ถูกติดตั้ง ฉันรีบูตเครื่องหลายครั้งและยืนยันว่าตอนนี้ติดตั้งแล้วและเริ่มทำงานให้ฉัน สำหรับสิ่งที่คุ้มค่าฉันกำลังใช้การเชื่อมต่ออีเธอร์เน็ตเพื่อให้สามารถกำหนดค่าและทำงานได้เร็วกว่าการเชื่อมต่อ Wi-Fi


6
สิ่งนี้ใช้ได้กับฉันฉันแค่ต้องตรวจสอบให้แน่ใจว่าcifs-utilsได้ติดตั้งไว้แล้ว sudo apt-get install cifs-utils.
anon58192932

mount error(95): Operation not supported
crusy

สิ่งเดียวกันสำหรับฉัน @crusy
UnsettlingTrend

1
mount error: cifs filesystem not supported by the systemบนระบบย่อย Windows สำหรับ Linux (ไม่ได้พูด Ubuntu อย่างเคร่งครัด)
zypA13510

14

ฉันเปิดเซิร์ฟเวอร์ที่ฉันแชร์และพิมพ์ifconfigเพื่อรับที่อยู่ IP จากนั้นฉันพิมพ์คำสั่งนี้ไปยังรายการการแชร์

smbclient -L //myServerIpAdress

จากนั้นเพื่อติดตั้งฉันพิมพ์คำสั่ง 2 คำสั่งนี้ก่อนอื่นให้สร้างโฟลเดอร์ภายใต้/ mntจากนั้นจึงทำการเมานท์

sudo mkdir /mnt/myFolder

sudo mount -t cifs -o username=serverUserName //myServerIpAdress/sharename /mnt/myFolder/

จากนั้นป้อนรหัสผ่านของเซิร์ฟเวอร์เมื่อถูกถามและการเมานต์ของคุณเสร็จสิ้นภายใต้/ mnt / myFolder


7
ฉันยังคงเห็นข้อผิดพลาดนี้: mount: /mnt/my-mount-name: cannot mount //<server-ip>/path/to/share read-only.และในที่สุดก็พบว่าฉันต้องติดตั้งcifs-utilsก่อน ( sudo apt install cifs-utils) หลังจากนั้นคำสั่ง mount ก็ใช้งานได้
bszom

3

หากคุณติดตั้งแล้วgvfs-binคุณสามารถเรียกใช้:

gvfs-mount smb://username@servername/sharename/

เพิ่มเติมเกี่ยวกับ gvfs-mount บนmanpages

นอกจากนี้คุณสามารถอ่านวิกิSamba / SambaClientGuideอย่างเป็นทางการ


เครื่องมือนี้เลิกใช้แล้วให้ใช้ 'gio mount' แทน
Pablo Bianchi

มันบอกว่า "โวลุ่มไม่ได้ติดตั้ง"
chovy

1

โปรดทราบว่าคุณควรเพิ่มรุ่นโปรโตคอล SMB (egvers = 1.0) ให้กับตัวเลือกการเมานท์ Mount.cifs ระบุว่าจะใช้ vers = 1.0 เป็นค่าเริ่มต้น แต่จะไม่ติดและคุณติดกับข้อผิดพลาด "host down" เมื่อพยายามเมานต์กับ NAS ที่เก่ากว่า วิธีการแก้ปัญหาข้างต้นแล้วอ่าน

sudo mount -t cifs -o username=serverUserName,vers=1.0 //myServerIpAdress/sharename /mnt/myFolder/

ดูโซลูชันนี้สำหรับรายละเอียด


ฉันได้รับข้อผิดพลาด 'อ่านอย่างเดียว'
chovy

0

SMBv1 และการใช้ร่วมกันโดยไม่มีการป้องกันด้วยรหัสผ่านช่วยให้การทำงานทำได้ง่ายและรวดเร็ว แต่พวกเขาเป็นปัญหาด้านความปลอดภัยขนาดใหญ่ (เช่น WannaCry เป็นต้น)

แนะนำการใช้ SMBv3 ร่วมกับการป้องกันด้วยรหัสผ่านของการแชร์ การใช้ไฟล์ข้อมูลรับรองความปลอดภัยใน fstab ก็อาจเป็นเรื่องที่ฉลาดเช่นกัน ฝั่งไคลเอ็นต์ Linux นั้นคล้ายกับข้างบนมาก ดูขั้นตอนได้ที่ https://linuxacademy.com/blog/linux/ubuntu-samba-client-setup-and-persistent-shares/


0

ฉันต้องการใช้รหัสผ่านที่เก็บไว้จากพวงกุญแจของฉันสำหรับการเข้าถึง SMB ที่ใช้ร่วมกันในสคริปต์ (สำรองข้อมูล) บนแล็ปท็อปของฉัน เป้าหมายของฉันคือไม่เปิดเผยรหัสผ่านในไฟล์และใช้ anacron เพื่อสำรองข้อมูล หลังจากการทดสอบฉันพบสิ่งนี้:

  1. เมานต์แชร์ของคุณหนึ่งครั้งผ่าน Nautilus และเก็บรหัสผ่านไว้ในพวงกุญแจ
  2. ลองgio mount smb://<server_name>/<share_name>สิ่งที่ควรทำงานโดยไม่มีรหัสผ่านในเซสชัน GNOME ของคุณ
  3. ใช้รหัสต่อไปนี้ในสคริปต์สำรอง:

ตัวอย่างทดสอบบน Ubuntu 19.04:

# set the dbus address
DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/$(id -u)/bus"
# export dbus address to get access to user space keyring
export DBUS_SESSION_BUS_ADDRESS
# use new gnome user space mount tool (gvfs-mount is deprecated)
gio mount smb://<server_name>/<share_name>
#sync from gvfs created mount point to home dir 
rsync -rav /var/run/user/$(id -u)/gvfs/smb-share\:server\=<server_name>\,share\=<share_name>/<folder>/ ~/<sync_dest>/

เมื่อรันสคริปต์ผ่าน anacron จาก /etc/cron.daily คุณต้องใช้ผู้ใช้ที่มีการเข้าถึง keyring เช่น:

ผู้ใช้ su -c /home/user/scripts/rsync_sript.sh

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.