Телефонуйте » (+38) 096 227 41 41

Рано чи пізно будь-який користувач Raspberry Pi стикається з необхідністю перенесення даних з робочого комп'ютера на RPi і назад. В принципі, тут можна скористуватися кардрідером або передавати файли через ssh-з'єднання, але є ще кілька більш зручних способів.

Midnight Commander

Midnight Commander (mc) - консольний файловий менеджер і браузер репозиторію (с.84). Це дружня система для вирішення багатьох завдань у вікні терміналу і найшвидший спосіб для копіювання, переміщення або видалення декількох файлів. mc також може виконувати швидку передачу файлів через FTP і мережею. Іншими унікальними особливостями є можливість переглядати архіви всередині і відновлювати файли.

Як правило, Midnight Commander входить в пакет встановлення ОС і запускається введенням mc у вікні терміналу.
Якщо mc не встановлений, то встановлюємо, як зазвичай:
sudo apt-get install mc
Основне вікно має дві панелі директорій, з випадаючим меню на рядку вгорі, командним рядком внизу і, ще нижче, списком представлених функціональних клавіш F (функція). Над командним рядком - хіти, які показують випадкові поради.
Як правило, ви відображаєте різні директорії на кожній з бокових панелей, щоб можна було виконувати дії над файлами між ними.
Переміщайтеся в mc за допомогою клавіатури:

Tab, щоб перейти до іншої панелі директорії
прокрутка директорій за допомогою клавіш зі стрілками вгору/вниз
Home і End, щоб перейти до верхньої або нижньої частини довгої директорії
pg-up і pg-down, щоб перейти за раз на один екран
клавіші назад/вліво для переходу в батьківську директорію

Ключі 'F' широко використовуються в mc для роботи з файлами. Читайте на панелі в нижній частині про їх поточну функцію, яка може відрізнятися в залежності від контексту, наприклад, перегляд директорії, використання переглядача файлів або редактора.
У нормальному режимі перегляду:

⦁    F1 - допомога.
⦁    F2 - меню користувача (пропонує можливість gzip файлів і т.д.)
⦁    F3 - переглянути (зручно, щоб перевірити вміст файлів rpm чи tgz, або прочитати вміст файлів)
⦁    F4 - редагувати за допомогою внутрішнього редактора mcedit
⦁    F5 – копіювати
⦁    F6 - перейменувати або перемістити
⦁    F7 - створити директорію
⦁    F8 – видалити
⦁    F9 – випадаючі меню панелі доступу зверху
⦁    F10 - досить. Закриває mc, а також mcedit і будь-які небажані відкриті меню.

Якщо у вас немає F-клавіш, використовуйте Esc - порядковий номер (1-0) замість них.
Нагадуємо, що для можливості збереження редагованих файлів часто необхідно запускати mc через sudo.
Детальніше про використання комбінацій клавіш на сайті isearch.kiev.ua.
У Midnight Commander є вбудований ftp-клієнт для зручної роботи з FTP-серверами. Для цього використовується команда "FTP-з'єднання", доступна з меню лівої і правої панелей.

Викликавши це меню, потрібно ввести лише таку команду:
ftpuser:password@ip_adress
Можна навіть не вводити пароль - mc сам запросить його.
Також можливий схожий варіант, якщо вводити дані в командний рядок при відкритому mc:
cd /#ftp:ftpuser:password@ip_adress

Встановлення FTP-сервера на Raspberry Pi

FTP (File Transfer Protocol - протокол передачі файлів) - стандартний протокол, призначений для передачі файлів через TCP-мережі (наприклад, через Інтернет). FTP часто використовується для завантаження веб-сторінок та інших документів з персонального комп’ютера розробника на відкриті сервера хостингу.
Протокол побудований на архітектурі «клієнт-сервер» і використовує різні мережеві з'єднання для передачі команд і даних між клієнтом та сервером. Користувачі FTP можуть пройти аутентифікацію, передаючи логін і пароль відкритим текстом, або ж, якщо це дозволено на сервері, можуть підключитися анонімно. Можна використовувати протокол SSH для безпечної передачі, що приховує (шифрує) логін і пароль, а також шифрувати вміст.
Відкриваємо термінал і вводимо
sudo bash #Запуск вдосконаленої командної оболонки з правами root
Встановлюємо vsftpd:
apt-get install vsftpd
де vsftpd (Very Secure FTP Daemon) – служба захищеного FTP-сервера з підтримкою IPv6 і SSL.
FTP-сервер є за замовчуванням в багатьох операційних системах і обслуговує офіційні репозиторії ftp.debian.org, ftp.redhat.com, ftp.openbsd.org, ftp.freebsd.org. Також використовується на офіційному FTP ядра Linux.
Редагуємо конфігурацію:
nano /etc/vsftpd.conf
Редагуємо до такого стану:

listen=NO                  # Встановлюємо запуск через inetd
anonymous_enable=NO        # Забороняємо анонімне підключення
local_enable=YES           # Дозволяємо авторизацію користувачам системи
write_enable=YES           # Дозволяємо користувачам запис в своїх каталогах
local_umask=022            #
ascii_upload_enable=YES    # Тип даних ASCII для завантаження на сервер
ascii_download_enable=YES  # Тип даних ASCII для завантаження з сервера

Зберігаємо файл CTRL+O і виходимо через CTRL+X.
Перезапускаємо vsftpd
/etc/init.d/vsftpd restart
Більш докладне пояснення та налаштування за посиланню.

WinSCP

WіnSCP - це графічний клієнт SFTP для Wіndows з відкритим початковим кодом. Він також успадкував підтримку протоколу SCP (secure copy – безпечне копіювання). Призначений для захищеного копіювання файлів між комп’ютером і серверами, що підтримують ці протоколи.
Серед основних можливостей програми:

- графічний багатомовний інтерфейс
- інтеграція з ОС Wіndows (drag&drop, підтримка схем URL, ярлики)
- підтримка SFTP і SCP протоколів по SSH-1 та SSH-2, а також протоколу FTP
- автоматизація за допомогою сценаріїв та командного рядка
- синхронізація директорій за декількома автоматичними та напівавтоматичними функціями
- вбудований текстовий редактор
- підтримка різних методів аутентифікації SSH протоколу: парольна, з відкритим ключем, Kerberos (GSS) та інтерактивна клавіатура
- інтеграція з Pageant (PuTTY Agent) для підтримки авторизації відкритим ключем
- два інтерфейси користувача: як у провіднику Wіndows Explorer та як у Norton Commander (схожа на Midnight Commander або Total Commander)
- можливість збереження налаштувань з'єднань
- можливість використання файлу конфігурації замість реєстру, що зручно при запуску з переносних носіїв

WіnSCP виконує всі такі основні операції з файлами, як завантаження та вивантаження файлів. Він також дозволяє перейменовувати файли та директорії, створювати директорії, змінювати властивості файлів та директорій, а також створювати символічні посилання та ярлики.
За допомогою WіnSCP можна з’єднатися з сервером SSH через протокол SFTP чи SCP, як правило, з машинами під ОС Linux.
SFTP за замовчуванням входить до протоколу SSH-2. SCP, також за замовчуванням, входить до протоколу SSH-1. Обидва протоколи можуть працювати з обома версіями SSH. WіnSCP підтримує як SSH-1, так і SSH-2. Підтримується тільки базовий FTP.
Програма пропонує користувачу два інтерфейси, кожний з який може бути налаштований за допомогою безлічі параметрів. Один з двох інтерфейсів програми також дозволяє керувати файлами на локальному комп’ютері користувача.
Коли ви починаєте використовувати WіnSCP, можливо, забажаєте використовувати інтерфейс у стилі Провідника Wіndows Explorer, тому що він добре відомий усім користувачам ОС Wіndows.

Однак, якщо ви звикли працювати в програмах типу Norton Commander, чи таких як цілий ряд сучасних файлових менеджерів (Total Commander, FAR, Altap Salamander), вибирайте інтерфейс як у Norton Commander, тому що він більш зручний для керування з клавіатури та його можна використовувати взагалі без допомоги “миші”, що дозволяє виконувати основні операції швидше.

Інтерфейс можна змінити і пізніше, а не лише при встановленні.

Сервер NFS на Raspberry

Сервер NFS (Network File System – мережева файлова система), яка надає клієнтам прозорий доступ до файлів і файлової системи сервера. На відміну від FTP, протокол NFS здійснює доступ тільки до тих частин файлу, до яких звернувся процес, і основна його перевага в тому, що він робить цей доступ прозорим. Це означає, що будь-який додаток клієнта, який може працювати з локальним файлом, з таким же успіхом може працювати і з NFS файлом, без будь-яких модифікацій самої програми. Іншими словами, NFS не лише дозволяє обмін файлами, а й роботу з файлами на віддаленому комп’ютері в мережі так, ніби ці файли знаходяться на вашому локальному комп’ютері.
Зручний NFS, в першу чергу, для користувачів Windows. Розвернемо сервер на RPi, щоб мати можливість доступу до файлів на ньому.

Налаштування сервера на Raspberry

Встановимо необхідні пакети.
sudo apt-get install nfs-kernel-server
Тепер відредагуємо файл конфігурації. Додаємо директорію, доступну через мережу:
sudo nano /etc/exports
Можемо налаштувати, які директорії будуть експортовані, додавши їх в файл /etc/exports. Наприклад:

/home/   *(ro,sync,no_root_squash)
/home/pi/   *(rw,sync,no_root_squash)

Можете замінити * на один із форматів мережевого імені. Робіть оголошення мережевого імені настільки точним, наскільки  це можливо, щоб небажані системи не змогли отримати доступ до ресурсів монтування NFS. Наприклад:

/home 192.168.0.0/24(ro, fsid=0, async, no_subtree_check)
/home/pi 192.168.0.0/24(rw, async, no_subtree_check)
/pi/user 192.168.0.4(rw, async, no_subtree_check)

В цьому прикладі директорія /home/pi буде доступна всім в мережі 192.168.0.0/24, а /pi/user - лише з комп’ютера з адресою 192.168.0.4, при цьому можна вказати кілька конкретних адрес в одному рядку, розділивши блоки опису пробілом.
Пояснення до параметрів в рядку:

rw - говорить, що надаються права як на читання, так і для запису. Якщо потрібно дозволити лише читати із директорії, то треба вказати параметр ro.
async - включає можливість обслуговування клієнтів ще до закінчення дії попередньої команди на запис. Це може значно збільшити швидкодію при великій кількості користувачів, але зменшує надійність. За замовчуванням включена опція sync.
no_subtree_check - відключає перевірку вкладених директорій (піддиректорій).
no_root_squash - вимикає підміну uid/gid для root.

Крім того, NFS розуміє шаблони з застосуванням символів * і ?, що зручно, коли задають область адрес.
Зробимо доступною домашню директорію користувача pi, коли мережа організована за допомогою маршрутизатора зі стандартною маскою. Таким чином, дозволяємо доступ всім клієнтам цієї мережі:
/home/pi/ 192.168.0.0/24(rw,no_subtree_check)
Підготуємо сервер до роботи:

sudo service rpcbind restart
sudo /etc/init.d/nfs-kernel-server restart
sudo exportfs -a

де параметр -a говорить про те, що треба експортувати всі директорії з файлу /etc/exports. Детальніше про інші параметри на сайті debian-help.ru.

Налаштування клієнта на Windows

В Windows 10 для початку перейдіть в Панель управління -> Програми та засоби -> Включення і відключення компонентів Windows і встановіть Клієнт для NFS.

Після чого натискаємо правою клавішею миші по Мій комп'ютер -> Підключення мережевого диска і у вікні введіть рядок виду:
\\192.168.0.3\home\pi
де 192.168.0.3 - IP адреса вашого RPi.
На жаль, політика Microsoft така, що в кожній новій версії ОС Windows видаляються компоненти, які підтримують взаємодію з іншими ОС. Так, NFS підтримують лише Windows 7 Enterprise/Ultimate і Windows 8.1 Enterprise, а версії Pro його не підтримують. В Windows 10 взагалі не виявив вбудованої підтримки NFS. Але є можливість скористатися клієнтами NFS від інших розробників, наприклад, nekodrive або Windows NFS Client (Free NFS Client for windows 1.7):
Відмінність від штатного клієнта - в штатному NFS клієнті Windows є можливість використання команди mount і т.п. Тобто, якби у нас використовувався штатний NFS-клієнт, то мережеву директорію з доступом NFS можна було б легко змонтувати як окремий диск. З Free NFS Client цього зробити не можна, однак, можна в NekoDrive. До речі, майте на увазі, що для коректної роботи монтування дисків в NekoDrive вам потрібна бібліотека Dokan. Інсталятор для Windows - тут, сам NekoDrive 0.9.0 - тут.
Далі все просто. Вводите адресу NFS-сервера, не забуваючи поставити «галочку» Unicode без якої директорії і файли, які використовують кирилицю в назвах, просто не будуть відображатися. Тиснемо Connect і вказуємо у випадаючому меню блоку Mount розшарену директорію.

Завдання та питання для перевірки

1. За допомогою Midnight Commander знайдіть директорію FTP-сервера і створіть в ній, якщо не існує, піддиректорію pub, в яку скопіюйте файл конфігурації доступу в бездротову мережу, редагований на попередньому занятті.
2. Завантажте Total Commander або FileZilla на свій ПК і налаштуйте доступ на FTP-сервер свого RPi. Знайдіть і копіюйте вищезгаданий файл конфігурації на свій ПК в папку Документи.
3. За допомогою WinSCP знайдіть на RPi файл конфігурації доступу в бездротову мережу (не на FTP-сервері) і методом «перетягування» копіюйте його на робочий стіл свого ПК.
4. Відкрийте для редагування у Блокноті свого ПК файл конфігурації бездротової мережі.

Новини

  • Модуль SMARC запускає Android або Linux на Snapdragon 820
    Модуль SMARC запускає Android або Linux на Snapdragon 820

    SMART 2.0 "Snapdragon 820 SOM" iWave має 3 Гб LPDDR4, 32 Гб eMMC, Wi-Fi та Bluetooth, а також вхідні/вихідні виводи, включаючи GbE, HDMI 2.0, MIPI-CSI, USB 3.0 та PCIe. Комп'ютер розміром 82x50 мм працює на ОС Android Snailbone або вище, з наступною підтримкою Linux. Snapdragon 820 об'єднує чотири 14-нм Cortex з технологією FinFET - два на частоті 2,15 ГГц, а два з 1,6 ГГц, які намагаються імітувати високоякісні Cortex-A72. Крім того, SoC оснащений 624 МГц Adreno 530 GPU, Hexagon 680 DSP і 14-розрядним ISP для Spectra. Snapdragon 820 SOM підтримує кодування H.265 4K@60 та кодування 4K@30.

    in Новини

Записатися на курс