Попалась тут задачка. Есть сервер на Centos 7. В локальной сети без доступа в интернет от слова — совсем. Есть сервер под управлением Windows на котором есть сетевой диск Share_it$ с которого надо получить файлы из директории This. На сервере где стоит Centos есть только samba client (smbclient) и никакой возможности что-то еще доустановить -ни cifs-utils, ни smbfs. Ну что же, попробуем с тем что есть. В конце-концов smbclient — это что-то вроде ftp-client, следовательно он может и без посторонних утилит копировать файлы. Приступим.
Определяем что можем подключиться к серверу SMB и посмотреть список открытых сетевых ресурсов:
smbclient -L 10.10.10.2 -U%
Где 10.10.10.2 — адрес сервера с SMB ресурсом. Если выведет что-то вроде Access Denied — значит доступ в директорию ограничен и требуется ввести логин-пароль. Клиент их по идее должен запросить сам в интерактивном режиме.
Теперь нам нужно перейти в директорию куда мы будем складывать наши файлы получаемые c SMB:
cd /path/to/dir
Подключаемся к нужному сетевому ресурсу:
smbclient //10.10.10.2/SHARE_it$
Выводим список файлов в сетевом ресурсе:
dir
Перемещаемся в нужную нам директорию:
cd This
Выводим список файлов в директории This:
dir
Копируем каждый файл командой:
get filename1.txt
get filename2.txt
get filename3.txt
Отключаемся:
quit
Проверяем что файлы скопировались:
ls
На этом собственно всё. Мы скопировали файлы с удаленного smb-ресурса имея под рукой только smb-client