Android смонтировать сетевой диск

Как подключить Android к локальной сети LAN Windows

В этой статье — о том, как подключить ваш телефон или планшет на Android к локальной сети Windows. Даже если у вас нет никакой локальной сети, а компьютер дома всего один (но подключен к роутеру), все равно эта статья будет полезна.

Подключившись к локальной сети, вы сможете иметь доступ к сетевым папкам Windows на вашем Android устройстве. То есть, например, для того, чтобы посмотреть фильм, необязательно его будет скидывать на телефон (его можно воспроизвести прямо из сети), также облегчается и передача файлов между компьютером и мобильным устройством.

Перед подключением

Примечание: руководство применимо в том случае, когда и ваше Android устройство и компьютер подключены к одному Wi-Fi роутеру.

Прежде всего, нужно настроить на компьютере локальную сеть (даже если компьютер только один) и предоставить доступ по сети к нужным папкам, например, с видео и музыкой. О том, как это сделать, я подробно написал в предыдущей статье: Как настроить локальную сеть LAN в Windows.

В дальнейшей инструкции я буду исходить из того, что все, описанное в указанной выше статье уже выполнено.

Подключение Android к Windows LAN

В своем примере для подключения к локальной сети с Андроид я буду использовать бесплатное приложение файловый менеджер ES Проводник (ES Explorer). На мой взгляд, это лучший файловый менеджер на Android и, помимо прочего, в нем есть все необходимое для того, чтобы получить доступ к сетевым папкам (и далеко не только это, например, вы можете подключиться ко всем популярным облачным сервисам, в том числе и с разными аккаунтами).

Скачать бесплатно файловый менеджер для Android ES Проводник вы можете из магазина приложений Google Play https://play.google.com/store/apps/details?id=com.estrongs.android.pop

После установки, запустите приложение и перейдите на вкладку подключения к сети (ваше устройство при этом должно быть подключено по Wi-Fi через тот же роутер, что и компьютер с настроенной локальной сетью), переход между вкладками легко осуществляется с помощью свайпа (жест пальцем с одной стороны экрана до другой).

Далее у вас есть два варианта действий:

  1. Нажать кнопку Scan, тогда произойдет автоматический поиск компьютеров в сети (если нужный компьютер найден, можете сразу прервать поиск, иначе он может продолжаться долго).
  2. Нажать кнопку «Создать» и указать параметры вручную. При ручном указании параметров, если вы настраивали локальную сеть по моей инструкции, имя пользователя и пароль не понадобятся, зато нужен будет внутренний адрес IP компьютера в локальной сети. Лучше всего, если вы укажете на самом компьютере статический IP в подсети роутера, в противном случае при включении и выключении компьютера, он может изменяться.

После подключения, вы сразу получите доступ ко всем сетевым папкам, к которым такой доступ разрешен и сможете выполнять с ними нужные действия, например, как уже говорилось, проигрывать видео, музыку, смотреть фотографии или что-то еще на ваше усмотрение.

Как видите, подключение Android устройств к обычной локальной сети Windows — совсем не сложная задача.

Источник

Android смонтировать сетевой диск

Для функционирования программы необходимы права root пользователя.

Краткое описание:
Монтирование и использование сетевых ресурсов локально.

Описание:
Программа написана для монтирования и использования сетевых ресурсов на девайсе(локально) (к примеру: просмотр видео без ошибки «не поддерживается потоковая передача»)
необходимо : root
ядро с поддержкой CIFS (cifs.ko)
Android >= 1.6

нашёл программку на просторах ресурса XDA,
уже доступна в маркете.
для поддержки кириллицы в опциях надо ввести iocharset=utf8 но работает это тлько с ядрами с поддержкой utf8
у Wildmonk’s есть ядра с поддержкой UTF8 (кириллицы) (если не ошибся — только для Nexus one)

В версии 1.5 есть возможность загрузки нескольких модулей (указывать через двоеточие), пример:
/system/lib/modules/nls_utf8.ko:/system/lib/modules/cifs.ko
То есть возможно загружать сначала русские буквы, а потом сеть.
Перед тем как задавать вопрос — поищите по теме свой девайс!
ming39
Что-бы получить права полные, с удалением файлов, в свойствах через запятую пишем file_mode=0777

Кто с другими девайсами знаете где нарыть ядра с поддержкой UTF8 — пишите. прикреплю 😉

Читайте также:  Кодек mpg для андроид

Пишите в ветке мануалы и давайте ссылки на сырцы. будет время — добавлю в шапку. (если сдублируете сообщение в личку — супер,быстрее перекину в шапку

При добавлении шары в cifsmanager вводим путь к шаре, точку монтирования (лучше в /sdcard/cifs/), в поле options пишем «iocharset=utf8» без кавычек. Если шара доступна в сети (с других машин) без ввода логина/пароля — имя пользователя guest, пароль пустой. Иначе нужно ввести данные учетной записи для этой шары.

Если не получается получить доступ к шаре на win-системе (при монтировании возникает ошибка mount permission denied) — копать в сторону включения учетной записи гостя, для висты и 7ки в центре управления сетями и общим доступом отключить общий доступ с парольной защитой.

Есть у меня на ZTE Blade от Билайна (E400) уже имелась папка /system/lib/modules/, но, как оказалось, в ней нужно создать папку 2.6.32.9-perf

затем, я сее для удобства создал файлик для автоматического запуска некоторых команд для подготовки файлов:

Затем, делаем скрипт исполняемым и запускаем:

Если Всё в порядке, то сначала просто выведется несколько пустых строчек, а затем ещё несколько непустых, в которых, если модули в порядке, будет:

Скачать файлы модулей: ZTE_Blade__ZTE_V9__kernel_2.6.32.9_perf___cifs__slow_work__tun__nls_utf8_.ko_mod
ules.rar

Ах, да, чуть не забыл.
В CIFSManager выставляем в опциях все галки, а в пункте Path to cifs.ko[:modpath]*
пишем:

Создаём шару и в опциях пишем (пример для виндовых шар):

И ещё совет. Кто пользует XP и какого-то безпарольного пользователя, имеющего доступ к расшаренному ресурсу, чтобы шара открывалась без пароля, только с именем пользователя, лезем в Пуск/Настройки/Панель управления/Администрирование/Локальные политики безопасности. Или Пуск/Выполнить и пишем: secpol.msc

Там ищем Параметры безопасности/Локальные политики/Параметры безопасности и в списке справа почти в конце пункт «Учетные записи: ограничить использование пустых паролей только для консольного входа», дважды щелкаем мышкой и выбираем Отключить и затем жмём «Ок».

У меня Galaxy S (rooted)
2.1 ECLAIR.XWJM7
Kernel 2.6.29 [email protected] #2
Cifsmanager всегда пишет «no such device». Перепробовал все версии cifs.ko, какие только есть.

Сегодня смог подключить сетевую шару с помощью adb.
cifs.ko у меня находится на sdcard в /sdcard/cifs/cifs.ko.
Cifs.ko пришлось загрузить через adb:

После этого Cifsmanager без вопросов примонтировал шару.

[quote name=»Святитель Киприц» date=»18.09.2010, 10:09″ post=5222961]Плохой новостью стало, что те файлы, которые имеют в названии кирилицу, мало того, что вопросительными знаками отображаются, так они еще и не открываются программами.
Решилось: закинул nls_utf8.ko в ту же папку, где у меня валяется cifs.ko и прописал в опциях как сказано здесь:

Всё заработало, русские буквы видны и все запускается!
Its works!

Прикрепил файлы, которые я использовал, может кому пригодятся: cifs.ko и nls_utf8.ko.
Cifs.zip

сначала обязательно нужно загрузить slow-work.ko, только потом сifs.ko
например
insmod slow-work.ko
insmod cifs.ko

поддержка utf8 уже есть в ядре, так что с опцией iocharset=utf8 русские имена папок и файлов показываются нормальноFroyo.zip
проверил на прошивке JPO — работает на ура.

HTC Wildfire S версия ядра 2.6.35.10-ga66971c
(zombierzn)Cifs.ko для Wildfire с версией ядра 2.6.29-6fb59e13 (WildPuzzleROM v7.1).

В архиве 2 файла (cifs.ko и nls_utf8.ko). Второй нужен для того чтоб русские файлы нормально отображались. Файлы надо положить в /system/lib/modules/.

Так и не понял как сделать в программе чтоб инициализировался не только cifs.ko но и nls_utf8.ko, поэтому делал в GScript.
Для монтирования:

,iocharset=utf8 -t cifs

— пароль, удаленная шара (напр. \\192.168.1.2\share), — папка на коммуникаторе (напр. \sdcard\share).

где — смонтированная папка на коммуникаторе.

При создании скриптов в GScript надо поставить галку «Needs SU?».

В GScript можно вынести ярлыки скриптов на рабочий стол и получится едва ли не удобнее чем в программе этой.

Надеюсь кому нибудь пригодится:)

buzz_2.6.29_6fb59e13.zip
Добавлю: Вполне вероятно что прога не умеет правильно находить куда впихнуть модуль или не корректно обращяется к busybox и команде insmod. поэтому можно пользоваться выше описанным способом,либо 1 раз через ADB или тот-же Gscript\ASE выполнить «insmod».
по поводу

Я новичок в андроиде. Сделал так. Зашел на форум xda и ввел поиском cifs desire. Там была тема http://forum.xda-developers.com/showthread.php?p=7713599 сравнил номер ядра, мой! Скопировать в system/lib/modules не получилось какая-то засада как с подменой hosts, даже с рутом не дает это сделать. Ну фиг с ним. Создал на карте папку /sdcard/cifs/ и кинул туда cifs.ko, дальше просто, в настройках программы выбираем load via insmod и указываем путь к cifs.ko.

Читайте также:  Какая разница между андроидам или смартфоном

— там в архиве был еще какой-то nls с utf-8, что такое не понял, думаю для поддержки кириллицы в путях, но как использовать не понятно.

— тут на форуме еще была ссылка на cifs моего ядра от официальной 2.2 я его не тестил, поскольку все и так работает.

Немного добавлю.
собрано для ядра 2.6.32.15 и немного не догнал что за значения arm-eabi-4.4.0 — может это на Десайре что обозначает?

как использовать:
качаем cifs_bravo_stockfroyo.zip ( 108.82 КБ )

далее входим в Рекавери(?) (Десайра не имею — не могу нормально обьяснить что это значит)

далее в программе при настройке шары,в последнем пунктике вводим iocharset=utf8

в принципе должно работать. кто с Десайром попробуйте и отпишитесь.

1) Во первых надо найти модули cifs.ko, nls_utf8.ko для версии ядра вашего девайса.
Ищем по шапке темы, на xda-developers.com. Если непонятно для какой версии найденные модули, ищем внутри них строчку «vermagic=». Если полное соответствие — ура, если совпадает только числовая часть (например у вас 2.6.32.15-xxxxxxxx, а найдена 2.6.32.15-yyyyyyyy) — hex-редактором правим в каждом ko файле yyyyyyyy на xxxxxxxx. Если нет и таких, можно попробовать поискать для других устройств с тем же типом процессора.

2) копируем модули на флешку в /sdcard/cifs

3) через терминал (я использовал встроенный в SUFBS) задаем правильные права файлам
su
chmod 644 /sdcard/cifs/*.ko

Подготовка закончена.
Через терминал и su загружаем модули:
insmod /sdcard/cifs/cifs.ko
insmod /sdcard/cifs/nls_utf8.ko

Эти команды надо будет делать после каждой перезагрузки устройства. Чтобы не писать их терминале каждый раз, поставил GScript Lite и оформил в виде скрипта. Как вариант, можно грузить их автоматически через modprobe.

Теперь можно запускать cifsmanager и настраивать шары.

При добавлении шары в cifsmanager вводим путь к шаре, точку монтирования (лучше в /sdcard/cifs/), в поле options пишем «iocharset=utf8» без кавычек. Если шара доступна в сети (с других машин) без ввода логина/пароля — имя пользователя guest, пароль пустой. Иначе нужно ввести данные учетной записи для этой шары.

Если не получается получить доступ к шаре на win-системе (при монтировании возникает ошибка mount permission denied) — копать в сторону включения учетной записи гостя, для висты и 7ки в центре управления сетями и общим доступом отключить общий доступ с парольной защитой.

Источник

Добавляем поддержку монтирования Windows шар в Android

Купил недавно себе планшет Samsung Galaxy Tab Pro 10.1 LTE SM-T525 и захотелось дома смотреть на нём фильмы и другие файлы с моего сетевого диска, расшаренного через samba. Для этого в ядре должна быть поддержка CIFS и не только… в андроиде начиная с версии 4.2 это оказалось нетривиальной задачей.

1. Суть проблемы с пользовательскими монтированиями

Дело в том, что с версии 4.2 в Adnroid ввели многопользовательский режим и вместе с ним все файловые системы теперь монтируются как Slave, это приводит к тому, что файловая система смонтированная одним пользователем, не видна другим пользователям.
В виртуальной машине Dalvik андроида с версии 4.2 в файле vm/Init.cpp есть такой код:

Этот код монтирует рутовую файловую систему с флагами MS_SLAVE и MS_REC, это означает что файловые системы, смонтированные внутри / будут также монтироваться по умолчанию с флагом MS_SLAVE и доступны только пользователям их смонтировавшим и их дочерним процессам. Для решения этой проблемы, пользователем mkasick с xda-developers был предложен следующий патч для ядра в функции do_mount:

Суть патча в том, что мы перехватываем вызов do_mount для / с флагами MS_SVALE и MS_REC и не даём их установить. Но для работы андроида эти флаги необходимы для пользовательских файловых систем в /storage, иначе система у меня просто не грузится. Поэтому мы вызываем do_mount(NULL, (char *)storage, NULL, (MS_SLAVE | MS_REC), NULL)) == 0). Чтобы последний вызов работал, /storage должна быть точкой монтирования, а не просто директорией, поэтому в файле init.rc в рамдиске, где происходит создание директории /storage необходимо туда смонтировать tmpfs

После этих манипуляций, точки монтирования за пределами /storage будут видны всем пользователям.

Для начала необходимо добавить поддержку CIFS в Linux ядро. Это можно сделать двумя способами: скомпилировать модуль для ядра cifs, либо добавить поддержку cifs в само ядро. Первый способ лучше, т.к. не надо будет прошивать новое ядро и терять гарантию на некоторых аппаратах.
Ядро моего планшета оказалось собрано без поддержки модулей, так что мне пришлось пересобирать и прошивать новое ядро:
Для сборки ядра необходимо:
а) Машина на Linux
б) Исходники ядра для вашего девайса, для Самсунга берём здесь opensource.samsung.com
в) Toolchain для сборки, берём тут developer.android.com/tools/sdk/ndk/index.html
Для сборки ядра создаём директорию

Читайте также:  Андроид webview отключена как включить систему

/android, и распаковываем внутри неё исходники ядра в директорию kernel, android-ndk в android-ndk-r9

Теперь применяем патч для исправления проблемы с пустыми точками монтирования

Далее необходимо прописать переменные окружения и подготовить конфигурационный файл ядра, для моего самсунга это делается так:

Данная команда создаст файл .config, далее необходимо выполнить команду make menuconfig и перейти в раздел File Systems -> Network File Systems и отметить пункт CIFS support (в случае сборки модуля, необходимо отметить буквой M) и отмечаем RESTRICT_ROOTFS_SLAVE в разделе File Systems

Далее выходим клавишей Esc и сохраняем конфигурацию. Теперь собираем ядро командой make -j3 (вместо цифры 3 указываем количество ядер процессора+1)
На этом сборка ядра окончена.

3. Сборка boot.img для прошивки

Теперь необходимо прошить новое ядро в планшет. Для этого необходимо собрать образ boot.img в который входит ядро, ramdisk и device tree для чипов Qualcomm.
Для начала нам надо получить родной ramdisk, для этого распаковываем оригинальную прошивку (это обычный tar) и достаём оттуда файл boot.img

Для распаковки boot.img понадобится пакет bootimg_tools
Скачиваем его в

/android, и распаковываем командой split_boot файл boot.img

и получаем распакованный ramdisk в директории boot/ramdisk
Теперь необходимо поправить пару файлов в рамдиске для перевода Selinux в permissive mode и для монтирования /storage как tmpfs
В файле init.rc ищем строчку setsebool debugfs 1 и заменяем её на

Далее ищем строку setprop selinux.reload_policy 1 и меняем её на setprop selinux.reload_policy 0
Для монтирования /storage как tmpfs ищем строчку mkdir /storage 0751 root sdcard_r и после неё добавляем

Также в файле defaul.prop меняем ro.secure=1 на ro.secure=0 и ro.adb.secure=1 на ro.adb.secure=0

Теперь собираем ramdisk назад

Далее для сборки нам ещё необходим файл dt.img, он генерируется утилитой dtbTool которая идёт в комплекте с ядром

Теперь, когда есть всё необходимое для сборки boot.img, начинаем саму сборку при помощи утилиты mkbootimg (поставляется так же с ядром)

Всё, файл boot.img готов. Для прошивки его через Odin, делаем из него boot.tar.md5

Теперь прошиваем его через Odin

На Samsung есть проблема, что с катомным ядром перестаёт работать wifi, лечится это правкой файла build.prop на рабочей системе. Необходимо заменить строчку ro.securestorage.support=true на ro.securestorage.support=false

4. Настройка ПО для монтирования

Для монтирования шар будем использовать программу CifsManager

Тут есть несколько нюансов в настройке:
а) В cifs на ядре 3.4 что-то поломали, и теперь он не обрабатывает параметр device команды mount, т.е. конструкция вида
mount -t cifs //pc/share /mnt больше не работает, монтируемую шару необходимо указывать в параметре unc, т.е. предыдущая команда будет выглядеть так:

б) Теперь про точку монтирования. Как писалось выше, если мы будем монтировать внутри /storage, то такая шара будет пустая для других приложений, если же монтировать куда-то вне /storage, то большинство приложений её не смогут открыть, т.к. позволяют открывать файлы только внутри карты памяти. Выход есть. Внутренняя память /storage/emulated/0 на самом деле лежит в /data/media/0, а /storage/emulated/0 — это эмуляция fat32 для этой директории. Так что мы смело можем можем монтировать например в /data/media/0/cifs и увидим нашу шару в фйловом менеджере в internal storage.
в) Есть ещё нигде не описанный нюанс, команда mount -t cifs почему то игнорирует параметры, идущие после password, например в команде

параметр sec=ntlmssp не будет обработан. Поэтому, если для подключения к шаре необходим пароль, то в CifsManager поле Password оставляем пустым, а пароль пишем в поле Options в самый конец, как на скриншоте выше.
г) Для корректной работы с русскими буквами в именах файлов, необходимо добавить опцию iocharset=utf8

Теперь монтируем шару в CifsManager и наслаждаемся!

Источник

Оцените статью