On Tue, Jun 11, 2019 at 11:23:47AM +0200, Guillaume Abrioux wrote: > Hello, > > We use parted in ceph-ansible playbook [1] to retrieve some devices > information, the parted ansible module runs a parted/print command [2], but > we are facing an issue where ownerships get modified after that. > > Doing the test manually without ansible context shows it's parted itself > which apply this change: > > Before running parted on /dev/sdc: > [root@osd0 ~]# ls -l /dev/sdc* > brw-rw----. 1 root disk 8, 32 Jun 11 08:53 /dev/sdc > brw-rw----. 1 ceph ceph 8, 33 Jun 11 08:53 /dev/sdc1 > brw-rw----. 1 ceph ceph 8, 34 Jun 11 08:53 /dev/sdc2 > > Running a basic parted/print: > [root@osd0 ~]# parted -s /dev/sdc print > Model: ATA QEMU HARDDISK (scsi) > Disk /dev/sdc: 53.7GB > Sector size (logical/physical): 512B/512B > Partition Table: gpt > Disk Flags: > > Number Start End Size File system Name Flags > 1 1049kB 1075MB 1074MB ceph block.db > 2 1075MB 2149MB 1074MB ceph block.db > > We can see ownerships have changed from ceph:ceph to root:disk: > [root@osd0 ~]# ls -l /dev/sdc* > brw-rw----. 1 root disk 8, 32 Jun 11 08:57 /dev/sdc > brw-rw----. 1 root disk 8, 33 Jun 11 08:57 /dev/sdc1 > brw-rw----. 1 root disk 8, 34 Jun 11 08:57 /dev/sdc2 > [root@osd0 ~]# > > I'm wondering whether there's a good reason for this or should it be > considered as a bug?
How did you set the ownership of the partition devices in the first place? You can't just manually set the ownership and permissions of device nodes, you need to use udev (which is responsible for creating them) to do that. parted tells the kernel to rescan the partitions, so the device entries are probably being recreated by udev, changing their ownership back to whatever udev thinks they should be. -- Brian C. Lane (PST8PDT) - weldr.io - lorax - parted