Thanks..worked grande para mí y no tienen tanque de mi system..still IRC y servidor web Apache y mi plena capacidad de 8 GB
1
¿Por qué cambiar el tamaño de una partición raíz cuando puede crear una nueva partición en el espacio libre restante de la tarjeta SD y luego montarla dentro de la partición raíz en, /mnt/storagepor ejemplo? Esto aísla eficazmente el sistema y los datos y facilita el mantenimiento y la copia de seguridad.
mbaitoff
2
@mbaitoff: porque la imagen predeterminada del sistema solo tiene 68MiB de espacio libre, lo que no deja mucho espacio para agregar software adicional.
Jules
@Jules: no estaba preguntando por qué uno querría cambiar el tamaño de una partición. A preguntaba por qué cambiaría el tamaño de la partición del sistema en lugar de montar almacenamiento adicional en el punto de montaje de la partición del sistema, aislando así efectivamente el sistema y el software / datos. Si desea almacenamiento, monte las spcae SD restantes en /mnt/storage, si desea programas, monte en /opt/software/.
mbaitoff
@mbaitoff la mayoría de los programas se instalan en / usr, no / opt / software. Las imágenes precompiladas tienen el contenido de / usr en la partición raíz. Por lo tanto, parece esencial aumentar el tamaño de la partición raíz si desea instalar cualquier software no predeterminado.
Jules
Respuestas:
158
Asumiendo que está utilizando Debian.
La versión corta:
Copia de seguridad de su sistema
Elimine las particiones principales e intercambiables (dejando solo la partición de arranque)
Recree la partición principal para utilizar el espacio de disco restante (excluyendo la partición de arranque). Asegúrese de reutilizar el mismo sector de inicio que la partición raíz original.
reiniciar el sistema
cambie el tamaño de la nueva partición raíz de arranque para utilizar el tamaño completo de la partición.
Instrucciones paso a paso
Primero haga una copia de seguridad de su tarjeta SD usando las instrucciones que se encuentran aquí en caso de que algo salga mal.
Desde la línea de comando o una ventana de terminal ingrese lo siguiente
sudo fdisk /dev/mmcblk0
luego escriba ppara listar la tabla de particiones
Deberías ver tres particiones. si mira en la última columna llamada Sistema , debería tener
W95 FAT32
Linux
Intercambio de Linux
tome nota del número de inicio de la partición 2, lo necesitará más adelante. aunque probablemente todavía estará en la pantalla (por si acaso).
siguiente tipo dpara eliminar una partición.
Luego se le pedirá el número de la partición que desea eliminar. En el caso anterior, desea eliminar las particiones de intercambio de Linux y Linux.
Entonces escribe 2
luego escriba dnuevamente y luego escriba 3para eliminar la partición de intercambio.
Ahora puede cambiar el tamaño de la partición principal.
escriba npara crear una nueva partición.
Esta nueva partición debe ser una partición primaria, así que escriba p.
Luego ingrese 2cuando se le solicite un número de partición.
Ahora se le solicitará el primer sector para la nueva partición.
Ingrese el número de inicio del paso anterior (la partición de Linux)
A continuación, se le solicitará el último sector que puede presionar enter para aceptar el valor predeterminado que utilizará el espacio restante en el disco.
Escriba wpara guardar los cambios que ha realizado.
Luego reinicie el sistema con el siguiente comando:
sudo reboot
una vez que el sistema se haya reiniciado y haya regresado a la línea de comando, ingrese el siguiente comando:
sudo resize2fs /dev/mmcblk0p2
Nota: esto puede llevar mucho tiempo (dependiendo del tamaño y la velocidad de la tarjeta) tenga paciencia y deje que termine para que no estropee el sistema de archivos y tenga que comenzar desde cero.
Una vez hecho esto, reinicie el sistema con el siguiente comando:
sudo reboot
Ahora puede verificar que el sistema está utilizando toda la capacidad de la tarjeta SD ingresando el siguiente comando:
df -h
Por qué esto funciona:
La verdadera magia aquí es que elimine las particiones raíz e intercambiables, luego vuelva a crear solo la partición raíz (utilizando el sector de inicio original) antes de escribir los datos en el disco . Como resultado, no borra los datos existentes de la partición raíz.
Al eliminar la partición de intercambio, permite que la sala de partición raíz crezca más allá de su tamaño actual y llene la parte no utilizada del disco (debido a la ubicación de las particiones, la partición raíz se intercala entre las particiones de inicio y de intercambio, no puede simplemente cambie el tamaño dejando solo la partición de intercambio).
Luego, cambia el tamaño (que es seguro ejecutar en un disco montado) al sistema de archivos para usar todo el espacio en la nueva partición raíz.
@Jivings si se hace correctamente, no pierde nada, pero es la razón por la que hice el primer paso de respaldo.
Steve Robillard
2
Según los comentarios, parece que también debe documentar por qué esto funciona, no solo cómo.
Jivings
1
@Jivings espero que esto aborde sus preocupaciones.
Steve Robillard
99
Parece muy incorrecto que tenga que eliminar una partición para cambiar su tamaño.
Alex Chamberlain
55
@ AwesomeUser No lo haces en la Mac, lo haces en la pi misma. Además, si está ejecutando raspbian, puede arrancar el pi y, desde la línea de comando, ejecutar el siguiente comando sudo raspi-config y elegir la opción de redimensionar la partición raíz.
Steve Robillard
103
Usando la imagen Debian-Wheezy Beta, hay una utilidad de configuración incorporada que facilita esto:
Hay una utilidad llamada raspi-config. Esto se ejecuta en el primer arranque si está conectado directamente al RPi. Si está por encima de SSH, puede ejecutarlo manualmente usando $ sudo raspi-config. (Creo que puede volver a ejecutar la herramienta manualmente en cualquier momento).
La segunda opción en el cuadro de diálogo azul que sigue se titula expand_rootfs, con la descripción "Expandir la partición raíz para llenar la tarjeta SD".
Al seleccionar esto, su partición raíz se redimensionará para llenar la tarjeta la próxima vez que inicie su RPi.
Actualización para 2015!
Regreso a esta respuesta con una nota de precaución: he estado usando un montón de tarjetas SD de 16 GB, y me sorprendió al maximizar mi partición para llenar la tarjeta que estaba usando. Hacerlo causó muchos problemas al cambiar a una nueva tarjeta que (a pesar de que se declaró como 16 GB) era aproximadamente 200 MB más pequeña que la tarjeta anterior.
Esto llegó a un punto crítico cuando cambié un par de RPis de v1 al nuevo modelo v2, que usa tarjetas Micro SD.
Ahora dejo aproximadamente 1GB libre para asegurarme absolutamente de que mis imágenes se pueden cambiar entre tarjetas SD sin problemas.
Este proceso tardó unos 10 minutos con una tarjeta de 16 GB en mi Pi.
Der Hochstapler
55
Esto es mucho más simple que la respuesta principal. Esta es la solución para usar.
James Skimming
@JamesSkimming: esta es la solución a utilizar para la imagen Beta de Debian-Wheezy. No para otros.
SF.
Esto no funciona para Raspbian cuando se instala desde NOOBS en las tarjetas SD que se envían con kits RPi. cuando intentas ejecutar la opción expandir, dice que no es compatible con esta configuración, pero dado que noobs en ejecución probablemente esté usando todo el espacio de todos modos ... el problema es que estoy tratando de actualizar la imagen de 8GB en una tarjeta de 32GB
Eoin Campbell
Raspi-config no sabe cómo cambiar el tamaño de la raíz de Raspbian Wheezy. expand_rootfs como sugirió causó problemas. La respuesta anterior a la suya funciona como un encanto en un sistema en vivo y no es necesario "dejar aproximadamente 1 GB".
GTodorov
28
Si no se siente muy cómodo trabajando en la línea de comandos, como en la excelente respuesta de Steve Robillards, hay algunas aplicaciones GUI disponibles. En particular, gparted funciona muy bien.
Creo que está instalado por defecto en un Ubuntu LiveCD pero no en un sistema instalado. Hay por supuesto una solución fácil para esto: apt-get install gparted. No puede hacer esto en el Pi real, porque para cambiar el tamaño de las particiones deben desmontarse.
La imagen de abajo está en holandés, pero no dejes que eso estropee la diversión. Es muy fácil de usar. Este es el diseño de la imagen debian predeterminada en una tarjeta sd de 8 gb.
Haga clic derecho en las particiones para desmontarlas y luego haga clic derecho para cambiar el tamaño o mover la partición. También puede crear nuevas particiones y formatear las existentes. En la imagen a continuación, eliminé la partición de intercambio y ahora puedo cambiar el tamaño de la partición raíz a todo el espacio a la derecha. No lo llenes por completo, porque todavía tienes que agregar una partición de intercambio.
Puede jugar con el diseño de la partición, los cambios solo se escriben si aplica los cambios (la tecla 'volver' en gris en la primera imagen).
Es muy fácil mover particiones, pero como en la respuesta de Steve, le recomiendo que elimine la partición de intercambio por completo, luego cambie el tamaño de la raíz y luego vuelva a crear un intercambio. Mover una partición puede llevar mucho tiempo y el intercambio no contiene datos que necesita conservar.
Estoy de acuerdo. He usado gparted para hacer exactamente esto y es muy fácil
JayDev
Si se está conectando a través de VNC, ejecutesudo -E gparted
forzagreen el
También puede necesitar ejecutar el siguiente comando antes gpartedsi está ejecutando en Wayland (no estoy seguro de que estos problemas se hayan resuelto):xhost +SI:localuser:root
John Manko
11
Si utiliza la imagen más reciente de Debian Wheezy:
http://www.raspberrypi.org/archives/1435
Un script de tiempo de arranque le permite cambiar el tamaño para llenar la tarjeta sd automáticamente.
/mnt/storage
por ejemplo? Esto aísla eficazmente el sistema y los datos y facilita el mantenimiento y la copia de seguridad./mnt/storage
, si desea programas, monte en/opt/software/
.Respuestas:
Asumiendo que está utilizando Debian.
La versión corta:
Instrucciones paso a paso
Primero haga una copia de seguridad de su tarjeta SD usando las instrucciones que se encuentran aquí en caso de que algo salga mal.
Desde la línea de comando o una ventana de terminal ingrese lo siguiente
luego escriba
p
para listar la tabla de particionesDeberías ver tres particiones. si mira en la última columna llamada Sistema , debería tener
tome nota del número de inicio de la partición 2, lo necesitará más adelante. aunque probablemente todavía estará en la pantalla (por si acaso).
siguiente tipo
d
para eliminar una partición.Luego se le pedirá el número de la partición que desea eliminar. En el caso anterior, desea eliminar las particiones de intercambio de Linux y Linux.
Entonces escribe
2
luego escriba
d
nuevamente y luego escriba3
para eliminar la partición de intercambio.Ahora puede cambiar el tamaño de la partición principal.
escriba
n
para crear una nueva partición.Esta nueva partición debe ser una partición primaria, así que escriba
p
.Luego ingrese
2
cuando se le solicite un número de partición.Ahora se le solicitará el primer sector para la nueva partición. Ingrese el número de inicio del paso anterior (la partición de Linux)
A continuación, se le solicitará el último sector que puede presionar enter para aceptar el valor predeterminado que utilizará el espacio restante en el disco.
Escriba
w
para guardar los cambios que ha realizado.Luego reinicie el sistema con el siguiente comando:
una vez que el sistema se haya reiniciado y haya regresado a la línea de comando, ingrese el siguiente comando:
Nota: esto puede llevar mucho tiempo (dependiendo del tamaño y la velocidad de la tarjeta) tenga paciencia y deje que termine para que no estropee el sistema de archivos y tenga que comenzar desde cero.
Una vez hecho esto, reinicie el sistema con el siguiente comando:
Ahora puede verificar que el sistema está utilizando toda la capacidad de la tarjeta SD ingresando el siguiente comando:
Por qué esto funciona:
La verdadera magia aquí es que elimine las particiones raíz e intercambiables, luego vuelva a crear solo la partición raíz (utilizando el sector de inicio original) antes de escribir los datos en el disco . Como resultado, no borra los datos existentes de la partición raíz.
Al eliminar la partición de intercambio, permite que la sala de partición raíz crezca más allá de su tamaño actual y llene la parte no utilizada del disco (debido a la ubicación de las particiones, la partición raíz se intercala entre las particiones de inicio y de intercambio, no puede simplemente cambie el tamaño dejando solo la partición de intercambio).
Luego, cambia el tamaño (que es seguro ejecutar en un disco montado) al sistema de archivos para usar todo el espacio en la nueva partición raíz.
árbitro:
fuente
Usando la imagen Debian-Wheezy Beta, hay una utilidad de configuración incorporada que facilita esto:
Hay una utilidad llamada
raspi-config
. Esto se ejecuta en el primer arranque si está conectado directamente al RPi. Si está por encima de SSH, puede ejecutarlo manualmente usando$ sudo raspi-config
. (Creo que puede volver a ejecutar la herramienta manualmente en cualquier momento).La segunda opción en el cuadro de diálogo azul que sigue se titula
expand_rootfs
, con la descripción "Expandir la partición raíz para llenar la tarjeta SD".Al seleccionar esto, su partición raíz se redimensionará para llenar la tarjeta la próxima vez que inicie su RPi.
Actualización para 2015!
Regreso a esta respuesta con una nota de precaución: he estado usando un montón de tarjetas SD de 16 GB, y me sorprendió al maximizar mi partición para llenar la tarjeta que estaba usando. Hacerlo causó muchos problemas al cambiar a una nueva tarjeta que (a pesar de que se declaró como 16 GB) era aproximadamente 200 MB más pequeña que la tarjeta anterior.
Esto llegó a un punto crítico cuando cambié un par de RPis de v1 al nuevo modelo v2, que usa tarjetas Micro SD.
Ahora dejo aproximadamente 1GB libre para asegurarme absolutamente de que mis imágenes se pueden cambiar entre tarjetas SD sin problemas.
fuente
Si no se siente muy cómodo trabajando en la línea de comandos, como en la excelente respuesta de Steve Robillards, hay algunas aplicaciones GUI disponibles. En particular, gparted funciona muy bien.
Creo que está instalado por defecto en un Ubuntu LiveCD pero no en un sistema instalado. Hay por supuesto una solución fácil para esto:
apt-get install gparted
. No puede hacer esto en el Pi real, porque para cambiar el tamaño de las particiones deben desmontarse.La imagen de abajo está en holandés, pero no dejes que eso estropee la diversión. Es muy fácil de usar. Este es el diseño de la imagen debian predeterminada en una tarjeta sd de 8 gb.
Haga clic derecho en las particiones para desmontarlas y luego haga clic derecho para cambiar el tamaño o mover la partición. También puede crear nuevas particiones y formatear las existentes. En la imagen a continuación, eliminé la partición de intercambio y ahora puedo cambiar el tamaño de la partición raíz a todo el espacio a la derecha. No lo llenes por completo, porque todavía tienes que agregar una partición de intercambio.
Puede jugar con el diseño de la partición, los cambios solo se escriben si aplica los cambios (la tecla 'volver' en gris en la primera imagen).
Es muy fácil mover particiones, pero como en la respuesta de Steve, le recomiendo que elimine la partición de intercambio por completo, luego cambie el tamaño de la raíz y luego vuelva a crear un intercambio. Mover una partición puede llevar mucho tiempo y el intercambio no contiene datos que necesita conservar.
fuente
sudo -E gparted
gparted
si está ejecutando en Wayland (no estoy seguro de que estos problemas se hayan resuelto):xhost +SI:localuser:root
Si utiliza la imagen más reciente de Debian Wheezy: http://www.raspberrypi.org/archives/1435 Un script de tiempo de arranque le permite cambiar el tamaño para llenar la tarjeta sd automáticamente.
fuente
Seguí este video y funcionó perfectamente para mí (tengo una tarjeta de 16GB):
http://www.youtube.com/watch?v=R4VovMDnsIE&feature=plcp
fuente