Giter VIP home page Giter VIP logo

archiso-zfs's Introduction

Why this

If you want to install Archlinux on ZFS, you need to deal with the ZFS licensing problem. The kernel module isn't included in the default archiso image, you need to include it into a custom archiso image to be able to install ZFS.

I wrote an article about archiso netbooting.
This script lets you include the zfs kernel module on any archiso image without creating a custom one.

Archzfs

The Archzfs unofficial user repository offers multiple ways to install the ZFS kernel module.
We can install precompiled module with zfs-linux package or compile the zfs module using DKMS method.
In order to build the module, DKMS needs the linux-headers package for the running kernel.

How does it work

It extracts running kernel version and try to find a matching ZFS module in Archzfs repositories. If it doesn't, it fallbacks to the DKMS build of the ZFS module. In that case, the script uses Arch Linux Archive to install the linux-headers and base-devel packages required for DKMS. You need at least ~6Gb RAM to use that method to be able to store packages in cowspace.

In some very specific cases, you won't be able to get ZFS module working for a specific archiso version.
In that case, just switch to the previous month iso.

How to use

Boot on any archiso system, and run:

$ curl -s https://raw.githubusercontent.com/eoli3n/archiso-zfs/master/init | bash

dkms-screenshot

Debug

By default, command outputs are redirected to /dev/null. To run the script in verbose mode, use:

$ curl -s https://raw.githubusercontent.com/eoli3n/archiso-zfs/master/init | bash -s -- -v

Running the script produces a debug.log file in the current directory. To upload this easily, you can

$ pacman -Syy pastebinit
$ pastebinit -b sprunge.us debug.log

And then paste me the url in your issue.

Dev

To easily generate a VM with the latest archiso, to test the script in, on your host with qemu/libvirt and vagrant installed : Use https://github.com/eoli3n/arch-config/tree/master/vagrant.

Related

archiso-zfs's People

Contributors

alexboner avatar eoli3n avatar jakobht avatar khionu avatar trimoon avatar wolph avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

archiso-zfs's Issues

Init script fails

Archlinux ISO Version: archlinux-2024.06.01-x86_64.iso
Install Medium: USB Flash drive

Attempting to run
$ curl -s https://raw.githubusercontent.com/eoli3n/archiso-zfs/master/init | bash -s -- -v
results in the output.
No ZFS module found

Debug log attached.
debug.log

Is the short url gone forever?

Thanks for this awesome script.

Is there any specific reason why your removed the short url https://eoli3n.github.io/archzfs/init?
I must admit Ive become quite a fan of the short URL as it is so easy to remember and type, so naturally I'm sad to see it go.

If so, I'd update my scripts to point to the new one.

Init script throwing errors

Hello,

I'm booting archiso 2024.05.01 via Ventoy 0.97.

The archiso-zfs init script is throwing what appear to be minor errors, but sometimes a PGP key fails to download and the script bombs out.

Link to debug log (sprunge.us is apparently dead now, might want to update README) for the least error-prone run I've had today:
https://paste.debian.net/1317770/

Script fails because a package of currently running kernel is not available

Hi,

I'm using the official Arch liveimage, downloaded yesterday. It is possible the Kernel just got upgraded in the repositories.

Either way the script fails here:

> Installing zfs-utils and zfs-linux
warning: zfs-utils-2.2.0-1 is up to date -- reinstalling
warning: cannot resolve "linux=6.5.9.arch2-1", a dependency of "zfs-linux"
error: failed to prepare transaction (could not satisfy dependencies)

My Kernel version on the live image is the above, but it is not available in the repositories anymore:

 # uname -a
Linux archiso 6.5.9-arch2-1 #1 SMP PREEMPT_DYNAMIC Thu, 26 Oct 2023 00:52:20 +0000 x86_64 GNU/Linux

EDIT: Debug.log is here: http://sprunge.us/HqWHpF

Installs too recent zfs binaries

Hello, taking latest archiso from https://mirrors.gandi.net/archlinux/iso/2022.11.01/archlinux-2022.11.01-x86_64.iso we get broken ZFS installation due to mismatch libcrypto versions.

This leads to the following error:

> Installing zfs-utils and zfs-linux
error: command failed to execute correctly

Invoking any zfs command will output the following error:

zfs: error while loading shared libraries: libcrypto.so.3: cannot open shared object file: No such file or directory

Script fails to fetch the key from the keyserver

I booted the latest archlinux-2021.04.01-x86_64.iso off a USB stick and attempted to run the script. It seems to be failing at the
pacman-key --recv-keys F75D9D76 --keyserver keyserver.ubuntu.com
command. The debug mode output ends with

==> Updating trust database...
gpg: next trustdb check due at 2021-08-02
gpg: keyserver receive failed: Connection timed out
==> ERROR: Remote key not fetched correctly from keyserver.

And running the receive keys command manually gives:

148 root@archiso ~ # pacman-key --recv-keys F75D9D76 --keyserver keyserver.ubuntu.com
gpg: keyserver receive failed: Connection timed out

It doesn't appear to be a networking issue on my end, I can ping archlinux.org and synchronize other package databases. I copied the server definitions into pacman.conf manually and ran a sync, which prompts for

error: archzfs: key "DDF7DB817396A49B2A2723F7403BD972F75D9D76" is unknown
:: Import PGP key DDF7DB817396A49B2A2723F7403BD972F75D9D76? [Y/n]

Has the key for the repo changed and the script needs to be updated or am I just doing something dumb?

dead link in readme

URL in line 24 and 31 gives 404

curl -s https://eoli3n.github.io/archzfs/init | bash
curl -s https://eoli3n.github.io/archzfs/init | sed 's- &>/dev/null--' | bash &> debug.log

using this instead works:

curl -s https://raw.githubusercontent.com/eoli3n/archiso-zfs/master/init | bash
curl -s https://raw.githubusercontent.com/eoli3n/archiso-zfs/master/init | sed 's- &>/dev/null--' | bash &> debug.log

not as short and easy as the first but it does work in a pinch

ArchZFS repo inconsistent results

For the Archlinux ISO from july 1st (archlinux-2020.07.01-x86_64.iso), the script sometimes finds a matching zfs-utils and zfs-linux version, sometimes not. Seems that the archzfs repo is either hosted redundantly, but inconsistently, or the script has some problems.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.