diff mbox series

fixfiles: use `grep -F` when search in mounts

Message ID 20241113130206.1417824-1-lautrbach@redhat.com (mailing list archive)
State New
Delegated to: Petr Lautrbach
Headers show
Series fixfiles: use `grep -F` when search in mounts | expand

Commit Message

Petr Lautrbach Nov. 13, 2024, 1:02 p.m. UTC
systemd escapes luks uid so that mount points contain '\' and grep
should not consider this as regexp
Fixes:
    $ cat /proc/self/mounts | sort | uniq | awk '{print $2}'
    /run/credentials/systemd-cryptsetup@luks\134x2d6d1f41e6\134x2d5538\134x2d41a0\134x2db383\134x2cd41c2ddcacaa.service

    $ sudo fixfiles -B onboot
    grep: Invalid back reference
    grep: Invalid back reference
    System will relabel on next boot

Suggested-by: Christopher Tubbs <ctubbsii@fedoraproject.org>
Signed-off-by: Petr Lautrbach <lautrbach@redhat.com>
---
 policycoreutils/scripts/fixfiles | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

Comments

James Carter Nov. 15, 2024, 2:47 p.m. UTC | #1
On Wed, Nov 13, 2024 at 8:15 AM Petr Lautrbach <lautrbach@redhat.com> wrote:
>
> systemd escapes luks uid so that mount points contain '\' and grep
> should not consider this as regexp
> Fixes:
>     $ cat /proc/self/mounts | sort | uniq | awk '{print $2}'
>     /run/credentials/systemd-cryptsetup@luks\134x2d6d1f41e6\134x2d5538\134x2d41a0\134x2db383\134x2cd41c2ddcacaa.service
>
>     $ sudo fixfiles -B onboot
>     grep: Invalid back reference
>     grep: Invalid back reference
>     System will relabel on next boot
>
> Suggested-by: Christopher Tubbs <ctubbsii@fedoraproject.org>
> Signed-off-by: Petr Lautrbach <lautrbach@redhat.com>

Acked-by: James Carter <jwcart2@gmail.com>

> ---
>  policycoreutils/scripts/fixfiles | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/policycoreutils/scripts/fixfiles b/policycoreutils/scripts/fixfiles
> index cb50fef3ca65..b7cd765c15e4 100755
> --- a/policycoreutils/scripts/fixfiles
> +++ b/policycoreutils/scripts/fixfiles
> @@ -45,9 +45,9 @@ FS="`cat /proc/self/mounts | sort | uniq | awk '{print $2}'`"
>  for i in $FS; do
>         if [ `useseclabel` -ge 0 ]
>         then
> -               grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
> +               grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
>         else
> -               grep " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
> +               grep -F " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
>         fi
>  done
>  }
> @@ -55,14 +55,14 @@ done
>  get_rw_labeled_mounts() {
>  FS=`get_all_labeled_mounts | sort | uniq`
>  for i in $FS; do
> -       grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
> +       grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
>  done
>  }
>
>  get_ro_labeled_mounts() {
>  FS=`get_all_labeled_mounts | sort | uniq`
>  for i in $FS; do
> -       grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
> +       grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
>  done
>  }
>
> --
> 2.47.0
>
>
James Carter Nov. 18, 2024, 8:16 p.m. UTC | #2
On Fri, Nov 15, 2024 at 9:47 AM James Carter <jwcart2@gmail.com> wrote:
>
> On Wed, Nov 13, 2024 at 8:15 AM Petr Lautrbach <lautrbach@redhat.com> wrote:
> >
> > systemd escapes luks uid so that mount points contain '\' and grep
> > should not consider this as regexp
> > Fixes:
> >     $ cat /proc/self/mounts | sort | uniq | awk '{print $2}'
> >     /run/credentials/systemd-cryptsetup@luks\134x2d6d1f41e6\134x2d5538\134x2d41a0\134x2db383\134x2cd41c2ddcacaa.service
> >
> >     $ sudo fixfiles -B onboot
> >     grep: Invalid back reference
> >     grep: Invalid back reference
> >     System will relabel on next boot
> >
> > Suggested-by: Christopher Tubbs <ctubbsii@fedoraproject.org>
> > Signed-off-by: Petr Lautrbach <lautrbach@redhat.com>
>
> Acked-by: James Carter <jwcart2@gmail.com>
>

Merged.
Thanks,
Jim

> > ---
> >  policycoreutils/scripts/fixfiles | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/policycoreutils/scripts/fixfiles b/policycoreutils/scripts/fixfiles
> > index cb50fef3ca65..b7cd765c15e4 100755
> > --- a/policycoreutils/scripts/fixfiles
> > +++ b/policycoreutils/scripts/fixfiles
> > @@ -45,9 +45,9 @@ FS="`cat /proc/self/mounts | sort | uniq | awk '{print $2}'`"
> >  for i in $FS; do
> >         if [ `useseclabel` -ge 0 ]
> >         then
> > -               grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
> > +               grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
> >         else
> > -               grep " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
> > +               grep -F " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
> >         fi
> >  done
> >  }
> > @@ -55,14 +55,14 @@ done
> >  get_rw_labeled_mounts() {
> >  FS=`get_all_labeled_mounts | sort | uniq`
> >  for i in $FS; do
> > -       grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
> > +       grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
> >  done
> >  }
> >
> >  get_ro_labeled_mounts() {
> >  FS=`get_all_labeled_mounts | sort | uniq`
> >  for i in $FS; do
> > -       grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
> > +       grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
> >  done
> >  }
> >
> > --
> > 2.47.0
> >
> >
diff mbox series

Patch

diff --git a/policycoreutils/scripts/fixfiles b/policycoreutils/scripts/fixfiles
index cb50fef3ca65..b7cd765c15e4 100755
--- a/policycoreutils/scripts/fixfiles
+++ b/policycoreutils/scripts/fixfiles
@@ -45,9 +45,9 @@  FS="`cat /proc/self/mounts | sort | uniq | awk '{print $2}'`"
 for i in $FS; do
 	if [ `useseclabel` -ge 0 ]
 	then
-		grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
+		grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)seclabel(,|$)' && echo $i
 	else
-		grep " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
+		grep -F " $i " /proc/self/mounts | grep -v "context=" | grep -E --silent '(ext[234]| ext4dev | gfs2 | xfs | jfs | btrfs )' && echo $i
 	fi
 done
 }
@@ -55,14 +55,14 @@  done
 get_rw_labeled_mounts() {
 FS=`get_all_labeled_mounts | sort | uniq`
 for i in $FS; do
-	grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
+	grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)rw(,|$)' && echo $i
 done
 }
 
 get_ro_labeled_mounts() {
 FS=`get_all_labeled_mounts | sort | uniq`
 for i in $FS; do
-	grep " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
+	grep -F " $i " /proc/self/mounts | awk '{print $4}' | grep -E --silent '(^|,)ro(,|$)' && echo $i
 done
 }