GNU/Linux, Open Source, Cloud Computing, DevOps y más...

La importancia de particionar correctamente un disco en Linux

50 comentarios

Linux disk partitionSoy un firme defensor de la simplicidad y del principio de que menos es más, pero en cuanto a la seguridad y el rendimiento de los sistemas de información se refiere, debemos ser capaces de encontrar un equilibrio entre mantener las cosas sencillas y exponernos lo mínimo posible a potenciales amenazas al mismo tiempo que tratamos de obtener las máximas prestaciones de los elementos que configuran nuestro sistema.

Viene siendo una práctica habitual que las distintas distribuciones de Linux, e incluso las imágenes a partir de las que poner en marcha instancias de servidores virtuales Linux como en el caso de las AMI’s de AWS, implementen por defecto un esquema de particionamiento de lo más simple basado en una única partición que ocupa todo el disco. Es en esa única partición donde se monta el sistema de ficheros raíz (/) y en el que se integran los principales directorios que configuran el sistema de ficheros de un sistema operativo Linux.

Pero una de las características de Linux es precisamente que permite ser enormemente flexible a la hora de ubicar cada uno de esos directorios en distintas particiones o en distintos discos si es necesario. Se puede ir incluso más allá y montarlos a través de la red en distintas máquinas emplazadas en distintas localizaciones geográficas. Y esto no es así por capricho, sino que se debe a que cada uno de los directorios del árbol raiz de Linux aloja archivos y librerías para llevar a cabo diferentes misiones con distintos objetivos y necesidades, por lo que englobarlos todos en una única partición puede ser interesante de cara a la simplicidad para usuarios que están empezando y no desean complicaciones. Pero si lo que quieres es ser un administrador de sistemas serio y ser capaz de desplegar sistemas críticos que sean fiables y seguros no va a quedar más remedio que complicarse la vida y definir una estructura de particiones y un esquema de opciones de montaje más sofisticado.

Ejemplo de particionamiento con GPartedDistintas particiones para distintos cometidos

De todo el árbol de directorios que cuelgan del directorio raíz en un sistema Linux, hay algunos que merecen especial atención como candidatos a ser montados en un sistema de ficheros aparte:

/var

Una de las incidencias más frecuentes que ocurre en un sistema en producción, aun siendo fácilmente evitable, es el llenado al 100% de un sistema de ficheros y que ya no quede espacio disponible para escribir nuevos datos en él. De forma similar a como ocurre en un barco, que un compartimento se inunde puede ser algo muy desagradable, pero si el sistema está bien compartimentado el problema no pasará a mayores. Por el contrario, si no hay esta separación en compartimentos estancos, la inundación afectará a todo el conjunto y el barco se hundirá. De la misma manera, si nuestro sistema tiene una única partición y ésta se llena completamente, las aplicaciones no podrán seguir escribiendo datos a disco, por lo que pueden producirse todo tipo de situaciones con resultados imprevisibles, desde corrupción de datos por no poderse volcar el contenido de las cachés a disco, aplicaciones que dejan de funcionar por no poder escribir sobre ficheros temporales necesarios para su funcionamiento, o directamente el colapso de todo el sistema por no poder seguir funcionando correctamente el sistema operativo.


Error: Your Requested widget " ai_widget-6" is not in the widget list.
  • [do_widget_area above-nav-left]
    • [do_widget_area above-nav-right]
      • [do_widget_area footer-1]
        • [do_widget id="wpp-4"]
      • [do_widget_area footer-2]
        • [do_widget id="recent-posts-4"]
      • [do_widget_area footer-3]
        • [do_widget id="recent-comments-3"]
      • [do_widget_area footer-4]
        • [do_widget id="archives-4"]
      • [do_widget_area logo-bar]
        • [do_widget id="oxywidgetwpml-3"]
      • [do_widget_area menu-bar]
        • [do_widget id="search-3"]
      • [do_widget_area sidebar]
        • [do_widget id="search-4"]
        • [do_widget id="ai_widget-2"]
        • [do_widget id="categories-5"]
        • [do_widget id="ai_widget-3"]
        • [do_widget id="ai_widget-4"]
        • [do_widget id="ai_widget-5"]
      • [do_widget_area sub-footer-1]
        • [do_widget id="text-4"]
      • [do_widget_area sub-footer-2]
        • [do_widget_area sub-footer-3]
          • [do_widget_area sub-footer-4]
            • [do_widget_area upper-footer-1]
              • [do_widget id="search-2"]
              • [do_widget id="recent-posts-2"]
              • [do_widget id="recent-comments-2"]
              • [do_widget id="archives-2"]
              • [do_widget id="categories-2"]
              • [do_widget id="meta-2"]
            • [do_widget_area upper-footer-2]
              • [do_widget_area upper-footer-3]
                • [do_widget_area upper-footer-4]
                  • [do_widget_area widgets_for_shortcodes]
                    • [do_widget id="search-5"]
                    • [do_widget id="ai_widget-6"]
                  • [do_widget_area wp_inactive_widgets]
                    • [do_widget id="wpp-2"]
                    • [do_widget id="text-1"]
                    • [do_widget id="recent-posts-3"]
                    • [do_widget id="categories-3"]
                    • [do_widget id="archives-3"]
                    • [do_widget id="icl_lang_sel_widget-3"]

                  El directorio /var es el más representativo de esta situación por ser el utilizado para almacenar los ficheros de log del sistema. Por tanto es típicamente de los que más escrituras recibe y el de mayor ritmo de incremento, por lo que si no se le presta la debida atención puede llegar fácilmente al límite de ocupación de la partición que lo aloja. Así, si no se separa del resto es fácil que en algún momento podamos sufrir una caída total del sistema.

                  También puede ser deseable separar en distintas particiones otros subdirectorios que cuelgan de /var por razones operativas, como /var/www para tener separados del resto del sistema los distintos sitios web alojados en un servidor web, el /var/lib/mysql para aislar nuestras bases de datos de posibles saturaciones que se den en /var, /var/log para aislar específicamente los ficheros de log, etc.

                  /tmp

                  Tux over disk partition diagramAparte de los problemas de denegación de servicio o de corrupción de datos mencionados en el punto anterior, hay problemas inherentes a la seguridad que se pueden atajar tan solo con configurar ciertas opciones de montaje en un sistema de ficheros. Por ejemplo, podemos anular ciertos tipos comunes de ataque impidiendo que se pueda establecer el flag setuid en los permisos de un fichero mediante la opción de montaje nosuid, se puede impedir la creación de ficheros de dispositivo con la opción nodev, o se puede impedir la ejecución de programas no permitiendo la activación del permiso de ejecución (x) en ningún fichero con noexec.

                  Todas estas opciones son altamente recomendables especialmente en el caso de /tmp, ya que por su naturaleza es un directorio al que puede acceder sin restricciones cualquier usuario del sistema, pues tiene permisos 777 o -rwxrwxrwx. Por tanto es un blanco fácil para que un atacante instale software malicioso en él y desde ahí pueda comprometer otras partes del sistema.

                  Al margen de la seguridad, puede resultar muy interesante de cara al rendimiento montar el directorio /tmp sobre un sistema de ficheros en memoria en lugar de en disco. Dado que muchas aplicaciones lo usan habitualmente para su funcionamiento normal, su rendimiento se verá mejorado si pueden leer los ficheros directamente desde la memoria RAM, mucho más rápida. Al final del artículo presento una propuesta de esquema de particionamiento teniendo en cuenta todos estos conceptos y principios, y en ella puede verse cómo montar el /tmp en memoria.

                  /home

                  Al igual que en el caso de /var, el directorio /home puede crecer sin control debido que es el lugar donde los usuarios almacenan sus documentos, y a no ser que establezcamos un sistema de cuotas, éstos pueden fácilmente llenarlo por completo, ya sea de forma voluntaria o involuntaria. Esto provocaría el colapso del sistema si no lo llevamos a una partición aparte. Pero además, precisamente porque es otro lugar donde los usuarios pueden escribir libremente, también ofrece peligros potenciales parecidos a los de /tmp, por lo que es recomendable establecer las opciones de montaje nosuid y nodev. La activación de la opción noexec dependerá del uso que se les vaya a permitir hacer a los usuarios de su directorio personal. Desde luego a priori sería mejor no permitirles ejecutar ningún programa, pero en muchas ocasiones será legítimo que los usuarios puedan hacerlo, y de hecho puede ser un requisito imprescindible.

                  Lo que sí es conveniente entonces es activar las opciones acl y user_xattr para poder establecer reglas de control de acceso a los ficheros más sofisticadas y hacer uso de los atributos extendidos de usuario.


                  Error: Your Requested widget " ai_widget-6" is not in the widget list.
                  • [do_widget_area above-nav-left]
                    • [do_widget_area above-nav-right]
                      • [do_widget_area footer-1]
                        • [do_widget id="wpp-4"]
                      • [do_widget_area footer-2]
                        • [do_widget id="recent-posts-4"]
                      • [do_widget_area footer-3]
                        • [do_widget id="recent-comments-3"]
                      • [do_widget_area footer-4]
                        • [do_widget id="archives-4"]
                      • [do_widget_area logo-bar]
                        • [do_widget id="oxywidgetwpml-3"]
                      • [do_widget_area menu-bar]
                        • [do_widget id="search-3"]
                      • [do_widget_area sidebar]
                        • [do_widget id="search-4"]
                        • [do_widget id="ai_widget-2"]
                        • [do_widget id="categories-5"]
                        • [do_widget id="ai_widget-3"]
                        • [do_widget id="ai_widget-4"]
                        • [do_widget id="ai_widget-5"]
                      • [do_widget_area sub-footer-1]
                        • [do_widget id="text-4"]
                      • [do_widget_area sub-footer-2]
                        • [do_widget_area sub-footer-3]
                          • [do_widget_area sub-footer-4]
                            • [do_widget_area upper-footer-1]
                              • [do_widget id="search-2"]
                              • [do_widget id="recent-posts-2"]
                              • [do_widget id="recent-comments-2"]
                              • [do_widget id="archives-2"]
                              • [do_widget id="categories-2"]
                              • [do_widget id="meta-2"]
                            • [do_widget_area upper-footer-2]
                              • [do_widget_area upper-footer-3]
                                • [do_widget_area upper-footer-4]
                                  • [do_widget_area widgets_for_shortcodes]
                                    • [do_widget id="search-5"]
                                    • [do_widget id="ai_widget-6"]
                                  • [do_widget_area wp_inactive_widgets]
                                    • [do_widget id="wpp-2"]
                                    • [do_widget id="text-1"]
                                    • [do_widget id="recent-posts-3"]
                                    • [do_widget id="categories-3"]
                                    • [do_widget id="archives-3"]
                                    • [do_widget id="icl_lang_sel_widget-3"]

                                  Otra característica interesante relacionada con la seguridad que nos permitirá la división en diferentes particiones es la posibilidad de cifrar el contenido de /home y poner a salvo así nuestros documentos personales aunque el resto de particiones no estén encriptadas. Es cierto que siempre podríamos encontrar un mecanismo alternativo para cifrar el contenido de nuestro directorio personal, pero tenerlo separado en una partición aparte facilita esta labor y en mi opinión es más elegante.

                                  /boot

                                  En /boot están alojados tanto el cargador de arranque del sistema como los distintos kernels que tengamos instalados en nuestro sistema. Su contenido no se utiliza en la operación normal del sistema, sólo en el arranque del mismo, y debe poder ser leída directamente por la BIOS para la máquina pueda arrancar correctamente. Este requerimiento hace por tanto imprescindible tener una partición dedicada para /boot en algunos casos, por ejemplo si estamos usando volúmenes RAID o LVM y nuestra BIOS no soporta el arranque directo desde ese tipo de volúmenes, o si necesitamos que el sistema de ficheros raíz (/) esté encriptado, pues tanto el bootloader como el kernel no pueden ser cifrados y deben ser accesibles de forma sencilla y directa por la BIOS. También si la BIOS es antigua puede tener la limitación de que la partición de arranque sólo pueda ocupar los primeros 1.024 cilindros de disco, por lo que si nuestro disco es muy grande esta limitación puede hacer obligatorio que disponer de una partición pequeña al comienzo del disco sobre la que montar el directorio /boot.

                                  En sistemas más modernos que disponen de UEFI en sustitución de la antigua BIOS es necesario disponer de una partición formateada con sistema de ficheros FAT32 o vfat en /boot/efi para cumplir con el estándar EFI y poder almacenar distintos cargadores de arranque y drivers que permitan que la máquina pueda arrancar múltiples sistemas operativos.

                                  Por tanto, aunque no es imprescindible en la mayoría de los casos, sí es recomendable disponer de una partición dedicada para /boot y otra para /boot/efi para tener mayor flexibilidad a la hora de hacer cambios sobre un sistema existente. Desde el punto de vista de la seguridad también nos puede servir para aplicar una capa adicional de protección montando los sistemas de ficheros /boot y /boot/efi como sólo lectura con la opción de montaje ro, o directamente no montarlos (opción noauto), ya que como decía al principio sólo se necesitan en el arranque y no durante el funcionamiento normal. De esta forma un atacante no podría alterar el arranque del sistema, y aunque el sistema de permisos de Linux ya se encarga de impedir cualquier modificación a usuarios que no sean root, esto es como digo una capa adicional de seguridad.

                                  Tarjeta SD desbloqueada y desbloqueadaUna medida más eficaz sería instalar el gestor de arranque grub y las particiones /boot y /boot/efi en un dispositivo distinto que permita activar el modo de sólo lectura a nivel físico, como por ejemplo en una tarjeta SD con interruptor de bloqueo de escritura, o en entornos virtualizados, mediante por ejemplo volúmenes inmutables o cuyo modo de sólo lectura pueda controlarse desde el hipervisor y no desde la instancia virtualizada. De esta forma sería imposible para un atacante alterar el arranque de nuestra máquina sin tener acceso físico a ella o al hipervisor.

                                  /usr

                                  La razón más interesante por la que separar el sistema de ficheros /usr es poder establecer opciones de montajes nodev o errors=remount-ro, lo que permitirá que se monte en modo sólo lectura si se produce algún error en el arranque del sistema y aumentar así las probabilidades de que un sistema defectuoso llegue a arrancar y nos permita intentar recuperarlo y/o salvar cierta información.

                                  Es importante señalar que en algunas distribuciones como Fedora se está haciendo un esfuerzo por modificar el estándar de facto que suponía tener algunos directorios como /bin o /lib colgando directamente de / y llevarlos a través de un enlace simbólico a /usr/lib o /usr/bin. Por tanto, en estos casos puede no ser recomendable separar /usr y mantenerlo en la misma partición que /.

                                  /data

                                  Imaginemos que necesitamos almacenar información con características muy específicas que hagan recomendable usar un sistema de ficheros distinto al habitual ext4, por ejemplo. Imaginemos que necesitamos montar un servidor de ficheros destinado a almacenar archivos de gran tamaño como vídeos o fichero .tar.gz de gran tamaño. En ese caso puede resultar más indicado usar un sistema de ficheros que ofrezca un mejor rendimiento a la hora de manejar ficheros de gran tamaño, como por ejemplo XFS. También podríamos encontrarnos en la necesidad de usar alguna de las características específicas para las que han sido optimizados otros sistemas de ficheros, como la posibilidad de tomar snapshots o instantáneas de nuestros datos, compresión de datos de forma transparente, o desfragmentación en línea, para lo cual usaríamos otros tipos de filesystems como ZFS o BtrFS.

                                  swap

                                  Aunque es posible establecer áreas de intercambio o swap directamente en ficheros y almacenarlos en cualquiera de los directorios del sistema, lo más habitual es destinar una partición específicamente para este cometido, lo cual tiene la ventaja de poder llevar el área de intercambio a otro dispositivo más adecuado. Por ejemplo, si para nosotros es muy importante minimizar la penalización de rendimiento que se produce cuando el sistema de queda sin memoria RAM y comienza a paginar o «swapear», podríamos llevar la partición de swap a un disco SSD a pesar de que hoy por hoy eso suponga acortarle la vida. Por el contrario, si nuestra máquina dispone de memoria RAM de sobra, podemos destinar los discos SSD a otras particiones donde su uso será más productivo y utilizar un disco magnético de bajo coste para el área de intercambio, ya que su uso será más infrecuente al no haber escasez de RAM.HDD vs SSD

                                  Desde el punto de vista de la seguridad puede ser interesante usar algún mecanismo de cifrado como Cryptswap para proteger los datos temporales alojados en el área de intercambio, pues puede tratarse de información sensible.

                                  Sistema de ficheros raíz o /

                                  Por último, y a propósito del sistema de ficheros raíz, me gustaría puntualizar que no todos los directorios que cuelgan de / son susceptibles de ser separados en distintas particiones. Hay directorios como /etc, /lib o /bin que nunca deben ubicarse en particiones separadas y deben ser todos parte de este sistema de ficheros ráiz.

                                  Otros motivos por los que establecer un esquema de particionamiento

                                  Además de las ventajas ya expuestas en puntos anteriores, crear un buen esquema de particionamiento puede ofrecernos posibilidades adicionales:

                                  Flexibilidad

                                  Es posible que nos equivoquemos en nuestra previsión inicial en cuanto al espacio que va a ser necesario destinar a cada una de las particiones de nuestro esquema de particionamiento, pero al mismo tiempo esto nos proporcionará de gran flexibilidad a la hora de redimensionar el espacio cuando detectemos que una partición se nos queda corta o que por el contrario tiene demasiado espacio que nunca llegaremos a utilizar.

                                  Redundancia de datos

                                  Hay sistemas de ficheros que puede ser necesario duplicar (mirroring), o que requieran incluso el uso de algún sistema de ficheros distribuido como GlusterFS o CephFS,

                                  Sistema de ficheros en red

                                  Mediante el uso de herramientas como Samba o NFS es posible compartir en red el contenido de un sistema de ficheros. Aunque es posible compartir sólo una parte de él, es decir, un subdirectorio, esto hace más complicado gestionar la seguridad y es más recomendable emplear una partición específica para este cometido.


                                  Error: Your Requested widget " ai_widget-6" is not in the widget list.
                                  • [do_widget_area above-nav-left]
                                    • [do_widget_area above-nav-right]
                                      • [do_widget_area footer-1]
                                        • [do_widget id="wpp-4"]
                                      • [do_widget_area footer-2]
                                        • [do_widget id="recent-posts-4"]
                                      • [do_widget_area footer-3]
                                        • [do_widget id="recent-comments-3"]
                                      • [do_widget_area footer-4]
                                        • [do_widget id="archives-4"]
                                      • [do_widget_area logo-bar]
                                        • [do_widget id="oxywidgetwpml-3"]
                                      • [do_widget_area menu-bar]
                                        • [do_widget id="search-3"]
                                      • [do_widget_area sidebar]
                                        • [do_widget id="search-4"]
                                        • [do_widget id="ai_widget-2"]
                                        • [do_widget id="categories-5"]
                                        • [do_widget id="ai_widget-3"]
                                        • [do_widget id="ai_widget-4"]
                                        • [do_widget id="ai_widget-5"]
                                      • [do_widget_area sub-footer-1]
                                        • [do_widget id="text-4"]
                                      • [do_widget_area sub-footer-2]
                                        • [do_widget_area sub-footer-3]
                                          • [do_widget_area sub-footer-4]
                                            • [do_widget_area upper-footer-1]
                                              • [do_widget id="search-2"]
                                              • [do_widget id="recent-posts-2"]
                                              • [do_widget id="recent-comments-2"]
                                              • [do_widget id="archives-2"]
                                              • [do_widget id="categories-2"]
                                              • [do_widget id="meta-2"]
                                            • [do_widget_area upper-footer-2]
                                              • [do_widget_area upper-footer-3]
                                                • [do_widget_area upper-footer-4]
                                                  • [do_widget_area widgets_for_shortcodes]
                                                    • [do_widget id="search-5"]
                                                    • [do_widget id="ai_widget-6"]
                                                  • [do_widget_area wp_inactive_widgets]
                                                    • [do_widget id="wpp-2"]
                                                    • [do_widget id="text-1"]
                                                    • [do_widget id="recent-posts-3"]
                                                    • [do_widget id="categories-3"]
                                                    • [do_widget id="archives-3"]
                                                    • [do_widget id="icl_lang_sel_widget-3"]

                                                  Sistema de cuotas más potente

                                                  Las cuotas de uso de disco se establecen por usuario y partición, por lo que para establecer un buen sistema de cuotas es más interesante planificar un buen esquema de particionamiento para poder asignar distintas cuotas a un mismo usuario para /home, /tmp o /var, por ejemplo.

                                                  Realización de backups

                                                  Al margen de la posibilidad de realizar snapshots ya comentada anteriormente, la realización de copias de seguridad en un sistema suele ser más sencilla si éste está dividido en diferentes particiones, pues hay herramientas de backup que funcionan específicamente a nivel de partición, es más fácil dimensionar el espacio necesario para dichos backups al estar limitado al tamaño de las particiones, ciertas particiones permiten ser desmontadas sin afectar al resto del sistema con el fin de respaldar de forma consistente su contenido impidiendo que se sigan escribiendo datos mientras dura la operación, etc.

                                                  Mantenimiento más sencillo

                                                  Es conveniente realizar de forma períodica una comprobación de la integridad del sistema de ficheros con herramientas como fsck. Del mismo modo que a la hora de realizar backups, si podemos desmontar ciertas particiones bajo demanda y realizar el chequeo de forma consistente y sin necesidad de reiniciar el sistema, las labores de mantenimiento del mismo se ven facilitadas.

                                                  Mejor aprovechamiento de la geometría de los discos

                                                  Diagrama de la geometría básica de un discoLos cilindros exteriores de los discos giran a mayor velocidad que los interiores, por lo que los primeros ofrecen un mejor rendimiento que los segundos. Es interesante colocar las particiones más utilizadas en los cilindros exteriores. Dado que los cilindros empiezan a numerarse por el exterior, esto quiere decir que es mejor poner las particiones que se van a usar más intensivamente al principio del disco y al final las menos utilizadas. También puede ser interesante colocar las particiones más utilizadas en el medio, de forma que las cabezas tengas que desplazarse menos y aumentar así a la larga el tiempo de vida de los discos.

                                                  Mi propuesta de esquema de particionamiento

                                                  Para terminar voy a presentar a modo de ejemplo el fichero /etc/fstab y la salida del comando df -h correspondiente a dos esquemas de particionamiento distintos: uno para un disco de tamaño medio (55 GB), y otro para un disco de mayor tamaño (250 GB). A parte de que te sirva como punto de partida para empezar a definir tu propio esquema, esto lo hago también para ilustrar la idea de que un sistema Linux estándar no requiere de una gran capacidad de almacenamiento para funcionar a pleno rendimiento y con garantías de crecimiento futuro, pues las particiones principales tiene un tamaño de un orden similar, dejando la mayor parte del espacio de los discos más grandes disponible para las aplicaciones del usuario.

                                                  Ambas propuestas corresponden a sistemas reales basados en sistema operativo Ubuntu 16.04.2 LTS.

                                                  Fichero /etc/fstab

                                                  # /etc/fstab: static file system information. 
                                                  # 
                                                  # Use 'blkid' to print the universally unique identifier for a 
                                                  # device; this may be used with UUID= as a more robust way to name devices 
                                                  # that works even if disks are added and removed. See fstab(5). 
                                                  # 
                                                  # <file system> <mount point>   <type>  <options>       <dump>  <pass> 
                                                  # / was on /dev/sda2 during installation 
                                                  UUID=7d5ba82c-3085-49e2-b662-6a133ad8e9bf  /              ext4    defaults,discard,noatime,errors=remount-ro     0       1 
                                                  # /boot was on /dev/sda3 during installation 
                                                  UUID=7919506c-a13c-4a2c-b27a-8984edd28484  /boot          ext4    defaults,noatime                               0       2 
                                                  # /home was on /dev/sda8 during installation 
                                                  UUID=2efc9c4c-5e24-4be5-8076-1135576583f0  /home          ext4    defaults,noatime,acl,user_xattr,nodev,nosuid   0       2 
                                                  # /tmp was on /dev/sda5 during installation
                                                  #UUID=1e9e3d25-7988-435c-954d-601ea59bd6fd /tmp           ext4    defaults,nodev,noexec,nosuid                   0       2 
                                                  tmpfs                                      /tmp           tmpfs   defaults,nodev,noexec,nosuid,size=512m         0       0 
                                                  # /usr was on /dev/sda6 during installation 
                                                  UUID=02dd782a-0c87-4f2d-b7d0-b0b1f9bc2982  /usr           ext4    defaults,noatime,nodev,errors=remount-ro       0       2 
                                                  # /var was on /dev/sda7 during installation 
                                                  UUID=b3595283-11ee-4965-8948-b862000678a8  /var           ext4    defaults,noatime,nodev,nosuid                  0       2 
                                                  # /var/www was on /dev/sda9 during installation 
                                                  UUID=27eec030-7a45-43a6-8594-d6112e92c345  /var/www       ext4    defaults,noatime,acl,user_xattr,nodev,nosuid   0       2 
                                                  # swap was on /dev/sda4 during installation 
                                                  UUID=47c588d7-4a4a-4f30-8f91-e653cb27e94c none            swap    sw                                             0       0 
                                                  #/dev/mapper/cryptswap1 none swap sw 0 0 
                                                  UUID=95b03a51-f0d2-4196-bb54-036cba2d166d /var/data       ext4    defaults,noatime,acl,user_xattr,nodev,nosuid   0       2

                                                  Propuesta de particionamiento para un volumen de 55 GB

                                                  Filesystem      Size  Used Avail Use% Mounted on 
                                                  udev            2.0G     0  2.0G   0% /dev 
                                                  tmpfs           396M   41M  355M  11% /run 
                                                  /dev/xvda1      7.8G  757M  6.6G  11% / 
                                                  /dev/xvda6      4.8G  1.5G  3.1G  33% /usr 
                                                  tmpfs           2.0G     0  2.0G   0% /dev/shm 
                                                  tmpfs           5.0M     0  5.0M   0% /run/lock 
                                                  tmpfs           2.0G     0  2.0G   0% /sys/fs/cgroup 
                                                  tmpfs           128M  112K  128M   1% /tmp 
                                                  /dev/xvda7       30G   13G   16G  46% /var 
                                                  /dev/xvda5      3.9G  515M  3.1G  14% /home 
                                                  cgmfs           100K     0  100K   0% /run/cgmanager/fs 
                                                  tmpfs           396M     0  396M   0% /run/user/1000

                                                  Propuesta de particionamiento para un volumen de 250 GB

                                                  S.ficheros              Tamaño Usados  Disp Uso% Montado en 
                                                  udev                      7,8G      0  7,8G   0% /dev 
                                                  tmpfs                     1,6G    97M  1,5G   7% /run 
                                                  /dev/sda2                 9,1G   1,8G  6,9G  21% / 
                                                  /dev/sda6                  23G   6,8G   15G  32% /usr 
                                                  tmpfs                     7,8G   851M  7,0G  11% /dev/shm 
                                                  tmpfs                     5,0M   4,0K  5,0M   1% /run/lock 
                                                  tmpfs                     7,8G      0  7,8G   0% /sys/fs/cgroup 
                                                  tmpfs                     512M    42M  471M   9% /tmp 
                                                  /dev/sda3                 2,3G   236M  1,9G  11% /boot 
                                                  /dev/sda7                  16G   8,6G  6,6G  57% /var 
                                                  /dev/sda9                 124G   103G   15G  88% /var/www 
                                                  /dev/sda8                  46G    24G   20G  55% /home 
                                                  /dev/sdb1                 917G   828G   44G  96% /var/data 
                                                  tmpfs                     1,6G      0  1,6G   0% /run/user/118 
                                                  tmpfs                     1,6G    72K  1,6G   1% /run/user/1000 
                                                  /home/daniloaz/.Private    46G    24G   20G  55% /home/daniloaz
                                                   

                                                  Sobre el autor

                                                  Daniel López Azaña
                                                  Arquitecto de soluciones Cloud AWS & Linux Sysadmin Freelance

                                                  Emprendedor, generador de ideas y mente inquieta. Apasionado de las nuevas tecnologías, especialmente de los sistemas Linux y del software libre. Me gusta escribir además sobre actualidad tecnológica, Cloud Computing, AWSi, DevOps, DevSecOps, seguridad, desarrollo web y programación, SEO, ciencia, innovación, emprendimiento, etc.

                                                  DanielLa importancia de particionar correctamente un disco en Linux

                                                  Artículos relacionados

                                                  50 comentarios

                                                  Unirte a la conversación
                                                  • Elver Vicente - 28/06/2018 responder

                                                    Excelente explicación, para el caso de un un disco duro de 1TB y 8GB de Ram, cual seria la partición recomendada. Planeo instalar como servidor web, con los servicios de HTTPD, DNS, FTP, MYSQL y DHCP.

                                                    Daniel - 29/06/2018 responder

                                                    Gracias Elver. Para un servidor como el que comentas 1 TB es una barbaridad de espacio, salvo que el sitio web que se vaya a alojar almacene una cantidad ingente de ficheros o de datos en la base de datos. Mi propuesta de particionamiento de 250 GB ya es bastante generosa y aún así te sobrarían 750 GB que podrías utilizar para otro cometido. A falta de saber si sería justificable un tamaño superior para /var/www y /var/lib/mysql, incluso mi propuesta de 55 GB te serviría. Yo he configurado multitud de servidores web con un volumen de 8 GB para /, /home/, /tmp/, /usr/ y /var, empleando otro volumen o partición de 10 GB para alojar los ficheros de la web en /var/www y otros 10 GB para la base de datos en /var/lib/mysql, y este esquema sirve para la mayoría de servidores web de un tamaño pequeño/medio. Si la web crece se pueden ampliar perfectamente las particiones /var/www y /var/lib/mysql según las necesidades, pero lo normal es que con 8-12 GB para el volumen raíz sea suficiente si se establece una política de rotación de logs adecuada. Incluso si las necesidades en este sentido son superiores, se pueden almacenar los logs de /var/log en una partición aparte que también podemos hacer crecer bajo demanda.

                                                  • Elver Vicente - 02/07/2018 responder

                                                    Entiendo todo, pregunto esto porque había instalado un servidor con las particiones siguientes (/boot de 1GB, /var de 10GB, home de 5GB, SWAP de 4GB y el resto de espacio lo deje para la partición RAIZ). El detalle fue que colapso mi partición /var ya que el flujo de la información es diario a parte los respaldos de la base de datos se almacenaba en el mismo directorio. pero me sirvió de experiencia por eso pedí su recomendación por la capacidad del disco que tengo ahora. la verdad soy nuevo en el tema de los servidores.

                                                  • Daniel - 27/09/2018 responder

                                                    Buena tengo una pregunta.

                                                    Quiero montar un servidor en una tarjeta micro controladora de 256 mb de ram y un procesador Cortex A7, luego de probar varios Linux, el que más se me adaptó fue Ubuntu Server, Debian Server y Archi Linux.

                                                    Lo siguiente es que solo usaré en total 16 gbs de memoria, puesto que el sistema de base de datos crecerá muy lentamente, tanto es que actualmente la aplicación en 10 años de uso solo ha crecido de 0 a 70 mb, planeaba asignar para la /www tipo 5 gbs y para la base de datos 2-5 gbs…

                                                    ¿Cómo me recomendaría el montaje de este?

                                                    Daniel - 27/09/2018 responder

                                                    Hola Daniel, sin conocer más detalles de la base de datos es difícil saber cuáles serían las opciones de montaje más adecuadas. Aquí te dejo un ejemplo de cómo montar una partición específica para MySQL siguiendo las buenas prácticas comentadas en el artículo:

                                                    # Línea de ejemplo en el fichero /etc/fstab
                                                    UUID=d937c89b-a46b-43b4-b05e-4ceb32891386 /var/lib/mysql ext4 defaults,noatime,nodev,nosuid,noexec 0 2

                                                  • Hugo fernandez - 15/10/2018 responder

                                                    Hola Daniel, tengo un File server con 15 usuarios en linux, (ubuntu server) con una base de datos Postgresql, ( no uso www en este servidor, ya que utilizo datasnap, para generar al vuelo los datos. Tengo /home y /respaldo y /public en particiones separadas.
                                                    Que me recomiendas para eficientizar mi servidor.

                                                    Gracias de antemano

                                                    Daniel - 27/10/2018 responder

                                                    Te recomiendo las opciones de montaje «defaults,noatime,nodev,nosuid,noexec 0 2» tanto para el sistema de ficheros que almacene la base de datos PostgreSQL como para el servidor de ficheros, pues en ambos casos debemos evitar que los usuarios generen ficheros de dispositivos, ejecuten binarios o activen el flag suid.
                                                    Si manejas ficheros muy grandes (del orden de GB), entonces quizás podrías estudiar implantar el sistema de ficheros xfs como alternativa a ext4. Si no es el caso ext4 te servirá perfectamente.

                                                  • Iraitz Lavado - 09/04/2019 responder

                                                    Buenas tardes,
                                                    Tengo que hacer un proyecto donde tengo tres maquinas virtuales en debian. Dos hacen de clientes y una de servidor principal. Los clientes les he asignado un disco de 30 GB a cada uno, y al servidor principal de 50 GB. El objetivo del proyecto es que las dos maquinas clientes se relacionen con el servidor principal e implementar servidos de DNS, DHCP, correo electronico y un servidor streaming para centralizar videos y audios.
                                                    Las particiones de clientes he separado los directorios /, /var, /home /temp i SWAP. Sin embargo para el servidor principal tengo dudas de como hacerlo, a demás de los anteriormente nombrados, sería interesante separar en particiones los servicios y servidores? Me podrías sugerir una distribución para el servidor principal?
                                                    Muchas gracias!

                                                    Daniel - 28/05/2019 responder

                                                    Sí añadiría una partición específica para guardar los vídeos y audios (por ejemplo /var/media) y otra para el correo (por ejemplo /var/qmail). Para los servidores DHCP y DNS no es necesario, son muy pequeños.

                                                  • Alfredo Quintero - 09/05/2019 responder

                                                    ¿Este particionado puede servir para escritorios o está dirigido a servidores?

                                                    Daniel - 09/05/2019 responder

                                                    Es adecuado y recomendable en cualquier tipo de sistema, ya sea servidor o escritorio, siempre teniendo en cuenta que cada uno tendrá sus propias particularidades y por tanto el esquema de particionamiento más adecuado puede ser distinto en cada caso.

                                                  • Claudia - 22/05/2019 responder

                                                    Tengo una consulta tengo 1TB de disco duro y 24 gb de otro disco duro en mi notebook, estoy recien en mi primer año de ciencias de computacion pregunte a los profe sobre esto pero como que me dijieron que buscara en internet, tengo una duda es necesario tener windows 7 y linux a la vez o solo se puede tener un linux, porque solo uso la notebook para programacion y cuanto espacio es recomendable. Por ejemplo ahora en el 1tb le puse linux mint y le di como 50gb para raiz, en intercambio le di 8gb y lo que quedaba a /home y los 24gb le puse el windows 7 porque anteriormente no me dejaba arrancar, pero siento que esos 24gb estan desperdiciados y queria que ocupara otro distro como kali o posiblemente arch aunque se que se maneja diferente no cuesta nada aprender por cuenta propia

                                                    Daniel - 28/05/2019 responder

                                                    Si estás empezando y sólo vas a usarlo para programación puedes dejar que el asistente de instalación elija el esquema de particionamiento más adecuado automáticamente, el cual te reconocerá la instalación de Windows y todo arrancará correctamente.

                                                    Si prefieres experimentar, entonces elige mejor un esquema de particionamiento como el que comento en el artículo y aún te quedará mucho espacio libre en el disco de 1TB para instalar otras distros sin necesidad de tener que renunciar el Windows instalado en el disco de 24 GB.

                                                    Cris - 16/01/2021 responder

                                                    Hola Daniel, similar a Claudia yo tengo 24G en un disco SSD y 1TB en un disco HDD; cómo combinar estos dos discos en una sola instalación Linux, para mejorar el rendimiento del sistema? lo que yo quiero es un sistema robusto para luego hacer instalaciones (probar distros) virtualizadas con VBox o Docker.
                                                    Lo primero que se me ocurre es montar / en el SSD, y Swap en el HDD con el mismo tamaño de la RAM ((GB), 7home y 7var tambien en el HDD. Apreciaria tus comentarios.
                                                    Gracias

                                                    Cris - 16/01/2021 responder

                                                    (8GB) /VAR y /HOME 😉

                                                    Daniel - 27/02/2021 responder

                                                    Supongo que es una errata y tu disco SSD es en realidad de 240 GB. Todos los directorios necesarios para el funcionamiento del sistema (/, /var, /usr, swap, etc.) es recomendable que estén en el disco SSD por la velocidad que ofrecen este tipo de discos. Las máquinas virtuales sería más interesante también tenerlas en el disco SSD para que funcionen más rápidamente, pero esto normalmente no es lo más operativo porque suelen ocupar mucho espacio, así que en ese caso es mejor tenerlas en el HDD.

                                                  • Ivo Moreno - 11/06/2019 responder

                                                    Hola Daniel,
                                                    Tengo una consulta, porque es recomendable crear una partición ejemplo: /dev/sda1 y trabajar en ella y no ocupar directamente el disco /dev/sda. Se entiende? independientemente con la primera partición se utilice en su totalidad!
                                                    Slds

                                                    Daniel - 30/06/2019 responder

                                                    No hay nada que te impida formatear directamente un dispositivo de bloques /dev/sda sin particionarlo, todo funcionará bien. Pero del mismo modo que no es imprescindible hacer una división en diferentes particiones como recomiendo en este artículo, sí es recomendable por la flexibilidad que proporciona y la protección que nos brinda de cara a los cambios que sea necesario abordar en el futuro. En el caso de formatear directamente /dev/sda es igual, todo funcionará perfectamente haciéndolo así, pero si por ejemplo el día de mañana quisiéramos ampliar el volumen /dev/sda y añadir una partición adicional para otro cometido, la cosa se complica si no hemos establecido una tabla de particiones, ya que tan sólo podremos hacer crecer el sistema de ficheros de /dev/sda para que ocupe todo el espacio disponible del nuevo volumen más grande, pero no dejarlo como está y crear otro distinto adicional.

                                                    Además, en el caso de los discos raíz o discos de arranque que escriben el sector de arranque al principio, si ocupamos todo el disco con el sistema de ficheros, podemos sobreescribirlo al formatearlo y hacer que el sistema no arranque, o corromper el sistema de ficheros si escribimos el sector de arranque después, por lo que en mi opinión es siempre mejor escribir una tabla de particiones y crear una partición aunque esta sea única.

                                                  • facundo - 01/08/2019 responder

                                                    hola, puedo montar la «/» en la ssdd y el /tmp y /var en el disco duro HDD? junto con la /home..

                                                    en la tabla de particiones de ubuntu se puede hacer pero todos dicen que no se monta la tmp y solo queda en la raiz por mas que creas la partición en el HDD

                                                    Daniel - 18/08/2019 responder

                                                    Efectivamente Facundo, el /tmp se puede montar en cualquier otro disco. Incluso se puede montar en memoria como tmpfs. Si por el motivo que sea el instalador de Ubuntu te lo deja siempre en la raíz, puedes modificar el fichero /etc/fstab para forzar que en el siguiente reinicio del sistema se monte en la partición que previamente habrás creado y formateado en el otro disco HDD.

                                                  • Alexander - 23/08/2019 responder

                                                    Hola, excelente informacion… puedes ayudarme, soy estudiante de física y quiero instalar Scientific Linux 7.6 y también distro Astro aunque esta ultima quizá no lo haga, el asunto es que en mi disco solo tengo 105 GB disponibles, me recomiendas instalar ambos y cual seria el particionamiento correcto, gracias

                                                    Daniel - 20/01/2020 responder

                                                    105 GB deberían ser más que suficientes para instalar dos distros. No vas a ir sobrado de espacio, pero si no instalas las distribuciones completas, sino que sólo instalas los paquetes esenciales y vas añadiendo progresivamente sólo las aplicaciones que realmente necesites, tendrás espacio de sobra. Ten en cuenta que se puede instalar un Linux básico en 8 GB sin problema. ¡Suerte!

                                                  • Raúl - 04/01/2020 responder

                                                    Muy ilustrante este articulo colega Daniel, yo mismo llevo varios años administrando servidores linux, y siempre me quedó la duda de la necesidad de reparticionar, los discos, que realmente uno lo hace por defecto, pues es tedioso tener que crear esquemas de particiones cuando uno no ve la utilidad explicitamente, y entonces se vuelve un proceso rutinario y tedioso, y si tienes que montar mas de un servidor al día, o quizas 10 virtuales en una hora, uff el tedio me mata, jajajaj, y por tanto siempre usé lo basico, en otros materiales que en su momento leí alguna que otra razón del porque, pero, tu articulo si que me ha convencido, y me pregunto ahora: ¿Porque no lo vi antes?, y nada, es que en Google, el arte es buscar, y yo aprendo cada día a refinar esas busquedas. Hoy he dado con este, gran material, y con tu blog del que ya soy seguidor, buscando como hacer hardening de la particion tmp. Genial, sencillamente. Abrazos y feliz 2020.

                                                  • Raúl - 04/01/2020 responder

                                                    Algo más, amigo que olvidé preguntar en mi comentario anterior, ya si relacionado en lo tecnico con el articulo. En el caso de las aplicaciones como cPanel, un hipervisor Proxmox que se utiliza tecnologia SSD, como crees que se debería ajustar el tema, para obtener performance y seguridad. ?
                                                    Gracias de nuevo

                                                  • esther - 20/04/2020 responder

                                                    Hola, mi pregunta es ¿qué problemas puede ocasionar tener unas particiones con formato xfs y otras con ext4?
                                                    Gracias

                                                  • esther - 20/04/2020 responder

                                                    Perdón, matizo la pregunta: ¿qué problemas puede ocasionar tener unas particiones con formato xfs y otras con ext4 en un mismo servidor?
                                                    Gracias

                                                    Daniel - 20/04/2020 responder

                                                    En principio ninguno. De hecho esa es una de las ventajas del particionamiento, poder formatear cada partición con el sistema de ficheros más adecuado a su cometido.

                                                  • Daniel R - 11/05/2020 responder

                                                    Hola tocayo, para instalar un Servidor de CCTV en Ubuntu con Zoneminder en entorno LAMP, cuál será la mejor manera de particionar un HDD de 1 TB, de manera que las grabaciones se queden guardadas el mayor tiempo posible en el mismo HDD reciclándose automáticamente al llenarse la partición donde se almacenan los videos. necesito garantizar funcionalidad en el presente y futuro además de seguridad en la red.
                                                    Muchas Gracias…

                                                    Daniel - 03/06/2020 responder

                                                    Con que reserves 80 GB para el sistema (incluso menos según el caso, pero bueno, por asegurarte de no pillarte los dedos), es mucho más que suficiente. Esto te permitiría dejar más de 900 GB para la partición de vídeos. No obstante, lo mejor sería tener un disco de sistema por un lado y otro para los vídeos por otro, de modo que puedas ampliarlo más fácilmente si fuera necesario.

                                                  • Reyna - 01/06/2020 responder

                                                    Hola, estoy interesada en pasar a Ubuntu 20.04… pero ya tengo instalado ubuntu 18.04 con las particiones : /, /home, swap,/boot… es la primera vez que deseo instalar este nuevo sistema operativo desde un usb, para evitar los problemas con el software de terceros de mi gráfica e internet. sé que se recomienda hacer un backup de toda la información almacenada antes del cambio. mi pregunta es ya en la sección de mas opciones ( en el particionado) que debo hacer? no se como se borra la partición / para volver a crearla… debo hacer espacio en /home para hacer una segunda partición / y después borrar la primera? ó debo dejar la tabla de particionado con los valores que tenia, para que se reescriba por sí misma la partición /? ¿como modificar las particiones en esa instancia sin perder datos (ya que ese es el objetivo principal del particionado)? agradeceria mucho sus respues pues quiero hacer este cambio con rapidez… en ubuntu 18 ya comienzo a ver fallas en algunos programas… pues suelo actualizar seguido mis programas y alguno ya registraron esos cambios.
                                                    Atentamente Reyna Rivera

                                                    Daniel - 27/10/2020 responder

                                                    Si estás conforme con tu actual esquema de particionamiento no necesitas hacer ningún cambio. Lo único que necesitas hacer para conservar los datos es indicar que no quieres formatear las particiones, que es una de las opciones disponibles cuando seleccionas alguna de las particiones. Pero eso no es una buena idea para lo que pretendes hacer, ya que el nuevo sistema operativo querrá poner sus ficheros en particiones como /, /usr, /var, /home. Yo te recomendaría que sí las formatearas, excepto aquellas particiones que tengas puramente de datos tuyos que no tengan nada que ver con el sistema operativo o con otras aplicaciones que pueda sustituir el nuevo sistema operativo. Por ejemplo, una partición montada en /var/datos que contenga únicamente ficheros tuyos. En ese caso si no la marcas para que se formateé los datos se conservarán y podrán usarse una vez reinstalado el Ubuntu. Pero si tienes datos y aplicaciones que te sirven y están mezcladas con datos del sistema en /usr, /home, etc. es mejor que actualices desde Ubuntu 18 a Ubuntu 20 en lugar de reinstalarlo desde cero. Así conservarás todos tus datos y tendrás un sistema actualizado a todos los efectos.

                                                  • gabo - 12/07/2020 responder

                                                    Hola. Te pregunto, para una pc d escritorio, tengo pensado instalar el sistema en un SSd de 120Gb y usar un disco mecanico de 500Gb para almacenar archivos de todo tipo (musica, peliculas, libros,etc). Puedo particionar ese disco en ext4 y colocarlo en una particion del sistema? Pensaba que podria ser /var/datos, por ejemplo. Seria correcto? El sistema a instalar seria Linux Mint 20. Gracias

                                                    Daniel - 13/07/2020 responder

                                                    Sí, perfectamente correcto.

                                                  • antony - 25/09/2020 responder

                                                    Hola Daniel espero que este bien, quiero implementar un controlador de dominio en debían 10 para 100 usuario mi duda es si con 1TB de disco es suficiente y como lo particionaría.

                                                    Daniel - 14/10/2020 responder

                                                    Depende del espacio que vaya a ocupar cada usuario, del tipo de ficheros que se vaya a almacenar, durante cuánto tiempo es necesario guardar los datos, etc. No tengo información suficiente para saberlo. Un esquema de particionamiento como el propuesto en el artículo es más que suficiente, pero haciendo la partición /home todo lo grande que te permita el disco después de haber creado las otras particiones, y usando dicho /home para almacenar los datos de tus usuarios.

                                                  • Xavi - 12/10/2020 responder

                                                    Muy buen artículo: prolijo y bien explicado. ¡Enhorabuena!
                                                    No soy experto en estos temas, pero tengo un par de cuestiones o preguntas que me gustaría plantear :
                                                    La primera se trata de que todo este sistema de particiones que propones si se hace en un mismo disco físico y este sufre una avería irreparable, todo se va al traste. Luego habría que reinstalar todo y restaurar copias de seguridad; mejor sería teniendo una imagen del disco averiado. ¿Es correcto esto?
                                                    La segunda se trata de un aspecto que creo que no has comentado en tu artículo y del que me confieso un absoluto ignorante: ¿en que medida puede afectar al rendimiento del equipo y al tiempo de arranque el hecho de tener tantas particiones?
                                                    Muchas gracias.

                                                    Daniel - 14/10/2020 responder

                                                    Gracias Xavi! Sí, una imagen te serviría para restaurar todo, esquema de particiones incluido. También puedes con el comando dd siempre que el disco sobre el que vayas a restaurar sea idéntico al original.

                                                    Sí he comentado aspectos del rendimiento en el artículo, hay ciertas mejoras en el rendimiento que se pueden alcanzar con un esquema de particionamiento adecuado y también por el hecho de poder usar el sistema de ficheros óptimo en cada partición según el uso que se le vaya a dar. El tiempo de arranque no se ve afectado por tener distintas particiones.

                                                  • Fernando - 20/10/2020 responder

                                                    Hola Daniel quede fascinado con el nivel de prolijidad que ahondas los temas y las explicaciones de buenas practicas, junto a predisposiccion para contestar de los chicos que recien empiezan.
                                                    leyendo todo te consulto dos cosas
                                                    1. Que programa recomendarias para hacer una imagen de un sistema linux en produccion asi poder luego restaurar en caso de quiebre del mismo???
                                                    2. hasta hoy nadie me supo sacar la duda de algo referido a LVM, he oido por ahi que no es recomandable instalar LVM sobre /, entonces como harias tu el sistema de particiones? (estandar para / y LVM para otras?
                                                    Gracias Daniel

                                                    Daniel - 27/10/2020 responder

                                                    Gracias Fernando. Echa un vistazo a este enlace: https://wiki.archlinux.org/index.php/disk_cloning. Es un buen compendio de las distintas formas que hay de clonar discos/particiones en Linux. Respecto a LVM, desconozco por qué no es recomendable usarlo sobre /. Es más complicado que usar simplemente particiones, eso sí, pero si hay un motivo que justifique el uso de LVM sobre / no sé por qué no habría de usarse. Te exigirá más, porque necesitarás mayores destrezas en cuanto al manejo del boot loader, opciones del kernel, el propio LVM, etc. Así que en ese caso sí, si no controlas bien todos estos aspectos no es recomendable el uso de LVM porque te puede complicar más la vida.

                                                  • Joel Sulecio - 19/06/2021 responder

                                                    He encontrado recientemente este articulo y realmente te felicito por la forma en que has abordado el tema, se agradece mucho la información que has propuesto. y me convierto a partir de ahora en seguidor de tus artículos. Y por ultimo en tu experiencia, que esquema recomiendas para un sistema de virtualizacion, ejemplo proxmox. vi que lo consultaron anteriormente y me llamo la atencion, soy de los que piensa que un sistema zfs seria ideal para replicacion.

                                                    Daniel - 19/11/2021 responder

                                                    ¡Muchas gracias! La verdad es que no te podría recomendar un esquema concreto para Proxmox, eso va a depender del tipo y número de máquinas virtuales que vayas a crear, el número y tamaño de discos de tu servidor, etc. Y respecto a ZFS, si te atreves con él, adelante, es un sistema de ficheros magnífico para este tipo de casos de uso.

                                                  • isrrael arenas - 23/02/2022 responder

                                                    Buenas noches desde Venezuela, tengo muchos años conociendo lo software libres y me impresiono la simplicidad de sus explicaciones con respecto a como particionar discos y sus utilidades, muchas gracias hermano. Empezare a experimentar en el tema de los servidores de impresoras y archivos, un abrazo y mucho éxito en su carrera amigo Daniel.

                                                    Daniel - 27/07/2022 responder

                                                    ¡Gracias Isrrael!

                                                  • julio - 14/07/2022 responder

                                                    Enhorabuena, tus enseñanzas muy buenas, aclaradoras.

                                                    Daniel - 27/07/2022 responder

                                                    ¡Gracias!

                                                  • Adolfo - 27/07/2022 responder

                                                    Gran artículo Daniel, tal y como dices hacer las cosas bien cuesta un poquito más que luego vamos a tener nuestra recompensa cuando nos evitemos todos los problemas que comentas.
                                                    Sin duda un artículo muy interesante.

                                                    Daniel - 27/07/2022 responder

                                                    ¡Gracias Adolfo!

                                                  • Xavi - 18/08/2022 responder

                                                    Hola Daniel:
                                                    Me sumo a los otros lectores en darte la enhorabuena por tu interesante y prolijo artículo.
                                                    Aunque mi nivel de Linux es más bien escaso, desde casi siempre, con cualquier S.O. que haya manejado, he montado volúmenes separados (y a ser posible en diferente discos físicos) para los ficheros de sistema y para los datos, lo que me ha permitido «cagarla» muchas veces, pero sin comprometer la información importante.
                                                    Hace cosa de poco más de un año, aprovechando una reinstalación (después de una de esas cagadas) intenté hacer una versión adaptada de tu esquema de particionado. Y digo adaptada, porque mi PC tiene tres discos: un SSD de 250 Gb, para arranque y poco más, otro de 500 Gb, para pruebas, otros SO, etc. y dónde coloqué la mayoría de esas particiones que indicas en tu artículo, y un tercer disco de 2 Tb, donde guardo los datos (en su mayoría, pero no exclusivamente, fotografías).
                                                    El problema: pese a que hice una partición para /var de 35 Gb, esa se me llena cada cierto tiempo y aunque borre los log, solo recupero unos pocos gigas 3 o 4, a lo sumo, con lo que a los pocos días vuelvo a estar en las mismas. La última vez debí borrar alguna cosa más que no debía y ahora el equipo no me arranca. Ni siquiera he conseguido reparar el GRUB, con lo que me veo abocado a reinstalar Ubuntu de nuevo.
                                                    ¿Qué me puedes aconsejar respecto del llenado de la partición /var y que hacer cuando se me llene?
                                                    Gracias.
                                                    Saludos,
                                                    Xavi.

                                                    Daniel - 11/09/2022 responder

                                                    Con un espacio de 35 GB reservado para /var no deberías tener problemas de espacio. Muy probablemente hay algo ahí que te está ocupando más de la cuenta y que seguro que se puede eliminar. A veces es por logs, aunque esto ya lo has descartado, otras son los correos que manda el sistema entre los usuarios internos, y que se almacena en /var/spool/mail, otras es por uno o varios coredumps de gran tamaño almacenados en /var/lost+found o en /var/crash, también puede ser la cache de paquetes del sistema (lo cual se puede solucionar ejecutando el comando apt-get autoclean o apt-get clean, etc. etc.

                                                    Para saber cuál es la causa en tu caso concreto lo mejor es ejecutar el comando du -k | sort -n | tail -100 desde /var, el cual te dará una lista ordenada de los 100 ficheros y directorios que más ocupan dentro de /var. Una vez identificados los causantes del llenado podrás borrarlos o comprimirlos para liberar espacio.

                                                  • Juan - 20/10/2022 responder

                                                    Buenas tarde Daniel.
                                                    Ando un poco perdido.. soy nuevo y necesito montar un servidor de ficheros para usuarios.
                                                    Tengo 75 usuarios que van a almacenar sus ficheros en el servidor, me han dicho que a cada usuario le de máximo 2 GB para el /home de cada uno.
                                                    tengo un disco de 500GB y la verdad es que no se como particionarlo.
                                                    Muchas gracias y un saludo.

                                                  Deja una respuesta

                                                  Tu dirección de correo electrónico no será publicada.