Как подключить сетевой диск Windows в Linux
Поддержку сетевых дисков Windows в Linux обеспечивает пакет cifs-utils. Если он у вас еще не установлен, в командной строке от имени суперпользователя введите
apt-get install cifs-utils
Эта команда проверит, установлен ли указанный пакет и, если нет, установит его.
Создайте в /mnt (или любом другом месте) папку, в которую мы будем подключать сетевой диск Windows:
И наконец само подключение сетевой папки Windows в Linux выполняется с помощью команды mount.cifs
mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o username=WIN_USER_NAME,password=WIN_USER_PASSWORD
Такая команда выполнит присоединение к фаловой системе Linux сетевого диска Windows с именем SHARE_NAME, расположенного на сервере с IP-адресом SERVER_IP от имени WIN_USER_NAME с паролем WIN_USER_PASSWORD. Следует понимать, что на стороне Windows уже логичным образом указанная папка должна быть расшарена и права на доступ к ней должны принадлежать указанному пользователю.
В большинстве случаев этого достаточно, если вы работаете от лица суперпользователя. Если же вы от лица суперпользователя производите только подключение сетевой папки Windows, а работать с ней планируете от лица обычного, непривелегированного пользователя, то в качестве опции команде mount.cifs необходимо передать значения UID и GID этого пользователя, иначе, скорее всего, вам не будут доступны операции редактирования файлов и каталогов. Получить UID и GID пользователя можно командой:
grep MY_USER_NAME /etc/passwd
Подставив вместо MY_USER_NAME имя пользователя, под которым вы работаете в Linux, вы получите примерно следующую строчку:
где 3-е и 4-е поле как раз указывают на UID и GID пользователя MY_USER_NAME. Теперь просто подставим полученные значения в качестве дополнительных аргументов команды mount.cifs:
mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o username=WIN_USER_NAME,password=WIN_USER_PASSWORD,uid=1000,gid=1000
где uid=1000,gid=1000 — uid и gid, полученные из примера выше.
Напротив, если сетевой диск публичен, и для доступа к нему не нужен ни логин ни пароль, в опциях вместо имени пользователя и его пароля необходимо указать, что доступ является гостевым:
mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o guest
И наконец, чтобы в Linux автоматически подключать сетевую папку после перезагрузки, вносим соответствующую информацию в /etc/fstab (дописываем в конец файла):
//SERVER_IP/SHARE_NAME /MOUNT_POINT_PATH cifs ALL_OPTIONS 0 0
Т.е. должно получиться что-то вроде
//192.168.0.1/share /mnt/winshare cifs user=WIN_USER_NAME,password=WIN_USER_PASSWORD,uid=1000,gid=1000 0 0
Вы скажите, что это плохо — хранить пароль в открытом виде в файле, доступном для чтения всем, и будете правы. К счастью, разработчики об это позаботились. Создаем файл с помощью редактора, например, nano:
nano /etc/credentials #имя файла может быть любым
Делаем его доступным для чтения и записи только для пользователя root:
chmod 600 /etc/credentials #указывайте файл, который создавали вы
и вместо всей обвязки из имен и паролей просто пишем в опциях credentials=/etc/credentials (или тот файл, который вы создали). Эта опция работает как при ручном монтировании сетевого диска Windows
mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o credentials=/etc/credentials,uid=1000,gid=1000
так и автоматическом, при внесении записи в /etc/fstab (из примера выше):
//192.168.0.1/share /mnt/winshare cifs credentials=/etc/credentials,uid=1000,gid=1000 0 0
Примечание. Если вы используете дистрибутив, основанный на SystemD (Debian версии 8 и выше, Ubuntu версии 15.04 и выше, Fedora, ArchLinux. ), применение файла /etc/fstab для автоматического монтирования файловых систем является нежелательным, так как SystemD использует несколько другой механизм для монтирования файловых систем, хотя он и обратно совместим с /etc/fstab. Узнать, как можно использовать возможности SystemD для монтирования файловых систем можно в статье SystemD Automount
linux
Как подключить сетевой диск Windows в Linux
- Получить ссылку
- Электронная почта
- Другие приложения
Как подключить сетевой диск Windows в Linux
Примечание. Если вы используете дистрибутив, основанный на SystemD (Debian версии 8 и выше, Ubuntu версии 15.04 и выше, Fedora, ArchLinux. ), применение файла /etc/fstab для автоматического монтирования файловых систем является нежелательным, так как SystemD использует несколько другой механизм для монтирования файловых систем, хотя он и обратно совместим с /etc/fstab. Узнать, как можно использовать возможности SystemD для монтирования файловых систем можно в статье SystemD Automount
Монтирование сетевого диска windows (samba) в linux.
После перезагрузки должен монтироваться по клику на папку
Команда mount в Linux или все о монтировании разделов, дисков, образов ISO и SMB ресурсов.
Содержание
Диск /dev/sda: 40.0 ГБ, 40020664320 байт
255 heads, 63 sectors/track, 4865 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x815aa99a
Устр-во | Загр | Начало | Конец | Блоки | Id | Система |
/dev/sda1* | 1 | 1824 | 14651248+ | 83 | Linux | |
/dev/sda2 | 4742 | 4865 | 996030 | 82 | Linux | своп / Solaris |
/dev/sda3 | 1825 | 4741 | 23430802+ | 83 | Linux |
Пункты таблицы разделов расположены не в дисковом порядке
Диск /dev/sdb: 80.0 ГБ, 80026361856 байт
255 heads, 63 sectors/track, 9729 cylinders
Units = цилиндры of 16065 * 512 = 8225280 bytes
Disk identifier: 0x973248ad
Устр-во Загр Начало Конец Блоки Id Система
/dev/sdb1 * 1 9729 78148161 83 Linux
Диск /dev/sdc: 1027 МБ, 1027604480 байт
32 heads, 62 sectors/track, 1011 cylinders
Units = цилиндры of 1984 * 512 = 1015808 bytes
Disk identifier: 0x6f20736b
Из листинга выше видно, что к операционной системе подключено:
- два жестких диска: /dev/sda — операционная система и /dev/sdb — «файловая помойка»
- сменный USB-носитель: /dev/sdc
- в первой строке сообщается, что в качестве корневой ФС выступает файловая система reiserfs с параметрами монтирования: доступ на чтение и запись (rw)
- /dev/sda3 — это раздел диска /home
- /dev/sdc — это примонтированное сменное USB-устройство
Этого же результата можно достигнуть посмотрев содержимое файла /etc/mtab (в некоторых системах Linux файл называется /etc/mnt/tab)
Так же этот параметр может принимать значения:
Чтобы вручную задать параметры доступа к примонтированному разделу следует указать параметр:
- -o rw
- -o ro
Первый разрешает чтение и запись, второй только чтение. Ну например, так:
- Получить ссылку
- Электронная почта
- Другие приложения
Комментарии
Отправка комментария
Популярные сообщения из этого блога
Автоматическое монтирование дисков и разделов в Linux или что такое fstab? Проблема Debian
Автоматическое монтирование дисков и разделов в Linux или что такое fstab?
Существует простой способ перемонтирования всех разделов из /etc/fstab без перезагрузки системы.
Выполните следующую команду от рута :
# mount -a
Эта простая команда перемонтирует все файловые системы указанные в /etc/fstab, за исключением разделов с опцией noauto.
В результате обычного монтирования командой mount параметры будут сохранены до первой перезагрузки ОС. Подробнее о использовании команды mount можно прочитать статью «Команда mount в Linux или все о монтировании разделов, дисков, образов ISO и SMB ресурсов». После перезагрузки ОС все эти действия необходимо производить заново. Чтобы монтирование происходило в автоматическом режиме, при каждой загрузке операционной системы, нужно отредактировать конфигурационный файл fstab.
В этой статье подробно рассмотрен вопрос автоматического монтирования разделов жесткого диска и других накопителей при старте операционной системы Линукс. 1. Что такое /…
Подключение USB флешки к Debian
Подключение USB флешки к Debian Если мы просто вставим флешку в компьютер с Debian то внешне ничего не произойдёт и в какую директорию переходить, чтобы найти файлы с флешки — неизвестно. Чтобы зайти в папку флешки — нужно её сначала примонтировать.
Пойдём по порядку.
После того, как флешка вставлена в USB-порт, нужно определить каким устройством её определила система. Для этого набираем слудующую команду:
fdisk -l /dev/sdb или sda
Она даёт нам таблицу, где можно найти своё устройство (например по названию файловой системы) и увидеть присвоенную ему метку. В нашем случае это /dev/sdb1
Теперь можно монтировать флешку например в каталог /mnt.
Далее переходим в каталог /mnt и смотрим его содержимое.
Заметки Белого Рыцаря
30 октября 2009 г.
Подключение сетевого диска в Ubuntu
Предположим, что на компьютере с IP адресом 192.168.0.1 открыта на доступ папка linux и нам нужно подключить ее в Ubuntu, чтобы получить к ней доступ, как к любой другой папке на диске.
- Подключение сетевого диска вручную
После выполнения следующих команд содержимое сетевой папки //192.168.0.1/linux будет доступно пользователю в директории /media/sharename на локальном компьютере:
sudo mkdir /media/sharename
sudo mount //192.168.0.1/linux /media/sharename/ -o username=myusername,password=mypassword
Почему-то у меня при попытке подключиться к расшаренным windows-папкам пришлось указывать и username и password, даже для дисков, которые расшарены для всех. Если их вообще не писать, то попытка монтировки происходила под пользователем root, и mount возвращал ошибку -13 (permission denied), а если указать только имя пользователя — высвечивал приглашение ввести пароль доступа к папке.
Подключение сетевого диска вручную на чтение/запись для всех пользователей
sudo mkdir /media/sharename
sudo mount //192.168.0.1/linux /media/sharename/ -o username=myusername,password=mypassword,dmask=777,fmask=777
Подключение сетевого диска на этапе загрузки через fstab
sudo mkdir /media/sharename
sudo cp /etc/fstab /etc/fstab_backup
Создать файл /root/.smbcredentials и добавить следующие строки:
username=myusername
password=mypassword
Сделать файл /root/.smbcredentials недоступным для пользователей, а для root — только на чтение:
sudo chmod 400 /root/.smbcredentials
В файл /etc/fstab добавить следующие строки:
//192.168.0.1/linux /media/sharename smbfs credentials=/root/.smbcredentials 0 0
Для доступа на чтение/запись для всех:
//192.168.0.1/linux /media/sharename smbfs credentials=/root/.smbcredentials,dmask=777,fmask=777 0 0
На данный момент (в Ubuntu 9.10) тип smbfs устарел, поэтому нужно использовать тип cifs . Для типа cifs вместо dmask и fmask нужно указывать параметры dir_mode и file_mode , причем числовые значения этих параметров должны начинаться с нуля — » dir_mode=0777,file_mode=0777 «.
Подключение дисков из fstab без перезагрузки операционой системы
sudo mount -a
Для smbfs — //192.168.1.1/foldername
Для nfs — 192.168.1.1:/foldername
Дополнения:
- Если подключения диска не происходит, то можно посмотреть коды возвращаемых ошибок с помощью команды dmesg , а еще лучше запустить mount с помощью утилиты strace — sudo strace mount . .
Если mount возвращает ошибку (или вообще происходит нечно непонятное), то в первую очередь убедитесь, что у вас установлен mount , соответствующий типу файловой системы, которую вы хотите подключить. Например, для nfs в системе должен быть установлен mount.nfs , для smbfs — mount.smbfs , для cifs — mount.cifs и т.д. В качестве иллюстрации проблемы можно привести пример с cifs : при отсутствующем mount.cifs можно вполне успешно примонтировать cifs-диск используя параметры » username=. password=. «, но при этом попытка использования credential-файлов, будет заканчиваться ошибкой (http://ubuntuforums.org/archive/index.php/t-79612.html).
Ошибка монтирования » mount error 12 = Cannot allocate memory » при попытке подключения к расшаренной папке Windows.
Возможная причина — не хватает памяти на сервере (то есть, в Windows), а не на клиенте. В этом случае, могут помочь изменения в реестре Windows: . \LanmanServer
\Parameters\IRPStackSize (для XP, 2000, NT) или . /LanmanServer\Parameters\Size и . \Session Manager\Memory Management\LargeSystemCache (для Windows 7).
Ошибка монтирования » mount error 5 = Input/output error «. В логах dmesg сообщается об ошибке «CIFS VFS: cifs_read_super: get root inode failed«.
Если при этом упоминается «Malformed FILE_UNIX_BASIC_INFO response«, то возможно поможет добавление nounix в параметры вызова команды mount .
Еще одна возможная причина — проблемы с правами доступа к расшаренной папке. У меня такая ошибка возникла, когда на папку, которую, я хотел примонтировать, в числе прочих были установлены права «Everyone — Access denied». После корректировки прав доступа всё успешно примонтировалось.
Проблема монтирования CIFS диска на Ubuntu 9.10 — ресурс расшарен на другой unix-системе и успешно монтируется, но доступен только на чтение, хотя, если подключиться к этому ресурсу с помощью smbclient , то ресурс доступен и на чтение, и на запись.