안녕하세요? 간략하게 메모를 합니다.
AoL 환경에서 안드로이드를 쓸 일이 없어서 Armbian 으로 넘어가는 부분입니다.
일단, 패키지 설치 속도가 EMMC 에 설치하는게 아니라서 매우 느립니다.
armbian 설치는 이 링크를 참고하세요.
https://blog.djjproject.com/618
0. 패키지 주소 한국 미러로 바꾸기
root@aml:~# sed -i -e 's/httpredir.debian.org/ftp.lanet.kr/g' /etc/apt/sources.list
root@aml:~# apt update
Hit:1 http://ftp.lanet.kr/debian buster InRelease
Hit:2 http://ftp.lanet.kr/debian buster-updates InRelease
Hit:3 http://ftp.lanet.kr/debian buster-backports InRelease
Hit:4 http://security.debian.org buster/updates InRelease
Hit:5 https://beta.armbian.com buster InRelease
Reading package lists... Done
Building dependency tree
Reading state information... Done
54 packages can be upgraded. Run 'apt list --upgradable' to see them.
1. 하드 디스크 마운트
root@aml:~# blkid
/dev/mmcblk1p1: SEC_TYPE="msdos" LABEL_FATBOOT="BOOT" LABEL="BOOT" UUID="F160-84B6" TYPE="vfat" PARTUUID="8a0724a1-01"
/dev/mmcblk1p2: LABEL="ROOTFS" UUID="c8c85935-5eaa-4991-bbc7-060f84c4a745" TYPE="ext4" PARTUUID="8a0724a1-02"
/dev/zram0: LABEL="log2ram" UUID="24bb6af6-68e2-49a5-bdbc-4700aca82712" TYPE="ext4"
/dev/mmcblk1: PTUUID="8a0724a1" PTTYPE="dos"
/dev/sda1: UUID="b215d5d5-a856-4617-8474-d86f1803007c" TYPE="ext4" PARTUUID="d359cc0e-01"
/dev/sda2: UUID="3a8539d5-118a-42ba-8cb0-a78a1fb24a80" TYPE="swap" PARTUUID="d359cc0e-02"
/dev/zram1: UUID="462eb076-9467-4ab8-817c-4ee9cdea4815" TYPE="swap"
fstab 에 기록합니다.
root@aml:~# cat /etc/fstab
LABEL=ROOTFS / ext4 defaults,noatime,nodiratime,commit=600,errors=remount-ro 0 1
LABEL=BOOT /boot vfat defaults 0 2
tmpfs /tmp tmpfs defaults,nosuid 0 0
UUID=b215d5d5-a856-4617-8474-d86f1803007c /media ext4 defaults 0 1
UUID=3a8539d5-118a-42ba-8cb0-a78a1fb24a80 swap swap defaults 0 0
특히 2TB 디스크의 경우, fsck 를 위해서 1을 기입하였습니다.
root@aml:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.2G 0 1.2G 0% /dev
tmpfs 326M 8.7M 318M 3% /run
/dev/mmcblk1p2 58G 1.3G 56G 3% /
tmpfs 1.6G 0 1.6G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.6G 0 1.6G 0% /sys/fs/cgroup
/dev/mmcblk1p1 256M 76M 181M 30% /boot
tmpfs 1.6G 8.0K 1.6G 1% /tmp
/dev/sda1 1.8T 284G 1.4T 17% /media
/dev/zram0 49M 992K 44M 3% /var/log
tmpfs 326M 0 326M 0% /run/user/0
root@aml:~# free -m
total used free shared buff/cache available
Mem: 3256 150 2979 8 127 3061
Swap: 33791 0 33791
스왑으로 32기가를 할당하는 것도 미친짓이지만, 일단 할당해 둡니다.
2. 웹서버 이전하기
phpmyadmin 으로 한방 설치를 하려니, 막혀버립니다.
root@aml:~# apt install phpmyadmin
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
phpmyadmin : Depends: php-twig (>= 2.9) but 2.6.2-2 is to be installed
E: Unable to correct problems, you have held broken packages.
그래서 일단 php-twig 를 백포트에서 설치합니다.
root@aml:~# apt install -t buster-backports php-twig
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
php-common php-mbstring php7.3-common php7.3-mbstring
Suggested packages:
php-twig-doc
The following NEW packages will be installed:
php-common php-mbstring php-twig php7.3-common php7.3-mbstring
0 upgraded, 5 newly installed, 0 to remove and 80 not upgraded.
Need to get 1,562 kB of archives.
After this operation, 9,597 kB of additional disk space will be used.
Do you want to continue? [Y/n]
다시 시도합니다.
root@aml:~# apt install phpmyadmin
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
apache2-bin dbconfig-common dbconfig-mysql default-mysql-client libaio1 libapache2-mod-php7.3
libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libbrotli1 libconfig-inifiles-perl
libjs-jquery libjs-openlayers libjs-sphinxdoc libjs-underscore liblua5.2-0 libmagic-mgc libmagic1
libreadline5 libsnappy1v5 libsodium23 libxslt1.1 mariadb-client-10.3 mariadb-client-core-10.3
mariadb-common mysql-common php php-apcu php-google-recaptcha php-mysql php-phpmyadmin-motranslator
php-phpmyadmin-shapefile php-phpmyadmin-sql-parser php-phpseclib php-psr-cache php-psr-container
php-psr-log php-psr-simple-cache php-symfony-cache php-symfony-expression-language
php-twig-extensions php-xml php7.3 php7.3-cli php7.3-json php7.3-mysql php7.3-opcache
php7.3-readline php7.3-xml
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser default-mysql-server
| virtual-mysql-server php-pear file php-gd php-dbase php-libsodium php-mcrypt php-gmp
php-symfony-translation php-recode php-gd2 php-pragmarx-google2fa php-bacon-qr-code
php-samyoul-u2f-php-server
Recommended packages:
apache2 javascript-common libdbd-mysql-perl libdbi-perl libterm-readkey-perl php-apcu-bc apache2
| lighttpd | httpd php-curl php-gd php-bz2 php-zip php-tcpdf
The following NEW packages will be installed:
apache2-bin dbconfig-common dbconfig-mysql default-mysql-client libaio1 libapache2-mod-php7.3
libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libbrotli1 libconfig-inifiles-perl
libjs-jquery libjs-openlayers libjs-sphinxdoc libjs-underscore liblua5.2-0 libmagic-mgc libmagic1
libreadline5 libsnappy1v5 libsodium23 libxslt1.1 mariadb-client-10.3 mariadb-client-core-10.3
mariadb-common mysql-common php php-apcu php-google-recaptcha php-mysql php-phpmyadmin-motranslator
php-phpmyadmin-shapefile php-phpmyadmin-sql-parser php-phpseclib php-psr-cache php-psr-container
php-psr-log php-psr-simple-cache php-symfony-cache php-symfony-expression-language
php-twig-extensions php-xml php7.3 php7.3-cli php7.3-json php7.3-mysql php7.3-opcache
php7.3-readline php7.3-xml phpmyadmin
0 upgraded, 51 newly installed, 0 to remove and 54 not upgraded.
Need to get 18.8 MB of archives.
After this operation, 121 MB of additional disk space will be used.
Do you want to continue? [Y/n]
기본적으로 socket 연결만 허용하고 로컬 로그인만 허용하도록 되어 있어서 remote 로그인 등의 설정을 하기 위해 아래의 설정을 합니다.
중간에 mysql 컨넥션 에러가 발생함으로, 아래와 같이 mariadb-server 를 먼저 설치하는게 좋습니다.
root@aml:~# apt install mariadb-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
galera-3 gawk libdbi-perl mariadb-server-10.3 mariadb-server-core-10.3 socat
Suggested packages:
gawk-doc libclone-perl libmldbm-perl libnet-daemon-perl libsql-statement-perl mailx mariadb-test
tinyca
Recommended packages:
libhtml-template-perl
The following NEW packages will be installed:
galera-3 gawk libdbi-perl mariadb-server mariadb-server-10.3 mariadb-server-core-10.3 socat
0 upgraded, 7 newly installed, 0 to remove and 54 not upgraded.
1 not fully installed or removed.
Need to get 12.1 MB of archives.
After this operation, 112 MB of additional disk space will be used.
Do you want to continue? [Y/n]
이후 로그인 설정 등을 위해서 아래의 설정을 진행합니다.
https://blog.djjproject.com/543 - 4번 작업
root@aml:~# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 58
Server version: 10.3.22-MariaDB-0+deb10u1 Debian 10
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
MariaDB [mysql]> update user set plugin='' where user='root';
Query OK, 1 row affected (0.005 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [mysql]> update user set password=PASSWORD('password') where user='root';
Query OK, 1 row affected (0.005 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.006 sec)
MariaDB [mysql]> exit
Bye
다음으로, ssl 과 proxy 설정을 합니다.
root@aml:~# apt install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
apache2-data
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom www-browser
Recommended packages:
ssl-cert
The following NEW packages will be installed:
apache2 apache2-data
0 upgraded, 2 newly installed, 0 to remove and 54 not upgraded.
Need to get 416 kB of archives.
After this operation, 1,527 kB of additional disk space will be used.
Do you want to continue? [Y/n]
root@aml:~# a2enmod proxy proxy_ajp proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html proxy_wstunnel ssl
Module proxy already enabled
Considering dependency proxy for proxy_ajp:
Module proxy already enabled
Module proxy_ajp already enabled
Considering dependency proxy for proxy_http:
Module proxy already enabled
Module proxy_http already enabled
Module rewrite already enabled
Considering dependency filter for deflate:
Module filter already enabled
Module deflate already enabled
Module headers already enabled
Considering dependency proxy for proxy_balancer:
Module proxy already enabled
Considering dependency alias for proxy_balancer:
Module alias already enabled
Considering dependency slotmem_shm for proxy_balancer:
Module slotmem_shm already enabled
Module proxy_balancer already enabled
Considering dependency proxy for proxy_connect:
Module proxy already enabled
Module proxy_connect already enabled
Considering dependency proxy for proxy_html:
Module proxy already enabled
Considering dependency xml2enc for proxy_html:
Module xml2enc already enabled
Module proxy_html already enabled
Considering dependency proxy for proxy_wstunnel:
Module proxy already enabled
Enabling module proxy_wstunnel.
Considering dependency setenvif for ssl:
Module setenvif already enabled
Considering dependency mime for ssl:
Module mime already enabled
Considering dependency socache_shmcb for ssl:
Module socache_shmcb already enabled
Module ssl already enabled
To activate the new configuration, you need to run:
systemctl restart apache2
root@aml:~# service apache2 restart
이전 설정들을 옮깁니다.
root@aml:/etc/apache2/sites-available# scp -r root@192.168.0.17:/etc/apache2/sites-available .
root@aml:/etc/apache2/sites-available# mv sites-available/* .
certbot 부분도 옮깁니다.
일단 먼저 옮기고 설정 파일들을 옮길 계획입니다.
root@aml:/etc/apache2/sites-available# apt install certbot
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
python3-acme python3-asn1crypto python3-certbot python3-certifi python3-cffi-backend python3-chardet
python3-configargparse python3-configobj python3-cryptography python3-distutils python3-future
python3-idna python3-josepy python3-lib2to3 python3-mock python3-openssl python3-parsedatetime
python3-pbr python3-pkg-resources python3-requests python3-requests-toolbelt python3-rfc3339
python3-setuptools python3-six python3-tz python3-urllib3 python3-zope.component python3-zope.event
python3-zope.hookable python3-zope.interface
Suggested packages:
python3-certbot-apache python3-certbot-nginx python-certbot-doc python-acme-doc python-configobj-doc
python-cryptography-doc python3-cryptography-vectors python-future-doc python-mock-doc
python-openssl-doc python3-openssl-dbg python3-socks python-setuptools-doc
Recommended packages:
python-pyicu
The following NEW packages will be installed:
certbot python3-acme python3-asn1crypto python3-certbot python3-certifi python3-cffi-backend
python3-chardet python3-configargparse python3-configobj python3-cryptography python3-distutils
python3-future python3-idna python3-josepy python3-lib2to3 python3-mock python3-openssl
python3-parsedatetime python3-pbr python3-pkg-resources python3-requests python3-requests-toolbelt
python3-rfc3339 python3-setuptools python3-six python3-tz python3-urllib3 python3-zope.component
python3-zope.event python3-zope.hookable python3-zope.interface
0 upgraded, 31 newly installed, 0 to remove and 54 not upgraded.
Need to get 2,649 kB of archives.
After this operation, 13.1 MB of additional disk space will be used.
Do you want to continue? [Y/n]
매번 비밀번호 치기 귀찮으니 키 생성 후 본래 AoL 서버에 등록합니다.
root@aml:/etc/apache2/sites-available# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:AYJSu516FjSc6p35OjKtki7xPTfhx7gMLtr/KS3cJQg root@aml
The key's randomart image is:
+---[RSA 2048]----+
| .... . |
|. .o o . |
| .. = . |
| E= o . |
| o.+. S |
|.. o.+o . |
| +o+B+ * |
|+.=+O+B.o |
|++o*+O*+ |
+----[SHA256]-----+
root@aml:/etc/apache2/sites-available# ssh-copy-id root@192.168.0.17
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.0.17's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@192.168.0.17'"
and check to make sure that only the key(s) you wanted were added.
root@aml:/etc# scp -r root@192.168.0.17:/etc/letsencrypt .
0002_key-certbot.pem 100% 1704 732.9KB/s 00:00
0003_key-certbot.pem 100% 1704 394.3KB/s 00:00
0001_key-certbot.pem 100% 1704 334.4KB/s 00:00
0000_key-certbot.pem 100% 1708 633.5KB/s 00:00
README 100% 740 195.8KB/s 00:00
README 100% 692 323.2KB/s 00:00
chain.pem 100% 1647 244.1KB/s 00:00
privkey.pem 100% 1704 609.3KB/s 00:00
fullchain.pem 100% 3578 1.3MB/s 00:00
cert.pem 100% 1931 556.5KB/s 00:00
cli.ini 100% 121 49.6KB/s 00:00
regr.json 100% 78 12.5KB/s 00:00
meta.json 100% 69 19.0KB/s 00:00
private_key.json 100% 1632 719.0KB/s 00:00
0001_csr-certbot.pem 100% 948 172.1KB/s 00:00
0002_csr-certbot.pem 100% 948 226.5KB/s 00:00
0003_csr-certbot.pem 100% 948 238.9KB/s 00:00
0000_csr-certbot.pem 100% 976 234.3KB/s 00:00
cert1.pem 100% 1931 417.6KB/s 00:00
chain1.pem 100% 1647 358.9KB/s 00:00
fullchain1.pem 100% 3578 665.3KB/s 00:00
privkey1.pem 100% 1704 381.6KB/s 00:00
djjproject.com.conf 100% 567 85.6KB/s 00:00
공유기에서 포트포워딩 아이피를 변경합니다.
일단 대충 웹 쪽은 완료 되었습니다.
php 는 모듈 활성화가 필요하나, 에러가 발생하면 아래와 같이 해결하시면 됩니다.
root@aml:/opt/hass/config# a2enmod php7.3
Considering dependency mpm_prefork for php7.3:
Considering conflict mpm_event for mpm_prefork:
ERROR: Module mpm_event is enabled - cannot proceed due to conflicts. It needs to be disabled first!
Considering conflict mpm_worker for mpm_prefork:
ERROR: Could not enable dependency mpm_prefork for php7.3, aborting
root@aml:/opt/hass/config# a2dismod mpm_event
Module mpm_event disabled.
To activate the new configuration, you need to run:
systemctl restart apache2
root@aml:/opt/hass/config# a2enmod mpm_prefork
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Enabling module mpm_prefork.
To activate the new configuration, you need to run:
systemctl restart apache2
root@aml:/opt/hass/config# a2enmod php7.3
Considering dependency mpm_prefork for php7.3:
Considering conflict mpm_event for mpm_prefork:
Considering conflict mpm_worker for mpm_prefork:
Module mpm_prefork already enabled
Considering conflict php5 for php7.3:
Enabling module php7.3.
To activate the new configuration, you need to run:
systemctl restart apache2
root@aml:/opt/hass/config# service apache2 restart
3. 구글 드라이브 (plexdrive / rclone / unionfs-fuse)
root@aml:~# wget https://downloads.rclone.org/v1.51.0/rclone-v1.51.0-linux-arm64.deb
--2020-05-17 07:28:20-- https://downloads.rclone.org/v1.51.0/rclone-v1.51.0-linux-arm64.deb
Resolving downloads.rclone.org (downloads.rclone.org)... 5.153.250.7, 2a02:24e0:8:61f9::1
Connecting to downloads.rclone.org (downloads.rclone.org)|5.153.250.7|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 11241318 (11M) [application/x-debian-package]
Saving to: ‘rclone-v1.51.0-linux-arm64.deb’
rclone-v1.51.0-linux-arm6 100%[=====================================>] 10.72M 2.48MB/s in 4.3s
2020-05-17 07:28:26 (2.48 MB/s) - ‘rclone-v1.51.0-linux-arm64.deb’ saved [11241318/11241318]
root@aml:~# dpkg -i rclone-v1.51.0-linux-arm64.deb
Selecting previously unselected package rclone.
(Reading database ... 39976 files and directories currently installed.)
Preparing to unpack rclone-v1.51.0-linux-arm64.deb ...
Unpacking rclone (1.51.0) ...
Setting up rclone (1.51.0) ...
Processing triggers for man-db (2.8.5-2) ...
root@aml:~# wget https://github.com/plexdrive/plexdrive/releases/download/5.1.0/plexdrive-linux-arm64
--2020-05-17 07:29:15-- https://github.com/plexdrive/plexdrive/releases/download/5.1.0/plexdrive-linux-arm64
Resolving github.com (github.com)... 15.164.81.167
Connecting to github.com (github.com)|15.164.81.167|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/89668997/9fd61580-6d45-11ea-99cc-2edf64ce2231?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200517%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200517T072916Z&X-Amz-Expires=300&X-Amz-Signature=187822b8b9ee468c954e89175f290bc852427cb0c29270f75df78e37f5f7e546&X-Amz-SignedHeaders=host&actor_id=0&repo_id=89668997&response-content-disposition=attachment%3B%20filename%3Dplexdrive-linux-arm64&response-content-type=application%2Foctet-stream [following]
--2020-05-17 07:29:16-- https://github-production-release-asset-2e65be.s3.amazonaws.com/89668997/9fd61580-6d45-11ea-99cc-2edf64ce2231?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200517%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200517T072916Z&X-Amz-Expires=300&X-Amz-Signature=187822b8b9ee468c954e89175f290bc852427cb0c29270f75df78e37f5f7e546&X-Amz-SignedHeaders=host&actor_id=0&repo_id=89668997&response-content-disposition=attachment%3B%20filename%3Dplexdrive-linux-arm64&response-content-type=application%2Foctet-stream
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.106.107
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.106.107|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10289152 (9.8M) [application/octet-stream]
Saving to: ‘plexdrive-linux-arm64’
plexdrive-linux-arm64 100%[=====================================>] 9.81M 1.73MB/s in 6.7s
2020-05-17 07:29:23 (1.46 MB/s) - ‘plexdrive-linux-arm64’ saved [10289152/10289152]
root@aml:~# mv plexdrive-linux-arm64 /usr/bin/plexdrive
root@aml:~# chmod a+x /usr/bin/plexdrive
root@aml:~# plexdrive
[PLEXDRIVE] [2020-05-17 07:29] ERROR : Command not found
rclone 의 설정 정보와 plexdrive 의 설정 정보를 이전 서버에서 복사합니다.
copy 명령어는 scp -r root@192.168.0.17:$1 입니다. 귀찮아서 만들었습니다.
root@aml:~# cd .config/
root@aml:~/.config# copy ~/.config/rclone/ .
rclone.conf 100% 1518 202.2KB/s 00:00
root@aml:~/.config# rclone config
Current remotes:
Name Type
==== ====
djjproject drive
eddy drive
eddycrypt crypt
gdrive drive
local local
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q>
설정이 잘 돌아왔습니다.
다음으로 plexdrive 가져오겠습니다.
root@aml:~/.config# cd /etc
root@aml:/etc# copy /etc/plexdrive .
token.json 100% 281 75.1KB/s 00:00
config.json 100% 135 3.0KB/s 00:00
cache.bolt 100% 303MB 26.9MB/s 00:11
마운트 스크립트를 들고 오겠습니다.
root@aml:/opt/scripts# copy /home/init.sh .
init.sh 100% 2544 679.1KB/s 00:00
root@aml:/opt/kocom# apt install unionfs-fuse
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
unionfs-fuse
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 41.3 kB of archives.
After this operation, 137 kB of additional disk space will be used.
Get:1 http://ftp.lanet.kr/debian buster/main arm64 unionfs-fuse arm64 1.0-1+b1 [41.3 kB]
Fetched 41.3 kB in 0s (91.6 kB/s)
Selecting previously unselected package unionfs-fuse.
(Reading database ... 39981 files and directories currently installed.)
Preparing to unpack .../unionfs-fuse_1.0-1+b1_arm64.deb ...
Unpacking unionfs-fuse (1.0-1+b1) ...
Setting up unionfs-fuse (1.0-1+b1) ...
Processing triggers for man-db (2.8.5-2) ...
root@aml:/opt/kocom# df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.2G 0 1.2G 0% /dev
tmpfs 326M 8.8M 317M 3% /run
/dev/mmcblk1p2 58G 2.1G 56G 4% /
tmpfs 1.6G 0 1.6G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 1.6G 0 1.6G 0% /sys/fs/cgroup
/dev/mmcblk1p1 256M 76M 181M 30% /boot
tmpfs 1.6G 8.0K 1.6G 1% /tmp
/dev/sda1 1.8T 284G 1.4T 17% /media
/dev/zram0 49M 1.7M 44M 4% /var/log
tmpfs 326M 0 326M 0% /run/user/0
gdrive: 1.0P 62T 1.0P 6% /media/rclone
eddy: 1.0P 31T 1.0P 3% /media/eddylab
eddycrypt: 1.0P 31T 1.0P 3% /media/eddycrypt
unionfs-fuse 1.8T 284G 1.4T 17% /media/gdrive
4. rc.local
이미 armbian 에 있기 때문에 파일만 바꿔치기 합니다.
root@aml:/etc/systemd# copy /etc/rc.local .
rc.local 100% 371 111.0KB/s 00:00
5. subsonic
root@aml:~# apt install openjdk-11-jre
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
ca-certificates-java fontconfig-config fonts-dejavu-core java-common libavahi-client3
libavahi-common-data libavahi-common3 libcups2 libdrm-amdgpu1 libdrm-common libdrm-etnaviv1
libdrm-nouveau2 libdrm-radeon1 libdrm2 libfontconfig1 libfreetype6 libgif7 libgl1 libgl1-mesa-dri
libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libjpeg62-turbo liblcms2-2 libllvm7 libnspr4 libnss3
libx11-6 libx11-data libx11-xcb1 libxau6 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0
libxcb-sync1 libxcb1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxi6 libxrender1 libxshmfence1
libxtst6 libxxf86vm1 openjdk-11-jre-headless x11-common
Suggested packages:
default-jre cups-common liblcms2-utils libnss-mdns fonts-dejavu-extra fonts-ipafont-gothic
fonts-ipafont-mincho fonts-wqy-microhei | fonts-wqy-zenhei fonts-indic
Recommended packages:
libatk-wrapper-java-jni fonts-dejavu-extra
The following NEW packages will be installed:
ca-certificates-java fontconfig-config fonts-dejavu-core java-common libavahi-client3
libavahi-common-data libavahi-common3 libcups2 libdrm-amdgpu1 libdrm-common libdrm-etnaviv1
libdrm-nouveau2 libdrm-radeon1 libdrm2 libfontconfig1 libfreetype6 libgif7 libgl1 libgl1-mesa-dri
libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libjpeg62-turbo liblcms2-2 libllvm7 libnspr4 libnss3
libx11-6 libx11-data libx11-xcb1 libxau6 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0
libxcb-sync1 libxcb1 libxdamage1 libxdmcp6 libxext6 libxfixes3 libxi6 libxrender1 libxshmfence1
libxtst6 libxxf86vm1 openjdk-11-jre openjdk-11-jre-headless x11-common
0 upgraded, 50 newly installed, 0 to remove and 54 not upgraded.
Need to get 59.3 MB of archives.
After this operation, 434 MB of additional disk space will be used.
Do you want to continue? [Y/n]
root@aml:~# wget https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.6.deb
root@aml:~# dpkg -i subsonic-6.1.6.deb
서브소닉 DB 복사 후, 혹시 모를 업데이트 대비 한번 더 설치
root@aml:/var# copy /var/subsonic/ .
한편, jdk11 이랑 호환이 안됨으로 java 8 버전을 다운받아야 합니다.
(관련 라이브러리가 java 11 이랑 호환이 안되어 결국에 또 임베디드 자바 8을 설치해서 해결했습니다.)
wget https://mirrors.huaweicloud.com/java/jdk/8u151-b12/jdk-8u151-linux-arm64-vfp-hflt.tar.gz
6. docker / portainer / miconnector / dwconnector / hass core
이전에 쓰던 서비스들을 docker 로 옮길 계획입니다.
miconnector / dwconnector / guacamole 등 을 docker 로 옮깁니다.
어우.. SDCARD 의 느림으로 순간 순간 프리징이 있네요.. MLC SD카드인데 조금 느립니다.
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
portainer web ui 로 컨테이너를 실행시키는 것이 편할 때도 있지만, 그렇지 않은 부분이 있어서 아래의 명령어로 생성합니다.
docker run -d --restart=always --name="hass" -e "TZ=Asia/Seoul" -v /opt/hass/config:/config --net=host homeassistant/home-assistant:stable
docker run -d --restart=always -v /opt/miconnector:/config --name=miconnector --net=host fison67/mi-connector:latest
진짜 이미지 풀 할때 시간이 너무 오래 걸리네요 .. ㅠㅠ
root@aml:/opt/miconnector# docker run -d --restart=always -v /opt/miconnector:/config --name=miconnector --net=host fison67/mi-connector-arm:latest
Unable to find image 'fison67/mi-connector-arm:latest' locally
latest: Pulling from fison67/mi-connector-arm
6bddb275e70b: Extracting [==================================> ] 35.13MB/51.54MB
ef16d706debb: Download complete
2734b4597042: Download complete
873755612f30: Download complete
67a3f53689ff: Download complete
5fb2b6f7daac: Download complete
a04aef7b1e2f: Download complete
9d5b46a00008: Download complete
b98db37cf252: Download complete
78ba3f046631: Download complete
6b6c68e7ac85: Download complete
3eae71a21b9d: Verifying Checksum
687acad48b0d: Download complete
aa8ee038922d: Download complete
a051cf5c48cc: Downloading [==================================> ] 9.386MB/13.68MB
373fd5e782fa: Downloading [========================> ] 24.57MB/50.53MB
1fbd3419f748: Downloading [====================> ] 13.33MB/32.77MB
b572c7264000: Waiting
e490e6a053e7: Waiting
3b82a23078e5: Waiting
16b7cd8e42c2: Waiting
34c3b9efc310: Waiting
9d3917b40cf3: Waiting
94d7700ae3f0: Waiting
7de92d34db48: Waiting
d921510851ff: Waiting
d8841ea6e371: Waiting
6de02128d0c2: Waiting
ea0117a31552: Waiting
c09db59ac435: Waiting
3e26e866c01b: Waiting
a31c04a17b60: Waiting
fbfba0fd36be: Waiting
f30c189e00ad: Waiting
ca304d292a95: Waiting
5e782428caf3: Waiting
8d0184fa379c: Waiting
docker run -d --restart=always -v /opt/dwconnector:/config --name=dwconnector --net=host fison67/dw-connector-rasp:0.0.1
그런데 문제가 발생했습니다. 이게 arm 전용 이미지이다 보니, arm64 에서는 동작이 안되네요. 이전 방식으로 넘어가야겠습니다. 물론 방법이 있겠지만, 일단 넘어갑니다.
모듈 빌드 시, 의존 패키지를 잘 추가해주면서 조금 달래 가면서 해야합니다 ㅎㅎ..
root@aml:/opt/miconnector# rm -rf node_modules/
root@aml:/opt/miconnector# npm install
npm WARN npm npm does not support Node.js v10.19.0
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/
npm WARN notice [SECURITY] morgan has the following vulnerability: 1 moderate. Go here for more details: https://www.npmjs.com/advisories?search=morgan&version=1.9.0 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] express-fileupload has the following vulnerability: 1 low. Go here for more details: https://www.npmjs.com/advisories?search=express-fileupload&version=1.1.5 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] tar has the following vulnerability: 1 high. Go here for more details: https://www.npmjs.com/advisories?search=tar&version=2.2.1 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] fstream has the following vulnerability: 1 high. Go here for more details: https://www.npmjs.com/advisories?search=fstream&version=1.0.11 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
npm WARN notice [SECURITY] lodash has the following vulnerability: 1 high. Go here for more details: https://www.npmjs.com/advisories?search=lodash&version=4.17.11 - Run `npm i npm@latest -g` to upgrade your npm version, and then `npm audit` to get more info.
결국에 docker 로는 hassio 만 쓰게 되네요. supervised 모드가 아니라 core 입니다.
hass core 를 설치하는 데에도 많은 노력이 드는데 docker 로 해결을 보게 되었습니다.
7. 삼바
음, ftp 는 사용하지 않도록 했고 로컬용도로만 삼바를 사용하기로 했습니다.
root@aml:~# apt install samba
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libldb1 libpython2.7 libtalloc2 libtdb1 libtevent0 libwbclient0 python-crypto python-dnspython python-ldb
python-samba python-talloc python-tdb samba-common samba-common-bin samba-libs tdb-tools
Suggested packages:
python-crypto-doc bind9 bind9utils ctdb ldb-tools smbldap-tools ufw winbind heimdal-clients
Recommended packages:
python-gpg attr samba-dsdb-modules samba-vfs-modules
The following NEW packages will be installed:
libldb1 libpython2.7 libtalloc2 libtdb1 libtevent0 libwbclient0 python-crypto python-dnspython python-ldb
python-samba python-talloc python-tdb samba samba-common samba-common-bin samba-libs tdb-tools
0 upgraded, 17 newly installed, 0 to remove and 54 not upgraded.
Need to get 10.7 MB of archives.
After this operation, 65.3 MB of additional disk space will be used.
Do you want to continue? [Y/n]
설정 파일은 이전 것을 가져왔습니다.
8. 토렌트
root@aml:/etc/samba# apt install transmission-daemon
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libevent-2.1-6 libminiupnpc17 libnatpmp1 transmission-common
Suggested packages:
minissdpd natpmpc
Recommended packages:
transmission-cli
The following NEW packages will be installed:
libevent-2.1-6 libminiupnpc17 libnatpmp1 transmission-common transmission-daemon
0 upgraded, 5 newly installed, 0 to remove and 52 not upgraded.
Need to get 684 kB of archives.
After this operation, 1,964 kB of additional disk space will be used.
Do you want to continue? [Y/n]
root@aml:~# wget https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control.sh
--2020-05-17 13:52:18-- https://github.com/ronggang/transmission-web-control/raw/master/release/install-tr-control.sh
Resolving github.com (github.com)... 52.78.231.108
Connecting to github.com (github.com)|52.78.231.108|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://raw.githubusercontent.com/ronggang/transmission-web-control/master/release/install-tr-control.sh [following]
--2020-05-17 13:52:18-- https://raw.githubusercontent.com/ronggang/transmission-web-control/master/release/install-tr-control.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.228.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.228.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13529 (13K) [text/plain]
Saving to: ‘install-tr-control.sh’
install-tr-control.sh 100%[===========================================>] 13.21K 66.4KB/s in 0.2s
2020-05-17 13:52:19 (66.4 KB/s) - ‘install-tr-control.sh’ saved [13529/13529]
root@aml:~# bash install-tr-control.sh
/usr/bin/whoami
Welcome to the Transmission Web Control Installation Script.
Official help documentation: https://github.com/ronggang/transmission-web-control/wiki
Installation script version: 1.2.2-beta2
1. Install the latest release.
2. Install the specified version.
3. Revert to the official UI.
4. Re-download the installation script.
5. Check if Transmission is started.
6. Input the Transmission Web directory.
9. Installing from 'master' Repository.
===================
0. Exit the installation;
Please enter the corresponding number: 1
--2020-05-17 13:52:27-- https://api.github.com/repos/ronggang/transmission-web-control/releases/latest
Resolving api.github.com (api.github.com)... 54.180.75.25
Connecting to api.github.com (api.github.com)|54.180.75.25|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3261 (3.2K) [application/json]
Saving to: ‘STDOUT’
- 100%[===========================================>] 3.18K --.-KB/s in 0s
2020-05-17 13:52:28 (18.9 MB/s) - written to stdout [3261/3261]
<< 2020-05-17 13:52:28 >> == BEGIN ==
<< 2020-05-17 13:52:28 >>
<< 2020-05-17 13:52:28 >> Transmission Web Path: /usr/share/transmission/web
<< 2020-05-17 13:52:28 >> You are using the specified version to install, version: 1.6.0-beta2
<< 2020-05-17 13:52:28 >> Attempting to specify version: 1.6.0-beta2
<< 2020-05-17 13:52:28 >> Transmission Web Control Is Downloading...
--2020-05-17 13:52:28-- https://github.com/ronggang/transmission-web-control/archive/v1.6.0-beta2.tar.gz
Resolving github.com (github.com)... 52.78.231.108
Connecting to github.com (github.com)|52.78.231.108|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/ronggang/transmission-web-control/tar.gz/v1.6.0-beta2 [following]
--2020-05-17 13:52:28-- https://codeload.github.com/ronggang/transmission-web-control/tar.gz/v1.6.0-beta2
Resolving codeload.github.com (codeload.github.com)... 13.124.243.66
Connecting to codeload.github.com (codeload.github.com)|13.124.243.66|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘v1.6.0-beta2.tar.gz’
v1.6.0-beta2.tar.gz [ <=> ] 1.03M 6.82MB/s in 0.2s
2020-05-17 13:52:29 (6.82 MB/s) - ‘v1.6.0-beta2.tar.gz’ saved [1079605]
<< 2020-05-17 13:52:29 >> Download completed, ready to install...
<< 2020-05-17 13:52:29 >> Extracting installation package...
<< 2020-05-17 13:52:29 >> Copying installation package...
<< 2020-05-17 13:52:29 >> Setting permissions, It takes about one minute ...
<< 2020-05-17 13:52:30 >> Transmission Web Control Installation Completed!
<< 2020-05-17 13:52:30 >> Cleaning up the installation package...
<< 2020-05-17 13:52:30 >> Installation completed. Installation problems see:https://github.com/ronggang/transmission-web-control/wiki
<< 2020-05-17 13:52:30 >> == END ==
9. v2ray
내부망 접속 vpn 용으로 사용하고 있습니다.
root@aml:~# bash <(curl -s -L https://github.com/djjproject/android_over_linux/raw/master/installer/v2ray.sh)
이전 설정기 여기서 마치겠습니다.
개인적으로는 docker 를 최대한 활용하지 못한게 아쉽네요.
감사합니다.
'서버 > 리눅스 서버' 카테고리의 다른 글
Beelink GT-MINI A USB로 마이그레이션 하기 (0) | 2020.07.11 |
---|---|
Let's Encrypt 웹 루트 인증을 통해 인증서 생성하기 (0) | 2020.06.03 |
오라클 프리티어 계정 생성 및 인스턴스 생성하기 (0) | 2020.04.23 |
Let's Encrypt SSL 인증서 발급하기 (certbot / renew) (2) | 2020.04.05 |
Opengrok 설치하기 (0) | 2020.02.24 |
댓글