Установка Docker-контейнера Airsonic в OpenMediaVault 4
Продолжаю перевод сервисов с использованием контейнерной технологии. Рассказываю как установить Docker-контейнер c музыкальным-сервером Airsonic на свой сервер с OMV4. Дело в том, что OMV идет по пути выпиливания старых плагинов и чтобы в будущем перейти на OMV5, буду стараться все возможные сервисы переводить на использование Docker.
Тянем образ из linuxserver/airsonic. Прописываем параметры контейнера.
Общий блок:
Название контейнера: airsonic
Restart policy: Always
Сеть:
Сетевой режим: Bridge
Перенаправление портов:
Exposed Port: 4040/tcp
Host Port: 4040
Переменные среды:
Добавляем параметры PASS, USER для доступа из клиентского ПО,
PUID, PGID (используем команду id user)
Volumes and Bind mounts:
/sharedfolders/2000WD2019/Playlists — /playlists
/sharedfolders/2000WD2019/Podcasts — /podcasts
/home/docker/.config/airsonic — /config
/sharedfolders/2000WD2019/Music — /music
Вход через браузер на порт 4040:
http://192.168.1.1:4040/, пароль/логин: admin/admin
Установка Docker-контейнера Transmission в OpenMediaVault 4
Понадобилось установить Docker-контейнер c торрент-сервером Transmission на свой сервер с OMV4. Дело в том, что OMV идет по пути выпиливания старых плагинов и чтобы в будущем перейти на OMV5, буду стараться все возможные сервисы переводить на использование Docker.
Тянем образ из linuxserver/transmission. Прописываем параметры контейнера.
Общий блок:
Название контейнера: Transmission
Restart policy: Always
Сеть:
Сетевой режим: Host
Переменные среды:
Добавляем параметры PASS, USER для доступа из клиентского ПО,
PUID, PGID (используем команду id user)
Volumes and Bind mounts:
/ — /downloads
/home/docker/.config/transmission — /config
/home/docker/watch — /watch
Плагин Flash Memory в Openmediavault 4
Установил OMV на флешку 16 Гб.
Включил плагин Flash Memory.
Файл /etc/fstab, изначально 2 строку я не закомментировал, а это оказалось важным:
UUID=84bb1909-b763-4778-b45b-1cd3b23b00aa / ext4 noatime,nodiratime,errors=remount-ro 0 1
#tmpfs /tmp tmpfs defaults 0 0
27.01.2019 начались проблемы с Transmission, он не мог записать в файл dht.dat информацию. Оказалось, что каталог с этим файлом смонтирован в режиме чтения. Исправил файл /etc/folder2ram/folder2ram.conf, добавил строку:
tmpfs /var/lib/transmission-daemon
Посмотреть статус смонтированных систем:
folder2ram -status
Как извлечь файлы из архива fsarchiver
С недавнего времени делаю резервирование системного диска с использованием программы fsarchiver. Возникла необходимость вытащить из бэкапа несколько файлов. Программы-архиваторы тут не помогут, нужен иной алгоритм. Делал так (по мотивам):
Создаём пустой файл размером 3 Гб, если у вас архив большего размера, то увеличьте размер:
truncate -s 3G backup.img
Свяжем его с блочным устройством:
losetup /dev/loop0 backup.img
Теперь можно восстановить в него образ, сделанный с помощью fsarchiver:
fsarchiver -v restfs ./Downloads/backup_file.fsa id=0,dest=/dev/loop0
Монтируем:
mount /dev/loop0 /mnt
После завершения работ отмонтирум каталог /mnt и устройство loop0:
umount /mnt
losetup -d /dev/loop0
Не работает панель входа в Openmediavault 4
Дело было так. На системном диске (флешке) в 16 Гб закончилось свободное место и OMV стала глючить, отключилась служба Transmission. Сразу исчезновение памяти не увидел и тупо перезапустил сервер, а он взял и не поднялся, попросил проверить диск. После проверки всё загрузилось как положено, но система функционировала странно, половина служб не запускалась, самое плохое, что стал недоступен вход через GUI.
Решал так:
apt install —reinstall openmediavault
apt install —reinstall omvextras-common
После этого перестали отображаться некоторые службы в админке, исправляем:
apt install —reinstall openmediavault-backup
apt install —reinstall openmediavault-virtualbox
apt install —reinstall openmediavault-flashmemory
apt install —reinstall openmediavault-transmissionbt
apt install —reinstall openmediavault-minidlna
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 7
Часть 1 — тут. Часть 2 — тут. Часть 3 — тут. Часть 4 — тут. Часть 5 — тут. Часть 6 — тут.
Ставим и настраиваем WebServer (http://interface31.ru/tech_it/2015/06/nastraivaem-veb-server-na-baze-apache-v-debian-ubuntu-server.html)
При установке (можно и позже, используя tasksel) системы ставим LAMP.
Ставим phpmyadmin Для управления базами данных MySQL:
sudo apt-get install phpmyadmin
Создаем ссылку (из-за ошибки в phpmyadmin):
sudo ln -s /etc/php5/mods-available/mcrypt.ini /etc/php5/apache2/conf.d/20-mcrypt.ini
Запускаем phpmyadmin:
http://192.168.1.100/phpmyadmin
(Закрываем и защищаем страницу доступа к phpMyAdmin — http://softodom.com/363/zakryvaem-i-zashhishhaem-stranicu-dostupa-k-phpmyadmin.html)
Прячем наш phpmyadmin:
Редактируем /etc/phpmyadmin/apache.conf
Alias /phpconf /usr/share/phpmyadmin
Перезапустим apache:
sudo service apache2 reload
Создадим нового пользователя nikolay, дадим ему все привилегии.
Создадим базу данных nas_zagorodnov в кодировке utf8_general_ci.
Создадим каталог для файлов сервера, права на него дадим пользователю и группе www-data:
sudo mkdir /var/www/nas.zagorodnov.com
sudo chown www-data:www-data /var/www/nas.zagorodnov.com
Создадим файл:
sudo touch /etc/apache2/sites-available/nas.zagorodnov.com.conf
В этом созданном файле пишем:
<VirtualHost *:80>
ServerName nas.zagorodnov.com
ServerAdmin nikolay@zagorodnov.com
ServerAlias www.nas.zagorodnov.com
DocumentRoot /var/www/nas.zagorodnov.com
CustomLog ${APACHE_LOG_DIR}/nas.zagorodnov.com.access.log combined
ErrorLog ${APACHE_LOG_DIR}/nas.zagorodnov.com.error.log
<Directory /var/www/nas.zagorodnov.com>
Options -Includes -Indexes -ExecCGI
</Directory>
</VirtualHost>
Включение сайта:
sudo a2ensite nas.zagorodnov.com
Отключение сайта:
sudo a2dissite nas.zagorodnov.com
Перезапустим apache:
sudo service apache2 reload
Создадим для проверки файл:
touch /var/www/zagorodnov.com/index.html
<body><h1>OK!</h1></body>
Пробуем в браузере:
http://192.168.0.100
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 6
Часть 1 — тут. Часть 2 — тут. Часть 3 — тут. Часть 4 — тут. Часть 5 — тут.
Установка SNMP для мониторинга сервера (использовал информацию с сайта http://it-inside.org).
Установка демона мониторинга:
sudo apt-get install snmpd
/etc/snmp/snmpd.conf
Удаляем все записи и вписываем:
rocommunity mypublic 127.0.0.1 (разрешаем мониторинг с этого IP адреса)
rocommunity mypublic еще адрес (разрешаем работу с еще одного адреса)
syslocation «Server»
syscontact «Nikolay»
Устанавливаем MIB:
sudo apt-get install snmp-mibs-downloader
sudo nano /etc/default/snmpd
Закомментируем строку:
#export MIBS=
Перезапуск:
sudo service snmpd restart
Смотрим в запущенных процессах:
netstat -au
ps aux | grep snmp
Устанавливаем Cacti, через нее будем строить и выводить нужные нам графики:
sudo apt-get install cacti
snmpwalk -Os -c mypublic -v 2c 192.168.1.100 iso.3.6.1.2.1.25.1.1.0 (проверяем работу, в данном случае времени)
snmpwalk -Os -c mypublic -v 2c 192.168.1.100 iso.3.6.1.4.1.2021.13.16.2.1.3.1
snmpwalk -Os -c mypublic -v 2c 192.168.1.100 iso.3.6.1.4.1.14988.1.1.3.10
Входим через браузер:
http://192.168.1.100/cacti
Вводим стандартный пароль и логин admin, admin и меняем на свой.
Заходим в Console — Devices
Description — Nas
Downed Device Detection — Ping or SNMP Uptime
Ping Method — ICMP Ping
SNMP Version — Version 2
SNMP Community — mypublic
Associated Graph Templates — Graph Template Name
Удаляем:
1) Unix — Load Average
2) Unix — Logged in Users
Оставляем только:
Unix — Processes
Добавляем:
Host MIB — Logged in Users
Переходим:
Associated Data Queries — Data Query Name
Добавляем:
SNMP — Get Mounted Partitions Uptime Goes Backwards
SNMP — Get Processor Information Uptime Goes Backwards
SNMP — Interface Statistics Uptime Goes Backwards
Далее вверху входим в Create Graphs for this Host
Проставляем галочки на все, что хотим:
Host MIB — Logged in Users
Linux — Memory Usage
Unix — Processes
Physical memory
/
/mnt/2000
/mnt/1000
eth2 (In/Out Bytes with Total Bandwith)
Жмем Create
Еще по этому руководству добавил новый график:
http://it-inside.org/2014/07/linux-wiki-adding-ram-monitoring-in-cacti-by-adding-graph-templates/
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 5
Часть 1 — тут. Часть 2 — тут. Часть 3 — тут. Часть 4 — тут.
В домашней сети у меня несколько компьютеров с ОС Windows, поэтому нужно установить Samba для возможности доступа с этих машин на сервер.
Установка и настройка Samba сервера.
sudo apt-get install samba
Правим файл конфигурации:
/etc/samba/smb.conf
workgroup = HOME
server string = Nas
security = share
[Video]
path = /mnt/2000/video_2000
guest ok = yes
writeable = yes
[Video_p$]
path = /mnt/2000/lol
guest ok = yes
writeable = yes
Больше никакие настройки не трогал.
Затем захотел конфигурацию по имени пользователя и пароля (делал по этому руководству: http://help.ubuntu.ru/wiki/samba):
security = user
;null passwords = true
; Файл для альясов имен юзеров(например у меня на компе пользователю Dom сопоставляем имя nikolay на сервере)
;username map = /etc/samba/smbusers
[Video]
path = /mnt/2000/video_2000
browseable = yes
read only = no
guest ok = no
create mask = 0644
directory mask = 0755
; Привязка к определенному имени пользователя или группе, имена через пробел
; force user = user1 user2
; force group = group1 group2
[Video_p$]
path = /mnt/2000/lol
browseable = yes
read only = no
guest ok = no
create mask = 0644
directory mask = 0755
; Привязка к определенному имени пользователя или группе, имена через пробел
force user = nikolay
; force group = group1 group2
Добавляем нашего пользователя базу данных SMB и назначить пароль для доступа к общим ресурсам:
nikolay@nas:~$ sudo smbpasswd -a nikolay
New SMB password:
Retype new SMB password:
Added user nikolay.
И подключаем его:
nikolay@nas:~$ sudo smbpasswd -e nikolay
Enabled user nikolay.
sudo touch /etc/samba/smbusers
sudo nano /etc/samba/smbusers
Впишите в файл пару строк
# Unix_name = SMB_name1 SMB_name2
nikolay = Dom
Перезапуск самбы:
sudo service smbd restart
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 4
Часть 1 — тут. Часть 2 — тут. Часть 3 — тут.
Продолжаем установку и настройку. Поставим FTP-сервер и Webmin (для управления сервером через web-интерфейс)
1) Установка FTP сервера
vsftpd — установка FTP сервера (http://goo.gl/hqNRw)
Ставим пакет:
sudo apt-get install vsftpd
Правим файл конфигурации:
sudo nano /etc/vsftpd.conf
write_enable=YES (разрешено записывать)
local_umask=022 (будут устанавливаться права 644)
chown_uploads=YES
chown_username=nikolay (всеми закачанными файлами будет хозяин nikolay)
idle_session_timeout=600 (таймаут сессии)
#chroot_local_users=YES (чтобы пользователь не мог выйти выше домашней папки) (для пользователя nikolay не прокатило, видимо потому что он root)
Перезапуск демона:
sudo service vsftpd restart
2) Ставим и настраиваем Webmin
Изначально в репозиториях Ubuntu Server 14.10 этого пакета нет, добавляем вручную:
sudo nano /etc/apt/sources.list
deb http://download.webmin.com/download/repository sarge contrib
deb http://webmin.mirror.somersettechsolutions.co.uk/repository sarge contrib
Закрываем sources.list
Скачиваем и устанавливаем ключи:
wget http://www.webmin.com/jcameron-key.asc
sudo apt-key add jcameron-key.asc
sudo apt-get update
sudo apt-get install webmin
Заходим через браузер:
https://192.168.1.100:10000
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 3
Для использования своего NAS в качестве DLNA-сервера я использовал два разных пакета, из которых в будущем выберу какой-то один.
1) Устанавливаем Plex:
Зашел на сайт: https://plex.tv/downloads
Скопировал ссылку для Ubuntu:
sudo wget https://downloads.plex.tv/plex-media-server/0.9.12.11.1406-8403350/plexmediaserver_0.9.12.11.1406-8403350_i386.deb
Установил пакет:
sudo dpkg -i plexmediaserver_0.9.12.11.1406-8403350_i386.deb
Перезапуск демона:
sudo service plexmediaserver restart
sudo service plexmediaserver status
Заходим в браузере:
http://192.168.1.100:32400/web/index.html
Удалил два файла из папки /usr/lib/plexmediaserver/Resources: (по совету http://goo.gl/xVv6m7, чтобы не было транскодирования, не забивались ресурсы сервера)
Plex New Transcoder
Plex Transcoder
2) Устанавливаем MiniDLNA:
sudo apt-get install minidlna
Настраиваем:
sudo nano /etc/minidlna.conf
media_dir=/data/video
friendly_name=Ubuntu
Перезапуск демона:
sudo service minidlna restart
Оба пакета работают на сервере без проблем, Plex’ом можно управлять с телефона удаленно, наверное это для кого-то будет плюсом.