Se você não puder pagar por um novo HDD, aceite que todos os seus dados serão perdidos, caso o resgate não funcione.
Experimente o que foi postado aqui . Você precisa alterar o /dev/hda
do seu dispositivo.
EDIT: nunca use o Windows para redimensionar suas partições. Sempre use algum tipo de Linux para fazer isso, especialmente se você usar um Dual-Boot! Eu sempre uso o gparted para redimensionar minhas partições se for preciso.