ฉันจะนำทางไปยังตำแหน่งแซมบ้าที่ฉันได้ติดตั้งใน Nautilus บนบรรทัดคำสั่งได้อย่างไร


52

โปรดทราบ: ฉันอายุสองสัปดาห์ใน Linux ฉันพบคำตอบมากมายเกี่ยวกับคำถามนี้ทางอินเทอร์เน็ตลองหลายวิธี แต่ก็ล้มเหลวไม่ทางใดก็ทางหนึ่ง ดังนั้นฉันจึงกล้าถามอีกครั้งด้วยความหวังว่าบางคนที่นี่สามารถอธิบายได้ง่ายๆ :)

Pre-เงื่อนไข:

ในสถาบันของฉันเรามีเซิร์ฟเวอร์แซมบ้า ใน Windows ก็สามารถเข้าถึงได้โดยไปที่\\xyz.220.131.233\และป้อนเข้าสู่ระบบและรหัสผ่านabcdef

ใน Ubuntu ผมก็สามารถที่จะทำตรงเดียวกันโดยใช้หอยโข่งกด Ctrl + L smb://xyz.220.131.233/และการป้อน จากนั้นจะขอล็อกอินและรหัสผ่านและเชื่อมต่อ ฉันสามารถลากโฟลเดอร์จากที่นี่ไปยัง 'สถานที่' และมีทางลัดไปยังตำแหน่งระยะไกล

จนถึงตอนนี้ดีมาก ฉันเพิ่งติดตั้ง Matlab และต้องการเปิดตำแหน่งระยะไกลนี้ พยายามที่cdจะsmb://xyz.220.131.233/กลับมา

ไม่สามารถซีดีไปยัง smb: //xyz.220.131.233 (ชื่อไม่มีอยู่หรือไม่ใช่ไดเรกทอรี)

ผู้ใช้ Mac ในกลุ่มของฉันบอกฉันว่าฉันเมานท์ตำแหน่งก่อน แต่เขาไม่รู้วิธีการใช้

มันเป็นความจริงและฉันจะทำอย่างไร


คำตอบ:


68

ในกรณีส่วนใหญ่:

/$XDG_RUNTIME_DIR/gvfs

14.04:

/run/user/$(id -u)/gvfs

12.10:

/run/user/<username>/gvfs

12.04:

ตั้งแต่ 12.04 โฟลเดอร์แชร์ samba ที่ติดตั้งคือ:

~/.cache/gvfs

11.10 ขึ้นไป

คุณสามารถเรียนรู้วิธีการเมานท์ - มันจะทำงานได้แน่นอน แต่ฉันคิดว่านี่เป็นวิธีแก้ปัญหาที่ง่ายกว่าสำหรับคุณ: Nautilus mount smb พาร์ติชั่นที่~/.gvfs(โดยที่ ~ / หมายถึง / home / ชื่อผู้ใช้ / ชื่อตัวอย่าง - /home/desgua/.gvfs) :
คุณเพียงแค่ต้องไปที่นั่น:

cd ~/.gvfs

สวย! Linux มีคุณสมบัติที่น่าทึ่งมากมาย! ฉันสงสัยว่าวิธีการเรียนรู้รายละเอียดนั้นคืออะไร ... ขอบคุณ!
texnic

12
ทำไมพวกเขาถึงเปลี่ยนมันทุกรุ่น?
waspinator

1
ฉันอายุ 12.04 และติดตั้ง~/.gvfsแล้ว
T0xicCode

2
14.04 เหมือนกับ 12.10 ผู้ใช้ที่ไม่ใช่ชื่อในระบบของฉันเช่น / run / user / 1000 / gvfs / smb-share: เซิร์ฟเวอร์ = NAS, share = MyShareFolder
TiloBunt

1
$ XDG_RUNTIME_DIR == / run / user / $ (id -u): วันที่ (14.04)
Tom

5

ตัวเลือกอื่นที่นี่ในขณะที่ไม่เกี่ยวข้องโดยตรงกับการติดตั้งไดเรกทอรีใน nautilus คือการติดตั้งตำแหน่งจากบรรทัดคำสั่ง

อย่างไรก็ตามในการติดตั้ง samba วอลุ่มคุณต้องมีการสนับสนุน CIFS

sudo apt-get install cifs-utils

จากที่นี่คุณมีตัวเลือกว่าคุณต้องการติดตั้งตำแหน่งใด มี "มาตรฐาน" สองประเภทสำหรับสิ่งนี้ /mediaหากคุณต้องการสถานที่ที่จะแสดงขึ้นในเมนูสถานที่คุณจะติดมันใน ถ้าไม่คุณจะติดตั้งใน/mnt(เพื่อทำตามเนมสเปซทั่วไปสำหรับโวลุ่มที่เมานต์ไม่มีอะไรผิดปกติกับการติดตั้งไดเรกทอรีใน/home/$user/mount/someshare)

ภาพประกอบตำแหน่งที่ติดตั้งในเมนูสถานที่

สมมติว่า/media/myshareมีอยู่คุณจะประสบความสำเร็จด้วยการออกคำสั่งต่อไปนี้:

sudo mount -t cifs -o user=abc,password=def //xyz.220.131.233 /media/myshare

ข้อความด้านข้าง

คุณสามารถทำสิ่งนี้ได้โดยอัตโนมัติโดยต่อท้ายสตริงต่อไปนี้กับ/etc/fstabการกำหนดค่าของคุณ:

//xyz.220.131.233 /media/SambaMount cifs username=abc,password=def,rw,user,noauto 0 0

สังเกตว่าการnoautoตั้งค่าสถานะนี้จะป้องกันไม่ให้ไดรฟ์ข้อมูลติดตั้งตอนบูตดังนั้นเมื่อคุณไม่อยู่ในที่ทำงานอีกต่อไปมันจะไม่หยุดทำงานในระหว่างการบู๊ตที่พยายามสำรวจและติดตั้งที่ใช้ร่วมกัน


ขออภัยที่ไม่ตอบกลับเร็วกว่านี้ฉันรู้สึกรำคาญกับงานเร่งด่วนและต้องเปลี่ยนกลับไปใช้ Windows ซักพัก คำแนะนำนี้ใช้งานไม่ได้: ฉันได้รับ 'ลองใหม่อีกครั้งโดยใช้ชื่อตัวพิมพ์ใหญ่ ข้อผิดพลาดในการติดตั้ง (6): ไม่มีข้อผิดพลาดของอุปกรณ์หรือที่อยู่ดังกล่าว สิ่งที่คล้ายกันมีการอธิบายไว้ที่bugzilla.redhat.com/show_bug.cgi?id=195264
texnic

ฉันรู้ว่าอาจเป็นความผิดพลาดของฉัน ฉันควรติดตั้ง //xyz.220.131.233/foldername แทนทั้งเซิร์ฟเวอร์ หลังจากแก้ไขแล้วฉันจะไม่พบข้อผิดพลาดอีกและสามารถเห็นโฟลเดอร์ / myshare ปรากฏใน Places ใน Nautilus อย่างไรก็ตามเมื่อพยายามเรียกดูฉันจะได้รับ 'เนื้อหาโฟลเดอร์ไม่สามารถแสดงได้ คุณไม่มีสิทธิ์ที่จำเป็นในการดูเนื้อหาของ "myshare" ' เกิดอะไรขึ้น
texnic

1
ตรวจสอบว่าคุณมีสิทธิ์ในการเข้าถึงทรัพยากรโดยทั้งผู้ใช้บนระบบระยะไกลที่คุณใช้ในการติดตั้ง (ในสตริงการเมาท์) เช่นเดียวกับบัญชีผู้ใช้ที่ใช้ในการสร้างการติดตั้งบนเครื่องท้องถิ่นของคุณ
lazyPower

อ๊ะช้าลงเรื่อย ๆ :) ถ้าฉันเปิดตัว Nautilus ด้วย sudo ฉันสามารถเรียกดูตำแหน่ง / myshare ได้ ตอนนี้ฉันจะเมาในวิธีที่ฉันสามารถเข้าถึงได้ในฐานะผู้ใช้ปกติ (texnic)? ฉันสามารถเข้าถึงตำแหน่งระยะไกลในฐานะผู้ใช้ทั่วไปได้เท่าที่ฉันเข้าใจเนื่องจากฉันสามารถเรียกดู smb: //xyz.220.131.233/foldername ใน Nautilus ที่เปิดตัวโดยไม่ต้องใช้ sudo และในทางกลับกันทำไมฉันถึงได้รับ 'การอนุญาตถูกปฏิเสธ' ถ้าฉันพยายามเรียกใช้ 'cd / media / myshare' และในเวลาเดียวกันฉันได้รับ 'command not found' สำหรับ 'sudo cd / media / myshare'
texnic

คุณจะต้องเพิ่มการตั้งค่าสถานะผู้ใช้ในตัวเลือกการเมานต์ของคุณไม่ว่าจะผ่านทาง fstab หรือระหว่างการออกคำสั่งเมานท์ เช่น: -o user
lazyPower

4

ในUbuntu 16.04และ vlc 2.2.2;

เลือกmedia > Open Directoryและนำทางไปยัง/run/user/1000/gvfs/ << หมายเลขประจำตัว (1000) สามารถเปลี่ยนแปลงได้ในระบบของคุณ

ที่นี่คุณสามารถเห็นชื่อโฟลเดอร์ที่แชร์และเลือกโฟลเดอร์ที่คุณต้องการเพิ่มลงในเพลย์ลิสต์ (ดูรูปด้านล่าง)

vlc เพิ่ม dierctory





1

ในบางส่วนของล่าสุด (เช่น 13.XX, 14.XX) อูบุนตูคุณต้องไปที่

/run/user/(USERID)/gvfs/

เพื่อค้นหาตำแหน่งที่ติดตั้ง here (UID) คือ UID ของบัญชีซึ่งสามารถพบได้โดยคำสั่ง

id 

1
ln -s "/run/user/1000/gvfs/smb-share:server=192.168.1.1,share=Name_server/Path_Directory_source_in/Path_file.pdf" /Path_directory_source_out/Path_file.pdf

นี่คือตัวอย่างของวิธีสร้างลิงก์ไฟล์จากเทอร์มินัลใน Ubuntu

ใช้เครื่องหมายอัญประกาศ "" เพื่อหนีอักขระพิเศษเช่นช่องว่าง


0

ดังนั้นไม่แน่ใจว่านี่เป็นคำตอบที่แท้จริง (โปรดแสดงความคิดเห็นหากมีข้อสงสัยหรือตรวจสอบด้วยตัวคุณเอง) แต่หลังจากที่บางคนพยายามร่วมกับเพื่อนร่วมงานอีกคนของ Linux ฉันรู้ว่าจริง ๆ แล้วฉันไม่ได้อยู่ในกลุ่มผู้ใช้ในระบบของฉัน ( nano /etc/group) เมื่อเพิ่มตัวเองในกลุ่มนี้ ( sudo nano /etc/groupเพิ่มชื่อของฉันในusersบรรทัด) ตอนนี้ฉันสามารถเข้าถึงไดเรกทอรีระยะไกลได้แล้ว ไฟล์ / etc / fstab ของฉันมีบรรทัดเหล่านี้:

//xxx.220.131.233/user  /mnt/rua_user  cifs  username=abc,password=def 0 1
//xxx.220.131.233/all   /mnt/rua_all   cifs  username=abc,password=def 0 1

สิทธิ์ในโฟลเดอร์มีลักษณะดังนี้ ( ls -lh /mnt):

drwxrwx---  8 1016 users 0 2011-03-08 11:14 rua_all
drwxrwx--- 25 1016 users 0 2011-05-25 18:21 rua_user
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.