10 votos

¿Cómo extender la partición primaria (/dev/sda1) en Linux?

Estoy teniendo un problema, mi partición primaria se está quedando sin espacio. Debido a esto, no puedo acceder a la máquina Linux de forma remota (a través de vncserver). Tengo otro disco (/dev/sdb) con mucho más espacio libre. Quiero reducir el espacio de (/dev/sdb) y extenderlo a la partición (/dev/sda1) que es mi partición primaria y tiene todos los archivos de arranque, kernel, etc. de Linux. ¿Cuál sería la mejor manera segura de hacer esto sin perder mis datos en la unidad primaria (/dev/sda1) ?? ¿fdisk o el comando 'dd' o 'montar y desmontar'? Cualquier ayuda sería muy apreciada. :)

5voto

sat Puntos 198

Tienes que usar el comando resize2fs, que se utiliza para redimensionar tu partición.

Para obtener más información, consulta este enlace.

http://www.howtoforge.com/linux_resizing_ext3_partitions

Ejemplo:

 resize2fs /dev/sda 6000M

Puedes usar resize2fs para aumentar y disminuir el tamaño de la partición. Primero, debes disminuir el tamaño de /dev/sdb. Luego, aumentar el tamaño de /dev/sda (partición primaria).

Espero que esto te ayude.

0 votos

Antes de redimensionar la partición, debes desmontar la partición del archivo.

0 votos

Estoy bastante seguro de que su partición primaria está utilizando el máximo que puede, por lo que no podrá redimensionar el sistema de archivos subyacente. Por lo tanto, un simple resize2fs fallará.

2voto

hovanessyan Puntos 429

La forma segura de hacerlo sería si puedes copiar (espejar) todos tus datos de /dev/sda1 a alguna otra partición.

Una vez hecho esto, te recomendaría utilizar el CD en vivo de GParted y ejecutar todos los comandos de modificación de particiones desde allí. Parece ser la forma más segura de hacerlo.

0voto

Dolanor Puntos 246

Necesitas un CD en vivo / temp OS para arrancar en él, redimensionar la nueva partición al tamaño correcto, montar las particiones vieja y nueva y copiar tus archivos primero con

cp -avx /media/originalRootPartition /media/newRootPartition

Luego debes cambiar algunas referencias (UUID o nombre de la partición) a la nueva partición en /etc/fstab para que coincida con la nueva partición, y reinstalar grub en esa nueva partición :

grub-install /dev/sdb1

0 votos

Después de pensar durante mucho tiempo, decidí no extender ni reducir ninguna partición ya que estoy utilizando una instancia de Linux de Amazon EC2. Ellos adjuntan automáticamente una partición primaria de 8 GB. Después de extender el tipo de instancia (actualizar la instancia), nos dieron otra partición en lugar de ampliar la última (partición primaria). Para evitar futuros problemas, voy a trasladar todos mis softwares instalados, como el servidor de aplicaciones (Glassfish) y el servidor de MySQL, a la partición secundaria. Ahora el problema es cómo puedo mover solo mis datos específicos en lugar de todos los datos de la unidad utilizando el comando 'dd': por ejemplo, dd if=/dev/sda1 of=/dev/sdb.

0 votos

Y configurar un disco secundario (por ejemplo, /dev/sdb) para futuras instalaciones. Por ejemplo, si en el futuro quiero instalar algún software, debería instalarse por defecto en el disco secundario en vez de la partición primaria. ¿Cómo puedo hacer esto?

0 votos

¿Puedes crear una nueva pregunta para eso? No hay suficiente espacio en el comentario para responder, ¡y editar mi pregunta hará que sea inválida para tu pregunta específica en esa página! ;) La respuesta sería con mount --bind /usr y /var y hacer cosas "offline" ;)

0voto

Lev Levitsky Puntos 235

Las respuestas dadas hasta ahora parecen no tener en cuenta que el espacio libre que tienes está en otra unidad.

No creo que puedas extender fácilmente una partición a otra unidad física, aunque puedo estar equivocado. De todas formas, una forma más sencilla de resolver este caso es montar constantemente una partición desde tu otra unidad (digamos /dev/sdb1) en tu sistema de archivos. Por ejemplo, podrías mantener tu /home en /dev/sdb1. Eso liberaría algo de espacio en /dev/sda1. Investiga sobre fstab sobre cómo lograr esto y no olvides hacer una copia de seguridad primero.

0 votos

Después de pensarlo detenidamente, decidí no ampliar ni reducir ninguna partición, ya que estoy utilizando una instancia de Amazon EC2 en Linux. Por defecto, adjuntan una partición primaria de 8 GB. Después de ampliar el tipo de instancia (actualizar la instancia) nos dieron otra partición en lugar de ampliar la última (partición primaria). Para evitar posibles problemas futuros, voy a trasladar todos mis software instalados como el servidor de aplicaciones (Glassfish) y el servidor MySQL, a una partición secundaria. Ahora el problema es cómo mover solo mis datos específicos en lugar de todo el contenido de la unidad utilizando el comando 'dd', por ejemplo: dd if=/dev/sda1 of=/dev/sdb.

0 votos

Y configurar la unidad secundaria (por ejemplo, /dev/sdb) para futuras instalaciones. Por ejemplo, si en el futuro me gustaría instalar algún software, debería instalarse automáticamente en la unidad secundaria en lugar de la partición primaria. ¿Cómo puedo hacer esto?

0 votos

@Haseeb Mi consejo sigue siendo el mismo, simplemente crearía un par de particiones en /dev/sdb y montarlas, por ejemplo, /dev/sdb1 como /usr y /dev/sdb2 como /home, etc. En cuanto a mover, utiliza el comando mv.

0voto

Xondio Puntos 1

Uso a menudo para servidores que funcionan durante unos años y que ahora se quedan sin espacio este método:

Normalmente una o dos aplicaciones/servicios/demonios/etc... necesitan la mayor parte del espacio. Si ese es el caso, puedes montar mover el directorio del disco sda al disco sdb, de manera que utilices más espacio.

Así es como lo hago:

mkdir /mountpointsdb/data/deamon_database

ahora solo tenemos que copiar todos los datos de la carpeta original a "/mountpointsdb/data/deamon_database"

cp /usr/deamon/database/* /mountpointsdb/data/deamon_database

ahora podemos eliminar la carpeta original, pero asegúrate de que el demonio no se esté ejecutando. Esto te dará más espacio libre en sda. Después, solo tienes que montar la nueva carpeta en la ubicación antigua y arrancar el demonio:

mount --bind /mountpointsdb/data/deamon_database /usr/deamon/database

Si deseas que esto sea permanente, tendrás que hacer una entrada como esta en el mtab:

/mountpointsdb/data/deamon_database    /usr/deamon/database    none    bind

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X