Jump to content


  • Posts

  • Joined

  • Last visited

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. I'm attaching a bash script that generates a ZFS-based Armbian OS image. It works (for me). Try it out and let me know how you get on. I'm in the process of porting it to Python, but the existing bash script is... not terrible. For some reason, I've failed to persuade this website to notify me when someone replies to this thread. fructify.20211011.sh.gz
  2. Oops. Thank you. Corrected URL: https://www.dropbox.com/s/3wc1gvf00d9k5fp/fructify.20211011.sh.gz I'm porting it to Python. If there's sufficient interest, I'll publish the source code. Is there a way for me to survey the existing Armbian users and ask if they're interested in something like this?
  3. This works for me. # BRANCH=$(cat /.armbian-release.host | grep BRANCH | cut -d'=' -f2) # [ "$BRANCH" == "" ] && exit 1 # . /.armbian-release.host # . /etc/armbian-release # INSTALL_PKG="linux-headers-${BRANCH}-${LINUXFAMILY}" # apt install ${INSTALL_PKG} # apt install dkms fakeroot linux-libc-dev menu debhelper # apt install zfsutils-linux zfs-initramfs zfs-auto-snapshot zfs-zed zfs-dkms # apt remove zfs-auto-snapshot # apt install --reinstall zfs-initramfs zfs-dkms zfs-zed # apt-mark hold linux-image* For some reason, I found it necessary to install, uninstall, and reinstall a couple of the packages. I've no earthly idea why. Anyway, it works for me. I put a hold on upgrades of the kernel because I'm paranoid like that.
  4. I have written a shell script that can make your Armbian installation run on a ZFS root. It has not been tested enough for my liking. Use at your own risk. Before running this script, please make a full backup of all your mission-critical files. URL: https://www.dropbox.com/s/ya3expllg1bqgfg/fructify.20211011.sh.gz To install the script, please run these commands:- # sudo wget https://www.dropbox.com/s/ya3expllg1bqgfg/fructify.20211011.sh.gz -O /usr/local/bin/fructify.sh.gz # sudo gunzip /usr/local/bin/fructify.sh.gz # sudo chmod +x /usr/local/bin/fructify.sh Oh, and install ZFS on your own OS installation. To use the script, either download an existing Armbian image or use your own system as the basis for the new installation. Next, please make sure (i) there is a blank micro-SD card in an adapter, (ii) the adapter is plugged into a USB port, and (iii) you know which /dev entry refers to that adapter’s USB port. It will probably be /dev/sda; please do not assume so. In the below commands, replace sdX with sda (or whatever). Method 1: Download and use an existing Armbian image # wget https://mirrors.netix.net/armbian/dl/nanopineo3/archive/Armbian_21.08.1_Nanopineo3_focal_current_5.10.60.img.xz -O /root/npneo3_focal.img.xz # xz -d /root/npneo3_focal.img.xz # fructify.sh /root/npneo3_focal.img.xz zfs /root/out.img # dd status=progress bs=1024k if=/root/out.img of=/dev/sdX Method 2: Use your existing filesystem as the basis # fructify.sh / zfs /dev/sdX In either case, please take care not to write the image to the wrong device. This script can also work with btrfs, ext4, or xfs. The script assumes that you have only one partition on your boot drive. That drive is usually /dev/mmcblk0; the boot/root partition is expected to be /dev/mmcblk0p1. It may be that the script also works if the boot drive is /dev/mmcblk1 and the boot/root partition is /dev/mmcblk1p1; I do not know. In any case, the script shrinks partition #1 (for boot) and allocates approximately 4GB to a newly created partition #2 (for root). If you create a ready-to-install Armbian image and boot it on a micro-SD card, the OS will expand partition #2 to fill the remainder of the micro-SD card. If you create a ZFS-ified (or whatever) copy of your existing installation, the SD card’s second partition will already have been expanded by the script itself. All feedback is welcome. I am new at this. Thank you.
  5. I'm working on it, but I make no promises. I've written a script that generates a btrfs-, zfs-, or xfs-based Armbian image from a default (ext4-based) Armbian image. It works on ODroid N2+ and NanoPi Neo3. It probably works on others, but I haven't tried them yet. At present, the generated image uses a boot partition of ext4 and a root partition of ext4/btrfs/xfs/zfs. So, it's not purely ___fs; it does use boot partition of good old ext4. The zfs image doesn't work yet. It will. Are you looking to run your OS on a 100% zfs filesystem, or are you willing to use an ext4 boot partition and a zfs root partition?
  6. If I modified a specific release of Armbian to have a root filesystem of zfs or perhaps btrfs, where should I publish the image?
  7. You're quite right. When the pin in question goes high, it'll tell the pushbutton switch to turn off, cutting the connection between it and the power output of the charger/power supply. So, by setting the pin to go high at completion of shutdown, one ends up creating a software off switch that doubles as a hardware on/off switch. That's the theory, anyway. You rock. Thank you for that link. It might be simpler to add a 'Set pin high' call as the final item before shutdown. I'll have to play with systemd and see if I can make that happen. At that point, it would become a generic systemd problem and cease to be a motherboard-specific kernel overlay problem. Anyway, I'll explore both options and try to discover which one is the less arduous. Thank you for taking the time to look into this and to respond to my question. I appreciate it.
  8. Thank you for everything you’ve done. Armbian is amazing. On Raspberry PI devices, it’s possible to pass parameters to the kernel at boot-up and force certain IO pins to go high as soon as shutdown is complete. It’s along the lines of “dtoverlay=gpio-poweroff,gpiopin=xx”. I’m guessing that GPIO-POWEROFF is a kernel overlay, that it’s specific to Raspbian, and that Armbian may have a similar overlay. What’s the best way to discover the name of Armbian’s corresponding overlay, please? That overlay would enable me to configure the relevant single-board computer to send a signal at shutdown, a signal that would cause the charging/power circuit to unplug the board and reset the on/off power switch. Any ideas would be appreciated.
  • Create New...