Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 161716 - sys-kernel/genkernel-3.4.6: mkdir cannot create grub.conf
Summary: sys-kernel/genkernel-3.4.6: mkdir cannot create grub.conf
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Hosted Projects
Classification: Unclassified
Component: genkernel (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Genkernel Maintainers
URL:
Whiteboard:
Keywords: InVCS
: 163862 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-01-12 11:14 UTC by Jimmy.Jazz
Modified: 2007-02-14 21:58 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
genkernel.log (genkernel.log.gz,72.47 KB, text/plain)
2007-01-12 13:55 UTC, Jimmy.Jazz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jimmy.Jazz 2007-01-12 11:14:28 UTC
Hello,


* Adding kernel to /boot/grub/grub.conf...
mkdir: ne peut créer le répertoire `grub.conf': Aucun fichier ou répertoire de ce type

translation:
mkdir: cannot create directory `grub.conf': No such file or directory

That not really what we want

Reproducible: Always

Steps to Reproduce:
1.genkernel --gensplash=livecd-2006.1 --gensplash-res=1280x1024 --no-install --no-clean --evms2 --kerneldir=/usr/src/linux-2.6.20-rc4 all
2.
3.




 # cat /etc/genkernel.conf  | grep -v "^#"


MENUCONFIG="no"

CLEAN="yes"

MRPROPER="yes"

BOOTSPLASH="yes"


MOUNTBOOT="yes"

SAVE_CONFIG="yes"

USECOLOR="yes"

BOOTLOADER="grub"





GK_SHARE="/usr/share/genkernel"

GK_BIN="${GK_SHARE}"
CACHE_DIR="/var/genkernel/pkg/%%ARCH%%"
DEBUGFILE="/var/log/genkernel.log"
DEBUGLEVEL=2

DEFAULT_KERNEL_SOURCE="/usr/src/linux"

BUSYBOX_CONFIG="${GK_SHARE}/%%ARCH%%/busy-config"
BUSYBOX_VER="1.1.3+gentoo"
BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.bz2"
BUSYBOX_SRCTAR="${GK_SHARE}/pkg/busybox-${BUSYBOX_VER}.tar.bz2"
BUSYBOX_DIR="busybox-${BUSYBOX_VER}"

MODULE_INIT_TOOLS_VER="0.9.15-pre4"
MODULE_INIT_TOOLS_SRCTAR="${GK_SHARE}/pkg/module-init-tools-${MODULE_INIT_TOOLS_VER}.tar.bz2"
MODULE_INIT_TOOLS_DIR="module-init-tools-${MODULE_INIT_TOOLS_VER}"
MODULE_INIT_TOOLS_BINCACHE="%%CACHE%%/insmod-%%ARCH%%-static-2.6.bz2"

MODUTILS_VER="2.4.26"
MODUTILS_SRCTAR="${GK_SHARE}/pkg/modutils-${MODUTILS_VER}.tar.bz2"
MODUTILS_DIR="modutils-${MODUTILS_VER}"
MODUTILS_BINCACHE="%%CACHE%%/insmod-%%ARCH%%-static-2.4.bz2"

DIETLIBC_VER="0.27"
DIETLIBC_SRCTAR="${GK_SHARE}/pkg/dietlibc-${DIETLIBC_VER}.tar.bz2"
DIETLIBC_DIR="dietlibc-${DIETLIBC_VER}"
DIETLIBC_BINCACHE="%%CACHE%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%.tar.bz2"
DIETLIBC_BINCACHE_TEMP="%%CACHE%%/dietlibc-${DIETLIBC_VER}-%%ARCH%%-tempdir"

DEVFSD_VER="1.3.25-dietlibc-kernel25"
DEVFSD_SRCTAR="${GK_SHARE}/pkg/devfsd-${DEVFSD_VER}.tar.bz2"
DEVFSD_DIR="devfsd"
DEVFSD_BINCACHE="%%CACHE%%/devfsd-${DEVFSD_VER}-%%ARCH%%.bz2"
DEVFSD_CONF_BINCACHE="%%CACHE%%/devfsd-conf-${DIETLIBC_VER}-%%ARCH%%.bz2"



DEVICE_MAPPER_VER="1.02.07"
DEVICE_MAPPER_DIR="device-mapper.${DEVICE_MAPPER_VER}"
DEVICE_MAPPER_SRCTAR="${GK_SHARE}/pkg/device-mapper.${DEVICE_MAPPER_VER}.tgz"
DEVICE_MAPPER_BINCACHE="%%CACHE%%/device-mapper-${DEVICE_MAPPER_VER}-%%ARCH%%.tar.bz2"

LVM2_VER="2.02.05"
LVM2_DIR="LVM2.${LVM2_VER}"
LVM2_SRCTAR="${GK_SHARE}/pkg/LVM2.${LVM2_VER}.tgz"
LVM2_BINCACHE="%%CACHE%%/LVM2.${LVM2_VER}-%%ARCH%%.tar.bz2"

DMRAID_VER="1.0.0.rc13"
DMRAID_DIR="dmraid/${DMRAID_VER}"
DMRAID_SRCTAR="${GK_SHARE}/pkg/dmraid-${DMRAID_VER}.tar.bz2"
DMRAID_BINCACHE="%%CACHE%%/dmraid-${DMRAID_VER}-%%ARCH%%.tar.bz2"



UNIONFS_VER="1.4"
UNIONFS_DIR="unionfs-${UNIONFS_VER}"
UNIONFS_SRCTAR="${GK_SHARE}/pkg/unionfs-${UNIONFS_VER}.tar.gz"
UNIONFS_BINCACHE="%%CACHE%%/unionfs-${UNIONFS_VER}-tools-%%ARCH%%.tar.bz2"
UNIONFS_MODULES_BINCACHE="%%CACHE%%/unionfs-${UNIONFS_VER}-modules-%%KV%%-%%ARCH%%.tar.bz2"

E2FSPROGS_VER="1.38"
E2FSPROGS_DIR="e2fsprogs-${E2FSPROGS_VER}"
E2FSPROGS_SRCTAR="${GK_SHARE}/pkg/e2fsprogs-${E2FSPROGS_VER}.tar.gz"
BLKID_BINCACHE="%%CACHE%%/blkid-${E2FSPROGS_VER}-%%ARCH%%.bz2"

SUSPEND_VER="0.5"
SUSPEND_DIR="suspend-${SUSPEND_VER}"
SUSPEND_SRCTAR="${GK_SHARE}/pkg/suspend-${SUSPEND_VER}.tar.gz"
SUSPEND_BINCACHE="%%CACHE%%/suspend-${SUSPEND_VER}-%%ARCH%%.tar.bz2"
Comment 1 Chris Gianelloni (RETIRED) gentoo-dev 2007-01-12 12:54:26 UTC
Ehh... rather than post your config, can you post the genkernel.log like genkernel asks you to do when filing a bug report?  It looks like "basename" isn't executing properly on line 42 of gen_bootloader.sh, which would cause it to try to mkdir /boot/grub/grub.conf instead of /boot/grub, causing your error.

Thanks...
Comment 2 Jimmy.Jazz 2007-01-12 13:55:25 UTC
Created attachment 106674 [details]
genkernel.log
Comment 3 Jimmy.Jazz 2007-01-12 13:59:18 UTC
(In reply to comment #1)
> Ehh... rather than post your config, can you post the genkernel.log like
> genkernel asks you to do when filing a bug report?  It looks like "basename"
> isn't executing properly on line 42 of gen_bootloader.sh, which would cause it
> to try to mkdir /boot/grub/grub.conf instead of /boot/grub, causing your error.
> 
> Thanks...
> 

There is nothing relevant in genkernel.log. I cannot see the output of the error message either.

Comment 4 Jimmy.Jazz 2007-01-12 15:33:03 UTC
(In reply to comment #1)

I traced the portion of code to figure out the problem.

I hope that could help you a bit. (this time a let the boot partition read only.

I think basename should be dirname instead.

*         >> Appending gensplash cpio data...
*   >> Installing gensplash [ using the livecd-2006.1 theme ]...
* 
* Adding kernel to /boot/grub/grub.conf...
++ echo /dev/evms/boot
++ sed -e 's#/dev/.\+\([[:digit:]]?*\)#\1#'
+ local GRUB_BOOT_PARTITION=/dev/evms/boot
+ '[' '!' -d /var/tmp/genkernel/10451.11217.13220.29661 ']'
++ basename /boot/grub/grub.conf
+ '[' '!' -e grub.conf ']'
++ basename /boot/grub/grub.conf
+ mkdir -p grub.conf
mkdir: ne peut créer le répertoire `grub.conf': Aucun fichier ou répertoire de ce type
+ '[' '!' -e /boot/grub/grub.conf ']'
+ local TYPE
+ '[' 0 -eq 1 ']'
+ TYPE=ramfs
+ cp -f /boot/grub/grub.conf /boot/grub/grub.conf.bak
cp: ne peut enlever `/boot/grub/grub.conf.bak': Système de fichiers accessible en lecture seulement
+ awk 'BEGIN { RS="\n"; }
                     {
                        if(match($0, "kernel-" KNAME "-" ARCH "-" KV))
                        { have_k="1" }
                        if(match($0, "init" TYPE "-" KNAME "-" ARCH "-" KV))
                        { have_i="1" }
                        if(have_k == "1" && have_i == "1")
                        { exit 1; }
                     }' KNAME=genkernel ARCH=x86 KV=2.6.20-rc4 TYPE=ramfs /boot/grub/grub.conf.bak
+ '[' 0 -eq 0 ']'
++ wc -l /boot/grub/grub.conf.bak
+ local 'LIMIT=71 /boot/grub/grub.conf.bak'
+ awk -f /usr/share/genkernel/gen_bootloader_grub.awk LIMIT=71 KNAME=genkernel ARCH=x86 KV=2.6.20-rc4 TYPE=ramfs /boot/grub/grub.conf.bak
/usr/share/genkernel/gen_bootloader.sh: line 95: /boot/grub/grub.conf: Système de fichiers accessible en lecture seulement
+ set +x
* 
* Kernel compiled successfully!
* 
Comment 5 Chris Gianelloni (RETIRED) gentoo-dev 2007-01-15 17:40:06 UTC
You're absolutely right.  I've fixed this in subversion and it'll be fixed in the next version of genkernel.
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2007-01-26 07:45:14 UTC
*** Bug 163862 has been marked as a duplicate of this bug. ***
Comment 7 Chris Gianelloni (RETIRED) gentoo-dev 2007-02-14 21:58:43 UTC
Fixed in 3.4.7_pre3