#36 Include instructions about installing alongside an existing system
Merged 6 years ago by otaylor. Opened 6 years ago by otaylor.
otaylor/workstation-ostree-config existing-install  into  master

file modified
+72 -1
@@ -44,7 +44,78 @@ 

  

   - [Anaconda autopartitoning](https://github.com/rhinstaller/anaconda/issues/800) - be sure to use `/var/home` instead of `/home`

   - [flatpak system repo](https://github.com/flatpak/flatpak/issues/113#issuecomment-247022006)

-  

+ 

+ Installing *inside* an existing system

+ ---------------------------------------

+ 

+ A really neat feature of OSTree is that you can

+ *parallel install* inside your existing OS.  Let's try that, we

+ first make sure we have the ostree packages:

+ 

+ ```

+ yum -y install ostree ostree-grub2

+ ```

+ 

+ Next, we add `/ostree/repo` to the filesystem:

+ ```

+ ostree admin init-fs /

+ ```

+ 

+ Add a remote which points to the Fedora Rawhide content:

+ ```

+ ostree remote add --set=gpg-verify=false fedora-ws-rawhide https://kojipkgs.fedoraproject.org/compose/ostree/rawhide/

+ ```

+ 

+ Pull down the content (you can interrupt and restart this):

+ ```

+ ostree --repo=/ostree/repo pull fedora-ws-rawhide:fedora/rawhide/x86_64/workstation

+ ```

+ 

+ Initialize an "os" for this, which acts as a state root.

+ ```

+ ostree admin os-init fedora

+ ```

+ 

+ **For EFI systems**: currently ostree uses the presence of /boot/grub2/grub.cfg to detect a BIOS system,

+ but that can be present on systems booted with EFI as well. If you boot with EFI

+ (/sys/firmware/efi exists), then you need to move /boot/grub2/grub.cfg aside:

+ ```

+ mv /boot/grub2/grub.cfg /boot/grub2/grub.cfg.bak

+ ```

+ Since this file is not used on a EFI system, this won't break the operation of your current system. While you are at it, back up your existing grub config:

+ ```

+ cp /boot/efi/EFI/fedora/grub.cfg /boot/efi/EFI/fedora/grub.cfg.bak

+ ```

+ 

+ Deploy; we use `enforcing=0` to avoid SELinux issues for now, and --karg=rghb=0 to avoid a hang with Plymouth.

+ ```

+ ostree admin deploy --os=fedora --karg-proc-cmdline --karg=enforcing=0 --karg=rhgb=0 fedora-ws-rawhide:fedora/rawhide/x86_64/workstation

+ ```

+ 

+ To initialize this root, you'll need to copy over your `/etc/fstab`, `/etc/locale.conf`, `/etc/default/grub` at least, along with the ostree remote that we added:

+ ```

+ for i in /etc/fstab /etc/default/grub /etc/locale.conf /etc/ostree/remotes.d/fedora-ws-rawhide.conf ; do cp $i /ostree/deploy/fedora/deploy/$checksum.0/$i; done

+ ```

+ If you have a separate `/home` mount point, you'll need to change

+ that `fstab` copy to refer to `/var/home`. If you *don't* have a separate /home mount

+ point, then you need to make sure that a symlink will be created:

+ ```

+ echo 'L /var/home - - - - ../sysroot/home' > /ostree/deploy/fedora/deploy/$checksum.0/$i/etc/tmpfiles.d/00rpm-ostree.conf

+ ```

+ 

+ You'll also need to copy your user entry from `/etc/passwd`, `/etc/group`,

+ and `/etc/shadow` into the new `/etc/`, and add yourself to the wheel group

+ in `/etc/group`. Don't copy just copy these files literally, however, since

+ the system users and groups won't be the same.

+ 

+ **For BIOS systems**: while ostree regenerated the bootloader configuration,

+ it writes config into `/boot/loader/grub.cfg`.  On a current `grubby`

+ system, you'll need to copy that version over:

+ 

+ ```

+ cp /boot/loader/grub.cfg /boot/grub2/grub.cfg

+ ```

+ 

  Migrating between OSTree repos

  -------------------------------------

  

This imports the documentation system from:

https://pagure.io/fork/walters/workstation-ostree-config/branch/f24-continuous

and updates it to work under current conditions.

Hmm, rawhide tree isn't being signed? Ideally we use:

ostree remote add --set=gpgkeypath=/etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-27-primary fedora-ws-rawhide https://kojipkgs.fedoraproject.org/compose/ostree/rawhide/

Missing redirection operator?

5 new commits added

  • Existing system: Document turning off Plymouth
  • Existing install: add information about a non-separate home
  • Existing install: document copying over locale.conf
  • Repoint instructions to Fedora Rawhide
  • Import installation instructions inside an existing system
6 years ago

Pull-Request has been merged by otaylor

6 years ago

It seems like since the f27 branch, the rawhide tree is not signed. The f27 tree isn't currently being built - if we get that working again (outstanding pull requests may help) - then we can make this section of the instructions reference that instead.

Metadata