Após a montagem de partições ainda recebendo arquivos do Live CD

1

Eu quero editar o arquivo /etc/pam.d/common-auth do meu sistema do CD ao vivo (adivinhe porque ...).

Eu executei os seguintes comandos:

sudo su
cd /mnt
mkdir os
cd os
mkdir dev sys lib lib64 bin etc proc home boot
mount /dev/sda8 /mnt/os
mount /dev/sda9 /mnt/os/home
mount /dev/sda1 /mnt/os/boot
mount --rbind /sys /mnt/os/sys
mount --rbind /proc /mnt/os/proc
mount --rbind /dev /mnt/os/dev
mount --rbind /bin /mnt/os/bin
mount --rbind /lib /mnt/os/lib
mount --rbind /lib64 /mnt/os/lib64
mount --rbind /etc /mnt/os/etc
chroot /mnt/os

Depois disso, ainda recebo uma linha root@kubuntu:/# . Eu pensei que isso mudaria kubuntu para o nome do meu computador ou algo diferente. Mas eu estou no meu computador porque quando eu cd /mnt eu não tenho os diretório, mas outros. /home também está devidamente montado - consigo ver todos os meus arquivos. Então, depois eu vou para /etc/pam.d e eu cat common-auth eu não vejo o arquivo do meu computador, mas o do Kubuntu. Por que fiz errado?

BTW, quando eu cat o arquivo antes do chroot é o mesmo que depois de chroot .

    
por user1 09.10.2016 / 11:42

1 resposta

1

Existem várias coisas erradas no seu procedimento:

  1. Você não precisa recriar pastas em /mnt/os com o mkdir. Depois de montar o disco em uma pasta, tudo dentro da pasta original fica temporariamente oculto e substituído pelo conteúdo do disco montado. Seu /dev/sda8 provavelmente já contém essas pastas e, caso contrário, elas não serão criadas dessa maneira.

  2. O mesmo se aplica ao mount-bind. Você não pode editar a configuração do PAM na sua unidade /dev/sda porque você substitui a pasta /etc do seu disco por aquela no cd ao vivo antes de chamar o chroot.

  3. Além disso, você não precisa ligar nada exceto /dev , /proc e /sys em seu ambiente chroot. Essas pastas contêm arquivos abstratos que representam dispositivos e partes do sistema operacional. Eles são gerados pelo seu kernel no boot ou no tempo de execução e precisam estar disponíveis dentro do ambiente chrooted, caso contrário, alguns dos programas podem não funcionar. Se você não montar essas pastas, elas aparecerão vazias no seu /dev/sda8 quando visualizadas no live cd. Você pode encontrar um breve resumo do que cada pasta do sistema de arquivos Unix deve conter em wikipedia .

  4. A única razão pela qual você precisaria vincular /bin ou /lib seria se arquitetura ou kernel do sistema no live cd fosse incompatível com o sistema de arquivos em seu disco rígido. Mas, nesse caso, não seria uma boa ideia fazer isso - não traz benefícios.

Por fim, se você estiver editando apenas os arquivos de configuração, não precisará fazer o chroot na sua unidade. Você pode simplesmente montar a partição raiz e editar diretamente o arquivo do sistema live-CD com o editor pré-instalado como nano :

mount /dev/sda8 /mnt
nano /mnt/etc/pam.d/common-auth
    
por 10.10.2016 / 17:09

Tags