Formatação de pendrives

Publicado por Ryuk Shinigami (última atualização em 17/04/2019)

[ Hits: 2.996 ]

Homepage: www.alem.com.br

Download pendrive-formatar.sh




Simples script para formatar pendrives (usb flash drive).

  



Esconder código-fonte

#!/bin/bash

if [ "$(id -u)" != "0" ]; then
    exec sudo "$0" "$@"
fi

FORMATAR() {
dd count=1 bs=512 if=/dev/zero of=$DISK && sync
wipefs -a $DISK
parted -s $DISK mklabel msdos
parted -a optimal -s $DISK mkpart primary $FSTYPE 0% 100%
}

## Localizar pendrive
echo "Dispositvo(s) usb encontrado(s):"
lsblk -d | egrep -v "sda|sr0" | awk '{print $1 "\t" $4}'

echo "Digite o nome do dispositivo que deseja formatar (ex: sdc): "; read RESP1
# Verificar se a resposta está correta
CHECK=`lsblk | grep -cw "${RESP1}"`
if [ $CHECK -eq 1 ]; then
    DISK="/dev/${RESP1}"
    # Desmontar o dispositivo se estiver montado
    MOUNT=`df | grep -c $DISK`
    if [ $MOUNT -eq 1 ]; then
        echo "Desmontando a unidade..."
        umount ${DISK}\1 2> /dev/null
    fi
else
    echo "Opção inválida!"
    exit 1
fi

echo "Escolha o sistema de arquivo para formatação:"
echo "(1) FAT32; (2) NTFS; (3) EXT4."
read RESP2

if [ $RESP2 =  1 ]; then
    FSTYPE=fat32
    FORMATAR
    mkfs.vfat -F32 $DISK\1
elif [ $RESP2 =  2 ]; then
    FSTYPE=NTFS
    FORMATAR
    mkfs.ntfs $DISK\1
elif [ $RESP2 =  3 ]; then
    FSTYPE=ext4
    FORMATAR
    mkfs.ext4 $DISK\1
else
    echo "Resposta inválida"
fi

Scripts recomendados

Listar bolsas disponíveis no Senac

SquidAdmin

Servidor em standby

DownloadVideo

edita


  

Comentários
[1] Comentário enviado por Minions em 13/03/2021 - 20:25h

Qual a função?

parted -s $DISK mklabel msdos

parted -a optimal -s $DISK mkpart primary $FSTYPE 0% 100%

[2] Comentário enviado por Ryuk em 13/03/2021 - 22:45h


[1] Comentário enviado por Minions em 13/03/2021 - 20:25h

Qual a função?

parted -s $DISK mklabel msdos

> Cria a Tabela de Partições do tipo msdos (poderia ser "gpt" também)

parted -a optimal -s $DISK mkpart primary $FSTYPE 0% 100%

> Cria/formata uma partição primária no disco inteiro, com o "sistema de arquivo" escolhido.




[3] Comentário enviado por Minions em 14/03/2021 - 13:14h


O valor da variável $DISK é no formato sdd ou ssd1

wipefs -a $DISK

# wipefs -a /dev/sdd1
/dev/sdd1: 8 bytes foram apagados na posição 0x00000052 (vfat): 46 41 54 33 32 20 20 20
/dev/sdd1: 1 byte foi apagada na posição 0x00000000 (vfat): eb
/dev/sdd1: 2 bytes foram apagados na posição 0x000001fe (vfat): 55 aa

# wipefs -a /dev/sdd
/dev/sdd: 2 bytes foram apagados na posição 0x000001fe (dos): 55 aa
/dev/sdd: chamando ioctl para reler tabela de partição: Sucesso


Tem como identificar o HD retirando o numeral da partição.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts