[fstab] fix btrfs with LUKS and systemd
- see also #730 - credit goes to @abucodonosor
This commit is contained in:
parent
fcc23b98d2
commit
39d73e1882
@ -226,6 +226,7 @@ class FstabGenerator(object):
|
||||
def generate_fstab_line_info(self, partition):
|
||||
""" Generates information for each fstab entry. """
|
||||
filesystem = partition["fs"].lower()
|
||||
has_luks = "luksMapperName" in partition
|
||||
mount_point = partition["mountPoint"]
|
||||
disk_name = disk_name_for_partition(partition)
|
||||
is_ssd = disk_name in self.ssd_disks
|
||||
@ -253,17 +254,28 @@ class FstabGenerator(object):
|
||||
self.root_is_ssd = is_ssd
|
||||
|
||||
if filesystem == "btrfs" and "subvol" in partition:
|
||||
return dict(
|
||||
device="UUID=" + partition["uuid"],
|
||||
mount_point=mount_point,
|
||||
fs=filesystem,
|
||||
options=",".join(
|
||||
["subvol={}".format(partition["subvol"]), options]
|
||||
),
|
||||
check=check,
|
||||
)
|
||||
if has_luks:
|
||||
return dict(
|
||||
device="/dev/mapper/" + partition["luksMapperName"],
|
||||
mount_point=mount_point,
|
||||
fs=filesystem,
|
||||
options=",".join(
|
||||
["subvol={}".format(partition["subvol"]), options]
|
||||
),
|
||||
check=check,
|
||||
)
|
||||
else:
|
||||
return dict(
|
||||
device="UUID=" + partition["uuid"],
|
||||
mount_point=mount_point,
|
||||
fs=filesystem,
|
||||
options=",".join(
|
||||
["subvol={}".format(partition["subvol"]), options]
|
||||
),
|
||||
check=check,
|
||||
)
|
||||
|
||||
if "luksMapperName" in partition:
|
||||
if has_luks:
|
||||
return dict(device="/dev/mapper/" + partition["luksMapperName"],
|
||||
mount_point=mount_point or "swap",
|
||||
fs=filesystem,
|
||||
|
Loading…
Reference in New Issue
Block a user