Antes de eu estender um sistema de arquivos ext4 do espaço livre do início do dispositivo de bloco, fiz uma pesquisa para ver como os outros fizeram e parece que sua pergunta foi a correspondência mais próxima que encontrei. Mas a resposta fornecida não é exatamente o que você pediu ou eu precisei. Como acabei de redimensionar / crescer com sucesso desde o início do disco, decidi compartilhar meus pensamentos.
O procedimento em poucas palavras:
1.) O sistema de arquivos a ser expandido / expandido: sistema de arquivos ext4 em uma partição começando no setor 1026048 e terminando no final do dispositivo de bloco ( /dev/sdb
no meu caso)
2.) Para alocar os setores não utilizados no início do dispositivo de bloco para este sistema de arquivos, eu tive que mover os dados usando dd
para o início do meu futuro / nova partição
3.) Exclua a partição antiga e recrie-a com o novo setor de inicialização
4.) resize2fs
para estender para o novo tamanho da partição
Comandos usados e detalhes sobre o método:
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
(informações acima reveladas por fdisk -l /dev/sdb
.)
Calcule dd
buscar e pular deslocamentos e bs
(no nosso caso, bs
corresponde ao tamanho do setor):
# dd seek=2048 skip=1026048 if=/dev/sdb bs=512 of=/dev/sdb
Portanto, queremos mover nossos dados do setor 1026048 para iniciar no setor 2048, onde nossa nova partição será iniciada. Nós não poderíamos perder nada, pois quanto mais lemos da entrada, mais nós ficamos, então quando começarmos a sobrescrever com a saída (ela acabará alcançando o setor 1026048), teríamos copiado o que estava lá na entrada. início do dispositivo e seguir em frente.
Em seguida, use fdisk
para excluir a partição antiga e recriá-la para iniciar no setor 2048.
Uma vez feito isso, você pode executar:
# partprobe /dev/sdb or
# blockdev --rereadpt /dev/sdb
# resize2fs /dev/sdb<num>
para estender o sistema de arquivos.
Por favor, sempre faça backups de seus dados antes de fazer procedimentos de baixo nível como esse. A falha em algumas das etapas ou falha do sistema ou falha de energia resultará em perda de dados. Este é um exemplo que descreve uma única partição em um dispositivo de bloco. Suas configurações podem variar, então não use como está. Aprenda e entenda como funciona, depois teste e, se obtiver os resultados esperados, gere seus dados ao vivo a seu próprio risco!
Espero que ajude os outros também.
Feedback e onde melhorar / tornar mais detalhado é bem-vindo.
Obrigado!