Revival of GnuBee PC2

Here i will show you how to install latest OMV5 on GnuBee PC 2 with Debian Buster 10 and a Raid5 configuration.

First is to say it’s a lot of work and the GnuBee PC 2 is not the fastest device.

Let us start with installing Debian Buster on GnuBee PC 2!

Download and install the firmware for GnuBee PC2 with Debian Jessie

cd /tmp
wget https://github.com/gnubee-git/gnubee-git.github.io/raw/master/debian/librecmc-ramips-mt7621-gb-pc1-squashfs-sysupgrade_2017-11-28.bin

Put the USB-stick in to your laptop/PC

Format the stick to vfat

sudo mkfs.vfat /dev/usbstick

Rename it to GNUBEE.BIN and copy the binary to the USB-Stick

mv librecmc-ramips-mt7621-gb-pc1-squashfs-sysupgrade_2017-11-28.bin  GNUBEE.BIN
cp -r GNUBEE.BIN /mnt/usbstick/*

Unmount the USB-Stick and take it from your machine

umount /mnt/usbstick

Put the USB-Stick in one of the GnuBee PC 2 USB-Slots, Power ON and wait untill the upper Green-LED shine constantly

Now but the Ethernet-Cable in the Blue-Ethernet-Port of the GnuBee PC2 and take the Power OFF and ON

Plug the Ethernetcable in to a Router/Switch and Login in with a SSH-Client

ssh root@192.168.1.XXX

The Password is GnuBee or root

Now prepare the OS-Disk mostly a SSD with more than 32 GB. I recommend 128 GB as minimum.

X is a shareholder for the letter of the system disk mostly is a

fdisk -l 
fdisk /dev/sdX

Make a swap partition of 4 GB on /dev/sdX and a root partition with linux filesystem with the rest of /dev/sdX

Device       Start       End   Sectors   Size Type
/dev/sdX1     2048   8390655   8388608     4G Linux swap
/dev/sdX2  8390656 234441614 226050959 107.8G Linux filesystem

Format the swap partition

mkswap /dev/sdX1

Go to tmp Folder of your GnuBee

cd /tmp
wget --no-check-certificate https://raw.githubusercontent.com/gnubee-git/GnuBee_Docs/master/GB-PCx/scripts/jessie_3.10.14/debian-jessie-install
sh ./debian-jessie-install
reboot
ssh root@192.168.1.XXX

Login as root password is the same as above: GnuBee and install the kernel modules

wget --no-check-certificate https://raw.githubusercontent.com/gnubee-git/gnubee-git.github.io/master/debian/debian-modules-install
bash ./debian-modules-install
reboot

Log in and edit the sources list with your favorite editor ( i use vim)

vim /etc/apt/sources.list

Delete the old lines and add following lines

deb http://httpredir.debian.org/debian stretch main
deb http://httpredir.debian.org/debian stretch-updates main
deb http://security.debian.org/ stretch/updates main

Then execute following commands afterwards you have Debian Stretch

apt update
apt full-upgrade
apt autoremove
reboot

Login again with ssh and edit /etc/apt/sources.list

deb http://httpredir.debian.org/debian buster main
deb http://httpredir.debian.org/debian buster-updates main
deb http://security.debian.org/debian-security buster/updates main
deb http://deb.debian.org/debian buster-backports-sloppy main
deb http://ftp.de.debian.org/debian buster-backports main

Repeat following commands

apt update
apt full-upgrade
apt autoremove
reboot

So now you have a problem that the ssh-server dosen’t work anymore

You have to update the firmware of GnuBee PC 2

Take your USB-stick which is formatted in vfat and delete all files from the stick

cd /mnt/usbstick/
sudo rm -rf *
cd /tmp
wget https://neil.brown.name/gnubee/gnubee-5.4.14-gbpc2.bin
mv gnubee-* /mnt/usbstick/GNUBEE.BIN

Take the power OFF from the GnuBeePC 2

Insert the USB-Stick in a slot and then Power ON afterwards will flash the firmware.

Wait until the upper led is constant and power OFF and ON the GnuBee PC2, if no LED is shining anymore the GnuBee is booted. Wait 1min after no LED is ON and then login with ssh. Password is GnuBee or that one which you have changed.

ssh root@192.168.1.XXX

Now we have a running GnuBee PC2 with Debian Buster. Is also possible to upgrade to Debian Bullseye which use the same firmware (Kernel) but doesn’t work with Openmediavault 5, possibly you can install OMV 6 but i hadn’t tested!

So we start to installing the latest stable Openmediavault 5 on GnuBee PC2 with RAID 5

apt-get update
apt-get install debhelper fakeroot gettext python3-pip unzip sudo git make python3-setuptools python3-dev quilt
pip3 install --upgrade wheel
pip3 install --upgrade black pylint

Clone the latest wsdd from github afterwards compile & install the package

cd /tmp
git clone https://github.com/openmediavault/wsdd.git
cd wsdd
fakeroot debian/rules binary
cd ..
dpkg -i wsdd_*.deb

Now we have to compile the openmediavault 5 packages

git clone https://github.com/openmediavault/openmediavault.git
git checkout 3be91eccabe8b7afd735241d787b962697d3124e
cd openmediavault/deb

Download the library in the sources folder

cd sources
wget -c http://cdn.sencha.com/ext/gpl/ext-6.2.0-gpl.zip
cd ..

Build non Openmediavault packages libjs-extjs6 and php-pam

cd libjs-extjs6 && fakeroot debian/rules binary
cd ../php-pam
fakeroot debian/rules binary
cd ..

Build all OMV 5 packages

make binary

Now install all perquisite packages they are needed for a Openmediavault 5 installation

apt-get install 
acl
adduser
adwaita-icon-theme
alsa-utils
anacron
apt
apt-transport-https
apt-utils
at-spi2-core
attr
autoconf
automake
autopoint
autotools-dev
avahi-daemon
base-files
base-passwd
bash
bash-completion
beep
bind9-host
binutils
binutils-common:mipsel
binutils-mipsel-linux-gnu
bsd-mailx
bsdmainutils
bsdutils
btrfs-progs
build-essential
bzip2
ca-certificates
ca-certificates-java
chrony
clamav-base
clamav-daemon
clamav-freshclam
clamdscan
collectd
collectd-core
composer
coreutils
cpio
cpp
cpp-8
cpufrequtils
cron
cron-apt
curl
dash
dbus
dbus-user-session
dconf-gsettings-backend:mipsel
dconf-service
debconf
debconf-i18n
debconf-utils
debhelper
debian-archive-keyring
debianutils
default-jre-headless
dh-autoreconf
dh-python
dh-strip-nondeterminism
dialog
diffstat
diffutils
dirmngr
distro-info-data
dmeventd
dmsetup
dpkg
dpkg-dev
dwz
e2fslibs:mipsel
e2fsprogs
e2fsprogs-l10n
equivs
ethtool
exim4-base
exim4-config
exim4-daemon-light
f2fs-tools
fakeroot
fdisk
file
findutils
fontconfig
fontconfig-config
fonts-dejavu-core
forked-daapd
fuse
g++
g++-8
gcc
gcc-4.8-base:mipsel
gcc-4.9-base:mipsel
gcc-6-base:mipsel
gcc-8
gcc-8-base:mipsel
gdebi
gdebi-core
gdisk
geoip-database
gettext
gettext-base
gir1.2-atk-1.0:mipsel
gir1.2-freedesktop:mipsel
gir1.2-gdkpixbuf-2.0:mipsel
gir1.2-glib-2.0:mipsel
gir1.2-gtk-3.0:mipsel
gir1.2-pango-1.0:mipsel
gir1.2-vte-2.91:mipsel
git
git-man
glib-networking:mipsel
glib-networking-common
glib-networking-services
gnome-icon-theme
gnupg
gnupg-agent
gnupg-l10n
gnupg-utils
gpg
gpg-agent
gpg-wks-client
gpg-wks-server
gpgconf
gpgsm
gpgv
grep
groff-base
gsettings-desktop-schemas
gtk-update-icon-cache
gzip
hdparm
hicolor-icon-theme
hostname
htop
ibverbs-providers:mipsel
ifupdown
init
init-system-helpers
initscripts
insserv
intltool-debian
iproute2
iptables
iputils-ping
isc-dhcp-client
isc-dhcp-common
iso-codes
java-common
javascript-common
jfsutils
jq
jsonlint
keyutils
kmod
less
libacl1:mipsel
libaio1:mipsel
libalgorithm-diff-perl
libalgorithm-diff-xs-perl
libalgorithm-merge-perl
libantlr3c-3.4-0:mipsel
libaom0:mipsel
libapparmor1:mipsel
libapr1:mipsel
libapt-inst1.5:mipsel
libapt-inst2.0:mipsel
libapt-pkg4.12:mipsel
libapt-pkg5.0:mipsel
libarchive-cpio-perl
libarchive-zip-perl
libargon2-1:mipsel
libasound2:mipsel
libasound2-data
libass9:mipsel
libassuan0:mipsel
libasyncns0:mipsel
libatasmart4:mipsel
libatk-bridge2.0-0:mipsel
libatk1.0-0:mipsel
libatk1.0-data
libatomic1:mipsel
libatspi2.0-0:mipsel
libattr1:mipsel
libaudit-common
libaudit1:mipsel
libavahi-client3:mipsel
libavahi-common-data:mipsel
libavahi-common3:mipsel
libavahi-core7:mipsel
libavcodec58:mipsel
libavfilter7:mipsel
libavformat58:mipsel
libavutil56:mipsel
libbind9-161:mipsel
libbinutils:mipsel
libblkid1:mipsel
libbluetooth3:mipsel
libbluray2:mipsel
libboost-atomic1.67.0:mipsel
libboost-iostreams1.55.0:mipsel
libboost-iostreams1.67.0:mipsel
libboost-regex1.67.0:mipsel
libboost-system1.67.0:mipsel
libboost-thread1.67.0:mipsel
libbs2b0:mipsel
libbsd0:mipsel
libbz2-1.0:mipsel
libc-bin
libc-dev-bin
libc-l10n
libc6:mipsel
libc6-dev:mipsel
libcairo-gobject2:mipsel
libcairo2:mipsel
libcap-ng0:mipsel
libcap2:mipsel
libcap2-bin
libcc1-0:mipsel
libcephfs2:mipsel
libchromaprint1:mipsel
libclamav9:mipsel
libcodec2-0.8.1:mipsel
libcolord2:mipsel
libcom-err2:mipsel
libcomerr2:mipsel
libcommon-sense-perl
libconfig9:mipsel
libconfuse-common
libconfuse2:mipsel
libcpufreq0
libcroco3:mipsel
libcryptsetup12:mipsel
libcryptsetup4:mipsel
libcups2:mipsel
libcurl3-gnutls:mipsel
libcurl4:mipsel
libdaemon0:mipsel
libdatrie1:mipsel
libdb5.3:mipsel
libdbi1:mipsel
libdbus-1-3:mipsel
libdconf1:mipsel
libdebconfclient0:mipsel
libdevmapper-event1.02.1:mipsel
libdevmapper1.02.1:mipsel
libdns-export100
libdns-export1104
libdns1104:mipsel
libdpkg-perl
libdrm-common
libdrm2:mipsel
libedit2:mipsel
libelf1:mipsel
libepoxy0:mipsel
liberror-perl
libesmtp6
libestr0:mipsel
libev4:mipsel
libevent-2.1-6:mipsel
libevent-core-2.1-6:mipsel
libevent-pthreads-2.1-6:mipsel
libexpat1:mipsel
libexpat1-dev:mipsel
libext2fs2:mipsel
libf2fs-format4:mipsel
libf2fs5:mipsel
libfakeroot:mipsel
libfastjson4:mipsel
libfdisk1:mipsel
libffi6:mipsel
libfftw3-double3:mipsel
libfftw3-single3:mipsel
libfile-fcntllock-perl
libfile-slurp-perl
libfile-stripnondeterminism-perl
libflac8:mipsel
libflite1:mipsel
libfontconfig1:mipsel
libfreetype6:mipsel
libfribidi0:mipsel
libfstrm0:mipsel
libftdi1-2:mipsel
libfuse2:mipsel
libganglia1
libgcc-8-dev:mipsel
libgcc1:mipsel
libgcrypt20:mipsel
libgd3:mipsel
libgdbm-compat4:mipsel
libgdbm3:mipsel
libgdbm6:mipsel
libgdk-pixbuf2.0-0:mipsel
libgdk-pixbuf2.0-bin
libgdk-pixbuf2.0-common
libgeoip1:mipsel
libgfapi0:mipsel
libgfrpc0:mipsel
libgfxdr0:mipsel
libgirepository-1.0-1:mipsel
libglib2.0-0:mipsel
libglib2.0-data
libglusterfs0:mipsel
libgme0:mipsel
libgmp10:mipsel
libgnutls-dane0:mipsel
libgnutls-deb0-28:mipsel
libgnutls-openssl27:mipsel
libgnutls30:mipsel
libgomp1:mipsel
libgpg-error-l10n
libgpg-error0:mipsel
libgpgme11:mipsel
libgpm2:mipsel
libgps23:mipsel
libgraphite2-3:mipsel
libgsm1:mipsel
libgssapi-krb5-2:mipsel
libgtk-3-0:mipsel
libgtk-3-bin
libgtk-3-common
libharfbuzz0b:mipsel
libhiredis0.14:mipsel
libhogweed2:mipsel
libhogweed4:mipsel
libi2c0:mipsel
libibverbs1:mipsel
libice6:mipsel
libicu52:mipsel
libicu63:mipsel
libidn11:mipsel
libidn2-0:mipsel
libip4tc0:mipsel
libip6tc0:mipsel
libiptc0:mipsel
libirs-export91
libisc-export1100:mipsel
libisc-export95
libisc1100:mipsel
libisccc161:mipsel
libisccfg-export90
libisccfg163:mipsel
libisl19:mipsel
libjansson4:mipsel
libjavascript-minifier-xs-perl
libjbig0:mipsel
libjpeg62-turbo:mipsel
libjq1:mipsel
libjs-jquery
libjs-sphinxdoc
libjs-underscore
libjson-c2:mipsel
libjson-c3:mipsel
libjson-glib-1.0-0:mipsel
libjson-glib-1.0-common
libjson-perl
libjson-xs-perl
libk5crypto3:mipsel
libkeyutils1:mipsel
libkmod2:mipsel
libkrb5-3:mipsel
libkrb5support0:mipsel
libksba8:mipsel
liblcms2-2:mipsel
libldap-2.4-2:mipsel
libldap-common
libldb1:mipsel
liblilv-0-0:mipsel
liblmdb0:mipsel
liblocale-gettext-perl
liblocale-po-perl
liblockfile-bin
liblockfile1:mipsel
liblogging-stdlog0:mipsel
liblognorm1:mipsel
liblognorm5:mipsel
libltdl-dev:mipsel
libltdl7:mipsel
liblua5.1-0:mipsel
liblua5.3-0:mipsel
liblvm2cmd2.03:mipsel
liblwres161:mipsel
liblz4-1:mipsel
liblzma5:mipsel
liblzo2-2:mipsel
libmagic-mgc
libmagic1:mipsel
libmail-sendmail-perl
libmariadb3:mipsel
libmemcached11:mipsel
libmemcachedutil2:mipsel
libmicrohttpd12
libmnl0:mipsel
libmodbus5:mipsel
libmosquitto1:mipsel
libmount1:mipsel
libmp3lame0:mipsel
libmpc3:mipsel
libmpdec2:mipsel
libmpfr6:mipsel
libmpg123-0:mipsel
libmspack0:mipsel
libmxml1:mipsel
libmysofa0:mipsel
libncurses-dev:mipsel
libncurses5:mipsel
libncurses6:mipsel
libncursesw5:mipsel
libncursesw6:mipsel
libnetfilter-acct1:mipsel
libnetfilter-conntrack3:mipsel
libnettle4:mipsel
libnettle6:mipsel
libnewt0.52:mipsel
libnfnetlink0:mipsel
libnfsidmap2:mipsel
libnftables0:mipsel
libnftnl11:mipsel
libnghttp2-14:mipsel
libnginx-mod-http-auth-pam
libnginx-mod-http-dav-ext
libnginx-mod-http-echo
libnginx-mod-http-geoip
libnginx-mod-http-image-filter
libnginx-mod-http-subs-filter
libnginx-mod-http-upstream-fair
libnginx-mod-http-xslt-filter
libnginx-mod-mail
libnginx-mod-stream
libnl-3-200:mipsel
libnl-genl-3-200:mipsel
libnl-route-3-200:mipsel
libnorm1:mipsel
libnotify4:mipsel
libnpth0:mipsel
libnspr4:mipsel
libnss-mdns:mipsel
libnss-myhostname:mipsel
libnss-systemd:mipsel
libnss3:mipsel
libntfs-3g883
libnuma1:mipsel
libogg0:mipsel
libonig5:mipsel
libopenipmi0
libopenjp2-7:mipsel
libopenmpt0:mipsel
liboping0:mipsel
libopus0:mipsel
libossp-uuid16:mipsel
libow-3.2-3:mipsel
libowcapi-3.2-3:mipsel
libp11-kit0:mipsel
libpam-modules:mipsel
libpam-modules-bin
libpam-runtime
libpam-systemd:mipsel
libpam0g:mipsel
libpam0g-dev:mipsel
libpango-1.0-0:mipsel
libpangocairo-1.0-0:mipsel
libpangoft2-1.0-0:mipsel
libpangoxft-1.0-0:mipsel
libparted2:mipsel
libpcap0.8:mipsel
libpci3:mipsel
libpcre2-16-0:mipsel
libpcre2-32-0:mipsel
libpcre2-8-0:mipsel
libpcre2-dev:mipsel
libpcre2-posix0:mipsel
libpcre3:mipsel
libpcsclite1:mipsel
libperl5.28:mipsel
libpgm-5.2-0:mipsel
libpipeline1:mipsel
libpixman-1-0:mipsel
libplist3:mipsel
libpng16-16:mipsel
libpolkit-agent-1-0:mipsel
libpolkit-backend-1-0:mipsel
libpolkit-gobject-1-0:mipsel
libpopt0:mipsel
libpostproc55:mipsel
libpq5:mipsel
libprocps3:mipsel
libprocps7:mipsel
libprotobuf-c1:mipsel
libproxy1v5:mipsel
libpsl0:mipsel
libpsl5:mipsel
libpulse0:mipsel
libpython-stdlib:mipsel
libpython2-stdlib:mipsel
libpython2.7:mipsel
libpython2.7-minimal:mipsel
libpython2.7-stdlib:mipsel
libpython3-dev:mipsel
libpython3-stdlib:mipsel
libpython3.7:mipsel
libpython3.7-dev:mipsel
libpython3.7-minimal:mipsel
libpython3.7-stdlib:mipsel
librabbitmq4:mipsel
librados2:mipsel
librdkafka1:mipsel
libreadline-gplv2-dev:mipsel
libreadline5:mipsel
libreadline6:mipsel
libreadline7:mipsel
librest-0.7-0:mipsel
libriemann-client0:mipsel
librrd8:mipsel
librsvg2-2:mipsel
librsvg2-common:mipsel
librtmp1:mipsel
librubberband2:mipsel
libsamplerate0:mipsel
libsasl2-2:mipsel
libsasl2-modules:mipsel
libsasl2-modules-db:mipsel
libseccomp2:mipsel
libselinux1:mipsel
libsemanage-common
libsemanage1:mipsel
libsensors-config
libsensors5:mipsel
libsepol1:mipsel
libserd-0-0:mipsel
libshine3:mipsel
libsigc++-2.0-0c2a:mipsel
libsigsegv2:mipsel
libslang2:mipsel
libsm6:mipsel
libsmartcols1:mipsel
libsnappy1v5:mipsel
libsndfile1:mipsel
libsnmp-base
libsnmp30:mipsel
libsodium23:mipsel
libsord-0-0:mipsel
libsoup-gnome2.4-1:mipsel
libsoup2.4-1:mipsel
libsoxr0:mipsel
libspeex1:mipsel
libsqlite3-0:mipsel
libsratom-0-0:mipsel
libss2:mipsel
libssh-gcrypt-4:mipsel
libssh2-1:mipsel
libssl-dev:mipsel
libssl1.0.0:mipsel
libssl1.0.2:mipsel
libssl1.1:mipsel
libstdc++-8-dev:mipsel
libstdc++6:mipsel
libswresample3:mipsel
libswscale5:mipsel
libsys-hostname-long-perl
libsystemd0:mipsel
libtalloc2:mipsel
libtasn1-6:mipsel
libtdb1:mipsel
libtevent0:mipsel
libtext-charwidth-perl
libtext-iconv-perl
libtext-wrapi18n-perl
libtfm1:mipsel
libthai-data
libthai0:mipsel
libtheora0:mipsel
libtiff5:mipsel
libtinfo-dev:mipsel
libtinfo5:mipsel
libtinfo6:mipsel
libtirpc-common
libtirpc3:mipsel
libtokyocabinet9:mipsel
libtokyotyrant3
libtool
libtwolame0:mipsel
libtypes-serialiser-perl
libuchardet0:mipsel
libudev1:mipsel
libunbound8:mipsel
libunistring2:mipsel
libupsclient4:mipsel
libusb-0.1-4:mipsel
libusb-1.0-0:mipsel
libustr-1.0-1:mipsel
libuuid1:mipsel
libuv1:mipsel
libva-drm2:mipsel
libva-x11-2:mipsel
libva2:mipsel
libvarnishapi2:mipsel
libvdpau1:mipsel
libvidstab1.1:mipsel
libvirt0:mipsel
libvorbis0a:mipsel
libvorbisenc2:mipsel
libvorbisfile3:mipsel
libvpx5:mipsel
libvte-2.91-0:mipsel
libvte-2.91-common
libwavpack1:mipsel
libwayland-client0:mipsel
libwayland-cursor0:mipsel
libwayland-egl1:mipsel
libwbclient0:mipsel
libwebp6:mipsel
libwebpmux3:mipsel
libwebsockets8:mipsel
libwrap0:mipsel
libx11-6:mipsel
libx11-data
libx11-xcb1:mipsel
libx264-155:mipsel
libx265-165:mipsel
libxau6:mipsel
libxcb-render0:mipsel
libxcb-shm0:mipsel
libxcb1:mipsel
libxcomposite1:mipsel
libxcursor1:mipsel
libxdamage1:mipsel
libxdmcp6:mipsel
libxext6:mipsel
libxfixes3:mipsel
libxft2:mipsel
libxi6:mipsel
libxinerama1:mipsel
libxkbcommon0:mipsel
libxml2:mipsel
libxpm4:mipsel
libxrandr2:mipsel
libxrender1:mipsel
libxslt1.1:mipsel
libxtables10
libxtables12:mipsel
libxtst6:mipsel
libxvidcore4:mipsel
libyajl2:mipsel
libyaml-0-2:mipsel
libzmq5:mipsel
libzstd1:mipsel
libzvbi-common
libzvbi0:mipsel
linux-libc-dev:mipsel
locales
login
logrotate
lsb-base
lsb-release
lsof
lvm2
m4
make
man-db
manpages
manpages-dev
mariadb-common
mawk
mdadm
mime-support
mlocate
monit
mount
multiarch-support
mysql-common
nano
ncurses-base
ncurses-bin
net-tools
netbase
netcat-traditional
netplan.io
nfacct
nfs-common
nfs-kernel-server
nftables
nginx
nginx-common
nginx-full
notification-daemon
ntfs-3g
ntpdate
nut
nut-client
nut-server
openjdk-11-jre-headless:mipsel
openssh-client
openssh-server
openssh-sftp-server
openssl
owfs-common
parted
passwd
patch
pciutils
perl
perl-base
perl-modules-5.28
php-bcmath
php-common
php-composer-ca-bundle
php-composer-semver
php-composer-spdx-licenses
php-composer-xdebug-handler
php-curl
php-dev
php-json-schema
php-mbstring
php-msgpack
php-pear
php-psr-log
php-symfony-console
php-symfony-debug
php-symfony-filesystem
php-symfony-finder
php-symfony-process
php-xml
php-yaml
php7.3-bcmath
php7.3-cgi
php7.3-cli
php7.3-common
php7.3-curl
php7.3-dev
php7.3-fpm
php7.3-json
php7.3-mbstring
php7.3-opcache
php7.3-readline
php7.3-xml
pinentry-curses
pkg-config
pkg-php-tools
po-debconf
policykit-1
postfix
powermgmt-base
procps
proftpd-basic
proftpd-doc
proftpd-mod-vroot
psmisc
publicsuffix
python
python-apt-common
python-crypto
python-dnspython
python-gpg
python-jinja2
python-ldb
python-markupsafe
python-minimal
python-natsort-doc
python-pip-whl
python-samba
python-talloc:mipsel
python-tdb
python2
python2-minimal
python2.7
python2.7-minimal
python3
python3-all
python3-apt
python3-asn1crypto
python3-bs4
python3-cached-property
python3-cffi-backend
python3-chardet
python3-click
python3-colorama
python3-crypto
python3-cryptography
python3-dbus
python3-debian
python3-dev
python3-dialog
python3-distutils
python3-entrypoints
python3-gi
python3-html5lib
python3-jinja2
python3-keyring
python3-keyrings.alt
python3-lib2to3
python3-lxml:mipsel
python3-markupsafe
python3-minimal
python3-msgpack
python3-natsort
python3-netifaces
python3-pip
python3-pkg-resources
python3-pyudev
python3-secretstorage
python3-setuptools
python3-six
python3-soupsieve
python3-webencodings
python3-wheel
python3-xdg
python3-yaml
python3.7
python3.7-dev
python3.7-minimal
quilt
quota
quotatool
readline-common
rpcbind
rrdcached
rrdtool
rsync
rsyslog
samba
samba-common
samba-common-bin
samba-dsdb-modules:mipsel
samba-libs:mipsel
samba-vfs-modules:mipsel
sdparm
sed
sensible-utils
shairport-sync
shared-mime-info
shtool
smartmontools
snmpd
socat
sshpass
ssl-cert
startpar
sudo
systemd
systemd-sysv
sysv-rc
sysvinit-utils
tar
tasksel
tasksel-data
tdb-tools
tftpd-hpa
thin-provisioning-tools
traceroute
tzdata
ucf
udev
unzip
util-linux
uuid
vim
vim-common
vim-runtime
vim-tiny
vlan
watchdog
wget
whiptail
wpasupplicant
x11-common
xdg-user-dirs
xfsprogs
xkb-data
xmlstarlet
xxd
xz-utils
zlib1g:mipsel

Now we have to build salt (salt-common salt-minion) because the Debian Buster package are a lower version and we need =>3003

cd /tmp
git clone https://github.com/saltstack/salt.git
cd salt
python3 setup.py build
cd deb-dist
dpkg -i python3-salt*.deb

After installing salt (salt-common and salt-minion). We have to do symlinks because the installing path is wrong for Debian Buster.

ln -sf /usr/local/bin/salt-minion /usr/bin/salt-minion
ln -sf /usr/local/bin/salt-api /usr/bin/salt-api
ln -sf /usr/local/bin/salt-master /usr/bin/salt-master
ln -sf /usr/local/bin/salt-proxy /usr/bin/salt-proxy
ln -sf /usr/local/bin/salt-syndic /usr/bin/salt-syndic

We have to build virtual package for salt-common and salt-minion (salt-common is named as salt-master in /usr/bin/)

apt-get update
apt-get -y install equivs gdebi
cd /tmp
equivs-control salt-minion.cfg
equivs-control salt-common.cfg
vim salt-minion.cfg
 Section: misc
 Priority: optional
 Standards-Version: 3.6.2
 Package: salt-minion
 Version: 3003
 Maintainer: Joel Mueller
 Depends: python3, python3-all
 Description: Metapackage of Salt Minion V. 3003
 long description and info
 .
 second paragraph
vim salt-common.cfg
 Section: misc
 Priority: optional
 Standards-Version: 3.6.2
 Package: salt-common
 Version: 3003
 Maintainer: Joel Mueller
 Depends: python3, python3-all, salt-minion
 Description: Salt Master Metapackage also known as salt-common
 long description and info
 .
 second paragraph
equivs-build salt-minion.cfg
equivs-build salt-common.cfg
gdebi -n salt*.deb
dpkg -i  salt*.deb

Now are all necessary package installed and we are ready to install the compiled non- and Openmediavault 5 packages

cd /tmp/openmediavault
dpkg -i libjs-extjs6_*.deb php-pam_*.deb
dpkg -i openmediavault_*.deb
dpkg -i openmediavault-*.deb

Here a list to see if you have all compiled packages

libjs-extjs6_6.2.0.981-2_all.deb
openmediavault_5.6.16-1_all.deb
openmediavault-clamav_5.0.13-1_all.deb
openmediavault-diskstats_5.1.1-2_all.deb
openmediavault-forkeddaapd_5.0.5-1_all.deb
openmediavault-keyring_1.0_all.deb
openmediavault-lvm2_5.0.3-1_all.deb
openmediavault-nut_5.2.3-1_all.deb
openmediavault-omvextrasorg_latest_all5.deb
openmediavault-shairport_5.0.5-1_all.deb
openmediavault-sharerootfs_5.0.2-1_all.deb
openmediavault-snmp_5.0.4-1_all.deb
openmediavault-tftp_5.0.2-1_all.deb
openmediavault-usbbackup_5.0.9-1_all.deb
php-pam_1.0.3-1+deb10u1_mipsel.deb
php-pam-dbgsym_1.0.3-1+deb10u1_mipsel.deb

Should install proper all compiled packages and configure the system for OMV5 afterwards we prepare OMV5

omv-confdbadm populate

Now we make the webgui works

omv-salt deploy run nginx
omv-salt deploy run phpfpm

Now you should be able to get the interface over LAN http://192.168.1.XXX !

Login is

Username: admin

Password: openmediavault

Have fun with the latest OMV 5 on GnuBee PC 2 !

Links:

  • https://gist.github.com/jjakob/c9ab333d15105b986008863e9f4f5db8
  • https://terokarvinen.com/2011/create-deb-metapackage-in-5-minutes/
  • https://feeding.cloud.geek.nz/posts/installing-debian-buster-on-gnubee2/
  • https://forum.openmediavault.org/
  • http://gnubee.org/
  • https://www.crowdsupply.com/gnubee/personal-cloud-2
  • https://openmediavault.readthedocs.io/en/5.x/various/fs_env_vars.html

If you want use a RAID5 on GnuBee PC2 you have to edit some config and execute a command

First you have to build a RAID over the webinterface with or without LVM (I didn‘t document it but is very easy and well documented on many sites)

If the Raid is synced you can give them a filesystem. I prefer ext4

With this command you see the UUID of the Raid. Here my sample

lsblk -f
NAME      FSTYPE            LABEL       UUID                                 FSAVAIL FSUSE% MOUNTPOINT
sda                                                                                         
├─sda1    swap                          d108e4fb-1648-492d-9a9d-6f83d6d8812f                [SWAP]
└─sda2    ext4              GNUBEE-ROOT aeec84ed-f89d-407b-8522-d8e2ab495f38  220.1G     2% /
sdb       linux_raid_member nas:RAID5   6f10f7ae-fbe8-2992-c97b-74c489ba3bc8                
└─md0     ext4              RAID5       3a74c33a-60d4-41f8-b0b6-3b76f907648c   10.3T     0% /srv/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c
sdc       linux_raid_member nas:RAID5   6f10f7ae-fbe8-2992-c97b-74c489ba3bc8                
└─md0     ext4              RAID5       3a74c33a-60d4-41f8-b0b6-3b76f907648c   10.3T     0% /srv/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c
sdd       linux_raid_member nas:RAID5   6f10f7ae-fbe8-2992-c97b-74c489ba3bc8                
└─md0     ext4              RAID5       3a74c33a-60d4-41f8-b0b6-3b76f907648c   10.3T     0% /srv/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c
sde       linux_raid_member nas:RAID5   6f10f7ae-fbe8-2992-c97b-74c489ba3bc8                
└─md0     ext4              RAID5       3a74c33a-60d4-41f8-b0b6-3b76f907648c   10.3T     0% /srv/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c
mtdblock0                                                                                   
mtdblock1                                                                                   
mtdblock2                                                                                   
mtdblock3

Now we have to edit a OMV5-config because the journaled qoutas are not working on GnuBee PC2 with the mipsel kernel, so we have to use the unjournaled quota command for a proper mount of the RAID5

vim /etc/openmediavault/config.xml
     <mntent>
        <uuid>3a74c33a-60d4-41f8-b0b6-3b76f907648c</uuid>
        <fsname>/dev/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c</fsname>
        <dir>/srv/disk/by-uuid/3a74c33a-60d4-41f8-b0b6-3b76f907648c</dir>
        <type>ext4</type>
        <opts>defaults,nofail,user_xattr,noexec,usrquota,grpquota,jqfmt=vfsv0,acl</opts>
        <freq>0</freq>
        <passno>2</passno>
        <hidden>0</hidden>
      </mntent>

We have to add this line in the config under the system-disk-config and between the <fstab></fstab> tags. This is my configuration. You have to adjust them with your UUID!

At the end you have to execute following command to mount the RAID and to be referenced in the OMV5 system

omv-salt deploy run fstab

If the system shows success you done all right!