# BTRFS rootfs mounted as readonly

## Shelnutt2

So I fubared my install when I was moving to gnome 2.91.90, so I decided to wipe and reinstall with btrfs as my fs on my root partition. I actually built the entire system inside a chroot on my desktop then just rsynced it over to my netbook. The problem I am having though is it's mounting my rootfs as readonly, which is causing everything to fail. I'm not sure if I need a different kernel boot option or different fstab options?

grub.conf

```
# menu.lst - See: grub(8), info grub, update-grub(8)

#            grub-install(8), grub-floppy(8),

#            grub-md5-crypt, /usr/share/doc/grub

#            and /usr/share/doc/grub-legacy-doc/.

## default num

# Set the default entry to the entry number NUM. Numbering starts from 0, and

# the entry number 0 is the default if the command is not used.

#

# You can specify 'saved' instead of a number. In this case, the default entry

# is the entry saved with the command 'savedefault'.

# WARNING: If you are using dmraid do not change this entry to 'saved' or your

# array will desync and will not let you boot your system.

default        0

## timeout sec

# Set a timeout, in SEC seconds, before automatically booting the default entry

# (normally the first entry defined).

timeout        15

# Pretty colours

#color cyan/blue white/blue

splashimage=(hd0,5)/grub/splash.xpm.gz

## password ['--md5'] passwd

# If used in the first section of a menu file, disable all interactive editing

# control (menu entry editor and command-line)  and entries protected by the

# command 'lock'

# e.g. password topsecret

#      password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/

# password topsecret

#

# examples

#

# title        Windows 95/98/NT/2000

# root        (hd0,0)

# makeactive

# chainloader    +1

#

# title        Linux

# root        (hd0,1)

# kernel    /vmlinuz root=/dev/hda2 ro

#

#

# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

### BEGIN AUTOMAGIC KERNELS LIST

## lines between the AUTOMAGIC KERNELS LIST markers will be modified

## by the debian update-grub script except for the default options below

## DO NOT UNCOMMENT THEM, Just edit them to your needs

## ## Start Default Options ##

## default kernel options

## default kernel options for automagic boot options

## If you want special options for specific kernels use kopt_x_y_z

## where x.y.z is kernel version. Minor versions can be omitted.

## e.g. kopt=root=/dev/hda1 ro

##      kopt_2_6_8=root=/dev/hdc1 ro

##      kopt_2_6_8_2_686=root=/dev/hdc2 ro

# kopt=root=/dev/sda7 ro

## default grub root device

## e.g. groot=(hd0,0)

# groot=(hd0,5)

## should update-grub create alternative automagic boot options

## e.g. alternative=true

##      alternative=false

# alternative=true

## should update-grub lock alternative automagic boot options

## e.g. lockalternative=true

##      lockalternative=false

# lockalternative=false

## additional options to use with the default boot option, but not with the

## alternatives

## e.g. defoptions=vga=791 resume=/dev/hda5

# defoptions=quiet

## should update-grub lock old automagic boot options

## e.g. lockold=false

##      lockold=true

# lockold=false

## Xen hypervisor options to use with the default Xen boot option

# xenhopt=

## Xen Linux kernel options to use with the default Xen boot option

# xenkopt=console=tty0

## altoption boot targets option

## multiple altoptions lines are allowed

## e.g. altoptions=(extra menu suffix) extra boot options

##      altoptions=(single-user) single

# altoptions=(single-user mode) single

## controls how many kernels should be put into the menu.lst

## only counts the first occurence of a kernel, not the

## alternative kernel options

## e.g. howmany=all

##      howmany=7

# howmany=all

## should update-grub create memtest86 boot option

## e.g. memtest86=true

##      memtest86=false

# memtest86=true

## should update-grub adjust the value of the default booted system

## can be true or false

# updatedefaultentry=false

## should update-grub add savedefault to the default options

## can be true or false

# savedefault=false

## ## End Default Options ##

title           Gentoo 64bit

root            (hd0,5)

kernel          /kernel-2.6.38-gentoo-r1 root=/dev/sda7 acpi_osi=Linux rootfstype=btrfs raid=noautodetect rootflags=subvol=rootfs

title        Gentoo 64bit

root        (hd0,5)

kernel        /kernel-2.6.38-gentoo-r1 root=/dev/sda7 acpi_osi=Linux rootfstype=btrfs rootflags=subvol=__active

title        Gentoo 64bit

root        (hd0,5)

kernel        /kernel-2.6.36-gentoo-r3 root=/dev/sda7 acpi_osi=Linux rootfstype=btrfs raid=noautodetect

# This is a divider, added to separate the menu items below from the Debian

# ones.

title        Other operating systems:

root

# This entry automatically added by the Debian installer for a non-linux OS

# on /dev/sda1

title        Microsoft Windows 7 Starter

root        (hd0,0)

savedefault

makeactive

chainloader    +1

```

fstab

```
# /etc/fstab: static file system information.

#

# The root filesystem should have a pass number of either 0 or 1.

# All other filesystems should have a pass number of 0 or greater than 1.

#

# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.

#

# See the manpage fstab(5) for more information.

#

# <fs>            <mountpoint>    <type>        <opts>        <dump/pass>

/dev/sda6        /boot        ext2        noauto,noatime    1 2

/dev/sda5        none        swap        sw        0 0

/dev/sda7        /        btrfs        compress=lzo,speed_cache,noatime        0 1

/dev/sda8        /home        ext4        noatime        0 1

proc            /proc        proc        defaults    0 0
```

----------

## dylix

just for comparison, here's mine.. 

fstab..

```
UUID=ab41dc5b-dac8-4101-b0f5-1f26e3e7986c      /      btrfs   defaults,noatime,compress    0 1
```

grub.cfg

```
menuentry "Funtoo Linux - bzImage-03-28-2011" {

  insmod part_msdos

  insmod ext2

  set root=(hd0,1)

  search --no-floppy --fs-uuid --set 7f53bbbd-8616-416d-9e22-3e6e47df18ef

  linux /bzImage-03-28-2011 video=uvesafb:ywrap,mtrr,1280x800-32@60 rootfstype=btrfs root=/dev/sda3

  set gfxpayload=keep

}
```

----------

## Shelnutt2

 *dylix wrote:*   

> just for comparison, here's mine.. 
> 
> fstab..
> 
> ```
> ...

 

Hmm, I tried your fstab mount options, but its still read only. I don't think I'm having grub issues because its detecting the fs. I'm gonna double check my kernel configuration. I'm just not sure what's up.

----------

## ToeiRei

Such behavior usually indicates a broken FS.

You can boot a livecd, tar your btrfs partitions and backup them to a secure place and recreate the FS. As BTRFS is experimental and no FSCK actually really works, this is the only chance I do see.

----------

## Moonboots

Could be totally wrong about this, but you have your Gentoo 64-bit / as a subvol, don't you need to indicate this your fstab ?

----------

## ToeiRei

kernelparameter should look like that: real_rootflags=subvol=myrootfssubvol

----------

