Upgrading to 15.1 - need help with BtrFS

I am running Opensuse 15.0 dual booted with Win10 and I would like to upgrade to Opensuse 15.1. I have upgraded previously from 13.2 to 42.0 with references from Opensuse wiki, but on a different machine.
I would also like to move from LVM+Ext4 to BtrFS, along with the upgrade. I have looked online, but did not find much about a migration HowTO to BtrFS.
I also have additional repositories enabled (Nvidia/chrome/Hardware and a few more) which I would like to retain/use after the upgrade.

[ul]
[li]What should be the best option in my scenario ? [upgrade from DVD or upgrade via zypper][/li][li]Do I need to take any precaution so that my Win10 partition does not get corrupted ? Os-Prober and grub2-mkconfig has been consistent for me during “zypper up” so far. [I use win10 mostly for games anyway, but I would like not to do a complete rebuild][/li][li]Any documentation for migrating from LVM-EXT4 to Btrfs ? [My Data is backed up to external HDD][/li][li]I can disable the additional repositories before the upgrade. Is it recommended to switch to nouveau (which is currently blacklisted in modprobe) before the upgrade , or can nvidia module be retained with the upgrade ?[/li][li]I would like to retain the current kernel in case things go south during the upgrade. can a dd backup of my current root partition help in recovering my system in case things go wrong ?[/li][/ul]

This is my regular workhorse machine and I cannot test the migration scenario on a VM mostly due to lack of info. Could you please point me to right direction ?

When you change the underlying construction of mass-storage devices, I doubt you can you any “upgrade” the way that it is done either by the onine method (changing repo addresses and zypper dup) or tyhe Upgrade item in the DVD’s main menu. Both will replace software packages with new ones only and not give you any opportunity to change from LVM to partitions only, or from change in partitioning, or from change of file system type. And you want all of those together ;).

A new installation is IMHO the only solution. I do not know if you have a seperate /home file system, nor where it is placed on, but when it is a seperate file system on a partition, you could keep that partition. But because your queeste is a real reorganisation, I acn imgine that it will be in the place of reorganised space. Thus creating it new might be needed. In any case you can save the contents of /home and restore it (and of course that is an extra save, independent from your normal backup procedure).

BTW, I have no comment in respect of that Windows. Never us it.

Thanks for your attention Henk.

Yes, I do have separate /data and /home partitions , and both are backed up. So I am not against the idea to remove the LVs (I cant remember at the moment if root, home and data are on same VG, it’s late and I am on a different machine) and rearrange the volumes. My primary concern is for the root LV and the custom configuration tweaks it has accumulated for about 2 years.

BTW, I have no comment in respect of that Windows. Never us it.

I hear you. Linux is my primary OS since 2011 and I use windows only for games, word and excel.

I’ll post more information tomorrow.

My personal recommendation is that after a couple upgrades but also depending on how it’s used, a system starts to accumulate significant amounts of junk. Sometime either this time or in the future you should consider a new install which would remove that junk which otherwise is hard to identify and remove.

If you decide to upgrade, it should be safe because the upgrade process is careful to touch only the Linux partitions, but don’t assume anything. Properly backup and/or clone everything you deem valuable. The old thing about “A pound of prevention…” is applicable in spades here.

Converting to BTRFS is simple, there is a utility. LVM volumes should easily be converted into BTRFS volumes and subvolumes automatically as well
https://btrfs.wiki.kernel.org/index.php/Conversion_from_Ext3
https://btrfs.wiki.kernel.org/index.php/Manpage/btrfs-convert

You may also want to skim the BTRFS references I collected as well for anything that’s related to installation and conversion…
https://en.opensuse.org/User:Tsu2/systemd-1#BTRFS

Always disable all but OSS and OSS-Update repositories before doing an upgrade. You can re-enable and do a separate upgrade from those repos later after you’re certain your basic system was upgraded successfully. There are exceptions, like Pacman… People have been able to upgrade leaving Pacman enabled and sometimes that’s almost necessary.

As I described above, backup or clone your system before an upgrade which should preserve your kernel along with everything else.

You can certainly test an upgrade using virtualization (It won’t be perfect because virtualized hardware is almost always easily supported whereas real, physical hardware can have problems). In fact, virtualization can also serve not only as a testbed but a reliable and easy way to clone a machine (at least virtualized). Some people will even prefer to continue to run these virtual machines for their regular work because of the various conveniences and easy backup/cloning. For whatever virtualization you choose to use, look for P2V (physical to virtual) conversion utilities or solutions. Post in the Virtualization Forum if you have questions or issues.

HTH,
TSU

Thanks for your attention TSU2.

Yes, very valid point indeed about the ‘junk’ an OS accumulates over the time, however my installation date is still below two years and has tweaks for realtek, nvidia/nouveau, netwrokmanager, openvpn etc. I would prefer to preserve them.

 # tune2fs -l /dev/sda7 | grep 'Filesystem created:'                                                                                                                                                                                                               
Filesystem created:       Sat Oct 27 03:44:20 2018


Just realized that I have been using partitions all along, so it should be easier to “convert” them to Btrfs. The links are goldmine (my office laptop must have been blocking the btrfs wiki links >:()…
I have moved out all but essentials from /home and /data already, so it should be easy to work with them.

Anyways, here are my mounts and partition table -

# df -hPT
Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs   12G     0   12G   0% /dev
tmpfs          tmpfs      12G   66M   12G   1% /dev/shm
tmpfs          tmpfs      12G  9.7M   12G   1% /run
tmpfs          tmpfs      12G     0   12G   0% /sys/fs/cgroup
/dev/sda7      ext4       41G   14G   25G  36% /
/dev/sda3      vfat      2.0G  5.0M  2.0G   1% /boot/efi
/dev/sdb3      ext4      144G   26G  111G  19% /VMs
/dev/sdb4      xfs       196G   41G  155G  21% /home
tmpfs          tmpfs     2.4G   20K  2.4G   1% /run/user/1000
# fdisk -l
Disk /dev/sda: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: F4AF905B-0F37-49BA-AD75-2C7C679838F7

Device         Start       End   Sectors  Size Type
/dev/sda1       2048 130258762 130256715 62.1G Microsoft basic data
/dev/sda2  130258944 138647551   8388608    4G Linux swap
/dev/sda3  138647552 142841855   4194304    2G EFI System
/dev/sda4  142841856 143863807   1021952  499M Windows recovery environment                                                                                                                                                                                                    
/dev/sda5  143863808 144068607    204800  100M EFI System                                                                                                                                                                                                                      
/dev/sda6  144068608 144101375     32768   16M Microsoft reserved                                                                                                                                                                                                              
/dev/sda7  144101376 230230015  86128640 41.1G Linux LVM                                                                                                                                                                                                                       
                                                                                                                                                                                                                                                                               
                                                                                                                                                                                                                                                                               
Disk /dev/sdb: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors                                                                                                                                                                                                              
Units: sectors of 1 * 512 = 512 bytes                                                                                                                                                                                                                                          
Sector size (logical/physical): 512 bytes / 4096 bytes                                                                                                                                                                                                                         
I/O size (minimum/optimal): 4096 bytes / 4096 bytes                                                                                                                                                                                                                            
Disklabel type: gpt                                                                                                                                                                                                                                                            
Disk identifier: 9E9B9B32-DF6C-4227-996B-E4640B21B16F                                                                                                                                                                                                                          
                                                                                                                                                                                                                                                                               
Device          Start        End   Sectors   Size Type                                                                                                                                                                                                                         
/dev/sdb1        2048  929519615 929517568 443.2G Microsoft basic data                                                                                                                                                                                                         
/dev/sdb2   929519616 1031919615 102400000  48.8G Linux filesystem                                                                                                                                                                                                             
/dev/sdb3  1031919616 1339119615 307200000 146.5G Linux filesystem                                                                                                                                                                                                             
/dev/sdb4  1339119616 1748719615 409600000 195.3G Linux LVM                               

My repositories -

# zypper lr -d
#  | Alias                               | Name                                          | Enabled | GPG Check | Refresh | Priority | Type   | URI                                                                                   | Service                                 
---+-------------------------------------+-----------------------------------------------+---------+-----------+---------+----------+--------+---------------------------------------------------------------------------------------+--------                                 
 1 | NVIDIA                              | NVIDIA                                        | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | https://download.nvidia.com/opensuse/leap/15.0                                        |                                         
 2 | download.opensuse.org-non-oss       | Main Repository (NON-OSS)                     | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://mirror.hostsuisse.com/opensuse/distribution/leap/15.0/repo/non-oss/            |        
 3 | download.opensuse.org-non-oss_1     | Update Repository (Non-Oss)                   | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://mirror.hostsuisse.com/opensuse/update/leap/15.0/non-oss/                       |        
 4 | download.opensuse.org-oss           | Main Repository (OSS)                         | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://ftp.neowiz.com/opensuse/distribution/leap/15.0/repo/oss/                       |        
 5 | download.opensuse.org-oss_1         | Main Update Repository                        | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | https://mirror.aarnet.edu.au/pub/opensuse/opensuse/update/leap/15.0/oss/              |        
 6 | google-chrome                       | google-chrome                                 | Yes     | ( p) Yes  | Yes     |   99     | rpm-md | http://dl.google.com/linux/chrome/rpm/stable/x86_64                                   |        
 7 | home_Sauerland                      | Sauerland's Home Project (openSUSE_Leap_15.0) | No      | ----      | ----    |   99     | rpm-md | http://download.opensuse.org/repositories/home:/Sauerland/openSUSE_Leap_15.0/         |        
 8 | home_enzokiel                       | Additional Packages (openSUSE_15.1_Update)    | Yes     | (r ) Yes  | No      |   99     | rpm-md | http://download.opensuse.org/repositories/home:/enzokiel/openSUSE_15.1_Update/        |        
 9 | http-download.opensuse.org-c095dbe1 | hardware                                      | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/repositories/hardware/openSUSE_Leap_15.0/                |        
10 | http-download.opensuse.org-d5899140 | openSUSE:Leap:15.0:Update                     | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://download.opensuse.org/update/leap/15.0/oss/                                    |        
11 | openSUSE-Leap-15.0-1                | openSUSE-Leap-15.0-1                          | No      | ----      | ----    |   99     | rpm-md | hd:/?device=/dev/disk/by-id/usb-hp_v100w_QWE07926-0:0-part2                           |        
12 | packman.inode.at-suse               | Packman Repository                            | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | http://packman.inode.at/suse/openSUSE_Leap_15.0/                                      |        
13 | repo-debug                          | openSUSE-Leap-15.0-Debug                      | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.0/repo/oss/                   |        
14 | repo-debug-non-oss                  | openSUSE-Leap-15.0-Debug-Non-Oss              | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/distribution/leap/15.0/repo/non-oss/               |        
15 | repo-debug-update                   | openSUSE-Leap-15.0-Update-Debug               | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.0/oss/                              |        
16 | repo-debug-update-non-oss           | openSUSE-Leap-15.0-Update-Debug-Non-Oss       | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/debug/update/leap/15.0/non-oss/                          |        
17 | repo-source                         | openSUSE-Leap-15.0-Source                     | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/15.0/repo/oss/                  |        
18 | repo-source-non-oss                 | openSUSE-Leap-15.0-Source-Non-Oss             | No      | ----      | ----    |   99     | NONE   | http://download.opensuse.org/source/distribution/leap/15.0/repo/non-oss/              |        
19 | teamviewer                          | TeamViewer - x86_64                           | Yes     | (r ) Yes  | No      |   99     | rpm-md | http://linux.teamviewer.com/yum/stable/main/binary-x86_64/                            |        
20 | vivaldi                             | vivaldi                                       | Yes     | (r ) Yes  | Yes     |   99     | rpm-md | https://repo.vivaldi.com/archive/rpm/x86_64                                           |        
21 | wireguard                           | wireguard                                     | No      | ----      | ----    |   99     | rpm-md | https://download.opensuse.org/repositories/network:/vpn:/wireguard/openSUSE_Leap_15.0 |        


More information helps:

erlangen:~ # inxi -zFxx
System:    Kernel: 5.5.9-1-default x86_64 bits: 64 compiler: gcc v: 9.2.1 Console: tty 4 wm: kwin_x11 dm: SDDM 
           Distro: openSUSE Tumbleweed 20200322 
Machine:   Type: Desktop Mobo: ASRock model: Z170 Pro4S serial: <filter> UEFI: American Megatrends v: P3.50 date: 06/23/2016 
CPU:       Topology: Quad Core model: Intel Core i7-6700K bits: 64 type: MT MCP arch: Skylake-S rev: 3 L1 cache: 256 KiB 
           L2 cache: 8192 KiB L3 cache: 8192 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 63999 
           Speed: 800 MHz min/max: 800/4200 MHz Core speeds (MHz): 1: 800 2: 800 3: 800 4: 800 5: 800 6: 800 7: 801 8: 800 
Graphics:  Device-1: Intel HD Graphics 530 vendor: ASRock driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:1912 
           Display: server: X.Org 1.20.7 driver: modesetting unloaded: fbdev,vesa alternate: intel compositor: kwin_x11 
           resolution: 1920x1200~60Hz 
           OpenGL: renderer: Mesa DRI Intel HD Graphics 530 (SKL GT2) v: 4.6 Mesa 20.0.1 compat-v: 3.0 direct render: Yes 
Audio:     Device-1: Intel 100 Series/C230 Series Family HD Audio vendor: ASRock driver: snd_hda_intel v: kernel 
           bus ID: 00:1f.3 chip ID: 8086:a170 
           Sound Server: ALSA v: k5.5.9-1-default 
Network:   Device-1: Intel Ethernet I219-V vendor: ASRock driver: e1000e v: 3.2.6-k port: f040 bus ID: 00:1f.6 
           chip ID: 8086:15b8 
           IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac: <filter> 
           Device-2: Qualcomm Atheros AR9287 Wireless Network Adapter driver: ath9k v: kernel port: f040 bus ID: 03:00.0 
           chip ID: 168c:002e 
           IF: wlp3s0 state: down mac: <filter> 
Drives:    Local Storage: total: 4.56 TiB used: 1.81 TiB (39.7%) 
           ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 950 PRO 512GB size: 476.94 GiB speed: 31.6 Gb/s lanes: 4 
           serial: <filter> temp: 34 C 
           ID-2: /dev/sda vendor: Western Digital model: WD40EZRX-22SPEB0 size: 3.64 TiB speed: 6.0 Gb/s serial: <filter> 
           ID-3: /dev/sdb vendor: Samsung model: SSD 850 EVO 500GB size: 465.76 GiB speed: 6.0 Gb/s serial: <filter> 
Partition: ID-1: / size: 59.45 GiB used: 20.28 GiB (34.1%) fs: btrfs dev: /dev/sdb5 
           ID-2: /home size: 406.34 GiB used: 245.63 GiB (60.5%) fs: ext4 dev: /dev/nvme0n1p3 
           ID-3: /opt size: 59.45 GiB used: 20.28 GiB (34.1%) fs: btrfs dev: /dev/sdb5 
           ID-4: /tmp size: 59.45 GiB used: 20.28 GiB (34.1%) fs: btrfs dev: /dev/sdb5 
           ID-5: /var size: 59.45 GiB used: 20.28 GiB (34.1%) fs: btrfs dev: /dev/sdb5 
Sensors:   System Temperatures: cpu: 29.0 C mobo: 29.0 C 
           Fan Speeds (RPM): fan-1: 0 fan-2: 1167 fan-3: 0 fan-4: 0 fan-5: 0 fan-6: 0 
           Voltages: 12v: N/A 5v: N/A 3.3v: 3.34 vbat: 3.12 
Info:      Processes: 277 Uptime: 19h 06m Memory: 31.05 GiB used: 3.16 GiB (10.2%) Init: systemd v: 244 runlevel: 5 
           target: graphical.target Compilers: gcc: 9.2.1 alt: 9 Shell: bash v: 5.0.16 running in: konsole inxi: 3.0.38 
erlangen:~ # 

@karlmistelberger, thanks for your attention.

# inxi -zFxx
System:    Kernel: 4.12.14-lp150.12.82-default x86_64 bits: 64 gcc: 7.4.1
           Console: tty 1 dm: sddm,sddm Distro: openSUSE Leap 15.0
Machine:   Device: desktop System: Gigabyte product: H270M-D3H serial: N/A
           Mobo: Gigabyte model: H270M-D3H-CF v: x.x serial: N/A UEFI: American Megatrends v: F2 date: 02/09/2017
CPU:       Quad core Intel Core i5-7600 (-MCP-) arch: Skylake rev.9 cache: 6144 KB
           flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 28032
           clock speeds: min/max: 800/4100 MHz 1: 3500 MHz 2: 3500 MHz 3: 3500 MHz 4: 3500 MHz
Graphics:  Card: NVIDIA GP107 [GeForce GTX 1050] bus-ID: 01:00.0 chip-ID: 10de:1c81
           Display Server: X.org 1.19.6 drivers: nvidia (unloaded: modesetting,fbdev,vesa,nouveau)
           tty size: 271x68 Advanced Data: N/A for root out of X
Audio:     Card-1 NVIDIA GP107GL High Definition Audio Controller
           driver: snd_hda_intel bus-ID: 01:00.1 chip-ID: 10de:0fb9
           Card-2 Intel 200 Series PCH HD Audio driver: snd_hda_intel bus-ID: 00:1f.3 chip-ID: 8086:a2f0
           Sound: Advanced Linux Sound Architecture v: k4.12.14-lp150.12.82-default
Network:   Card: Intel Ethernet Connection (2) I219-V
           driver: e1000e v: 3.6.0-NAPI bus-ID: 00:1f.6 chip-ID: 8086:15b8
           IF: eth0 state: down mac: <filter>
Drives:    HDD Total Size: 1120.2GB (8.0% used)
           ID-1: /dev/sdb model: ST1000DM010 size: 1000.2GB serial: <filter>
           ID-2: /dev/sda model: KINGSTON_SUV400S size: 120.0GB serial: <filter>
Partition: ID-1: / size: 41G used: 14G (36%) fs: ext4 dev: /dev/sda7
           ID-2: /home size: 196G used: 41G (21%) fs: xfs dev: /dev/sdb4
           ID-3: swap-1 size: 4.29GB used: 0.00GB (0%) fs: swap dev: /dev/sda2
Sensors:   System Temperatures: cpu: 29.8C mobo: 27.8C gpu: 0.0:
           Fan Speeds (in rpm): cpu: N/A
Info:      Processes: 222 Uptime: 0:04 Memory: 1087.3/24057.2MB
           Init: systemd v: 234 runlevel: 5 default: graphical.target Gcc sys: 7.4.1
           Client: Shell (bash 4.4.231 running in tty 1) inxi: 2.3.40 


This didnot detect my wireless USB though. Here’s the driver info for it -

# ls -l; pwd
total 0
lrwxrwxrwx 1 root root 0 Mar 26 14:11 usb:rtl8812au -> ../../../bus/usb/drivers/rtl8812au
/sys/class/net/wlan1/device/driver/module/drivers


Nouveau blacklist -

# grep -nrw nouveau /etc/modprobe.d/*
/etc/modprobe.d/nvidia-default.conf:1:blacklist nouveau


Given the above configuration an additional SSD is the easiest way of upgrading: https://www.idealo.de/preisvergleich/ProductCategory/14613F2411936.html

Partitioning of my machine:

erlangen:~ # df -h /boot/efi / /home
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1       101M  840K  100M   1% /boot/efi
/dev/sdb2        60G   17G   42G  29% /
/dev/sdb3       407G  246G  160G  61% /home
erlangen:~ # 

A pristine install is recommended.

Thanks everyone for your inputs. Happy to report that I have upgraded successfully to 15.1, albeit the root volume has not been converted to btrfs yet. I can ‘almost’ count on windows updates to break my system at least once a year and so it has been consistently since 2016 on this machine lol! I’ll convert / to btrfs at that time]

What I did (summary) -

a. backed up /home & /VMs as tarballs on an external drive
b. created 2 USB keys (Gparted and Opensuse DVD) in case I had to rebuild.
c. backed up old repositories as tarball on an external drive & redirected all repositories to 15.1 repo as per wiki’
d. Disabled chrome, vivaldi, hardware & enzokiel’s repo. (Yes, Nvidia was left enabled, though I pointed it to 15.1 repo)
e. hit ‘zypper dup’ (zypper up was done before this!) … it took about 3 hours and complained about few packages to change from pacman to mainstream repo. I went along with the suggestions.
f. Upgrade completed and rebooted. I was in 15.1 with nvidia driver and all tweaks (NM,openvpn,realtek n such) were retained ! Woo Hoo! lol!
g. went to runlevel 3,logged in a root, unmounted /VMs and used the convert utility to change it to btrfs… Updated fstab and mounted again. Data was intact.
h. unmounted /home, reformatted /home as btrfs, set a label , updated fstab and remounted it.
i. rsynced from the backup of /home taken earlier.
j. set default target to graphical.target, rebooted and logged in as regular user. All looked good, and my VMs played fine in KVM…
k. rebooted and checked windows, it was fine as well.

Note:

  1. I understand that this is not a safe method to upgrade, and I should have disabled a lot many repositories,specially nvidia and non-oss repos, but I was prepared for a rebuild. I do not recommend this to anybody.
  2. I prefer using labels in fstab or plain old device path, but the upgrade forced UUID convention on me… This is a minor discomfort and takes about 5 minutes to fix.

Opensuse is just the right amount of “boring” for me (robust, seldom gives errors and rock solid), as long as I give the new releases some time to mature and iron out bugs.

Btrfs maintenance: https://forums.opensuse.org/showthread.php/539503-boot-efi-is-not-mounted?p=2930559#post2930559

I prefer using labels in fstab or plain old device path, but the upgrade forced UUID convention on me… This is a minor discomfort and takes about 5 minutes to fix.

I use both, labels for improved readability, UUIDs for robust configuration:

erlangen:~ # lsb /dev/sdb
PATH      LABEL       PARTLABEL            PARTUUID                             UUID                                 FSTYPE MOUNTPOINT
/dev/sdb                                                                                                                    
/dev/sdb1             EFI System Partition 2fe6b58a-379a-4f6e-899b-8be22ef6e885 4A24-B10D                            vfat   /boot/efi
/dev/sdb2 ArchLinux   Linux System         f1379b6c-304b-4606-98b8-5cec4f3dd678 690b51d7-7034-4585-b362-615f8056be45 ext4   
/dev/sdb3 SLED        Linux System         1e7b0509-97cf-4a62-b7fc-db46be72335b 492c5d5e-5d9b-4a99-9d34-e1f9cee09fe9 ext4   
/dev/sdb4 Home-SSD    Linux Filesystem     ced907e6-2af7-42d8-8643-31a61479352b f4c5463f-f43d-420a-a0ea-4456cfbc54fa ext4   
/dev/sdb5 Tumbleweed  Linux System         f4880da8-3641-499b-81b6-4432b106f8ff 204f7d0f-979a-41e1-a483-a597d0357e0b btrfs  /mnt
/dev/sdb6 Ubuntu      Linux System         6a043f8a-cbec-4432-85c6-85202ba19990 9a3eec78-dd20-44c0-a38a-f705b3bbbc66 ext4   
/dev/sdb7 Manjaro-SSD Linux System         fa8d0a18-8e3d-4168-8669-16319e8aa902 bf6ba7c9-9068-4a9b-b210-84b6d105df5c ext4   
erlangen:~ # 

Interesting, I have subscribed to this thread and shall be following it.

Both at the same time in fstab ? barring comments ? Could you perhaps show a sample line from your fstab ?

I am not sure what you mean with that, but you can only use one of them in any entry. Different entries may use different. All logical if you know what /etc/fstab is.

And of course you should first read

man fstab

and then come back if you still have questions.

I am not sure what you mean with that, but you can only use one of them in any entry. Different entries may use different. All logical if you know what /etc/fstab is.

My brain and solaris/linux knowledge of 10 years say the same. :slight_smile: which is why I mentioned “barring comments”.

Some of us are known to use UUIDs in /etc/fstab but put the same details with a device path above or below it and comment out with ‘#’. Makes troubleshooting easier without having to call blkid (or similar) to check UUID everytime.

My statement was not meant in a disrespectful manner in any way. I was merely curious if a way exists to use more than one conventions in fstab.

Could you or another moderator please mark the thread as resolved, before such a trivial matter gets dragged on ?

It is you that decides if you are satisfied and if your case is solved. You post that here (as you have done) and that is it.
People then may still post to the thread and if you are not interested, just unsubscribe to it so you do not get the e-mails about the new posts anymore. :wink:

Here is fstab:

erlangen:~ # cat /etc/fstab 
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /                       btrfs  defaults                      0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /.snapshots             btrfs  subvol=/@/.snapshots          0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /var                    btrfs  subvol=/@/var                 0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /usr/local              btrfs  subvol=/@/usr/local           0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /tmp                    btrfs  subvol=/@/tmp                 0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /srv                    btrfs  subvol=/@/srv                 0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /root                   btrfs  subvol=/@/root                0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /opt                    btrfs  subvol=/@/opt                 0  0
UUID=704621ef-9b45-4e96-ba7f-1becd3924f08  /home                   ext4   defaults                      0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /boot/grub2/x86_64-efi  btrfs  subvol=/@/boot/grub2/x86_64-efi  0  0
UUID=204f7d0f-979a-41e1-a483-a597d0357e0b  /boot/grub2/i386-pc     btrfs  subvol=/@/boot/grub2/i386-pc  0  0
UUID=4A24-B10D                             /boot/efi               vfat   defaults                      0  0
erlangen:~ # 

Here is readable information from lsb (aliased to “lsblk -o PATH,LABEL,PARTLABEL,PARTUUID,UUID,FSTYPE,MOUNTPOINT”):

erlangen:~ # lsb
PATH           LABEL       PARTLABEL            PARTUUID                             UUID                                 FSTYPE MOUNTPOINT
/dev/sda                                                                                                                         
/dev/sda1      Manjaro     Linux System         2c0e640c-3df5-470a-a17c-89b17eba59d8 fad3604b-5a61-4653-8c14-518d850400ba ext4   
/dev/sda2      Leap-15.1   Linux System         410b7947-08ad-4fb7-93ea-854f63a3bf78 57bdbf64-b309-477c-b94c-8987e0c8032a ext4   
/dev/sda3                  Linux System         2d036a71-5df4-f145-8b69-37ef88857893 42f23f3c-9ff6-46f6-a9d9-6894062c37d7 ext4   
/dev/sda4      Home-HDD    Linux Filesystem     1f1100a4-325e-4d9e-84a3-bc119b98a449 f5177cae-4082-44ed-9471-b99030f06866 ext4   /home-HDD
/dev/sdb                                                                                                                         
/dev/sdb1                  EFI System Partition 2fe6b58a-379a-4f6e-899b-8be22ef6e885 4A24-B10D                            vfat   /boot/efi
/dev/sdb2      ArchLinux   Linux System         f1379b6c-304b-4606-98b8-5cec4f3dd678 690b51d7-7034-4585-b362-615f8056be45 ext4   
/dev/sdb3      SLED        Linux System         1e7b0509-97cf-4a62-b7fc-db46be72335b 492c5d5e-5d9b-4a99-9d34-e1f9cee09fe9 ext4   
/dev/sdb4      Home-SSD    Linux Filesystem     ced907e6-2af7-42d8-8643-31a61479352b f4c5463f-f43d-420a-a0ea-4456cfbc54fa ext4   
/dev/sdb5      Tumbleweed  Linux System         f4880da8-3641-499b-81b6-4432b106f8ff 204f7d0f-979a-41e1-a483-a597d0357e0b btrfs  /
/dev/sdb6      Ubuntu      Linux System         6a043f8a-cbec-4432-85c6-85202ba19990 9a3eec78-dd20-44c0-a38a-f705b3bbbc66 ext4   
/dev/sdb7      Manjaro-SSD Linux System         fa8d0a18-8e3d-4168-8669-16319e8aa902 bf6ba7c9-9068-4a9b-b210-84b6d105df5c ext4   
/dev/nvme0n1                                                                                                                     
/dev/nvme0n1p1 Fedora      Linux System         4d91e611-d1f2-49b6-b92b-caf1925c6bf5 6fe43319-8566-4a09-9d2d-fcf8c104671f ext4   
/dev/nvme0n1p2 Tumbleweed  Linux System         f756cc7f-1727-4f82-8c5e-5b4468a74e72 8b190950-c141-4351-9198-7a9592b4fb34 ext4   
/dev/nvme0n1p3 Home        Linux Filesystem     63413441-e35b-41a7-9dab-536a91b8f418 704621ef-9b45-4e96-ba7f-1becd3924f08 ext4   /home
/dev/nvme0n1p4             EFI System Partition 0497bfdf-73d7-47a8-9d8e-6b911574f774 6DEC-64F9                            vfat   
erlangen:~ # 

Installed systems:


erlangen:~ # efibootmgr -v
BootCurrent: 0001
Timeout: 1 seconds
BootOrder: 0001,0000,0002,0003,0004,0005,0006,0007,0009,000A,000B,0008
Boot0000* tumbleweed-ext4       HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\TUMBLEWEED-EXT4\GRUBX64.EFI)
Boot0001* tumbleweed-btrfs      HD(1,GPT,2fe6b58a-379a-4f6e-899b-8be22ef6e885,0x800,0x32800)/File(\EFI\TUMBLEWEED-BTRFS\GRUBX64.EFI)
Boot0002* sled  HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\SLED\GRUBX64.EFI)
Boot0003* manjaro       HD(1,GPT,2fe6b58a-379a-4f6e-899b-8be22ef6e885,0x800,0x32800)/File(\EFI\MANJARO\GRUBX64.EFI)
Boot0004* Fedora        HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\FEDORA\SHIMX64.EFI)
Boot0005* arch  HD(1,GPT,2fe6b58a-379a-4f6e-899b-8be22ef6e885,0x800,0x32800)/File(\EFI\ARCH\GRUBX64.EFI)
Boot0006* ubuntu        HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\UBUNTU\SHIMX64.EFI)
Boot0007* UEFI OS       HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\BOOT\BOOTX64.EFI)..BO
Boot0008* opensuse      VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)
Boot0009* leap-15.1     HD(1,GPT,2fe6b58a-379a-4f6e-899b-8be22ef6e885,0x800,0x32800)/File(\EFI\LEAP-15.1\GRUBX64.EFI)
Boot000A* ubuntu        HD(4,GPT,0497bfdf-73d7-47a8-9d8e-6b911574f774,0x800,0x32000)/File(\EFI\UBUNTU\GRUBX64.EFI)..BO
Boot000B* UEFI OS       HD(1,GPT,2fe6b58a-379a-4f6e-899b-8be22ef6e885,0x800,0x32800)/File(\EFI\BOOT\BOOTX64.EFI)..BO
erlangen:~ # 


 



  • Actually I could do without LABEL/ PARTLABEL, but readability is a point, when it comes to dealing with multiple systems in an efficient manner.
  • Robustness of configuration is another important point: Missed to check mail for correct configuration. The owner was happy for 3 years. But on March 12, his inbox was empty and he called me for a fix. UUIDs seem cumbersome, but they are unambiguous and never change unless you create a new file system. You can copy and paste them so typing errors are not an issue.

If you don’t absolutely need to execute MS Windows direct on the hardware – no applications which need to have direct access to the graphics system or, the hardware only supporting BIOS/UEFI updates via Windows – have you, considered running only Linux on the hardware and, as a consequence, banning your MS Windows licences to VMs?

  • For this game, I prefer to use Oracle’s VirtualBox for the VMs because of the Windows 10 support …

@karlmistelberger, neat trick there while handling 12 or so different OS. Your fstab also shows nice way of handling subvolumes spread across partitions and is valuable since I am totally new to btrfs. Thanks for this.

@dcurtisfra, I play games on steam and most of these games have not been ported yet. I have tried games in virtual machines (KVM and VirtualBox) before, but the ping latency is too much and graphic rendering is not handled well, since it is emulated anyway…Building a windows VM on KVM was painful enough to dread troubleshooting it at a possible later point. :|…

The breaking of my machine used to be very frequent (patch Tuesday) earlier (pre 2018) as I was using DOS partitioning with a triple boot set-up. Since moving to GPT, things have been a lot smoother and I moved my second linux OS (CentOS7) as a KVM guest under Opensuse. I don’t care for windows that much to dig in, learn and troubleshoot any further than I have to.
Now if these games were ported to steamOS, I would move windows to a VM in a heartbeat and use it only for the office tools.