这几天闲暇折腾了几天树莓派,安装omv系统,据说可以装docker,感觉很香的样子~
大概记录了一下过程以及遇到的问题。
1、下载镜像
树莓派官方网站上下载系统镜像,这里使用debian9版本,因为之后安装omv4版本据说比较稳定。。。(最新版本是5)
1)镜像目录地址
https://downloads.raspberrypi.org/
根据需要下载对应版本即可,这里我使用的是
https://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2019-04-09/
这里应该是树莓派官方debian9版本 最后一个版本了,后边就是buster版本,但是据说buster版本必须安装omv5版。
这次就安装stretch这个版本,下载下来就可以了,刷入tf卡内(win32diskimager)咋刷这里就不多说了,也不难。。
刷入系统后就可以直接通过ssh连接了,这里树莓派默认账密是pi/raspberry
登录成功后,root账号是关闭的,为了方便操作,可以开启root,在终端输入:sudo passwd root,然后输入需要设置的密码,完成后,切换root账户,终端输入su root 输入密码,切换账户到root。
2、配置国内镜像源
因为国外源更新update太慢了,更新一下国内的镜像源,需要注意对应的版本
可以参考这个指导:https://mirror.tuna.tsinghua.edu.cn/help/raspbian/
编辑/etc/apt/sources.list 文件,使用默认的vi 键位问题不好操作,总是莫名其妙的出现其他字符,所以可以使用nano加需要编辑的文件,进行编辑,编辑完成后 输入ctrl+x 页面提示是否保存,按y键,然后按 回车 就可以了
# 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os/raspbian/stretch main non-free contrib rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspberry-pi-os/raspbian/stretch main non-free contrib rpi
然后修改 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/stretch main ui
修改好配置之后 在终端执行 apt-get update 等待更新完成即可
3、安装omv4
目前omv4 需要网络安装,所以需要联网进行
终端执行:
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash
等待安装完成,其中可能会出现连接失败的问题,可以通过修改hosts配置进行,可能会有所提升下载速度,或者可以科学上网的方式进行
4、安装omv 插件
第三步会自动安装,这里也可以手动安装 ,安装插件目前也是网络安装,在终端执行:
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/packages/raw/master/install | bash
脚本是从raw.githubusercontent.com下载的,目前连接这个域名总是失败,所以有个办法可以在
这个地址https://www.ipaddress.com/,获取一下raw的ip地址,然后把这个地址加到hosts配置文件里
终端执行 vi /etc/hosts 对应ip地址和域名,如下格式:
199.232.68.133 raw.githubusercontent.com
140.82.112.3 github.com
5、FAQ
1、出现 'NoneType' object is not callable 报错
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7fd62f0677b8>
Traceback (most recent call last):
File "/usr/lib/python3.5/weakref.py", line 117, in remove
TypeError: 'NoneType' object is not callable
Exception ignored in: <function WeakValueDictionary.__init__.<locals>.remove at 0x7fd62f0677b8>
Traceback (most recent call last):
File "/usr/lib/python3.5/weakref.py", line 117, in remove
TypeError: 'NoneType' object is not callable
解决办法
打开 /usr/lib/python3.5/weakref.py 文件,做如下编辑:
把第109行改为:
def remove(wr, selfref=ref(self), _atomic_removal=_remove_dead_weakref):
并且把第117行改为
_atomic_removal(d, wr.key)
然后终端执行 apt update
2、public key is not available 的问题
GPG error: http://httpredir.debian.org/debian stretch-backports InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7638D0442B90D010 NO_PUBKEY 04EE7237B7D453EC
解决方法:
在终端执行:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7638D0442B90D010(上边报的缺少的公钥,有几个就执行几次)
3、开启smb共享报错
可能出现,开启SMB共享时 在打开开关,会提示
The property 'nullpasswords' does not exist in the model 'conf.service.smb'
编辑/etc/openmediavault/config.xml 删除 <smb> 里有nullpassword 的行(如果有的话)
然后在终端分别执行:
source /usr/share/openmediavault/scripts/helper-functions
和
omv_config_delete "/config/services/smb/nullpasswords"
执行完成后 记得清除浏览器缓存
完成后reboot系统,然后登陆,默认用户名密码:
用户名: admin
密码:openmediavault