Skip to main content

Tutorial: Montar e Desmontar Volumes BitLocker no Linux

Este tutorial ensina como detectar, montar e desmontar unidades BitLocker no Linux Mint usando dislocker e um script automatizado.


Requisitos

  • Sistema testado: Linux Mint 20/21/22 (ou compatível)

  • dislocker instalado:

sudo apt update
sudo apt install dislocker -y
  • Permissões de sudo para montar e criar diretórios em /mnt e /media/$USER.


1. O Script bitlocker-manager.sh

O script permite montar e desmontar volumes BitLocker automaticamente.

Conteúdo do Script

#!/bin/bash
set -e

WORK_BASE="/mnt"
MOUNT_BASE="/media/$USER"

usage() {
    echo "Uso: $0 [mount|umount]"
    echo "  mount   - Desbloqueia e monta o volume BitLocker"
    echo "  umount  - Desmonta volumes BitLocker montados"
    exit 1
}

if [ $# -ne 1 ]; then
    usage
fi

MODE="$1"

if [ "$MODE" == "mount" ]; then
    device=$(lsblk -o NAME,FSTYPE -r | grep -i "BitLocker" | awk '{print $1}' | head -n 1)
    if [ -z "$device" ]; then
        echo "[!] Nenhuma partição BitLocker detectada."
        exit 1
    fi
    device="/dev/$device"
    echo "[*] Volume BitLocker detectado em: $device"

    read -sp "Digite a senha ou chave de recuperação do BitLocker: " input
    echo

    # Detecta se é chave de recuperação (48 dígitos)
    clean_input=$(echo "$input" | tr -d '-') # Remove hífens, se houver
    if [[ "$clean_input" =~ ^[0-9]{48}$ ]]; then
        auth_param="-p$clean_input"
        echo "[*] Detectado chave de recuperação."
    else
        auth_param="-u$input"
        echo "[*] Detectada senha do BitLocker."
    fi

    mapper_dir="$WORK_BASE/bitlk-$(basename $device)"
    mount_dir="$MOUNT_BASE/bitlocker-$(basename $device)"

    sudo mkdir -p "$mapper_dir" "$mount_dir"

    echo "[*] Desbloqueando com dislocker..."
    sudo dislocker -r -V "$device" $auth_param -- "$mapper_dir"

    echo "[*] Montando NTFS..."
    sudo mount -r -o loop "$mapper_dir/dislocker-file" "$mount_dir"

    echo "[✓] Volume BitLocker montado em: $mount_dir"

elif [ "$MODE" == "umount" ]; then
    for dir in "$MOUNT_BASE"/bitlocker-*; do
        if [ -d "$dir" ]; then
            echo "[*] Desmontando NTFS em $dir ..."
            sudo umount "$dir" || echo "[!] Falha ao desmontar $dir"

            mapper_dir="$WORK_BASE/$(basename $dir | sed 's/bitlocker-/bitlk-/')"
            if [ -d "$mapper_dir" ]; then
                echo "[*] Desmontando mapper em $mapper_dir ..."
                sudo umount "$mapper_dir" 2>/dev/null || true
                sudo rmdir "$mapper_dir" 2>/dev/null || true
            fi

            sudo rmdir "$dir" 2>/dev/null || true
            echo "[✓] Desmontagem concluída para $dir"
        fi
    done
else
    usage
fi

2. Como usar o Script

2.1 Preparação

Salve o script em seu computador, por exemplo:

nano ~/bitlocker-manager.sh

Cole o conteúdo acima e salve.

Torne o script executável:

chmod +x ~/bitlocker-manager.sh

2.2 Montar Volume BitLocker

Insira a unidade BitLocker USB.

Execute o script no modo mount:

~/bitlocker-manager.sh mount

Digite a senha ou chave de recuperação quando solicitado.

Se tudo der certo, o volume será montado em:

/media/<seu_usuario>/bitlocker-<nome_dispositivo>

Você pode acessar os arquivos normalmente pelo gerenciador de arquivos.


2.3 Desmontar Volume BitLocker

Para desmontar, rode o script no modo umount:

~/bitlocker-manager.sh umount

O script vai:

  • Desmontar o volume NTFS.

  • Desmontar o mapper do dislocker.

  • Limpar os diretórios temporários.


3. Observações Importantes

  • UAS e discos Seagate: Alguns discos Seagate podem travar portas USB no Linux Mint devido ao driver UAS. Se ocorrer travamento, siga este procedimento:

echo "options usb-storage quirks=0bc2:2322:u" | sudo tee /etc/modprobe.d/seagate-uas-blacklist.conf
sudo update-initramfs -u
sudo reboot
  • Senha vs Chave de Recuperação:

    • Use -u para senha do BitLocker.

    • Use -p para chave de recuperação de 48 dígitos (sem hífens).

  • Diretórios /mnt/bitlk-* e /media/$USER/bitlocker-* são criados automaticamente pelo script.


4. Benefícios do Script

  • Evita rodar manualmente vários comandos dislocker + mount.

  • Permite montar vários volumes de forma segura.

  • Inclui modo de desmontagem para limpeza automática.

  • Integra facilmente no workflow do usuário Linux Mint.