Autor Tópico: Problema com a partição raiz  (Lida 1817 vezes)

Offline panthokrator

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Problema com a partição raiz
« Online: 27 de Maio de 2012, 20:23 »
Olá a todos,
                 
                  estou com o seguinte problema: Eu estava usando o programa PySDM de gerenciamento de partições (Storage Device Manager) para configurar determinadas partições para serem montadas automaticamente na inicialização. Entretanto entre as partições que configurei estava a partição raiz e depois que alterei eu não consegui mais entrar no Ubuntu. Quando tento logar aparece uma mensagem com algo como "fsck de util. linux.../dev/sda7 clean...files blocks mountall: mount/ [780] permissão negada". Não sei exatamente onde errei, mas o sistema não entra nem com o uso do Supergrub.
               Andei dando uma pesquisada e acho que como eu configurei para que a raiz seja montada automaticamente o fsck não pode ser concluído, porque tal não é possível em partições montadas. Se esse é o problema, a pergunta que fica agora é como desativar a montagem automática da raiz??


Para facilitar vou dar mais detalhes


O meu arquivo fstab esta assim:

UUID=a667c4f9-08ed-4447-9c38-f4425421b363 swap swap sw 0 0
UUID=3246db26-7d1b-41a9-829b-58e322e8eb82 / ext4 defaults 0 0
UUID=71f97f98-e184-4043-b92e-ac19ad4da040 / ext4 users,user 0 1
/dev/sda8 /media/sda8 ext4 users,user 0 0
/dev/sda9 /media/sda9 ext4 users,user 0 0






*A raiz esta na partição /dev/sda6 ( 71f97f98-e184-4043-b92e-ac19ad4da040 )


O arquivo mount esta assim:


# mount(8) completion. This will pull a list of possible mounts out of
# /etc/{,v}fstab, unless the word being completed contains a ':', which
# would indicate the specification of an NFS server. In that case, we
# query the server for a list of all available exports and complete on
# that instead.
#
have mount &&
{

# Just like COMPREPLY=(`compgen -W "${COMPREPLY
  • }" -- "$cur"`), only better!

#
# This will correctly escape special characters in COMPREPLY.
_reply_compgen_array()
{
# Create the argument for compgen -W by escaping twice.
#
# One round of escape is because we want to reply with escaped arguments. A
# second round is required because compgen -W will helpfully expand it's
# argument.
local i wlist
for i in ${!COMPREPLY
  • }; do

local q=$(quote "$(printf %q "${COMPREPLY[$i]}")")
wlist+=$q$'\n'
done

# We also have to add another round of escaping to $cur.
local ecur="$cur"
ecur="${ecur//\\/\\\\}"
ecur="${ecur//\'/\'}"

# Actually generate completions.
local oldifs=$IFS
IFS=$'\n' eval 'COMPREPLY=(`compgen -W "$wlist" -- "${ecur}"`)'
IFS=$oldifs
}

# Unescape strings in the linux fstab(5) format (with octal escapes).
__linux_fstab_unescape() {
eval $1="'${!1//\'/{TTEXTO}47}'"
eval $1="'${!1/%\\/\\\\}'"
eval "$1=$'${!1}'"
}

# Complete linux fstab entries.
#
# Reads a file from stdin in the linux fstab(5) format; as used by /etc/fstab
# and /proc/mounts.
_linux_fstab()
{
COMPREPLY=()

# Read and unescape values into COMPREPLY
local fs_spec fs_file fs_other
local oldifs="$IFS"
while read -r fs_spec fs_file fs_other; do
if [[ $fs_spec =
  • * ]]; then continue; fi

if [[ $1 == -L ]]; then
local fs_label=${fs_spec/#LABEL=}
if [[ $fs_label != "$fs_spec" ]]; then
__linux_fstab_unescape fs_label
IFS=$'{TTEXTO}'
COMPREPLY+=("$fs_label")
IFS=$oldifs
fi
else
__linux_fstab_unescape fs_spec
__linux_fstab_unescape fs_file
IFS=$'{TTEXTO}'
[[ $fs_spec = */* ]] && COMPREPLY+=("$fs_spec")
[[ $fs_file = */* ]] && COMPREPLY+=("$fs_file")
IFS=$oldifs
fi
done

_reply_compgen_array
}

_mount()
{
local cur sm host prev

COMPREPLY=()
_get_comp_words_by_ref -n : cur prev

case $prev in
-t|--types)
_fstypes
return 0
;;
esac

[[ "$cur" == \\ ]] && cur="/"

if [[ "$cur" == *:* ]]; then
for sm in "$(type -P showmount)" {,/usr}/{,s}bin/showmount; do
[ -x "$sm" ] || continue
COMPREPLY=( $( compgen -W "$( "$sm" -e ${cur%%:*} | \
awk 'NR>1 {print $1}' )" -- "${cur#*:}" ) )
return 0
done
fi

if [[ "$cur" == //* ]]; then
host=${cur#//}
host=${host%%/*}
if [ -n "$host" ]; then
COMPREPLY=( $( compgen -P "//$host" -W \
"$( smbclient -d 0 -NL $host 2>/dev/null |
sed -ne '/^['"$'\t '"']*Sharename/,/^$/p' |
sed -ne '3,$s|^[^A-Za-z]*\([^'"$'\t '"']*\).*$|/\1|p' )" \
-- "${cur#//$host}" ) )
fi
elif [ -r /etc/vfstab ]; then
# Solaris
COMPREPLY=( $( compgen -W "$( awk '! /^[ \t]*#/ {if ($3 ~ /\//) print $3}' /etc/vfstab )" -- "$cur" ) )
elif [ ! -e /etc/fstab ]; then
# probably Cygwin
COMPREPLY=( $( compgen -W "$( mount | awk '! /^[ \t]*#/ {if ($3 ~ /\//) print $3}' )" -- "$cur" ) )
else
# probably Linux
if [ "$prev" = -L ]; then
_linux_fstab -L < /etc/fstab
elif [ "$prev" = -U ]; then
COMPREPLY=( $( compgen -W '$(sed -ne "s/^[[:space:]]*UUID=\([^[:space:]]*\).*/\1/p" /etc/fstab )' -- "$cur" ) )
else
_linux_fstab < /etc/fstab
fi
fi

return 0
} &&
complete -F _mount -o default -o dirnames mount

# umount(8) completion. This relies on the mount point being the third
# space-delimited field in the output of mount(8)
#
have umount &&
_umount()
{
local cur
_get_comp_words_by_ref cur
COMPREPLY=()

if [[ $(uname -s) = Linux && -r /proc/mounts ]]; then
# Linux /proc/mounts is properly quoted. This is important when
# unmounting usb devices with pretty names.
_linux_fstab < /proc/mounts
else
local IFS=$'\n'
COMPREPLY=( $( compgen -W '$( mount | cut -d" " -f 3 )' -- "$cur" ) )
fi

return 0
} &&
complete -F _umount -o dirnames umount

}

# Local variables:
# mode: shell-script
# sh-basic-offset: 4
# sh-indent-comment: t
# indent-tabs-mode: nil
# End:
# ex: ts=4 sw=4 et filetype=sh



O arquivo mountall.conf esta assim:


# mountall - Mount filesystems on boot
#
# This helper mounts filesystems in the correct order as the devices
# and mountpoints become available.

description "Mount filesystems on boot"

start on startup
stop on starting rcS

expect daemon
task

emits virtual-filesystems
emits local-filesystems
emits remote-filesystems
emits all-swaps
emits filesystem
emits mounting
emits mounted

# temporary, until we have progress indication
# and output capture (next week :p)
console output

script
. /etc/default/rcS
[ -f /forcefsck ] && force_fsck="--force-fsck"
[ "$FSCKFIX" = "yes" ] && fsck_fix="--fsck-fix"

# set $LANG so that messages appearing in plymouth are translated
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE LC_MESSAGES LC_ALL
fi

exec mountall --daemon $force_fsck $fsck_fix
end script

post-stop script
rm -f /forcefsck 2>dev/null || true
end script

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #1 Online: 28 de Maio de 2012, 14:28 »
UUID=3246db26-7d1b-41a9-829b-58e322e8eb82 / ext4 defaults 0 0
UUID=71f97f98-e184-4043-b92e-ac19ad4da040 / ext4 users,user 0 1

Se 71f97f98.. é a partição raiz, a linha anterior, da partição 3246db26..., não deveria existir porque tá configurada pra montar a raiz (veja o que está em negrito). Fora isso, eu removeria as opções "users,user" da partição raiz, e colocaria "defaults" no lugar.

Obs: poderia ter usado "code" ou "quote" no lugar da cor vermelha, ficaria mais legível.

Offline AdvancedS17

  • Usuário Ubuntu
  • *
  • Mensagens: 107
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #2 Online: 28 de Maio de 2012, 19:11 »
Acho que o problema está no fato de duas partições estarem escolhidas para serem montadas como raiz, remova a que não quer como raiz e por favor diga se funcionou.
Maçon, apoiador de todas as religiões (de preferência conformistas) e enfocado no cristianismo. Universitários do mundo todo, esqueçam os dogmas, devolvam meu corpo que perdi ao longo dos séculos; só não peço para me tornarem um deus, pois ter uma saúde perfeita já basta. Holandês aqui não tem vez.

Offline panthokrator

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #3 Online: 29 de Maio de 2012, 20:32 »
Desculpe pela cor da fonte, não estou habituado a postar no ubuntuforum...obrigado pela pronta responta! Não entendi "veja o que está em negrito", desculpe, mas porque você diz isso? O meu pc esta com dual boot seven+ubuntu 12.04. O fstab mencionado é do Ubuntu 12.04 com problemas, ele é anterior a algumas alterações que fiz. Ou seja:  eu alterei algumas partições e reinstalei o ubuntu. Acabei presenvando a partição raiz problematica porque quero alguns dados nela, A seguir é o fstab do Ubuntu recem instalado:

# /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    nodev,noexec,nosuid 0       0
# / was on /dev/sda10 during installation
UUID=2a104fb4-cedd-4fa1-b501-b020fd33d291 /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda9 during installation
UUID=0f9bfb36-052d-4c6b-a3ca-2242f441ddde /boot           ext4    defaults        0       2
# /home was on /dev/sda7 during installation
UUID=938766f8-38f0-4f1d-8cbf-e39925b1daa6 /home           ext4    defaults        0       2
# swap was on /dev/sda5 during installation
UUID=a667c4f9-08ed-4447-9c38-f4425421b363 none            swap    sw              0       0


Caso tenha algum jeito de ressuscitar o Ubuntu anterior, melhor seria... Será que dá????  
« Última modificação: 29 de Maio de 2012, 20:45 por panthokrator »

Offline irtigor

  • Equipe Ubuntu
  • Usuário Ubuntu
  • *****
  • Mensagens: 4.344
  • Delete, delete, delete!
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #4 Online: 30 de Maio de 2012, 13:23 »
No meu comentário, eu deixei em negrito o ponto de montagem marcado no seu fstab. Você tinha duas entradas com "/", que é a raiz. Pra usar a raiz antiga, faça algo como

Citar
#UUID=2a104fb4-cedd-4fa1-b501-b020fd33d291 /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sda9 during installation
#UUID=0f9bfb36-052d-4c6b-a3ca-2242f441ddde /boot           ext4    defaults        0       2
UUID=71f97f98-e184-4043-b92e-ac19ad4da040 / ext4 errors=remount-ro 0 1

Se a partição em negrito realmente for a raiz, deve funcionar (se comentar o /boot, pra usar o do sistema antigo, será necessário atualiza-lo ante de usar o sistema, dê uma olha em "como recuperar o grub").

Offline panthokrator

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #5 Online: 30 de Maio de 2012, 14:18 »
Hehheheh!!! Obrigado. Desculpe, mas não havia percebido o sutil negrito que você colocou na "/", vou testar a sua dica e retorno com o resultado.

Citar
No meu comentário, eu deixei em negrito o ponto de montagem marcado no seu fstab. Você tinha duas entradas com "/", que é a raiz. Pra usar a raiz antiga, faça algo como.
« Última modificação: 30 de Maio de 2012, 14:32 por panthokrator »

Offline panthokrator

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re: Problema com a partição raiz
« Resposta #6 Online: 02 de Junho de 2012, 01:47 »
RESOLVIDO

Olá de novo,
                 conforme a orientação dos caros irtigor  e AdvancedS17, pela nova instalação, eu acessei como root, fiz algumas alterações no arquivo fstab da instalação anterior do Ubuntu, apaguei a linha da partição raiz que estava errada  (que de fato ja não existia mais) e depois salvei. Deu certo pessoal, muito obrigado a todos!!! ;D ;D ;D valeusss!!!!!


ficou assim:

#UUID=a667c4f9-08ed-4447-9c38-f4425421b363  swap      swap  sw   0  0 
#UUID=2a104fb4-cedd-4fa1-b501-b020fd33d291 /  ext4    errors=remount-ro 0  1
# /boot was on /dev/sda9 during installation
#UUID=0f9bfb36-052d-4c6b-a3ca-2242f441ddde /boot  ext4  defaults  0  2
UUID=71f97f98-e184-4043-b92e-ac19ad4da040 / ext4 errors=remount-ro 0 1
« Última modificação: 02 de Junho de 2012, 01:52 por panthokrator »