/ readonly na inicialização, mas não veja por quê. como investigar e corrigir? [fechadas]

5

Sistema de arquivos raiz montado bem sob pressão, e depois eu atualizei para Chiado. Eu tenho vivido com isso um pouco, então não tenho certeza, mas eu acho que começou depois de fazer um dist-upgrade no wheezy, mas poderia ser coincidência. A máquina é uma Lenovo T400 FWIW.

foto da tela de inicialização 1 mostra os primeiros avisos sobre o sistema de arquivos somente leitura; nada é logado obviamente

O fsck não encontra problemas 2

mount -o remount,rw /

acima funciona bem

(mas eu tenho que reiniciar o network-manager e o gdm3 para obter uma utilidade sistema; Não tenho certeza se isso está relacionado, mas não consigo me conectar a um serviço rodando em localhost, por exemplo, python -m SimpleHTTPServer 8080 e em outro terminal w3m vezes enviando solicitação para a porta local 8080)

Eu não noto nada de errado no fstab

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
# / was on /dev/sda1 during installation
UUID=2934c627-6f1a-438b-a877-1544108c7418 /               ext3 errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=39b1f59e-6193-4c46-8b4d-80b183f0b19c none            swap    sw           0       0
/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/sdb1       /media/usb0     auto    rw,user,noauto  0       0

Qualquer ponteiro seria muito apreciado. Espero que eu esteja fazendo algo obviamente errado e consertável, mas se não houver dicas sobre como depurar?

...

tune2fs -l /dev/sda1

saídas

tune2fs 1.42.2 (27-Mar-2012)
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          2934c627-6f1a-438b-a877-1544108c7418
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file
Filesystem flags:         signed_directory_hash 
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              14893056
Block count:              59547904
Reserved block count:     2977395
Free blocks:              50391869
Free inodes:              14576981
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      1009
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Filesystem created:       Tue May  3 01:44:56 2011
Last mount time:          Wed Apr 18 13:11:25 2012
Last write time:          Tue Apr 17 23:51:46 2012
Mount count:              5
Maximum mount count:      25
Last checked:             Tue Apr 17 23:51:46 2012
Check interval:           15552000 (6 months)
Next check after:         Sun Oct 14 23:51:46 2012
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:           256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
First orphan inode:       9145036
Default directory hash:   half_md4
Directory Hash Seed:      af8ca7f0-bcad-49f3-98c0-9b19a531a885
Journal backup:           inode blocks

...

Parece que o /etc/init.d/checkroot.sh não está sendo executado na inicialização, e esse é o script que finalmente remonta a raiz como rw (se eu executá-lo após a inicialização, ele faz exatamente isso). Estou usando o teste Debian / wheezy. Existem anotações de dependência em arquivos /etc/init.d, mas além disso não sei como saber mais sobre o sistema init.

...

Corrigido, mas não tenho ideia de como aconteceu ou se a correção é exatamente como o sistema deveria ser. Eu notei checkfs e mtab em /etc/rcS.d, mas sem checkroot, então eu adicionei:

cd /etc/rcS.d
ln -s ../init.d/checkroot.sh S06checkroot.sh

Após reiniciar duas vezes (a primeira vez pode ter sido minha confusão, mas adicionei mais instrumentação ao checkroot.sh entre eles), estou de volta com o comando rw on boot (e o problema de escutar / requisitar do localhost desapareceu , então eu acho que estava relacionado).

(Eu vejo em um squeeze que eu tenho acesso a ele no S07checkroot.sh; eu estava perto, talvez.)

    
por mlinksva 18.04.2012 / 21:22

3 respostas

3

Existe um erro no seu sistema de arquivos / root e no fstab remounts / root como somente leitura.

A linha no fstab

UUID=2934c627-6f1a-438b-a877-1544108c7418 / ext3 errors=remount-ro 0 1

é o que está causando / root a montar somente leitura.

Da página mount (8) man

errors={continue|remount-ro|panic}
Define the behaviour when an error is encountered.  (Either ignore errors
and just  mark  the  filesystem  erroneous and continue, or remount the
filesystem read-only, or panic and halt the system.)  The default is set in
the  filesystem superblock, and can be changed using tune2fs(8).

Você deve finalmente descobrir o que está errado com o seu sistema de arquivos / root. Você pode inicializar facilmente a partir de um disco de recuperação e executar um fsck on / root. Se você optar por ignorar os possíveis erros, basta alterar a linha em fstab para errors=continue .

    
por 18.04.2012 / 21:36
3

Eu tive esse problema, e isso foi causado pelo UUID errado para o FS raiz que está sendo configurado em / etc / fstab. Eu acho que alguma atualização detectou automaticamente e entendeu errado.

Remontar a partição / rw, usando blkid para obter o UUID correto e substituir em / etc / fstab para mim.

    
por 23.01.2015 / 22:31
0

Seu sistema de arquivos raiz não está sendo montado como leitura / gravação porque você não está dizendo para ele.

UUID=2934c627-6f1a-438b-a877-1544108c7418 /               ext3 errors=remount-ro 0       1

Suas opções de montagem são apenas errors=remount-ro , não há nada sobre leitura / gravação lá. A prática padrão é ter defaults em suas opções de montagem. defaults fornece várias outras opções de montagem, uma delas é rw , fornecendo assim leitura / gravação.

Então, você precisa adicionar defaults ou rw ao campo de opções do seu fstab.

EDITAR:
De pensar um pouco mais (e a partir da discussão nos comentários abaixo), as opções defaults e rw podem não consertá-lo. A razão disso é que o comportamento de remontagem depende inteiramente dos scripts de inicialização da distribuição. Eu vi distros puxar as configurações de montagem de fstab na inicialização, mas também é possível que o script de inicialização esteja ignorando completamente as opções do fstab quando for remontar o root (e usar algumas configurações codificadas no script).

    
por 19.04.2012 / 00:12

Tags