INDIGOGO Cloud-Finanzierung CHUWI LarkBox . PC mit minimaler Größe und Gehäusegröße: 61 x 61 x 43 (H) mm und Gewicht: 127 g. Windows10 Home ist vorinstalliert. Die Spezifikationen sind wie folgt.
Device | Spec |
---|---|
CPU | Intel Celeron J4115 |
RAM | 6GB LPDDR4 |
Lager | 128GB eMMC |
Wi-Fi | 802.11a/ac/b/g/n |
Bluetooth | 5.1 |
Darüber hinaus gibt es einen SATA-SSD-Steckplatz der Größe 2242, der auf bis zu 2 TB erweitert werden kann. Es wird im Versandhandel zu einem Preis von ca. 20.000 Yen verkauft. Die Investition in die Cloud-Finanzierung betrug ungefähr 16.000 Yen, ist also ein wenig rentabel.
Wenn Sie bei Amazon nach "NUC" suchen, finden Sie einen Berg winziger PCs mit einem ähnlichen Konzept wie LarkBox. Wenn Sie es ab 2020/9 kostengünstig durch Cloud-Finanzierung erhalten möchten, INDIGOGO wirbt für GMK NucBox . Warum also nicht bewerben?
LarkBox ist eine schlechte Spezifikation für die Verwendung als Windows-PC. Geben Sie daher Alpine Linux ein und verwenden Sie es als Ihren Heimserver. Da es eine TDP von 10 W hat, erzeugt es sehr wenig Wärme und verbraucht Strom. Ich denke, es ist für Server geeignet. Da es jedoch keinen kabelgebundenen LAN-Port gibt, ist dies als Server fatal. .. .. Auf der Straße scheinen einige Leute Raspai 4 als Heimserver zu verwenden, und obwohl Raspai 4 über einen kabelgebundenen LAN-Port verfügt, ist die CPU stromlos und es sollte sich um einen Dateiserver handeln, aber es stimmt, dass die Webanwendung hart läuft. Ich denke es ist unmöglich. Ich möchte bestätigen, wie viel mit LarkBox gemacht werden kann.
Dieser Artikel erinnert an das Verfahren zum Einfügen von Alpine Linux in LarkBox.
Es ist keine sehr verlockende Aufnahme, aber ich gebe Ihnen ein Foto. Grundfläche ähnlich 4 AA-Batterien.
Auf meinem Heimserver möchte ich auch TimeCapsule für Mac-Backups ausführen, sodass 128 GB Speicher nicht ausreichen. Fügen Sie daher 1 TB M2.SSD hinzu. Öffnen Sie die hintere Abdeckung und setzen Sie sie in den Schlitz ein. Das Gehäuse besteht aus Harz, das eine geringe Wärmeableitungsleistung zu haben scheint. Wenn die hintere Abdeckung des Harzes geöffnet wird, befindet sich ein innerer Harzdeckel und der Boden befindet sich im Inneren. Die SSD wird in einem engen Raum zwischen dem inneren Deckel und der hinteren Abdeckung eingeschlossen, in dem keine Luft strömen kann, und die Wärmeableitung ist sehr ängstlich.
Um das BIOS aufzurufen, drücken Sie den Netzschalter und dann wiederholt die Escape-Taste.
Laden Sie das EXTENDED-Paket von der Alpine Linux-Site herunter und installieren Sie es. Zuerst habe ich versucht, das STANDARD-Paket zu installieren, aber das STANDARD-Paket ist zu minimal, um es ohne Ping zu verwenden. 128 GB Speicherplatz sind für Alpine Linux so groß, dass ich hier das EXTENDED-Paket bevorzuge.
Brennen Sie die heruntergeladene ISO-Datei alpine-extended-3.12.0-x86_64.iso auf einen USB-Speicher und starten Sie von dort. Melden Sie sich als root an. (Kein Root-Passwort)
setup-alpine
Starten Sie die Installation mit. Das Alpine Linux-Installationsprogramm sieht nicht wie ein großes Distributionsinstallationsprogramm aus. Es ist notwendig, die Fragen einzeln interaktiv zu beantworten.
Windows Home war in eMMC vorinstalliert, aber ich habe es ohne zu zögern entfernt. Ich werde den Root und Swap hier setzen und / var (250 GB) und / home (750 GB) auf SSD1TB setzen. Ich denke daran, nur Docker direkt zu installieren und die erforderlichen Apps mit Docker-Compose zu installieren. Reservieren Sie daher eine große / var, die vom Docker verwendet wird. Ich denke, es gibt eine Idee, dass die Route in SSD anstatt in langsamem eMMC abgelegt werden sollte. Ich dachte schon, aber es hat sich nicht viel geändert, also denke ich, dass eMMC mit der Route einverstanden ist.
Die Antwort zum Zeitpunkt der Installation lautet wie folgt.
Select keyboard layout: jp
Available variants: jp
Enter system hostname: larkbox
Which one do you want to initialize?: wlan0
Type the wireless network name to connect to: *******
Type the "*******" network Pre-Shared Key: *******
Ip address for wlan0: 192.168.1.xx
Netmask?: 255.255.255.0
Gateway: 192.168.1.1
DNS domain name?
DNS nameserver(s)?: 192.168.1.1
New password: *******
Retype Password: *******
Which timezone are you in?: Asia/Tokyo
TP/FTP proxy URL?: none
Enter mirror number (1-43) or URL to add: f
Which SSH server? (‘openssh’, ‘dropbear’ or ‘none’): openssh
Which NTP client to run? (‘busybox’, ‘openntpd’, ‘chrony’, or ‘none’):chrony
Which disk(s) would you like to use?: mmcblk0
How would you like to use it?: sys
Für die Installation habe ich auf den folgenden Artikel verwiesen. https://qiita.com/mo_chiee/items/f539df1bd172f41bc85a Installationsverfahren für Alpine Linux 3.10.3
https://qiita.com/tohka383/items/e7d758a6281fa45e5e16 Docker on Alpine Linux on VirtualBox
Aktualisieren Sie das Paket-Repository, nachdem Sie alle Fragen zur Installation beantwortet haben.
Ändern Sie / etc / apk / repositories wie folgt
/media/cdrom/apks
http://sjc.edge.kernel.org/alpine/v3.12/main
http://sjc.edge.kernel.org/alpine/v3.12/community
http://sjc.edge.kernel.org/alpine/edge/main
http://sjc.edge.kernel.org/alpine/edge/community
http://sjc.edge.kernel.org/alpine/edge/testing
Aktualisiert mit dem folgenden Befehl.
apk update
apk upgrade
apk add docker docker-compose
service docker start
rc-update add docker boot
apk add sudo
visudo
%wheel ALL=(ALL) ALL
Zu
%wheel ALL=(ALL) ALL
ändern
addgroup wheel
# adduser Mein Login-Konto
# adduser Mein Login-Kontorad
# Docker des Adduser-Anmeldekontos
Einmal ausschalten
poweroff
Es ist nicht heruntergefahren.
Entfernen Sie den USB-Speicher und ändern Sie die BIOS-Einstellungen, um von eMMC zu starten. Wenn ich boote, ist das Netzwerk nicht verbunden! Musste ich die Einstellungen sofort nach der Installation beibehalten?
Die erste Reihe von Installationen wurde mit dem Setup-Alpine-Skript durchgeführt, es gibt jedoch ein Setup-xxxx-Skript, das nur die einzelnen Elemente installiert. Das Installationsskript enthält die Netzwerkeinstellungen
setup-interfaces
Stellen Sie erneut eine Verbindung zu Wifi her.
Which one do you want to initialize?: wlan0
Type the wireless network name to connect to: *******
Type the "*******" network Pre-Shared Key: *******
Ip address for wlan0: 192.168.1.xx
Netmask?: 255.255.255.0
Gateway: 192.168.1.1
Vergessen Sie nicht, die Verbindung dauerhaft herzustellen.
rc-update add wpa_supplicant boot
Bei der Erstinstallation habe ich das Stammverzeichnis partitioniert und in die eMMC gewechselt und das System installiert, aber die hinzugefügte 1-TB-SSD bleibt unberührt. Aktivieren Sie als Nächstes 1 TB SSD.
setup-disk
Ich möchte / var (250 GB) und / home (750 GB) auf SSD1TB setzen, aber das Setup-Disk-Skript scheint nur eine Partition zu schneiden.
Available disks are:
sda (1024.2 GB ATA NT-1TB-TM )
Which disk(s) would you like to use? (or '?' for help or 'none') [sda]
How would you like to use it? ('sys', 'data', 'lvm' or '?' for help) [?] data
Schauen Sie sich an, was damit mit der CD passiert ist.
df -h
Filesystem Size Used Available Use% Mounted on
devtmpfs 10.0M 0 10.0M 0% /dev
shm 2.8G 0 2.8G 0% /dev/shm
/dev/mmcblk0p3 110.2G 1.2G 103.4G 1% /
tmpfs 576.6M 228.0K 576.4M 0% /run
/dev/mmcblk0p1 511.0M 272.0K 510.7M 0% /boot/efi
/dev/sda2 934.0G 0 934.0G 0% /var
cgroup_root 10.0M 0 10.0M 0% /sys/fs/cgroup
/ Var wurde auf SSD1TB (sda) erstellt. Löschen Sie die Partition / var einmal und erstellen Sie erneut / var (250 GB) und / home (750 GB).
Holen Sie sich das Partitionierungs-Tool
apk add -U gptfdisk sgdisk
gdisk /dev/sda
Partitionieren Sie die SDA mit. Die Verwendung von gdisk ist die gleiche wie die von fdisk.
Ursprüngliche Partition
Number Start (sector) End (sector) Size Code Name
1 2048 8390655 4.0 GiB 8200
2 8390656 2000409230 949.9 GiB 8300
Geänderte Partition
Number Start (sector) End (sector) Size Code Name
1 2048 8390655 4.0 GiB 8200
2 8390656 506395300 237.5 GiB 8300 Linux filesystem
3 506396672 2000409230 712.4 GiB 8300 Linux filesystem
Einmal neu starten
reboot
Festplatte formatieren
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/sda3
Überprüfen Sie die UUID der Festplatte
blkid
/dev/mmcblk0p3: UUID="4594ac58-ef59-420e-93f1-423b09cb92ee" TYPE="ext4"
/dev/mmcblk0p2: UUID="387d4b96-060b-4906-80a7-0c066015d468" TYPE="swap"
/dev/mmcblk0p1: UUID="801B-8E71" TYPE="vfat"
/dev/sda3: UUID="346cbfb9-e881-430b-9005-41881ef5bf1c" TYPE="ext4"
/dev/sda2: UUID="14c53e65-b833-4961-b760-3697ea52acbb" TYPE="ext4"
/dev/sda1: UUID="0fe2b3e9-1468-4a73-aa41-a8eed52f91a8" TYPE="swap"
Mountpunkt zu / etc / fstab hinzugefügt
UUID=14c53e65-b833-4961-b760-3697ea52acbb /var ext4 defaults 1 2
UUID=346cbfb9-e881-430b-9005-41881ef5bf1c /home ext4 defaults 1 2
Neustart
reboot
Bestätigung
df -h
Filesystem Size Used Available Use% Mounted on
devtmpfs 10.0M 0 10.0M 0% /dev
shm 2.8G 0 2.8G 0% /dev/shm
/dev/mmcblk0p3 110.2G 1.2G 103.3G 1% /
tmpfs 576.6M 228.0K 576.4M 0% /run
/dev/mmcblk0p1 511.0M 272.0K 510.7M 0% /boot/efi
/dev/sda2 232.7G 60.4M 220.8G 0% /var
/dev/sda3 700.2G 72.0M 664.5G 0% /home
cgroup_root 10.0M 0 10.0M 0% /sys/fs/cgroup
Systeminstallation abgeschlossen.
Nur Docker, Nginx und Samba werden direkt installiert. nginx wird als Reverse-Proxy verwendet, der mehrere Web-Apps bündelt. Wenn Sie Samba mit Docker ausführen, ist die Feinsteuerung der Anmeldeinformationen kompliziert. Fügen Sie sie daher direkt ein.
Docker ist bereits installiert, wenn das System installiert ist.
samba
Installieren Sie Samba
apk add samba
/etc/samba/smb.conf Einstellungen
[global]
unix charset = UTF-8
dos charset = CP932
workgroup = WORKGROUP
server string = %h server (Samba, Alpine)
dns proxy = no
interfaces = 127.0.0.0/8 192.168.1.0/24
bind interfaces only = yes
map to guest = Bad User
log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = no
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user
usershare allow guests = yes
fruit:metadata = netatalk
fruit:encoding = native
[larkbox]
path = /home/samba/share/
writable = yes
browseable = yes
guest ok = no
guest only = no
create mode = 0664
directory mode = 0775
gültiger Benutzer = mein Konto
[TimeCapsule]
comment = Backup for Mac Computers
path = /home/samba/timecapsule
writable = yes
browsable = yes
guest ok = no
fruit:time machine = yes
uit:time machine max size = 500M
gültiger Benutzer = mein Konto
Benutzer Registration
# pdbedit -a -u mein Konto
Samba neu starten
service samba restart
Starteinstellungen
rc-update add samba
apk add avahi
apk add dbus
rc-update add dbus
rc-update add avahi-daemon
service avahi-daemon restart
/ etc / avahi / services Einstellungen
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_smb._tcp</type>
<port>445</port>
</service>
</service-group>
Neustart des Dienstes
service avahi-daemon restart
nginx
Installieren Sie nginx
apk add nginx
Erstellen Sie /etc/nginx/conf.d/default.conf
server {
listen 80;
server_name larkbox;
client_max_body_size 128m;
index index.html index.htm index.php;
location / {
proxy_pass http://localhost:8080/;
access_log off;
}
}
Starten Sie nginx.
/etc/init.d/nginx start
Starteinstellungen
rc-update add nginx
Verwenden Sie Docker-Compose, um alle Web-Apps einzufügen, die Sie einfügen möchten.
Versuchen Sie vorerst, das Apache- und Docker-Verwaltungstool Portainer zu installieren.
Apache+php+MySQL
Ich habe Apache für den Zugriff auf Port 8080 eingestellt, kann jedoch über den Nginx-Reverse-Proxy auf Port 80 zugreifen. Wenn Sie von Ihrem iPhone aus auf einen Server in Ihrem Heim-LAN zugreifen, müssen Sie den Namen mit einem Proxyserver auflösen, da Sie die Hosts-Datei auf Ihrem iPhone nicht festlegen können. Daher verfügt Apache auch über eine Proxyserverfunktion. Die Proxy-Portnummer war 8888.
docker-compose.yaml
version: '3'
services:
php:
image: php:7.2-apache
volumes:
- ./php.ini:/usr/local/etc/php/php.ini
- ./html:/var/www/html
- ./apache2/apache2.conf:/etc/apache2/apache2.conf
- ./apache2/proxy-html.conf:/etc/apache2/proxy-html.conf
- ./apache2/hosts:/etc/hosts
ports:
- 8080:80
- 8888:8888
restart: always
mysql:
image: mysql:5.7
volumes:
- ./mysql:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=test
- MYSQL_USER=test
- MYSQL_PASSWORD=test
restart: always
phpmyadmin:
image: phpmyadmin/phpmyadmin
environment:
- PMA_ARBITRARY=1
- PMA_HOST=mysql
- PMA_USER=test
- PMA_PASSWORD=test
links:
- mysql
ports:
- 4040:80
volumes:
- ./phpmyadmin/sessions:/sessions
restart: always
./apache2/apache2.conf
LoadModule proxy_html_module /usr/lib/apache2/modules/mod_proxy_html.so
LoadModule proxy_module /usr/lib/apache2/modules/mod_proxy.so
LoadModule proxy_connect_module /usr/lib/apache2/modules/mod_proxy_connect.so
LoadModule proxy_http_module /usr/lib/apache2/modules/mod_proxy_http.so
<IfModule proxy_html_module>
Include /etc/apache2/proxy-html.conf
</IfModule>
./apache2/proxy-html.conf
<IfModule mod_proxy.c>
ProxyRequests On
ProxyVia On
Listen 8888
<Proxy *>
Order deny,allow
Deny from all
Allow from all
</Proxy>
</IfModule>
./apache2/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.27.0.2 450ce809bc23
192.168.1.2 centos7
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.27.0.2 450ce809bc23
192.168.1.x larkbox
192.168.1.1 Name des Heimrouters
Anlaufen
$ docker-compose up -d
mit diesem, http://larkbox:8080/ Ermöglicht den Zugriff auf Apache mit dem Nginx-Reverse-Proxy http://larkbox/ Sie können mit darauf zugreifen.
Portainer
docker-compose.yaml
version: '2'
services:
portainer:
image: portainer/portainer
ports:
- 9000:9000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/data
restart: always
Anlaufen
$ docker-compose up -d
mit diesem, http://larkbox:9000/ Sie können mit darauf zugreifen Wenn Sie die nginx-Konfigurationsdatei /etc/nginx/conf.d/default.conf wie folgt hinzufügen,
/etc/nginx/conf.d/default.conf
server {
...
location /portainer/ {
proxy_pass http://localhost:9000;
rewrite /portainer/(.*)$ /$1 break;
access_log off;
}
http://larkbox/portainer Sie können mit darauf zugreifen.
Vor der Einführung von Larkbox wurde CentOS 7 (Speicher 8 GB) auf Virtual Box unter Windows Pro auf Nuc (Speicher 32 GB) von Core i7-8559U als Server verwendet, aber es gibt keine großen Änderungen in der Erfahrung. Eindruck, dass es vernünftig verwendet werden kann, obwohl es sich um einen Server ohne kabelgebundenes LAN handelt.
Ich habe es auch mit einer verdammt schweren App versucht. Ich habe Fess13 installiert und versucht, es zu crawlen, aber es ist beschissen, nur die oberste Seite von Fess13 anzuzeigen. Das heißt aber nicht, dass es nicht funktioniert. Ich konnte kriechen.
Die Wärmeableitung, über die ich mir Sorgen machte, scheint in Ordnung zu sein.
Ein guter Server ist bereit.
Recommended Posts