Làm cách nào để điều hướng đến một vị trí samba tôi đã gắn trong Nautilus trên dòng lệnh?


52

Xin lưu ý: Tôi hai tuần tuổi trong Linux. Tôi đã tìm thấy rất nhiều câu trả lời cho câu hỏi này trên internet, đã thử rất nhiều, nhưng tất cả đều thất bại bằng cách này hay cách khác. Vì vậy, tôi dám hỏi một lần nữa với hy vọng ai đó ở đây có thể giải thích nó một cách đơn giản :)

Điều kiện trước:

Trong viện của tôi, chúng tôi có một máy chủ Samba. Trong Windows, nó được truy cập bằng cách vào \\xyz.220.131.233\và nhập thông tin đăng nhập abcvà mật khẩu def.

Trong Ubuntu, tôi có thể thực hiện chính xác như vậy bằng Nautilus, nhấn Ctrl + L và nhập smb://xyz.220.131.233/. Sau đó, nó yêu cầu đăng nhập và mật khẩu và kết nối. Tôi thậm chí có thể kéo một thư mục từ đây đến 'Địa điểm' và có một lối tắt đến vị trí từ xa.

Càng xa càng tốt. Tôi vừa cài đặt Matlab và muốn mở vị trí từ xa này. Đang cố gắng cdđể smb://xyz.220.131.233/trở về

Không thể CD thành smb: //xyz.220.131.233 (Tên không tồn tại hoặc không phải là một thư mục).

Một người dùng Mac trong nhóm của tôi nói với tôi rằng lần đầu tiên tôi gắn kết vị trí, nhưng anh ta không biết làm thế nào để làm điều đó.

Có đúng không và làm thế nào để tôi làm điều đó?


Câu trả lời:


68

Trong hầu hết các trường hợp:

/$XDG_RUNTIME_DIR/gvfs

14.04:

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

12.10:

/run/user/<username>/gvfs

12.04:

Kể từ ngày 12.04, thư mục chia sẻ samba được gắn kết là:

~/.cache/gvfs

11.10 trở lên

Bạn có thể tìm hiểu làm thế nào để gắn kết - nó sẽ chắc chắn hoạt động. Nhưng tôi nghĩ rằng đây là một giải pháp dễ dàng hơn cho bạn: Nautilus mount các phân vùng smb tại ~/.gvfs(trong đó ~ / nghĩa là / home / user_name / - ví dụ /home/desgua/.gvfs:).
Bạn chỉ cần điều hướng đến đó:

cd ~/.gvfs

Đẹp! Linux có một số lượng tính năng đáng kinh ngạc! Tôi tự hỏi đâu là cách để tìm hiểu những chi tiết như vậy mặc dù ... Cảm ơn!
texnic

12
Tại sao họ thay đổi nó mỗi phiên bản?
đánh dấu

1
Tôi vào ngày 12.04 và được gắn kết ~/.gvfs.
T0xicCode

2
14.04 giống như 12.10. Số người dùng không phải là tên trên hệ thống của tôi như / run / user / 1000 / gvfs / smb-share: server = NAS, share = MyShareFolder
TiloBunt

1
$ XDG_RUNTIME_DIR == / run / user / $ (id -u): vào (14.04)
Tom

5

Một tùy chọn khác ở đây, trong khi không liên quan trực tiếp đến việc gắn thư mục trong nautilus là gắn vị trí từ dòng lệnh.

Tuy nhiên, để gắn kết khối lượng samba, bạn phải có hỗ trợ CIFS.

sudo apt-get install cifs-utils

Từ đây, bạn có tùy chọn nơi bạn muốn gắn kết vị trí. Có HAI "tiêu chuẩn" sắp xếp cho việc này. Nếu bạn muốn vị trí hiển thị trong menu Địa điểm, bạn sẽ gắn nó vào /media. Nếu không, bạn sẽ gắn nó vào /mnt(chỉ để theo không gian tên chung cho các khối được gắn kết. Không có gì sai khi gắn thư mục vào /home/$user/mount/someshare)

Minh họa vị trí được gắn trong menu Địa điểm

giả sử rằng /media/mysharetồn tại, bạn sẽ đạt được điều này bằng cách ban hành lệnh sau:

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

Lưu ý bên

Bạn có thể thực hiện việc này một cách tự động bằng cách nối thêm chuỗi sau vào /etc/fstabcấu hình của bạn :

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

Lưu ý noautocờ, điều này sẽ giữ cho âm lượng không bị gắn khi khởi động, vì vậy khi bạn không còn ở nơi làm việc, nó sẽ không bị treo trong khi khởi động cố gắng thăm dò và gắn kết chia sẻ đó.


Xin lỗi vì đã không trả lời sớm hơn, tôi đã bị phân tâm bởi một số công việc khẩn cấp và phải quay lại Windows một thời gian. Gợi ý này bằng cách nào đó không hoạt động: Tôi đang nhận được 'Đang thử lại với tên chia sẻ chữ hoa. lỗi gắn kết (6): Không có lỗi của thiết bị hoặc địa chỉ đó. Một cái gì đó tương tự được mô tả tại bugzilla.redhat.com/show_orms.cgi?id=195264
texnic

Tôi đã nhận ra rằng đó có thể là sai lầm của tôi. Tôi nên đã gắn //xyz.220.131.233/ Foldername chứ không phải toàn bộ máy chủ. Sau khi sửa lỗi này, tôi không gặp lỗi nữa và có thể thấy thư mục / myshare xuất hiện trong Địa điểm trong Nautilus. Tuy nhiên, khi cố gắng duyệt nó, tôi nhận được 'Nội dung thư mục không thể hiển thị. Bạn không có quyền cần thiết để xem nội dung của "myshare" '. Chuyện gì vậy?
texnic

1
Kiểm tra xem bạn có quyền truy cập tài nguyên bởi cả người dùng trên hệ thống từ xa mà bạn sử dụng để gắn kết nó (trong chuỗi gắn kết) cũng như tài khoản người dùng được sử dụng để tạo gắn kết trên máy cục bộ của bạn.
lazyPower

Aha, từ từ tiến triển :) Nếu tôi khởi chạy Nautilus bằng sudo, tôi có thể duyệt vị trí / myshare. Bây giờ làm thế nào để tôi gắn kết nó theo cách mà tôi có thể truy cập nó như một người dùng bình thường (texnic)? Tôi có thể truy cập vị trí từ xa như một người dùng bình thường, theo như tôi hiểu, vì tôi có thể duyệt đến smb: //xyz.220.131.233/printername trong Nautilus được khởi chạy mà không cần sudo. Và mặt khác, tại sao tôi lại bị 'Quyền bị từ chối' nếu tôi cố thực thi 'cd / media / myshare' và đồng thời tôi nhận được 'lệnh không tìm thấy' cho 'sudo cd / media / myshare'?
texnic

Bạn phải thêm cờ người dùng trong tùy chọn gắn kết của mình, thông qua fstab hoặc trong lệnh gắn kết được ban hành. ví dụ: -o người dùng
lazyPower

4

trong Ubuntu 16.04 và vlc 2.2.2;

Chọn media > Open Directoryvà điều hướng đến /run/user/1000/gvfs/ << số ID (1000) có thể khác nhau trên hệ thống của bạn.

Tại đây bạn có thể thấy tên thư mục dùng chung và chọn thư mục mà bạn muốn thêm vào danh sách phát (xem hình bên dưới)

vlc thêm dierctory


2

Vào ngày 12.10, bạn có thể tìm thấy địa điểm tại

/run/user/USERNAME/gvfs/

2

Trên Ubuntu 12.04 tôi đang chạy:

~/.gvfs/[SHARENAME]

~/.cache/ chỉ chứa một thư mục gvfs-burn



1

trong một số phiên bản mới nhất (ví dụ: 13.XX, 14.XX), bạn cần truy cập

/run/user/(USERID)/gvfs/

để tìm vị trí gắn kết. ở đây (UID) là UID của tài khoản, có thể được tìm thấy bằng lệnh

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

Đây là ví dụ của tôi về cách tạo liên kết tệp từ thiết bị đầu cuối trong Ubuntu.

Sử dụng dấu ngoặc kép "" để thoát các ký tự đặc biệt như dấu cách


0

Vì vậy, không chắc đây có phải là câu trả lời thực sự hay không (vui lòng bình luận nếu nghi ngờ hoặc tự kiểm tra nó), nhưng sau một vài lần vật lộn với một đồng nghiệp Linux khác, tôi nhận ra rằng tôi thực sự không thuộc nhóm người dùng trong hệ thống của mình ( nano /etc/group). Khi thêm chính mình vào nhóm này ( sudo nano /etc/group, thêm tên của tôi vào usersdòng), bây giờ tôi có thể truy cập các thư mục từ xa. Tệp / etc / fstab của tôi có các dòng sau:

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

Các quyền trên các thư mục trông như thế này ( 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
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.