Prawidłowy sposób montowania udziału Windows


20

Zainstalowałem udział Windows w moim systemie Ubuntu 11.10, dodając następujący wiersz do /etc/fstab:

//serveraddr/sharedfolder /mnt/foldername/ smbfs credentials=/home/myname/.smbpasswd 0 0

korzystając z samouczka tutaj .

Ale jest problem z uprawnieniami. Właścicielem folderu montowania jest root. Nie mogę utworzyć żadnych folderów ani plików w zamontowanym punkcie, jeśli nie zostaję rootem. Nawet nie mogę zmienić właściciela na domyślnego użytkownika za pośrednictwem

sudo chown -R myname .

Poszukałem Google i zobaczyłem, że może to wynikać z faktu, że formaty plików Windows (fat32 / ntfs) nie mogą zapisać własności. Ale kiedy połączę się z tą samą lokalizacją przez sambę co

smb://serveraddr/sharedfolder

podając moje dane uwierzytelniające, mam uprawnienia do pisania bez uprawnień użytkownika root.

Jak mogę to zrobić, aby pozwolić mi pisać w zamontowanym folderze?

Odpowiedzi:


29

Nie używaj smbfs, nazwa nowego protokołu jest cifsczęścią pakietu cifs-tools(zainstaluj go, jeśli jeszcze tego nie zrobiłeś).

Zamiast tego użyj tej linii w swoim fstab

//server/share /mnt/mountname cifs username=server_user,password=user_password,iocharset=utf8,file_mode=0777,dir_mode=07‌​77 0 0

Gdzie

server = your server that you are trying to access
share = mapped share on that server
/mnt/mountname = any folder that you created with sudo /mnt/<folder_name>
username = the name of the user on that server that can access the mount
password = the password for that user

Po tym możesz przetestować sudo mount -a, jeśli nie dostaniesz żadnych błędów, możesz bezpiecznie ponownie uruchomić komputer, aby znaleźć zainstalowane udziały /mnt/<folder_name>.

Aby użyć pliku referencji zamiast parametrów usernamei , możesz utworzyć plik z tymi 2 liniami, aby twoja nazwa użytkownika i hasło nie były wyraźnie widoczne w fstabpasswordfstab

sudo nano /etc/cifspwd

Dodaj te linie do pliku

username=<username on server>
password=<password for that username>

Naciśnij klawisze ctrl + x, a po wyświetleniu monitu naciśnij, yaby zapisać plik.

Zabezpiecz to za pomocą

sudo chmod 600 /etc/cifspwd

Użyj tej linii zamiast poprzedniej

//server/share /mnt/mountname cifs credentials=/etc/cifspwd,iocharset=utf8,file_mode=0777,dir_mode=07‌​77 0 0

Po tym będzie można bezpiecznie zrestartować komputer, a montaż powinien zostać zamontowany, a twoje dane zabezpieczone.


Jeśli to nie zadziała, wklej dane wyjściowe cat ~/.smbpasswd.
Bruno Pereira

@ bbrunopereira81: To nie działa. cat .smbpasswddaje user=name.surname pass=******* dom=domainname
petrichor

@ İsmailArı dlaczego masz domenę? czy jesteś częścią domeny ??? spróbuj użyć wszystkich na tej samej linii, zamiast tworzenia pliku osobno dla poświadczenia, spróbuj tego na terminalu: sudo mount -t cifs //ip_from_windows_pc/sharename /mnt/share -o username=windows_username,password=windows_password_for_user,iocharset=utf8,file_‌​mode=0777,dir_mode=0777. jeśli wystąpią błędy, zapisz je.
Bruno Pereira

1
Dodano informacje o pliku referencji, możesz także użyć tej metody.
Bruno Pereira

2
Myślę, że warto zauważyć, że w Ubuntu 12.10 „tryb” nie był prawidłowym parametrem. Zamiast tego musiałem użyć „file_mode”. Nie jestem też pewien, czy całkowicie zgadzam się z ogólnymi uprawnieniami 0777. Jeśli montujesz udział prywatny tylko dla siebie, myślę, że coś w stylu „file_mode = 0660, dir_mode = 0770” byłoby bardziej odpowiednie.
Avian00
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.