AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 701639
Accepted
bs-
bs-
Asked: 2022-05-07 04:00:14 +0800 CST2022-05-07 04:00:14 +0800 CST 2022-05-07 04:00:14 +0800 CST

Partição de inicialização cheia: Mover para partição criptografada

  • 772

Uma vez que a /bootpartição está cheia pela metade com um único kernel, você não pode atualizar,

O redimensionamento é doloroso quando a outra partição é criptografada,

Solução : Mova /bootpara a partição criptografada.

História : Linux Mint 17 atualizado para 20 não permitirá que o kernel mais recente seja instalado; esse era o meu dilema. Há muito escrito sobre redimensionamento de partições - o terror é induzido por partições criptografadas! Felizmente há uma alternativa.

Tendo tornado meu sistema "não inicializável", decidi fornecer algumas orientações ( minha resposta aparece abaixo ), espero que outros participem.

partition boot
  • 1 1 respostas
  • 107 Views

1 respostas

  • Voted
  1. Best Answer
    bs-
    2022-05-07T04:06:29+08:002022-05-07T04:06:29+08:00

    O crédito pertence em grande parte a Guilhem Moulin , eu apenas simplifico. O superusuário será necessário repetidamente e você pode preferir executar o comando supara um shell de root (como alternativa, continue com os comandos sudoquando necessário).

    Partição criptografada:/dev/sda5

    Executando fdisk -lpartições de listas, por exemplo,

    Device     Boot  Start       End   Sectors   Size Id Type
    /dev/sda1  *      2048    499711    497664   243M 83 Linux
    /dev/sda2       501758 500117503 499615746 238.2G  5 Extended
    /dev/sda5       501760 500117503 499615744 238.2G 83 Linux
    

    Minha partição criptografada é /dev/sda5, a sua pode variar (e você precisará substituir de /dev/sda5acordo).

    Pré-requisito: LUKS1

    Verifique se você está usando o LUKS1 verificando as cryptsetup luksDump /dev/sda5saídas do comando

    Version:        1
    

    Para a versão 2, faça downgrade antes de continuar (consulte o artigo original).

    Pré-requisito: GRUB2

    Verifique se você está usando o GRUB2 verificando as grub-install --versionsaídas do comando versão 2 ou superior.

    Pré-requisito: layout do teclado

    Verifique se sua senha permanece a mesma quando você alterna para o layout de teclado dos EUA. Considere alterar sua senha (para uma que permaneça a mesma) ou defina sua senha usando um layout dos EUA (não recomendado) ou consulte o artigo original para obter uma solução alternativa.

    Mudança/boot

    Remonte /bootcomo somente leitura para evitar modificação de dados durante a movimentação:

    mount -oremount,ro /boot
    

    Copie recursivamente para um diretório temporário (na partição criptografada):

    cp -axT /boot /boot.tmp
    

    Desmonte /boote remova o diretório (vazio):

    umount /boot
    rmdir /boot
    

    Realoque o diretório temporário:

    mv -T /boot.tmp /boot
    

    Atualizar/etc/fstab

    O comando cat /etc/fstabproduzirá algo semelhante a:

    UUID=38e... /boot ext2 defaults 
    

    Você precisa comentar essa linha (eu sou a favor vim).

    Ativar criptografia no GRUB2

    Adicione GRUB_ENABLE_CRYPTODISK=ya /etc/default/grub, gere seu arquivo de configuração do GRUB,

     update-grub
    

    e instalar,

     grub-install /dev/sda
    

    Provavelmente um bom momento para testar

    Agora é provavelmente um bom momento para testar se tudo está indo bem: Reinicialize. Você deve ser solicitado a fornecer sua senha e (após um longo atraso perturbador) ser descartado em um prompt do initramfs. Digite o seguinte comando:

     cryptsetup luksOpen /dev/sda5 sda5_crypt
    

    substituindo sda5_cryptpela primeira saída do parâmetro por cat /etc/crypttab(se você chegou até aqui sem ter executado esse comando, basta usar sda5_crypt, podemos corrigi-lo mais tarde). Comando da próxima edição:

     exit
    

    Seu sistema deve estar inicializando agora, se não estiver, a recuperação deve ser relativamente fácil - inicialize a partir de um Live USB e remova o comentário da linha em /etc/fstab. (É incrivelmente útil ter um Live USB disponível o tempo todo.)

    Desempenho de inicialização degradado

    O GRUB não é otimizado para instruções de CPU relacionadas a criptografia - desbloquear a partição criptografada levará muito mais tempo do que antes.

    Opcional : você pode ajustar o desempenho sacrificando a resistência contra ataques de força bruta. É mais fácil para o PBKDF do que o Argon2—o PBKDF retarda os ataques de força bruta exigindo várias iterações, enquanto o Argon2 diminui os ataques com uma variável adicional, portanto, ajustar o PBKDF é mais fácil. Verifique quantas iterações são usadas atualmente com command cryptsetup luksDump /dev/sda5, por exemplo,

     Key Slot 0: ENABLED
          Iterations:           1208036
    

    Para melhorar o desempenho em aproximadamente um fator de dois (reduzindo simultaneamente a resistência à força bruta pela metade), podemos reduzir o número de iterações em pouco mais da metade com o comandocryptsetup luksChangeKey --pbkdf-force-iterations 500000 /dev/sda5

     Enter passphrase to be changed:
     Enter new passphrase:
     Verify passphrase:
    

    Sua senha existente pode ser reutilizada. Tanto quanto eu posso dizer, uma nova chave é adicionada: Além do acima, o comando cryptsetup luksDump /dev/sda5agora gera

     Key Slot 1: ENABLED
          Iterations:           500000
    

    O PBKDF tentará todos os slots de chave sequencialmente, para acelerar as coisas, execute o comandocryptsetup luksOpen --test-passphrase --verbose /dev/sda5

     Enter passphrase for /dev/sda5: 
     Key slot 1 unlocked.
     Command successful.
    

    Com o comando cat /etc/crypttabvocê verá algo como

     sda5_crypt UUID=66f... none luks,discard
    

    add ,key-slot=1no final (mudando 1para corresponder ao que você encontrou acima). Se você testou tudo está bem e usou algo diferente desse primeiro parâmetro sda5_crypt, reinicie e digite cryptsetup luksOpen /dev/sda5 sda5_cryptseguido de exit, antes da próxima etapa. Comando de execução

     update-initramfs -u -k all
    

    para gerar e atualizar sua imagem initramfs. (Estritamente falando -k all, não é necessário, supondo que você esteja seguindo estas instruções porque possui um único kernel.)

    Atualizar/etc/fstab

    lsblk -o name,uuidSaídas de comando

     NAME                  UUID
     sda                   
     ├─sda1                38e...
     ├─sda2                
     └─sda5                66f...
       └─sda5_crypt        B6U...
         ├─mint--vg-root   54f...
         └─mint--vg-swap_1 fe3...
    

    Para tornar seu sistema inicializável, adicione a seguinte linha a/etc/fstab

     UUID=54f... / ext4 defaults 0 1
    

    execute o comando update-grubseguido por grub-install /dev/sdae reinicie.

    Espero que agora você tenha um sistema inicializável.

    Você precisará digitar sua senha duas vezes, o que é lamentável. Aparentemente, há uma solução alternativa (consulte o artigo original). Segui todo o artigo de uma só vez, tive problemas, não consegui inicializar (antes de descobrir cryptsetup luksOpen /dev/sda5 sda5_crypt). Com as instruções acima, espero que haja menos chance de dor. Boa sorte.

    • 1

relate perguntas

  • Área de memória Flash Nand de backup

  • Como particionar corretamente um SSD para uma configuração de inicialização dupla

  • SSD clonado não inicializa e imprime linhas estranhas

  • Instale várias distribuições Linux em paralelo

  • fdisk não vendo resize2fs encolhendo partição desmontada

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve