Правильний спосіб монтажу спільного доступу до Windows


20

Я монтував загальну папку Windows до своєї системи Ubuntu 11.10, додавши до рядка наступний рядок /etc/fstab:

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

використовуючи тут підручник .

Але є проблема з дозволами. Власник папки mount root. Я не можу створювати жодних папок або файлів у змонтованій точці, якщо я не став коренем. Навіть я не можу змінити право власності на мого користувача за замовчуванням через

sudo chown -R myname .

Я погуглив і побачив, що це може випливати з того, що формати файлів Windows (fat32 / ntfs) не можуть зберегти право власності. Але коли я підключаюсь до того самого місця через самбу, як

smb://serveraddr/sharedfolder

надаючи свої повноваження, я маю права піти, не будучи коренем.

Як мені це зробити, щоб дозволити мені писати у змонтовану папку?

Відповіді:


29

Не використовуйте smbfs, ім'я нового протоколу є cifsйого частиною пакету cifs-tools(встановіть його, якщо ви ще цього не зробили.

Замість цього використовуйте цей рядок у своєму fstab

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

Де

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

Після цього ви можете протестувати sudo mount -a, якщо у вас не виникають помилки, ви можете сміливо перезавантажити, щоб знайти свої акції /mnt/<folder_name>.

Для використання файлу облікових даних замість параметрів usernameта passwordпараметрів fstabви можете створити файл із цими двома рядками, щоб ваше ім'я користувача та пароль не були явно показані у fstab

sudo nano /etc/cifspwd

Додайте ці рядки до файлу

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

Натисніть клавіші ctrl + x і, коли запитаєте, натисніть, yщоб зберегти файл.

Закріпіть його за допомогою

sudo chmod 600 /etc/cifspwd

Використовуйте цей рядок замість попереднього

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

Після цього перезавантаження буде безпечно, і ви зможете встановити та захистити свої дані.


Якщо це не працює, вставте результат cat ~/.smbpasswd.
Бруно Перейра

@ bbrunopereira81: Це не працює. cat .smbpasswdдає user=name.surname pass=******* dom=domainname
петричор

@ İsmailArı, чому у вас є домен? Ви є частиною домену ??? спробуйте використати всі на тому самому рядку , замість того , щоб файл окремо для облікових даних, спробуйте це на терміналі: 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. якщо ви отримаєте помилки, запишіть їх.
Бруно Перейра

1
Додана інформація для файлу облікових даних, ви також можете використовувати цей метод.
Бруно Перейра

2
Я думаю, що варто відзначити, що в Ubuntu 12.10 "режим" не був допустимим параметром. Натомість мені довелося використовувати "file_mode". Крім того, я не впевнений, що я повністю згоден із загальними дозволами 0777. Якщо ви встановлюєте приватну частку лише для себе, я думаю, що щось на кшталт "file_mode = 0660, dir_mode = 0770" було б більш доречним.
Avian00
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.