刷ARMBIAN系统
玩客云固件地址
https://github.com/hzyitc/armbian-onecloud/releases
刷机过程
1.撬开之后,螺丝刀拆下螺丝,然后拿出主板
2.双头USB线一头接电脑,另外一头插靠近HDMI边的USB口
3.电脑打开USB_Burning_Tool,选择底包镜像,然后点击开始。
4.短接主板指定的两个端口(不同版本位置不同)
5.打开电源 短接成功后,系统识别到玩客云会自动开始刷机,等到刷机完毕后拔掉USB线
ps :这边一次都没成功后来辅助按了主板复位键才刷进去
写入固件到U盘
用USB Image Tool或者USBWriter,把下载的固件包写入到U盘里面。
这里的用到的是 Armbian_20.12_Aml-s812_bionic_current_5.9.0-rc7
固件写入到emmc
正常情况,等几分钟就可以通过U盘成功启动玩客云,你可以在路由器里面查看到玩客云的IP(不同固件刷出来在路由器里面看到的主机名不一样的,我们这个固件的主机名是aml-s812)启动后蓝色是成功运行系统 黄色是未启动系统
默认账号root
默认密码1234
运行写入指令
cd /boot/install
./install.sh
接着等待自动写入系统到内置的EMMC存储里面,然后断电。
接着拔掉U盘,重启电源,开机.
全程断开外网!!!
`全程断开外网!!!
全程断开外网!!!
1.HFS软件
添加三个文件
2.用ssh软件连接到玩客云armbian系统
EMMC="$(cd /dev/ && ls mmcblk[0-9])"
wget -O - http://192.168.123.214/onecloud.img | dd of=/dev/${EMMC} bs=1M
echo 0 > /sys/block/${EMMC}boot0/force_ro
wget -O - http://192.168.123.214/uboot.bin | dd of=/dev/${EMMC}boot0
shutdown -h now
3. 用 Telnet 模式进入玩客云IP
telnet 192.168.123.201 1287
wget http://192.168.123.214/wkcfix.sh
sh wkcfix.sh b0:d5:xx:xx:xx:xx
rm -f wkcfix.sh
reboot -f
4.路由器插上网线等待升级
参考
一、基础条件
1、已刷各种底包能启动usb-armbian
2、onecloud.img 文件请自备
2、HFS软件 → 打开APP → 拖入文件
3、全程无网,直至恢复正确MAC
4、确定MAC优先级逐级递减:主板MAC → 玩客云app(玩客云关机) → uboot命令bdinfo中ethaddr
5、使用网心云联网和错误MAC联网均会导致此MAC值异常
二、刷机部分
# 刷机流程:启动usb-armbian → 恢复固件 → 完毕关机 → 拔掉U盘 → 重启系统 → 补丁修复 → 重启等待
1、恢复固件
# putty → SSH → 10.0.0.100
EMMC="$(cd /dev/ && ls mmcblk[0-9])"
wget -O - http://10.0.0.99/onecloud.img | dd of=/dev/${EMMC} bs=1M
echo 0 > /sys/block/${EMMC}boot0/force_ro
wget -O - http://10.0.0.99/uboot.bin | dd of=/dev/${EMMC}boot0
shutdown -h now
2、补丁修复
putty → Telnet
telnet 10.0.0.88 1287
wget http://10.0.0.99/wkcfix.sh
sh wkcfix.sh b0:d5:xx:xx:xx:xx
rm -f wkcfix.sh
reboot -f
3、注意事项
3.1、恢复mac值时,禁止乱填非本机MAC值,否则可能导致系统不分配IP地址,此时可拆机进系统重刷MAC值,或重新刷机;
3.2、重启后先查看路由中是否恢复为指定mac,正常后联网等待更新;
3.3、IP说明: 100 → armbian-IP | 99 → PC | 88 → 玩客云;
这里编辑收缩框内容
修改主机名
hostnamectl set-hostname wky
wky改成你自己想要的主机名即可。
安装指令
1.安装阿里源
``
bash <(curl -sSL https://linuxmirrors.cn/main.sh)``
2.替换原镜像源pip.conf
cat << EOF | sudo tee /etc/pip.conf
[global]
timeout = 10
index-url = http://mirrors.aliyun.com/pypi/simple/
index-index-url = http://pypi.douban.com/simple/
[install]
trusted-host =
mirrors.aliyun.com
pypi.douban.com
EOF
修改MAC
sed -i '7c hwaddress 00:22:6D:59:E4:CB' /etc/network/interfaces
github host
sed -i "/# GitHub520 Host Start/Q" /etc/hosts && curl https://raw.hellogithub.com/hosts >> /etc/hosts
自动更新/etc/hosts文件,可以添加到cron定时执行。使用前确保Github520内容在该文件最后部分。
nano /etc/hosts
## GitHub520 Host Start
140.82.114.4 alive.github.com
140.82.114.4 live.github.com
34.222.90.152 github.githubassets.com
140.82.114.4 central.github.com
54.212.43.162 desktop.githubusercontent.com
140.82.114.4 assets-cdn.github.com
35.90.202.95 camo.githubusercontent.com
151.101.1.6 github.map.fastly.net
151.101.1.6 github.global.ssl.fastly.net
140.82.114.4 gist.github.com
185.199.108.153 github.io
140.82.114.4 github.com
192.0.66.2 github.blog
140.82.114.4 api.github.com
35.92.136.135 raw.githubusercontent.com
35.88.174.187 user-images.githubusercontent.com
35.88.107.200 favicons.githubusercontent.com
54.190.48.32 avatars5.githubusercontent.com
54.190.20.249 avatars4.githubusercontent.com
52.41.34.111 avatars3.githubusercontent.com
34.212.0.78 avatars2.githubusercontent.com
35.166.141.210 avatars1.githubusercontent.com
54.245.147.77 avatars0.githubusercontent.com
54.190.20.249 avatars.githubusercontent.com
140.82.114.4 codeload.github.com
72.21.206.80 github-cloud.s3.amazonaws.com
72.21.206.80 github-com.s3.amazonaws.com
72.21.206.80 github-production-release-asset-2e65be.s3.amazonaws.com
72.21.206.80 github-production-user-asset-6210df.s3.amazonaws.com
72.21.206.80 github-production-repository-file-5c1aeb.s3.amazonaws.com
185.199.108.153 githubstatus.com
140.82.114.18 github.community
52.224.38.193 github.dev
140.82.114.4 collector.github.com
35.88.107.200 pipelines.actions.githubusercontent.com
54.245.147.77 media.githubusercontent.com
54.201.96.16 cloud.githubusercontent.com
35.86.106.143 objects.githubusercontent.com
13.107.213.40 vscode.dev
# Update time: 2022-10-28T22:13:37+08:00
# Update url: https://raw.hellogithub.com/hosts
# Star me: https://github.com/521xueweihan/GitHub520
# GitHub520 Host End
更新
sudo apt update -y && apt upgrade -y
安装docker
apt install docker.io
安装dockers compose
wget https://github.com/docker/compose/releases/latest/download/docker-compose-linux-armv7 > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
这里编辑收缩框内容
sudo curl -L https://file.cokan.space/api/public/dl/Q5w3eE2u > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
安装 CasaOs
wget -qO- https://get.casaos.io | bash
docker加速
if [ ! -d /etc/docker ];then
sudo mkdir -p /etc/docker
fi
cat << EOF | sudo tee /etc/docker/daemon.json
{
"log-driver": "journald",
"insecure-registries": ["192.168.123.100:5555"],
"registry-mirrors": [
"https://rw21enj1.mirror.aliyuncs.com",
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com",
"https://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
EOF
重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
安装 homeassistant
docker pull homeassistant/home-assistant:stable
mkdir -p /home/cokan/docker/homeassistant/config/custom_components
cat << EOF | sudo tee /home/cokan/docker/homeassistant/docker-compose.yml
version: '3'
services:
homeassistant:
container_name: homeassistant
image: "homeassistant/home-assistant:stable"
volumes:
- /home/cokan/docker/homeassistant/config:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
privileged: true
network_mode: host
EOF
开始运行
cd /home/cokan/docker/homeassistant
docker-compose up -d
安装hacs
wget "https://github.91chi.fun/https://github.com/hacs/integration/releases/latest/download/hacs.zip"
unzip -d /home/cokan/docker/homeassistant/config/custom_components/hacs hacs.zip
文件夹授权
chmod 777 -R /home/cokan/docker/homeassistant/config/custom_components/hacs
进入home-assistant
docker exec -it homeassistant bash
重启home-assistant
docker restart homeassistant
Home Assistant Container IP
http://<host>:8123
恢复
docker exec -it homeassistant bash
ha backups list #列出备份及其鼻塞名称
ha backups restore slugname #恢复特定备份
ha backups new --name nameofbackup #创建备份
安装openwrt
### 下载镜像
docker pull sulinggg/openwrt:arm_cortex-a5_vfpv4
ip link set eth0 promisc on
docker network create -d macvlan --subnet=192.168.123.0/24 --gateway=192.168.123.1 -o parent=eth0 macnet
docker run --restart always --name openwrt -d --network macnet --privileged sulinggg/openwrt:arm_cortex-a5_vfpv4 /sbin/init
docker exec -it openwrt bash
vim /etc/config/network
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
config interface 'lan'
option type 'bridge'
option ifname 'eth0'
option proto 'static'
option netmask '255.255.255.0'
option ip6assign '60'
option ipaddr '192.168.123.10'
option gateway '192.168.123.1'
option dns '192.168.123.1'
config interface 'vpn0'
option ifname 'tun0'
option proto 'none'
安装DDNS解析
mkdir -p /home/cokan/docker/ddns-go
docker run -d \
--name ddns-go \
--restart=always \
--net=host \
-v /home/cokan/docker/ddns-go:/root \
jeessy/ddns-go
文件夹授权
chmod 777 -R /home/cokan/docker/ddns-go/*
ddns-go IP
http://<host>:9876
Home Assistant Supervised
更新系统和依赖
apt update && sudo apt upgrade -y && sudo apt autoremove -y
apt --fix-broken install
apt-get install jq curl avahi-daemon apparmor-utils udisks2 libglib2.0-bin network-manager dbus wget -y
修复grub报错
apt-get install grub2-common -y
nano /etc/default/grub
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
systemd.unified_cgroup_hierarchy=false
nano /boot/cmdline.txt
apparmor=1 security=apparmor
systemd.unified_cgroup_hierarchy=false
安装docker ce
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
if [ ! -d /etc/docker ];then
sudo mkdir -p /etc/docker
fi
cat << EOF | sudo tee /etc/docker/daemon.json
{
"log-driver": "journald",
"registry-mirrors": [
"https://rw21enj1.mirror.aliyuncs.com",
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com",
"https://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
EOF
安装docker compose
sudo curl -fsSL https://raw.githubusercontent.com/aleksanderlech/armv7-docker-compose/master/run.sh -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
安装os-agent
wget https://github.91chi.fun/https://github.com//home-assistant/os-agent/releases/download/1.2.2/os-agent_1.2.2_linux_armv7.deb && dpkg -i os-agent_1.2.2_linux_armv7.deb
重启系统
reboot
安装supervised
wget https://github.91chi.fun/https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb && dpkg -i homeassistant-supervised.deb
固定MAC
nano /etc/network/interfaces
allow-hotplug eth0
no-auto-down eth0
iface eth0 inet dhcp
hwaddress 00:22:6D:59:E4:CB
安装hacs
wget -O - https://get.hacs.xyz | bash -
hacs默认目录
/usr/share/hassio/homeassistant/custom_components/hacs/
supervised商店源Home Assistant Community Add-ons
https://github.com/hassio-addons/repository
https://hub.fastgit.xyz/hassio-addons/repository
supervised商店源Official add-ons
https://github.com/home-assistant/addons
https://hub.fastgit.xyz/home-assistant/addons
开启SMB
apt-get install samba
smbpasswd -a ${name}
nano /etc/samba/smb.conf
第五步:在这个文件的最后,需要添加一点东西:
[share_name]
#符号[ ]里面的是共享文件夹对外的名字,称为共享名字,注意[ ]不能掉
path = /home/book/Desktop/example
#这个path就是你想共享的那个文件夹的路径
available = yes
valid users = 用户名
#这个book,就是我们刚才在第二步创建的那个用户名,记得替换
read only = no
browsable = yes
public = yes
writable = yes
aio read size = 0
重启SMB服务:
sudo service smbd restart
mosquitto
sudo docker pull eclipse-mosquitto
sudo mkdir -p /home/cokan/docker/mosquitto/config
sudo mkdir -p /home/cokan/docker/mosquitto/data
sudo mkdir -p /home/cokan/docker/mosquitto/log
sudo nano /home/cokan/docker/mosquitto/config/mosquitto.conf
allow_anonymous true
port 8883
persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log
sudo chmod -R 755 /home/cokan/docker/mosquitto
sudo chmod -R 777 /home/cokan/docker/mosquitto/log
docker run -d \
--name=mosquitto \
--privileged \
-p 1883:8883 \
-p 9001:9001 \
-v /home/cokan/docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf \
-v /home/cokan/docker/mosquitto/config:/mosquitto/config \
-v /home/cokan/docker/mosquitto/data:/mosquitto/data \
-v /home/cokan/docker/mosquitto/log:/mosquitto/log \
eclipse-mosquitto
所需软件
系统三选一
Armbian_20.12_Aml-s812_bionic_current_5.9.0-rc7.img
Armbian_20.12_Aml-s812_buster_current_5.9.0-rc7.img
Armbian_20.12_Aml-s812_focal_current_5.9.0-rc7.img
U盘输入工具
usb-image-tool
感谢以下作者的资料
Docker极速安装
安装 armv7 Docker Compose 1.16.2
玩客云系统 Armbian 20.12 Buster with Linux 5.9.0-rc7
hacs一键安装脚本
Linux - Home Assistant (home-assistant.io)
GitHub - hacs/integration: HACS gives you a powerful UI to handle downloads of all your custom needs.