Как известно, информация на компьютерах хранится в виде файлов и структурируется при помощи каталогов (они же — директории). Микрокомпьютер Omega2, естественно, исключением не является. Соответственно, при работе с ним Вам наверняка придётся работать с файлами и каталогами, — редактировать, копировать, переносить, скачивать, закачивать и так далее и тому подобное. Вот об этом сегодня и поговорим.
Понятное дело, что в линуксе для работы с файлами и каталогами имеются штатные средства, работающие из командной строки. Это, например, такие команды как:
- cp — копирование,
- mv — перемещение,
- mkdir — создание каталога,
- rm и rmdir — удаление файлов и каталогов,
- cat — просмотр, копирование, объединение файлов,
а так же многие, многие другие.
Речь, однако, пойдёт не о них, а о средствах, позволяющих сделать работу с микрокомпьютерами Omega2 более удобной и приятной.
Установка и использование файлового менеджера
Первое из таких средств для повышения удобства, — Midnight Commander. Это небольшой файловый менеджер, отображающий структуру папок и файлов в табличном виде, примерно так же, как Norton Commander или более современный Far Manager.
Midnight Commander умеет искать, копировать, перемещать и удалять файлы и папки, позволяет легко перемещаться от одного каталога к другому, позволяет пользоваться командной строкой, в него встроены средства просмотра и редактирования файлов и даже FTP-клиент.
Установить этот файловый менеджер очень просто. Как обычно, — подключаемся в консоль через Serial0 или по SSH и первым делом обновляем список доступных для установки из репозитория пакетов:
root@Omega-XXXX:/# opkg update |
Далее устанавливаем Midnight Commander командой:
root@Omega-XXXX:/# opkg install mc |
Вот и всё. Чтобы начать работу — просто выполните команду mc и перед вами в виде таблицы появятся ваши файлы и папки. Ниже показан скриншот, на котором видно, как это всё выглядит.
Работать с этим файловым менеджером довольно просто. Если есть вопросы, то на них почти всегда можно найти ответ в интернете (продукт с открытым исходным кодом и информации на него море), хотя назначение большей части кнопок и так интуитивно понятно. Тем не менее, небольшую шпаргалку по Midnight Commander я напишу:
- F1 или Alt+1 — помощь
- F2 или Alt+2 — пользовательское меню
- F3 или Alt+3 — просмотр файла
- F4 или Alt+4 — редактирование файла
- F5 или Alt+5 — копирование
- F6 или Alt+6 — перемещение / переименование
- F7 или Alt+7 — создание новой директории
- F8 или Alt+8 — удаление
- F9 или Alt+9 — верхнее меню
- F10 или Alt+10 — выход
- Tab — переключение с одной панели на другую
- стрелки вверх/вниз — перемещение курсора в пределах одной панели
Работа с файлами в пределах одной омеги — это хорошо, но кроме этого было бы неплохо как-то передавать файлы с омеги на домашний ПК или с одной омеги на другую. Это дало бы возможность заниматься проектами на домашнем ПК, а потом заливать их в омегу, или переносить проекты между разными омегами. То есть следующий вопрос, решение которого могло бы сильно облегчить нам жизнь, — это передача файлов с омеги и/или на омегу.
Можно конечно использовать для передачи файлов usb-флешку, но это слишком банально, если не сказать тупо. Очевидно, что поскольку мы работаем с омегой по сети, то и файлы удобнее всего передавать по сети.
Пожалуй лучшее, что мы можем сделать — это использовать протокол SCP (протокол копирования файлов, использующий в качестве транспорта ssh).
В линуксе воспользоваться этим методом поможет специальная утилита с таким же названием, — scp (хм, неожиданно, да?).
Чтобы при помощи утилиты scp скопировать файл с вашего линуксового компа на омегу — нужно выполнить из командной строки команду, вида:
scp SourceFile root@omega_ip_address:/TargetDirectory/TargetFile |
Если Вы хотите скопировать файл из омеги к себе на комп, то команда должна выглядеть так:
scp root@omega_ip_address:/SourceDirectory/SourceFile TargetFile |
Специальными ключами можно расширить функционал команды. Например, вот такой командой:
scp -r user@host:/directory/SourceFolder TargetFolder
можно скопировать из омеги целую директорию (SourceFolder), рекурсивно перебирая все входящие в неё подпапки и файлы (для этого был использован ключ -r).
Ладно, едем дальше. Линукс линуксом, но большинство людей пока пользуются виндой. Как быть в этом случае?
В этом случае всё ещё проще, — нам поможет графический SCP-клиент WinSCP.
Скачиваем его по приведённой выше ссылке, устанавливаем и запускаем. При входе указываем следующие параметры соединения:
- Протокол передачи — SCP
- Имя хоста — пишем ip-адрес омеги
- Порт — оставляем по умолчанию (22)
- Имя пользователя — root
- Пароль — onioneer
Заполняем все параметры подключения и жмём кнопку Войти. После этого WinSCP подключится к омеге и вы сможете обмениваться с ней файлами.
Что ещё у нас есть простого и специально заточенного под передачу файлов по сети? Правильно, — протокол FTP. Как с ним работать? Опять правильно, — через FTP-серверы и FTP-клиенты.
Первый вариант — поднять на домашнем ПК ftp-сервер (под винду можно взять, например, бесплатный ftp-сервер Filezilla, под линух их чуть больше, чем много) и подключаться к нему с омеги ftp-клиентом.
По счастливому стечению обстоятельств, ftp-клиент встроен в уже знакомый нам Midnight Commander (Ура, можно сэкономить место). Подключиться с его помощью к ftp-серверу можно следующим образом:
- Заходим в верхнее меню (F9 или Alt+9)
- Во вкладке Left или Right (смотря с какой стороны вы хотите показывать файлы ftp-сервера) выбираете пункт FTP link…
- В появившемся окне (FTP to machine) вам предложат ввести данные для подключения (Enter machine name (F1 for details):). В строке ввода пишем имя_пользователя:пароль@адрес_сервера. В качестве адреса сервера можно указать ip-адрес ftp-сервера или его доменное имя (типа ftp.myserver.ru). Пароль можно не вводить (в этом случае он будет запрошен при подключении). Если перед именем пользователя поставить восклицательный знак (!), то ftp-соединение будет открыто в пассивном режиме.
Всё, после подключения вы увидите в соответствующей панели файлового менеджера (слева или справа, смотря что выбрали) каталоги и файлы ftp-сервера и сможете копировать файлы с омеги на сервер и обратно, точно также, как при копировании и переносе файлов внутри омеги.
Как я уже говорил, второй вариант — поднять ftp-сервер на самой омеге. Выполняем:
opkg update opkg list | grep ftp |
и видим, что родной репозиторий предлагает два варианта: vsftpd и vsftpd-tls. Шифрование нафиг (по крайней мере сейчас не об этом), поэтому ставим просто vsftpd:
opkg install vsftpd
Собственно, всё, можете подключаться ftp-клиентом (например, опять же клиентом Filezilla). Единственное, что нужно помнить — это то, что если вы в процессе работы создавали / удаляли / перемещали какие-то файлы, то для того, чтобы сервер (и, соответственно, клиент) все эти изменения увидел, — нужно перед подключением клиента перезапустить сервер vsftpd (для этого выполняем /etc/init.d/vsftpd restart).
Разумеется есть и другие варианты передачи файлов между ПК и омегой. Например, можно поднять на омеге samba-сервер (даже в родном репозитории есть один — samba36-server). Однако, IMHO все подобные другие варианты — это для гиков, ибо самые удобные описаны выше.
Кстати, в нашем магазине можно купить микрокомпьютер Omega2 по очень привлекательной цене.
- Часть 1. Первое знакомство
- Часть 2. Использование GPIO
- Часть 3. Док-плата
- Часть 4. Работа с файлами
- Часть 5. Работа с USB flash-дисками
- Часть 6. Установка, настройка и использование php для интерактивного взаимодействия
- Часть 7. Выполнение задач по расписанию с помощью планировщика Cron
- Часть 8. Подключаем проводной Ethernet.
- Часть 9. Сборка альтернативной прошивки на базе OpenWRT.