Как из linux зайти в общую папку windows
Перейти к содержимому

Как из linux зайти в общую папку windows

  • автор:

SDB:Доступ к общим сетевым ресурсам Windows

Необходимо получить доступ к разделяемым папкам на машинах Windows из Вашей Linux системы.

Выполнение команд вручную

Сетевые ресурсы Windows могут быть подключены вручную с помощью команды mount. Для этого удостоверьтесь, что пакет samba-client установлен. Сначала, просмотрите доступные ресурсы на машине Windows, выполнив следующую команду с правами пользователя root:

smbclient -L netbios-name

netbios-name — NetBIOS-имя Windows машины. Если попытка доступа к ресурсу потерпит неудачу, то потребуется указать имя пользователя и пароль. В этом случае будет использоваться следующий синтаксис команды:

smbclient -L netbios-name -U user_name

Эта команда выведет список доступных ресурсов:

earth:~ # smbclient -L winmachine -U testuser added interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0 Password: Anonymous login successful Domain=[WORKGROUP] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] Sharename Type Comment --------- ---- ------- IPC$ IPC Remote-IPC testshare Disk test-share ADMIN$ Disk Remoteadmin C$ Disk Standard share Server Comment --------- ------- WINMACHINE Workgroup Master --------- ------- WORKGROUP WINMACHINE

Согласно приведенному списку, папка testshare является сетевым ресурсом компьютера winmachine. Чтобы выполнения команду mount, точка монтирования должна быть создана заранее:

mkdir -p /windows/winshare

Теперь смонтируйте сетевой ресурс Windows в своей файловой системе посредством следующей команды (замените имя компьютера и папки на используемые в Вашем случае):

mount -t cifs //winmachine/testshare /windows/winshare

Эта команда смонтирует сетевой ресурс testshare Windows компьютера winmachine. Данные будут доступны в каталоге /windows/winshare.

Если Windows компьютер потребует произвести авторизацию пользователя, синтаксис команды будет следующий:

mount -t cifs -o username=user,password=secret //winmachine/testshare /windows/winshare

Замените user на нужное имя сервера для авторизации на Windows машине и secret на пароль.

Для папок монтируемых автоматически при каждом запуске системы, вставьте соответствующие опции в файл /etc/fstab (запишите в одну строку):

//winmachine/testshare /windows/winshare cifs auto,gid=users,fmask=0664,dmask=0775,iocharset=iso8859-15 0 0

Пример содержит дополнительные опции, такие как gid=users, которые означают, что не только root, но и обычным пользователи Linux могут получить доступ к данным на сетвом ресурсе Windows или fmask и dmask, которые определяют права доступа которые будут установлены на файлы или папки после монтирования.iocharset=cp1251 определяет кодировку. Увидеть дополнительные опции можно с помощью команды man smbmount.

Так как все пользователи в системе Linux имеют права на чтение для файла /etc/fstab, параметры username и password не должны непосредственно указываться в этом файле. Вместо этого, используйте опцию credentials=/path/file_name, которая позволит Вам создать файл доступный только для чтения пользователю root, чтобы сохранить имя пользователя и пароли в секрете.

Соответствующая строка в файле /etc/fstab может быть похожа на эту (снова, все в одну строку):

//winmachine/testshare /windows/winshare cifs auto,gid=users,umask=0002,iocharset=iso8859-15,credentials=/etc/winpassword 0 0

Затем создайте файл паролей /etc/winpassword со следующим содержимым

username=user password=secret

и назначьте права на чтение и запить только пользователю root с помощью команды

chmod 600 /etc/winpassword

Средствами KDE3

LAN Information Server LISa (Сервер информации в сети), доступный в KDE, предоставляет доступ к сетевым ресурсам Windows очень легко в окне файлового менеджера и веб-браузера Konqueror. LISa позволяет Вам искать общие ресурсы в своей сети. В зависимости от метода поиска, показывая не только Windows и Samba сетевые ресурсы, но также и FTP, HTTP, SSH и NFS вервисы.

Сначала удостоверьтесь, что пакеты kdenetwork3-lisa, kdenetwork3-lan, kdebase3-samba, samba-client и (если нужно) samba установлены. Если нет — установите их с помощью YaST.

Запустите Центр Управления KDE и выберите следующие пункты меню, чтобы запустить мастер настройки LISa:

  • Сеть
  • -> Обзор сети
  • -> Настройка LISa

Сначала, задайте метод поиска. Преимущества метода «Send pings» заключаются в том, что в дополнение к общим сетевым ресурсам Windows будут найдены и компьютеры с другими сетевыми службами. Хотя он и надежен, этот метод не подходит для больших сетей.

Пакет samba должен быть установлен, чтобы использовать метод «Send NetBIOS Broadcasts», потому что программа nmblookup использует его. Будут найдены только машины с общими сетевыми ресурсами Windows. Для получения дополнительной информации обратитесь к документации.

Если Вы выберите первый метод, то диапазон для «пингования» LISa будет установлен в следующем поле ввода. Введите IP-адрес и маску сети. Например, в случае частной сети класса C нужно ввести 192.168.0.0/255.255.255.0. Вы можете просто согласиться с параметрами по умолчанию. Если Вы сомневаетесь, сравните IP-адрес и сетевую маску с выводом команды:

Если служба LISa используется для доступа только к Linux компьютеру — введите IP-адрес и сетевую маску компьютера в поле «Доверенный узел». IP-адрес Linux машины должен быть также введен в поле «Собственный широковещательный сетевой адрес». Что касается интервала обновления, просто оставьте значение по умолчанию 300 сек. Опции в меню «Дополнительные настройки» требуются только, если LISa не найдет ни одного компьютера в сети. Закройте окно настроек.

Чтобы сохранить настройки в файле /etc/lisarc для дальнейшего использования, нажмите кнопку Применить в Центре управления (нижний левый угол), введите пароль пользователя root и нажмите OK. Центр управления KDE закроется. Запустите LISa введя следующую команду в терминале от имени пользователя root:

Для автоматического запуска этой службы при загрузке компьютера выполните команду

Для доступа к общим сетевым ресурсам Windows, откройте файловый менеджер KDE — Konqueror и введите lan:/ в поле URL. Будут перечислены компьютеры которые предоставляющие сетевые службы. Отобразить эти службы можно нажатием на имя узла (smb означает общие сетевые ресурсы Windows). Теперь у Вас есть доступ к ресурсам этого компьютера.

Информация от разработчика о LISa доступна на http://lisa-home.sourceforge.net.

Проблемы получения доступа с помощью LISa

Если Вы получаете сообщение об ошибке «Error while loading 'kio_lan'» (Ошибка при загрузке ‘kio_lan’) введя lan:/, то Вы используют испорченный пакет из репозитария обновления. В этом случае, имя машины Windows должно быть указано в Konqueror как показано ниже:

smb://netbios-name

Или переустановите пакет kdenetwork3-lan с CD/DVD.

Примечание: Монтирование сетевых ресурсов Windows не включается в список бесплатно предоставляемой поддержки по установке. Расширенная поддержка допускает помощь по данной тематике. Больше информации о этом сервисе доступно по ссылке http://www.suse.de/en/services/support/private/advanced.html.

Средствами KDE4

KDE4 предоставляет очень легкий способ получения доступа не только к сетевым ресурсам Windows и Samba, но и по протоколам FTP, HTTP, SSH и NFS прямо в окне файлового менеджера Dolphin или веб-браузера Konqueror. Просто введите в адресной строке Dolphin (Konqueror)

чтобы увидеть доступные в вашей сети сетевые ресурсы Windows. Для получения доступа к конкретному компьютеру или папке на этом компьютере введите в адресной строке следующее:

smb://имя_машины/
smb:/имя_рабочей_группы/имя_машины

Сначала удостоверьтесь, что пакеты kdenetwork4-filesharing, kio_network, kdnssd, samba-client и (если нужно) samba установлены. Если нет — установите их с помощью YaST.

Примечание: При использовании KDE версии меньшей 4.4 возможны проблемы с отображением файлов в именах которых встречаются кириллические символы.

Чтобы установить имя пользователя и пароль используемые для обзора сети запустите Параметры системы и выберите Общий доступ к файлам.

Актуальная информация

  • openSUSE Samba SOHO LAN — для начинающих
  • openSUSE Samba SOHO LAN — для опытных пользователей
  • Windows сервер печати для клиентов на базе openSUSE
  • openSUSE Samba сервер печати для Linux и клиентов на базе windows
  • Аутентификация файловых серверов SUSE Linux в домене Windows на базе AD (статья на habrahabr.ru)

Подключиться к общей папке,расположеной на Windows 10

Через стандартный менеджер файлов твоей DE. Там должна быть опция просмотра сетевого окружения, найди там свой виндокомп и заходи на шару.

cocucka ★★★★☆
( 12.03.21 13:53:34 MSK )
Последнее исправление: cocucka 12.03.21 13:54:16 MSK (всего исправлений: 1)

Ответ на: комментарий от AlexVR 12.03.21 13:50:32 MSK

нет. С друких устройств (андроид и другие виндовсы) подключение есть. Без пароля

vjqzotu
( 12.03.21 13:53:57 MSK ) автор топика

Вводи в своём фм.

anonymous
( 12.03.21 13:54:46 MSK )
Ответ на: комментарий от cocucka 12.03.21 13:53:34 MSK

через стандартный файловый менеджер — Сеть — Обзор сети- сеть windows… «не удалось открыть «сеть windows» нет такого файла или каталога

vjqzotu
( 12.03.21 13:56:21 MSK ) автор топика
Ответ на: комментарий от vjqzotu 12.03.21 13:56:21 MSK

Там можно ввести сетевой адрес внизу. Введи smb://имя_виндового_компа/имя_шары , можешь ещё ip-адрес вместо имени компа попробовать. Но если ты не в той же сети, что и виндовый комп, то ничего не выйдет.

cocucka ★★★★☆
( 12.03.21 14:00:09 MSK )
Ответ на: комментарий от anonymous 12.03.21 13:54:46 MSK

Вводил «smb://ip_компа_с_виндой/нужнаяпапка»- итог-запрашивал пароль какой-то. Ввел просто ip винды (как Вы указали) — все получилось. Спасибо прилюбезнейшее Вам. Только после перезапуска Debian снова папка пропала в обзоре сети. Можно как-то ее зафиксировать,чтоб каждый раз ip вручную не вбивать?

Как в операционной системе Linux увидеть сетевую папку Windows?

Чтобы воспользоваться сетевыми папками общей сети в операционной системе Linux нужно ее смонтировать, есть несколько вариантов для достижения цели:

Монтирование сетевой папки Windows в Linux через fstab:

  1. yum install samba-client samba-common cifs-utils;
  2. mkdir /mnt/windows (или выбрать и создать любую другую папку, в которой будет доступна сетевая папка);
  3. Прописать в файле /etc/fstab (для автоматического монтирования при загрузке системы) //адрес_папки_в_сети/win/mnt/gsa cifs. iocharset=utf8,uid=500,gid=500,suid, workgroup=domain.local,credentials=/root/password.txt 0 0;

Допустим сетевая папка находится и доступна по адресу \\192.168.1.2\.

То мы получим такой вид записи : //192.168.1.2/win /mnt/gsa cifs iocharset=utf8,uid=500,gid=500,suid,workgroup=domain.local,credentials=/root/password.txt 0 0.

Монтирование сетевой папки Windows в Linux вручную:

mount -t cifs ‘\\адрес_в_сети\win’ /mnt/win -o sername=user1,password=password1,workgroup=company.local,rw,iocharset=utf8,uid=500,gid=500

Linux: подключить общую сетевую папку Windows по SMB (CIFS)

В этой статье мы рассмотрим, как в Linux смонтировать общую сетевую папку, расположенную на хосте Windows. В Windows для доступа к общим сетевым папкам используется протокол SMB (Server Message Block), который ранее назывался CIFS (Сommon Internet File System). В Linux для доступа к сетевым папкам Windows по протоколу SMB можно использовать клиент cifs-utils или Samba.

Совет. Для доступа к сетевым папкам по SMB/CIFS используется порт TCP/445. Для разрешения имени используются порты UDP 137, 138 и TCP 139. Если эти порты закрыты, вы сможете подключиться к сетевой папке Windows только по IP адресу.

Смонтировать сетевую папку в Linux с помощью cifs-util

Вы можете смонтировать сетевую папку, находящуюся на Windows хосте, с помощью утилит из пакета cifs-util. Для установки пакета выполните команду:

  • В Ubuntu/Debian: $ sudo apt-get install cifs-utils
  • В CentOS/Oracle/RHEL: $ sudo dnf install cifs-utils

Создайте точку монтирования:

$ sudo mkdir /mnt/share

Теперь вы можете смонтировать сетевую папку с компьютера Windows под пользователем User03с помощью команды:

$ sudo mount.cifs //192.168.31.33/backup /mnt/share -o user=User03

Укажите пароль пользователя Windows для подключения к сетевой папке.

mount.cifs подключить сетевую папку smb в linux

При подключении сетевой SMB папки можно задать дополнительные параметры:

$ sudo mount -t cifs -o username=User03,password=PasswOrd1,uid=1000,iocharset=utf8 //192.168.31.33/backup /mnt/share

  • //192.168.31.33/backup – сетевая папка Windows
  • /mnt/share – точка монтирования
  • -t cifs – указать файловую систему для монтирования
  • -o опции монтирования (эту опцию можно использовать только с правами root, поэтому в команде используется sudo)
  • username=User03,password=PasswOrd1 – имя и пароль пользователя Windows, у которого есть права доступа к сетевой папке. Можно указать имя пользователя guest, если разрешен анонимный доступ к сетевой папке
  • iocharset=utf8 – включить поддержку кодировки UTF8 для отображения имен файлов
  • uid=1000 – использовать этого пользователя Linux в качестве владельца файлов в папке

команда mount cifs в linux

По умолчанию шары Windows монтируются в Linux с полными правами (0755). Если вы хотите изменить права по-умолчанию при монтировании, добавьте в команду опции:

dir_mode=0755,file_mode=0755

Если вы хотите использовать имя компьютера при подключении сетевого каталога Windows, добавьте в файл /etc/hosts строку:

IP_АДРЕС ИМЯ_КОМПЬЮТЕРА

Чтобы не указывать учетные данные пользователя Windows в команде монтирования сетевой папки, их можно сохранить в файле.

Добавьте в файл:

username=User03 password=PasswOrd1

сохранить пароль для подключения к сетевой папке в windows

Для подключения к папке под анонимным пользователем:

username=guest password=

Если нужно указать учетную запись пользователя из определенного домена Active Directory, добавьте в файл третью строку:

domain = vmblog.ru

Измените права на файл:

$ chmod 600 ~/.windowscredentials

Теперь при подключении сетевой папки вместо явного указания имени пользователя и пароля можно указать путь к файлу:

$ sudo mount -t cifs -o credentials=/home/sysops/.windowscredentials,uid=1000,iocharset=utf8 //192.168.31.33/backup /mnt/share

Отмонтировать сетевую SMB папку:

$ sudo umount /mnt/share

Автоматическое монтирование сетевой папки в Linux

Можно настроить автоматическое монтирование сетевой папки Windows через /etc/fstab.

$ sudo mcedit /etc/fstab

Добавьте в файл следующую строку подключения SMB каталога:

//192.168.31.33/backup /mnt/share cifs user,rw,credentials=/home/sysops/.windowscredentials,iocharset=utf8,nofail,_netdev 0 0
  • rw – смонтировать SBM папку на чтение и запись
  • nofail – продолжить загрузку ОС если не удается смонтировать файловую систему
  • _netdev – указывает что подключается файловая система по сети. Linux не будет монтировать такие файловые системы пока на хосте не будет инициализирована сеть.

Вы можете указать версию протокола SMB, которую нужно использовать для подключения (версия SMB 1.0 считается небезопасной и отключена по-умолчанию в современных версиях Windows). Добавьте в конец строки с настройками подключения параметр vers=3.0 .

//192.168.31.33/backup /mnt/share cifs user,rw,credentials=/home/sysops/.windowscredentials,iocharset=utf8,nofail,_netdev,vers=3.0 0 0

Если на стороне хоста Windows используется несовместимая (старая версия) SMB, при подключении появится ошибка:

mount error(112): Host is downилиmount error(95): Operation not supported

Чтобы сразу смонтировать сетевую папку, выполните:

Linux: подключиться к сетевой папке с помощью клиента samba

Установите в Linux клиент samba:

  • В Ubuntu/Debian: $ sudo apt-get install smbclient
  • В CentOS/Oracle/RHEL: # dnf install smbclient

Для вывода всех SMB ресурсов в локальной сети:

Вывести список доступных SMB папок на удаленном хосте Windows:

smbclient -L //192.168.31.33 -N

Если в Windows запрещен анонимный доступ, появится ошибка:

session setup failed: NT_STATUS_ACCESS_DENIED

В этом случае нужно указать учетную запись пользователя Windows, которую нужно использовать для подключения:

smbclient -L //192.168.31.33 -U User03

Если нужно использовать учетную запись пользователя домена, добавьте опцию –W:

smbclient -L //192.168.31.33 -U User03 –W Domain

smbclient вывести список общих папок на компьютере windows

Для интерактивного подключения к сетевой папке Windows используется команда:

smbclient //192.168.31.33/backup -U User03 -W Domain

smbclient //192.168.31.33/backup -U User03

Для анонимного доступа:

smbclient //192.168.31.33/backup -U Everyone

После успешного входа появится приглашение:

Вывести список файлов в сетевой папке:

smbclient вывести список файлов в сетевой папке linux

Скачать файл из сетевой папки Windows:

get remotefile.txt /home/sysops/localfile.txt

Сохранить локальный файл из Linux в SMB каталог:

put /home/sysops/localfile.txt remotefile.txt

Можно последовательно выполнить несколько команд smbclient:

$ smbclient //192.168.31.33/backup -U User03 -c «cd MyFolder; get arcive.zip /mnt/backup/archive.zip»

Полный список команд в smbclient можно вывести с помощью команды help. Команды smbclient схожи с командами ftp клиента.

При использовании команды smbclient может появиться ошибка:

Unable to initialize messaging contextsmbclient: Can't load /etc/samba/smb.conf - run testparm to debug it.

Чтобы исправить ошибку, создайте файл /etc/samba/smb.conf.

Если на хосте Windows отключен протокол SMB 1.0, то при подключении с помощью smbclient появится ошибка:

Reconnecting with SMB1 for workgroup listing. protocol negotiation failed: NT_STATUS_CONNECTION_RESET Unable to connect with SMB1 -- no workgroup available.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *