Доступ до спільної папки на Windows
В локальній мережі, в якій в основному комп'ютери на ОС Windows, створена спільна папка за такою адресою: \\10.162.20.94\folder. Один комп'ютер з ОС Linux Ubuntu. Як з нього отримати доступ до папки?
Для доступу до спільної папки \\10.162.20.94\folder з комп'ютера під керуванням Linux Ubuntu потрібно скористатися Samba-клієнтом (smbclient) або змонтувати спільну папку у файлову систему.
Створіть точку монтування:
sudo mkdir -p /mnt/shareЗмініть власника папки, щоб уникнути проблем із доступом (опціонально):
sudo chown USER:USER /mnt/shareВаріант 1: Монтування через cifs
cifsКраще підходить для не частих підключень до папки, або якщо комп'ютер з папкою не завжди увімкнений.
Змонтуйте ресурс:
sudo mount -t cifs //10.162.20.94/folder /mnt/share -o username=USER,password=PASSW,uid=$(id -u),gid=$(id -g)Тепер ви зможете працювати з файлами у /mnt/share.
Якщо пакет cifs не встановлено:
sudo apt update
sudo apt install cifs-utils -yВаріант 2: Автоматичне монтування при завантаженні
Якщо доводиться постійно працювати з папкою додайте запис у /etc/fstab:
//10.162.20.94/folder /mnt/share cifs username=USER,password=PASSW,uid=1000,gid=1000 0 0Тепер при завантаженні система автоматично монтуватиме папку.
Можна зберегти пароль у /etc/.smbcredentials:
username=USER
password=PASSWНе забудьте захистити файл з паролем:
sudo chmod 600 /etc/.smbcredentialsІ вкажіть у /etc/fstab:
//10.162.20.94/folder /mnt/share cifs credentials=/etc/.smbcredentials,uid=1000,gid=1000 0 0Якщо для цього варіанта виникнуть проблеми з доступом, можна додати vers=3.0 до параметрів:
-o username=USER,password=PASSW,vers=3.0або
//10.162.20.94/folder /mnt/share cifs credentials=/etc/.smbcredentials,vers=3.0,uid=1000,gid=1000 0 0Це допомагає, якщо сервер використовує SMB версії 3.
Звідки узнати "uid=1001,gid=1001"?
UID і GID — це числові ідентифікатори користувача та його основної групи в Linux.
Їх треба дізнатися для конкретного акаунта (наприклад, olex).
Перевірка UID і GID
Виконай команду від імені адміністратора або будь-якого користувача, вказавши логін:
id olexВивід буде приблизно такий:
uid=1001(olex) gid=1001(olex) groups=1001(olex),27(sudo)Тут:
uid=1001 → це й є значення для
uid=уfstab.gid=1001 → це й є значення для
gid=уfstab.
Якщо виконати просто id (без логіна)
id (без логіна)Тоді покаже дані для поточного користувача. Наприклад, якщо зайти під olex:
id
uid=1001(olex) gid=1001(olex) groups=1001(olex),27(sudo)Тобто у рядку fstab ти вставляєш саме ті числа, що стоять після uid= та gid=.
Ще один варіант,
що передбачає роботу з папкою в терміналі: Доступ через smbclient
Виконайте в терміналі:
smbclient //10.162.20.94/folder -U USERДалі введіть пароль PASSW, коли система запитає.
Якщо хочете одразу передати пароль у команді:
smbclient //10.162.20.94/folder -U USER%PASSWПісля цього ви отримаєте доступ до командного інтерфейсу для роботи з файлами в цій папці (схоже на FTP-клієнт).
Last updated