On Sun, 3 Dec 2006, Frans Pop wrote:
> On Sunday 03 December 2006 22:34, dean gaudet wrote: > > the linux-image .postrm script is (through some mechanism) invoking > > /sbin/update-grub. > > > > /sbin/update-grub gives a warning now: > > > > You shouldn't call /sbin/update-grub. Please call /usr/sbin/update-grub > > instead! > > > > except that warning is sent on stdout. > > I guess another solution for this issue would be if the wrappers in the > grub packages wrote these messages to stderr instead of stdout. > IMO this would be better anyway. that doesn't seem appropriate... update-grub isn't the only tool which is invoked -- arbitrary user hooks are invoked, plus dozens of other executables. isn't it wrong to pass them the IPC pipe on stdin? i honestly don't know what the parent/child split is all about, so maybe the pipe is there for a good reason and there should be an update-grub wrapper specific to how this postrm script wants to work. see the strace fragments below for execve calls. that's a lot of tools which could erroneously stamp on stdin and cause problems. > > - something messed up /etc/kernel-img.conf and didn't put the /usr/sbin > > paths on the hooks... if someone has a rc1-installed box please take > > a peek in there to see if it has been fixed. > > New installs write the lines in kernel-img.conf without any path (i.e. > just the command). that sounds at odds then with the path ordering in the postrm and the /sbin/update-grub wrapper. installer probably should put /usr/sbin/update-grub in there... (or the /sbin wrapper should go away... but istr there's a bug regarding why it was reinstated.) -dean 21884 execve("/var/lib/dpkg/info/linux-image-2.6.18-1-686.postrm.real", ["/var/lib/dpkg/info/linux-image-2"..., "purge"], [/* 28 vars */]) = 0 21884 execve("/usr/share/debconf/frontend", ["/usr/share/debconf/frontend", "/var/lib/dpkg/info/linux-image-2"..., "purge"], [/* 29 vars */]) = 0 21885 execve("/home/dean/local/bin/locale", ["locale", "charmap"], [/* 29 vars */]) = -1 ENOENT (No such file or directory) 21885 execve("/usr/local/bin/locale", ["locale", "charmap"], [/* 29 vars */]) = -1 ENOENT (No such file or directory) 21885 execve("/usr/local/sbin/locale", ["locale", "charmap"], [/* 29 vars */]) = -1 ENOENT (No such file or directory) 21885 execve("/usr/bin/locale", ["locale", "charmap"], [/* 29 vars */] <unfinished ...> 21885 <... execve resumed> ) = 0 21886 execve("/bin/sh", ["sh", "-c", "stty -a 2>/dev/null"], [/* 29 vars */] <unfinished ...> 21886 <... execve resumed> ) = 0 21887 execve("/bin/stty", ["stty", "-a"], [/* 29 vars */]) = 0 21888 execve("/bin/sh", ["sh", "-c", "stty -a 2>/dev/null"], [/* 29 vars */] <unfinished ...> 21888 <... execve resumed> ) = 0 21889 execve("/bin/stty", ["stty", "-a"], [/* 29 vars */]) = 0 21890 execve("/var/lib/dpkg/info/linux-image-2.6.18-1-686.postrm.real", ["/var/lib/dpkg/info/linux-image-2"..., "purge"], [/* 30 vars */]) = 0 21891 execve("/sbin/update-grub", ["/sbin/update-grub", "2.6.18-1-686", "/boot/vmlinuz-2.6.18-1-686"], [/* 32 vars */]) = 0 21892 execve("/bin/grep", ["grep", "-q", " */sbin/update-grub$", "/etc/kernel-img.conf"], [/* 32 vars */]) = 0 21891 execve("/usr/sbin/update-grub", ["/usr/sbin/update-grub", "2.6.18-1-686", "/boot/vmlinuz-2.6.18-1-686"], [/* 32 vars */]) = 0 21894 execve("/bin/uname", ["uname", "-s"], [/* 31 vars */] <unfinished ...> 21895 execve("/usr/bin/tr", ["tr", "[A-Z]", "[a-z]"], [/* 31 vars */] <unfinished ...> 21894 <... execve resumed> ) = 0 21895 <... execve resumed> ) = 0 21901 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21901 <... execve resumed> ) = 0 21904 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21904 <... execve resumed> ) = 0 21907 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21910 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21910 <... execve resumed> ) = 0 21913 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21916 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21916 <... execve resumed> ) = 0 21919 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21919 <... execve resumed> ) = 0 21922 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21925 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21925 <... execve resumed> ) = 0 21928 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21928 <... execve resumed> ) = 0 21931 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21931 <... execve resumed> ) = 0 21934 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21934 <... execve resumed> ) = 0 21937 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21937 <... execve resumed> ) = 0 21940 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21940 <... execve resumed> ) = 0 21942 execve("/bin/readlink", ["readlink", "-f", "/dev/md3"], [/* 31 vars */]) = 0 21946 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21946 <... execve resumed> ) = 0 21949 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21952 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21952 <... execve resumed> ) = 0 21955 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21955 <... execve resumed> ) = 0 21958 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21958 <... execve resumed> ) = 0 21961 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21964 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21964 <... execve resumed> ) = 0 21967 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21967 <... execve resumed> ) = 0 21970 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21970 <... execve resumed> ) = 0 21973 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21973 <... execve resumed> ) = 0 21976 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21979 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */]) = 0 21982 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21982 <... execve resumed> ) = 0 21985 execve("/bin/grep", ["grep", "-q", "^#"], [/* 31 vars */] <unfinished ...> 21985 <... execve resumed> ) = 0 21987 execve("/bin/readlink", ["readlink", "-f", "/dev/md0"], [/* 31 vars */]) = 0 21990 execve("/bin/sed", ["sed", "-e", "s,GNU/,,g"], [/* 31 vars */] <unfinished ...> 21990 <... execve resumed> ) = 0 21989 execve("/bin/uname", ["uname", "-s"], [/* 31 vars */] <unfinished ...> 21989 <... execve resumed> ) = 0 21994 execve("/sbin/mdadm", ["mdadm", "-D", "-b", "/dev/md0"], [/* 31 vars */] <unfinished ...> 21995 execve("/bin/grep", ["grep", "^ARRAY"], [/* 31 vars */] <unfinished ...> 21994 <... execve resumed> ) = 0 21995 <... execve resumed> ) = 0 21996 execve("/bin/sed", ["sed", "s/^.*level=//"], [/* 31 vars */] <unfinished ...> 21996 <... execve resumed> ) = 0 21997 execve("/usr/bin/cut", ["cut", "-d ", "-f1"], [/* 31 vars */] <unfinished ...> 21997 <... execve resumed> ) = 0 22002 execve("/bin/sed", ["sed", "s/^.*\\(\\/dev\\/.*\\)$/\\1/"], [/* 31 vars */] <unfinished ...> 22002 <... execve resumed> ) = 0 21999 execve("/sbin/mdadm", ["mdadm", "-D", "/dev/md0"], [/* 31 vars */] <unfinished ...> 22001 execve("/bin/grep", ["grep", "dev"], [/* 31 vars */] <unfinished ...> 21999 <... execve resumed> ) = 0 22001 <... execve resumed> ) = 0 22000 execve("/bin/grep", ["grep", "-A1", "Number"], [/* 31 vars */] <unfinished ...> 22000 <... execve resumed> ) = 0 22005 execve("/bin/uname", ["uname", "-s"], [/* 31 vars */] <unfinished ...> 22005 <... execve resumed> ) = 0 22006 execve("/usr/bin/tr", ["tr", "[[:upper:]]", "[[:lower:]]"], [/* 31 vars */] <unfinished ...> 22006 <... execve resumed> ) = 0 22009 execve("/bin/sed", ["sed", "-e", "s%\\([sh]d[[:lower:]]\\)[0-9]*$%\\1"..., "-e", "s%\\(fd[0-9]*\\)$%\\1%", "-e", "s%/part[0-9]*$%/disc%", "-e", "s%\\(c[0-7]d[0-9]*\\).*$%\\1%"], [/* 31 vars */] <unfinished ...> 22009 <... execve resumed> ) = 0 22012 execve("/bin/sed", ["sed", "-e", "s%.*/[sh]d[[:lower:]]\\([0-9]*\\)$"..., "-e", "s%.*/fd[0-9]*$%%", "-e", "s%.*/floppy/[0-9]*$%%", "-e", "s%.*/\\(disc\\|part\\([0-9]*\\)\\)$%\\"..., "-e", "s%.*c[0-7]d[0-9]*p*%%"], [/* 31 vars */]) = 0 22016 execve("/bin/sed", ["sed", "s%.*\\(([hf]d[0-9][a-z0-9,]*)\\).*"...], [/* 31 vars */] <unfinished ...> 22014 execve("/bin/grep", ["grep", "-v", "^#", "/boot/grub/device.map"], [/* 31 vars */] <unfinished ...> 22016 <... execve resumed> ) = 0 22015 execve("/bin/grep", ["grep", "/dev/sdb *$"], [/* 31 vars */] <unfinished ...> 22014 <... execve resumed> ) = 0 22015 <... execve resumed> ) = 0 22017 execve("/bin/tempfile", ["tempfile"], [/* 31 vars */]) = 0 22018 execve("/bin/cat", ["cat"], [/* 31 vars */]) = 0 22019 execve("/bin/rm", ["rm", "-f", "/tmp/filePMwOAz"], [/* 31 vars */]) = 0 22020 execve("/bin/cp", ["cp", "-f", "/boot/grub/menu.lst", "/boot/grub/menu.lst~"], [/* 31 vars */]) = 0 22023 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22025 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22028 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22030 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22033 execve("/bin/sed", ["sed", "s/^# \\(kopt_[[:alnum:]_]\\+\\)=\\(."...], [/* 31 vars */] <unfinished ...> 22033 <... execve resumed> ) = 0 22034 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */] <unfinished ...> 22034 <... execve resumed> ) = 0 22036 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22039 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22041 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22044 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22047 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22049 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22052 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22054 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22057 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22059 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22062 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22064 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22067 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22069 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22072 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22074 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22077 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22079 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22082 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22084 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22087 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22089 execve("/bin/sed", ["sed", "-ne", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22090 execve("/bin/tempfile", ["tempfile"], [/* 31 vars */]) = 0 22091 execve("/bin/grep", ["grep", "-q", "^# altoptions", "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22092 execve("/bin/grep", ["grep", "^# altoptions", "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22094 execve("/bin/grep", ["grep", "^splashimage=", "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22097 execve("/bin/grep", ["grep", "-c", "^splashimage="], [/* 31 vars */] <unfinished ...> 22097 <... execve resumed> ) = 0 22096 execve("/bin/sed", ["sed", "-e", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */] <unfinished ...> 22096 <... execve resumed> ) = 0 22099 execve("/bin/grep", ["grep", "-l", "CONFIG_XEN_PRIVILEGED_GUEST=y", "/boot/config-2.6.17.13", "/boot/config-2.6.18-3-686", "/boot/config-2.6.18.2"], [/* 31 vars */] <unfinished ...> 22100 execve("/bin/sed", ["sed", "-e", "s%/boot/config-%%"], [/* 31 vars */]) = 0 22099 <... execve resumed> ) = 0 22102 execve("/bin/ls", ["/bin/ls", "-1vr", "/boot"], [/* 31 vars */] <unfinished ...> 22102 <... execve resumed> ) = 0 22103 execve("/bin/grep", ["grep", "-v", "dpkg-*"], [/* 31 vars */] <unfinished ...> 22103 <... execve resumed> ) = 0 22104 execve("/bin/grep", ["grep", "-v", "xen"], [/* 31 vars */] <unfinished ...> 22104 <... execve resumed> ) = 0 22105 execve("/bin/grep", ["grep", "^vmlinuz-"], [/* 31 vars */] <unfinished ...> 22105 <... execve resumed> ) = 0 22108 execve("/bin/grep", ["grep", "-q", "vmlinuz-2.6.18.2 "], [/* 31 vars */] <unfinished ...> 22108 <... execve resumed> ) = 0 22111 execve("/bin/grep", ["grep", "-q", "vmlinuz-2.6.18-3-686 "], [/* 31 vars */] <unfinished ...> 22111 <... execve resumed> ) = 0 22115 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */]) = 0 22118 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */] <unfinished ...> 22118 <... execve resumed> ) = 0 22121 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */] <unfinished ...> 22121 <... execve resumed> ) = 0 22124 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */] <unfinished ...> 22124 <... execve resumed> ) = 0 22127 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */]) = 0 22130 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */] <unfinished ...> 22130 <... execve resumed> ) = 0 22133 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22133 <... execve resumed> ) = 0 22136 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22136 <... execve resumed> ) = 0 22138 execve("/usr/bin/expr", ["expr", "99", "-", "99"], [/* 31 vars */]) = 0 22140 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22142 execve("/usr/bin/expr", ["expr", "2", "-", "2"], [/* 31 vars */]) = 0 22144 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22146 execve("/usr/bin/expr", ["expr", "6", "-", "6"], [/* 31 vars */]) = 0 22148 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22150 execve("/usr/bin/expr", ["expr", "18", "-", "18"], [/* 31 vars */]) = 0 22152 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22154 execve("/usr/bin/expr", ["expr", "0", "-", "2"], [/* 31 vars */]) = 0 22156 execve("/usr/bin/expr", ["expr", "substr", "-2", "1", "2"], [/* 31 vars */]) = 0 22159 execve("/bin/grep", ["grep", "-q", "vmlinuz-2.6.17.13 "], [/* 31 vars */] <unfinished ...> 22159 <... execve resumed> ) = 0 22163 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */]) = 0 22166 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */] <unfinished ...> 22166 <... execve resumed> ) = 0 22169 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */]) = 0 22172 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */]) = 0 22175 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */] <unfinished ...> 22175 <... execve resumed> ) = 0 22178 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */]) = 0 22181 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22181 <... execve resumed> ) = 0 22184 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22184 <... execve resumed> ) = 0 22186 execve("/usr/bin/expr", ["expr", "99", "-", "99"], [/* 31 vars */]) = 0 22188 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22190 execve("/usr/bin/expr", ["expr", "2", "-", "2"], [/* 31 vars */]) = 0 22192 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22194 execve("/usr/bin/expr", ["expr", "6", "-", "6"], [/* 31 vars */]) = 0 22196 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22198 execve("/usr/bin/expr", ["expr", "17", "-", "18"], [/* 31 vars */]) = 0 22200 execve("/usr/bin/expr", ["expr", "substr", "-1", "1", "2"], [/* 31 vars */]) = 0 22204 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */] <unfinished ...> 22204 <... execve resumed> ) = 0 22207 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2,3\\}[0-9"...], [/* 31 vars */] <unfinished ...> 22207 <... execve resumed> ) = 0 22210 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */] <unfinished ...> 22210 <... execve resumed> ) = 0 22213 execve("/bin/sed", ["sed", "-e", "s!^\\(.*-\\([0-9]\\+\\.\\)\\{2\\}[0-9]\\"...], [/* 31 vars */] <unfinished ...> 22213 <... execve resumed> ) = 0 22216 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */] <unfinished ...> 22216 <... execve resumed> ) = 0 22219 execve("/bin/sed", ["sed", "-e", "s![-\\.]\\+! !g", "-e", "s!\\([0-9]\\)\\([[:alpha:]]\\)!\\1 \\2"...], [/* 31 vars */]) = 0 22222 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22222 <... execve resumed> ) = 0 22225 execve("/bin/sed", ["sed", "-e", "s! k7! 786 !g", "-e", "s! ac! 50 !g", "-e", "s! rc! -40 !g", "-e", "s! pre! -50 !g", "-e", "s! test! -60 !g", "-e", "s![^-0-9 ]\\+!99!g"], [/* 31 vars */] <unfinished ...> 22225 <... execve resumed> ) = 0 22227 execve("/usr/bin/expr", ["expr", "99", "-", "99"], [/* 31 vars */]) = 0 22229 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22231 execve("/usr/bin/expr", ["expr", "2", "-", "2"], [/* 31 vars */]) = 0 22233 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22235 execve("/usr/bin/expr", ["expr", "6", "-", "6"], [/* 31 vars */]) = 0 22237 execve("/usr/bin/expr", ["expr", "substr", "0", "1", "2"], [/* 31 vars */]) = 0 22239 execve("/usr/bin/expr", ["expr", "17", "-", "18"], [/* 31 vars */]) = 0 22241 execve("/usr/bin/expr", ["expr", "substr", "-1", "1", "2"], [/* 31 vars */]) = 0 22242 execve("/usr/bin/basename", ["basename", "/boot/vmlinuz-2.6.18.2"], [/* 31 vars */]) = 0 22245 execve("/bin/sed", ["sed", "-e", "s/vmlinuz//"], [/* 31 vars */]) = 0 22249 execve("/bin/sed", ["sed", "-e", "s#/*$##"], [/* 31 vars */]) = 0 22252 execve("/bin/sed", ["sed", "-e", "s/^-//"], [/* 31 vars */]) = 0 22256 execve("/bin/sed", ["sed", "s/^[^0-9]*//"], [/* 31 vars */] <unfinished ...> 22256 <... execve resumed> ) = 0 22259 execve("/bin/sed", ["sed", "s/[-\\+\\.]/_/g"], [/* 31 vars */] <unfinished ...> 22259 <... execve resumed> ) = 0 22263 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22267 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */] <unfinished ...> 22267 <... execve resumed> ) = 0 22274 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22278 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22279 execve("/bin/sed", ["sed", "-ne", "s/# altoptions=\\(.*\\)/\\1/p", "/tmp/fileKPj894"], [/* 31 vars */]) = 0 22283 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */]) = 0 22286 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */]) = 0 22287 execve("/usr/bin/basename", ["basename", "/boot/vmlinuz-2.6.18-3-686"], [/* 31 vars */]) = 0 22290 execve("/bin/sed", ["sed", "-e", "s/vmlinuz//"], [/* 31 vars */]) = 0 22294 execve("/bin/sed", ["sed", "-e", "s#/*$##"], [/* 31 vars */]) = 0 22297 execve("/bin/sed", ["sed", "-e", "s/^-//"], [/* 31 vars */]) = 0 22301 execve("/bin/sed", ["sed", "s/^[^0-9]*//"], [/* 31 vars */]) = 0 22304 execve("/bin/sed", ["sed", "s/[-\\+\\.]/_/g"], [/* 31 vars */]) = 0 22308 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22312 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */] <unfinished ...> 22312 <... execve resumed> ) = 0 22316 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22320 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22324 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22325 execve("/bin/sed", ["sed", "-ne", "s/# altoptions=\\(.*\\)/\\1/p", "/tmp/fileKPj894"], [/* 31 vars */] <unfinished ...> 22325 <... execve resumed> ) = 0 22329 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */] <unfinished ...> 22329 <... execve resumed> ) = 0 22332 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */] <unfinished ...> 22332 <... execve resumed> ) = 0 22333 execve("/usr/bin/basename", ["basename", "/boot/vmlinuz-2.6.17.13"], [/* 31 vars */]) = 0 22336 execve("/bin/sed", ["sed", "-e", "s/vmlinuz//"], [/* 31 vars */] <unfinished ...> 22336 <... execve resumed> ) = 0 22340 execve("/bin/sed", ["sed", "-e", "s#/*$##"], [/* 31 vars */] <unfinished ...> 22340 <... execve resumed> ) = 0 22343 execve("/bin/sed", ["sed", "-e", "s/^-//"], [/* 31 vars */] <unfinished ...> 22343 <... execve resumed> ) = 0 22347 execve("/bin/sed", ["sed", "s/^[^0-9]*//"], [/* 31 vars */] <unfinished ...> 22347 <... execve resumed> ) = 0 22350 execve("/bin/sed", ["sed", "s/[-\\+\\.]/_/g"], [/* 31 vars */] <unfinished ...> 22350 <... execve resumed> ) = 0 22354 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */] <unfinished ...> 22354 <... execve resumed> ) = 0 22358 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22362 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22366 execve("/bin/sed", ["sed", "s/_\\?[^_]*$//"], [/* 31 vars */]) = 0 22367 execve("/bin/sed", ["sed", "-ne", "s/# altoptions=\\(.*\\)/\\1/p", "/tmp/fileKPj894"], [/* 31 vars */] <unfinished ...> 22367 <... execve resumed> ) = 0 22371 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */]) = 0 22374 execve("/bin/sed", ["sed", "-ne", "s/\\(([^)]*)\\)[[:space:]]\\(.*\\)/\\"...], [/* 31 vars */] <unfinished ...> 22374 <... execve resumed> ) = 0 22375 execve("/bin/grep", ["grep", "-q", "^### BEGIN AUTOMAGIC KERNELS LIS"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22376 execve("/bin/sed", ["sed", "-e", "/^### BEGIN AUTOMAGIC KERNELS LI"..., "/boot/grub/menu.lst"], [/* 31 vars */]) = 0 22377 execve("/bin/cat", ["cat", "/boot/grub/menu.lst.new"], [/* 31 vars */]) = 0 22378 execve("/bin/rm", ["rm", "-f", "/tmp/fileKPj894", "/boot/grub/menu.lst.new"], [/* 31 vars */]) = 0