Bug 19242

Summary: Installing or uninstalling kernel post script fail when a luks partition present in /etc/crypttab is not open.
Product: Mageia Reporter: Raphael Gertz <mageia>
Component: RPM PackagesAssignee: Pascal Terjan <pterjan>
Status: NEW --- QA Contact:
Severity: critical    
Priority: Normal CC: marja11, ouaurelien, shlomif, thierry.vignaud
Version: Cauldron   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Source RPM: drakxtools-17.54-1.mga6.src.rpm CVE:
Status comment:

Description Raphael Gertz 2016-08-23 15:26:18 CEST
Description of problem:
When I uninstall a kernel with a luks device present in /etc/crypttab with options nofail,noauto but not open, the hook to update menu.lst fail.

Log :
[root@vaire openair]# urpme lib64procps5-3.3.11-3.mga6.x86_64 kernel-server-4.7.0-2.mga6-1-1.mga6.x86_64
désinstallation de kernel-server-4.7.0-2.mga6-1-1.mga6.x86_64 lib64procps5-3.3.11-3.mga6.x86_64
device-mapper: table ioctl on data failed: No such device or address
Command failed
INTERNAL ERROR: unknown device mapper/data
MDK::Common::Various::internal_error() called from /usr/lib/libDrakX/devices.pm:131
devices::entry() called from /usr/lib/libDrakX/devices.pm:146
devices::make() called from /usr/lib/libDrakX/fs/type.pm:257
fs::type::call_blkid() called from /usr/lib/libDrakX/fs/type.pm:264
fs::type::type_subpart_from_magic() called from /usr/lib/libDrakX/fs/dmcrypt.pm:172
fs::dmcrypt::_get_existing_one() called from /usr/lib/libDrakX/fs/dmcrypt.pm:131
fs::dmcrypt::_get_existing_one_with_state() called from /usr/lib/libDrakX/fs/dmcrypt.pm:59
fs::dmcrypt::read_crypttab_() called from /usr/lib/libDrakX/fs/dmcrypt.pm:71
fs::dmcrypt::read_crypttab() called from /usr/lib/libDrakX/fsedit.pm:106
fsedit::dmcrypts() called from /usr/lib/libDrakX/fsedit.pm:319
fsedit::get_hds() called from /sbin/bootloader-config:61
désinstallation du paquetage kernel-server-4.7.0-2.mga6-1-1.mga6.x86_64
      1/2: désinstallation de kernel-server-4.7.0-2.mga6-1-1.mga6.x86_64
                                 #############################################
désinstallation du paquetage lib64procps5-3.3.11-3.mga6.x86_64
      2/2: désinstallation de lib64procps5-3.3.11-3.mga6.x86_64
                                 #############################################
writing /var/lib/rpm/installed-through-deps.list

Le paquetage suivant :
  kernel-server-4.6.2-1.mga6-1-1.mga6.x86_64
est désormais orphelin, si vous voulez le désinstaller, vous pouvez utiliser « urpme --auto-orphans »

cat /etc/crypttab:
slash   UUID=c4b8be94-641b-425b-b009-38233c85046b
data    UUID=ffd6b2d8-b258-430e-b4c9-05f82ce0fa1d       -       nofail,noauto

cat /etc/fstab:
UUID=ceb655e2-8310-4de6-9dd4-1e2baa27c48f       /media  btrfs   defaults,relatime,nofail 1 2

Version-Release number of selected component (if applicable):
drakxtools-backend-17.54-1.mga6

How reproducible:
Always

Steps to Reproduce:
1. Setup a luks partition and add it in crypttab and fstab with these options
2. Remove kernel and reinstall it
3. See hook fail if the luks device is not luksOpened
Comment 1 Marja Van Waes 2016-08-25 06:25:04 CEST
(Not sure whether I'm assigning correctly, please reassign if needed)

CC: (none) => marja11, shlomif, thierry.vignaud
Assignee: bugsquad => pterjan

Comment 2 Aurelien Oudelet 2020-09-09 22:02:26 CEST
This refers to a Mageia 6 SRPM.

This need a test.

CC: (none) => ouaurelien