The latest release of NextCloudPi is out!
This release updates to the latest 12.0.4 version of Nextcloud.
On the hardware side, we keep expanding our options with Armbian support which will allow us to generate ready to use SD card images for several powerful boards for those wanting more performant private clouds.
Also James Sundquist, from Noisebridge hackerspace has come up with an amazing case for the Pi, and is planning to share details on how to build for those brave handypeople willing to take on it. Looking great!
On the software side of things we welcome a diagnostics utility for even easier setup, configuration management, SSH daemon management and BTRFS support.
As usual, there have been many fixes and enhancements. I would like to thank everyone that was involved.
Last but not least, please download through bitorrent and share it for a while to help keep hosting costs down.
The folks at the Armbian project have been doing an amazing job at supporting many powerful ARM boards with focus on kernel settings, taylored for performance and security. It was a natural step to try to provide SD card images with NextCloudPi for some of these boards!
These are the steps required to build for instance an image for the Odroid XU4
git clone https://github.com/nextcloud/nextcloudpi.git cd nextcloudpi ./build-SD-armbian.sh odroidxu4 # requires docker
The steps would be the same for any other board, as long as it comes with Debian Stretch.
If anyone wants to generate images for their Armbian supported boards, give it a try, help polish things and even share it with others!
Once the build system has been integrated, the first victim of the experiments is the Odroid HC1 based on the Armbian image.
Odroid HC1 images
For those who don’t know it, the Odroid HC1 is an ARM board that was specifically created to serve as a home self-hosting server. This little beast is designed to attach a 2.5 inches SSD hard drive to it’s SATA port and comes with gigabit ethernet, 2GB of RAM and 8x cores. What a better home for your self hosted Nextcloud instance?
The images can be found here, keep in mind that they are experimental but we already have positive feedback, and I am personally using it as well. Use the Nextcloud forums, or even better the Armbian forums for issues or suggestions.
This new release focuses on stability and security. Check out the announcement here.
NextCloudPi is moving towards a more modern filesystem, BTRFS! This means that we can benefit from some of its advanced features, most specially super efficient snapshots and incremental backups using copy-on-write (COW). There’s more good things that we will implicitly benefit from, such as self-healing, compression, file cloning or protection against silent bit corruption.
nc-format-USB now will format to BTRFS, and nc-datadir will also adapt to BTRFS filesystems.
To start taking advantage from this, we now can take snapshots of our datadir with nc-snapshot. In the following example, we can see how a snapshot of a datadir of 8 GB takes no time.
Only the new bytes that change from the last snapshot will really be stored, so no matter how big our dataset is (say 200GB), the snapshot will be instantaneous and the real extra space will be minimal.
This means that now we can have maybe 100 daily snapshots of our 100GB data in a 200GB drive, whereas before we could barely fit 2.
In the future, we will be able to very efficiently transfer snapshots to remote machines using SSH, transfering only those bytes that changed since last backup.
Import or export NextCloudPi configuration
This has been requested quite often in order to migrate to newer images. Simply, you can now export your configuration to a file that you can then import in another NextCloudPi instance.
Options that were activated in the first instance will also be activated in the new one with the same configuration.
In order to be able to activate or deactivate SSH easier, now you can do so from the web interface. This is specially nice to configure recently installed instances, as it will allow us to login through SSH without doing the boot partition trick or requiring HDMI and keyboard.
In order to better help get a picture of our system’s state, we use nc-info.
In case possible improvements are detected in the configuration, they will be suggested.
If we want to add some lines from the main logs and config.php for troubleshooting, we can run
Last but not least, let’s see some more pictures and prototypes from the lasercut case that James has been working on. The case has LEDs that can be connected to the board’s GPIOs to indicate activity.
He is uploading his designs on his Github, and will soon post some instructions.