OrangePi как сетевой NAS
Настройка OrangePi One (в моём случае) в качестве сетевого хранилища + закачка торрентов.
Для этих целей подойдёт любой одноплатный компьютер, поддерживающий Linux, имеющий на борту usb порт для подключения жёсткого диска и сетевой интерфейс (Проводной или беспроводной).
Установим дистрибутив на SD карточку
Качаем с официального сайта
Устанавливаем и запускаем.
В главном окне в поле Drive выбираем нашу флешку и нажимаем Option программу SDFormatter
Format Type: quick
Format Size Adjustment: ON
Нажимаем ОК и Format не забыв согласиться с сообщениями о том, что всё, что есть на карточке, сотрётся.
Теперь нам надо записать заранее скаченный .img образ на карту памяти.
В моём случае я устанавливаю Armbian, основанный на Debian 9.
Качал с их официального сайта для Orange Pi One. Я качаю серверную версию без GUI.
Записываем образ на карту памяти
Для записи использую win32 disk imager.
Качаем с официального сайта.
Устанавливаем и запускаем.
В поле Image File по кнопке с изображением папки выбираем заранее скаченный .img файл.
В поле Device выбираем нашу флешку и нажимаем Write. Ждём окончания.
После всего этого подключаем к микрокомпьютеру картчоку, диск, питания и запускаем.
Armbian настроен сразу получать ip адрес по DHCP по кабелю и уже включен SSH.
При необходимости подключаем монитор или отлавливаем на маршрутизаторе адрес, который получил наш апельсинчик.
Подключаемся по ssh. Логин root пароль 1234. При первом входе будет запрос на смену пароля.
Установим программу по мониторингу за температурой.
apt-get install lm-sensors
после установки температуру процессора можно посмотреть командой
sensors
Установим мониторинг за S.M.A.R.T. жёсткого диска
apt-get install smartmontools
Допустим у нас диск зовут /dev/sda
Что бы посмотреть его состояние пишем команду:
smartctl --all /dev/sda
Создание логических разделов на диске
Допустим у нас новый жёсткий диск без файловой системы.
Находим его в папке /dev
# ls /dev | grep sd sda
Если он один, то, скорее всего, будет называться sda
Для создания разделов воспользуемся программой fdisk
Убедимся, что на диске нет разделов
/sbin/fdisk -l /dev/sda
И начнём создавать.
Пишем команду
fdisk /dev/sda
И входим в меню создания раздела.
В моём случае я создам 2 раздела, т.е. поделю диск пополам
Нажимаем n что означает создать новый раздел, далее p – primary
выбираем начало 2048 как он предложил, Но конец он предлагает сразу весь диск. Берём это число и делим пополам. Допустим у меня 625140334. Делим пополам и получается 312570167. Это и будет концом нашего первого раздела.
Остальные пункты выбираем так, как он предложил. Partition number: 1 и т.п.
Далее создаём второй раздел.
Всё по аналогии с первым, только начало раздела он предложит уже другое. Соглашаемся с начальным и конечными секторами и в конце жмём w что бы сохранить изменения на диск.
Разделы созданы, но они без файловой системы.
Отформатируем их.
После создания разделы получили имена sda1 и sda2
Форматировать будем в файловую систему ext4
Пишем команду
mkfs.ext4 /dev/sda1
соглашаемся со всем, что нам предлагают и ждём окончания форматирования.
То же самое делаем и для раздела /dev/sda2
Создадим папки для обоих разделов.
У меня это будут папки nfs и exchange
mkdir /nfs mkdir /exchange
Дадим права на запись для всех
chmod -R 777 /nfs chmod -R 777 /exchange
Прописываем диски для автомонтирования.
Теперь надо узнать UUID наших дисков, что б добавить их для автомонтирования при загрузке
Выясняем это командой
blkid
обычно они стоят попорядку по мере создания.
Копируем первый uuid и редактируем файл fstab
nano /etc/fstab
В моём случае это выглядит так:
UUID=695864cb-835b-48f0-a059-79fd910cbd83 /nfs ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro 0 1
Подставляете ваш uuid вместо моего, если надо то и точку монтирование другую. Сохраняем файл через ctrl+x и два раза y и копируем следующий uuid и так же вставляем в fstab но уже с другой точкой монтирования. В моём случае это /exchange
Дальше монтируем наши оба раздела
mount /nfs mount /exchange
Информацию откуда монтировать возьмёт из файла fstab
Проверим, что б у нас всё правильно замонтировалось командой
df -H
/dev/sda1 157G 51M 157G 1% /nfs
/dev/sda2 157G 51M 157G 1% /exchange
Видим, что всё впорядке
Установим NFS Server&Client
apt-get update ; apt-get upgrade ; apt-get install autofs nfs-kernel-server nfs-common --install-recommends -f -y ;
Перезагрузимся.
reboot
Скопируем дефолтный конфиг на всякий случай
cp -a /etc/exports /etc/exports.backup
И откроем на редактирование файл exports
nano /etc/exports
Для NFS я будут использовать только один раздел /nfs
Для этого добавим строчку
/nfs *(rw,sync,insecure,no_root_squash,no_subtree_check,nohide)
папка доступна на чтение/запись для гостя.
Сохраняемся (ctrl+x y y) и перезапускаем nfs сервер
service nfs-kernel-server restart
Установим samba server
sudo apt install samba cifs-utils smbclient
После надо отредактировать конфиг
sudo nano /etc/samba/smb.conf
При необходимости меняем имя рабочей группы
workgroup = MYWORKGROUP
Дальше добавляем информацию о нашей шаре. Назовём её exchange и укажем путь к папке и права. Папка будет открыта гостю.
[exchange]
path = /exchange
browseable = Yes
writable = Yes
guest ok = Yes
create mask = 0777
directory mask = 0777
…..
Перезапустим самба сервер
sudo /etc/init.d/samba restart
Если вдруг Вы получили ошибку при запуске
# service samba start
Failed to start samba.service: Unit samba.service is masked.
То надо выполнить 3 команды:
sudo rm /lib/systemd/system/samba.service
sudo systemctl enable samba.service nmbd.service
sudo systemctl start samba
После этого сервер запускается и можно проверять доступность.
Установим transmission – торрент клиент.
sudo apt-get install transmission-daemon
После установки надо отредактировать конфигурационный файл.
ВНИМАНИЕ: перед редактированием ОБЯЗАТЕЛЬНО надо остановить transmission
service transmission-daemon stop
Иначе все изменения при перезапуске службы восстановятся на изначальные.
Открываем на редактирование файл конфигурации
nano /etc/transmission-daemon/settings.json
Мой торрент клиент будет работать только внутри сети без доступа снаружи, по-этому я убрал авторизацию и чёрные/белые списки хостов, откуда можно подключаться.
Основные настройки, которые надо подстроить для такой работы
"download-dir": "/exchange/torrents", "rpc-authentication-required": false, "rpc-enabled": true, "rpc-host-whitelist-enabled": false, "rpc-port": 9091, "rpc-whitelist-enabled": false,
download-dir – папка, куда будут сохраняться скаченные файлы
rpc-authentication-required – отключаем авторизацию по логину паролю
rpc-enabled – включаем удалённое управление
rpc-host-whitelist-enabled отключаем белый список
rpc-port – веб порт, по которому можно будет зайти через браузер
rpc-whitelist-enabled – отключаем белый список
Сохраняем файл и запускаем службу
service transmission-daemon start
Заходим браузером на адрес: http://ваш.ип.адрес:9091
Если всё впорядке, то откроется веб клиент transmission
Так же можно установить на наш сервер webmin.
Для этого выполним команды:
sudo apt-get install -y perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions python
sudo wget http://prdownloads.sourceforge.net/webadmin/webmin_1.831_all.deb
sudo dpkg --install webmin_1.831_all.deb
И проверим его работу через браузер. Вебимн работает на 10000 порту по https
https://ваш.ип.адрес:10000
Установим файловый менеджер mc:
apt-get install mc
На этом установка нашего сервера завершена.
klim150188@gmail.com says:
привет друг. Очень помог……не работает только NFS Server&Client не пойму в чем проблемма.
● nfs-server.service – NFS server and services
Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled)
Active: active (exited) since Thu 2018-08-16 00:03:28 +03; 12s ago
Process: 7761 ExecStopPost=/usr/sbin/exportfs -f (code=exited, status=0/SUCCESS)
Process: 7759 ExecStopPost=/usr/sbin/exportfs -au (code=exited, status=0/SUCCESS)
Process: 7756 ExecStop=/usr/sbin/rpc.nfsd 0 (code=exited, status=0/SUCCESS)
Process: 7777 ExecStart=/usr/sbin/rpc.nfsd $RPCNFSDARGS (code=exited, status=0/SUCCESS)
Process: 7774 ExecStartPre=/usr/sbin/exportfs -r (code=exited, status=0/SUCCESS)
Main PID: 7777 (code=exited, status=0/SUCCESS)
Aug 16 00:03:27 orangepipc systemd[1]: Starting NFS server and services…
Aug 16 00:03:28 orangepipc systemd[1]: Started NFS server and services.