Gracias Gracias:  2
Me Gusta Me Gusta:  2
No me Gusta No me Gusta:  0
Mostrando resultados del 1 al 6 de 6

Tema: Cómo distribuir el disco estratégicamente v2019

  1. #1
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    Cómo distribuir el disco estratégicamente v2019

    Allá por 2011 escribí un pequeño artículo con el pretencioso nombre: "Cómo distribuir el disco estratégicamente", que pretendía dar énfasis en que se puede adaptar con relativa facilidad el reparto del espacio disponible en nuestros discos duros. Eso fue en 2011.

    Pronto openSUSE (y SUSE detrás) adoptó btrfs como sistema de ficheros por defecto para la raíz. Entonces cambiaron un montón de cosas, dado que el sistema de fichero era bastante nuevo y tenía muchas limitaciones que se acababan convirtiendo en problemas. Uno no menor era la imposibilidad de determinar el espacio libre existente realmente en nuestra partición raíz.

    También bajaron de precio sustancialmente los discos SSD, pero no lo suficiente como para competir con los HDD; esto hace que cada vez sea más habitual enfoques mixtos, con un SSD para el sistema y un HDD para nuestros datos y ficheros. La generalización de redes de conexión a InterNET de muy alta capacidad y de dispositivos móviles (tablets, smartphones, androidTV, etc.) nos ha empujado hacia el streaming, reduciendo notablemente nuestra demanda de espacio para ficheros multimedia, aunque al mismo tiempo consideraciones de privacidad y seguridad nos empujan a crear nubes domésticas.

    El objetivo de este documento no es dar respuestas a todas estas circunstancias, sino simplemente modernizar el artículo anterior para que sea útil en 2019. Al menos, hasta nueva orden.

    índice
    0. El problema del espacio.
    1. Estableciendo el uso.

    2. La memoria y la swap
    2.1 Añadir swap
    2.2 ¿y usar varias swap?
    3. Dividir el disco
    3.1 Particiones: cuestiones generales
    3.2 Volúmenes: cuestiones generales

    3.3 Convivir con el enemigo: NTFS
    3.4 Ejemplo práctico I: basado en particiones
    3.4.1 De cuando el espacio está ocupado
    3.4.2 De cuando el disco está vacio

    3.4.3 ¿Particiones extendidas, primarias o lógicas?

    3.4.4 Ejemplo de particionado

    3.4.5 Ventajas e inconvenientes
    3.5 Ejemplo práctico II: basado en volúmenes
    3.5.1 Partición Personalizada
    3.5.2 Ventajas e Inconvenientes
    4. Criptografía
    5. Ejemplo práctico III: sistema con raíz cifrada
    5.1 Antecedentes
    5.2 Particionando el disco
    5.3 Creando las particiones
    5.4 Creando el volumen
    5.5 Creando los volúmenes lógicos
    6. La necesidad de crecer
    6.1 Modificar particiones
    6.2 Sistemas de Archivos
    6.3 Sobre el Montaje de Dispositivos
    6.3.1 Nombres de dispositivos
    6.3.2 udev: añadiendo dinamismo
    6.3.3 Y más allá...
    6.4 El problema de añadir espacio
    6.5 fdisk: introducción
    6.6 Ejemplo Práctico IV: añadir espacio con una partición
    (en curso)

  2. Gracias victorhck, mikrios ha agradecido este mensaje
    Me Gusta victorhck, mikrios le ha gustado este mensaje
  3. #2
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    0. El problema del espacio

    Axioma 1: todo espacio de disco tiende a llenarse; toda memoria libre tiende a llenarse.

    Quizás lo primero que deberíamos hacer es establecer es un hecho: las preguntas que se hacen en relación al espacio que debe destinarse a cada partición en una instalación GNU/Linux es incompleta. Debería ser algo como: "para un uso determinado, ¿cuál es el modo de particionado más eficiente?". Así podemos enfrentar el problema más directamente. Empezaremos por cuestionarnos los usos y hábitos de los sistemas GNU/Linux, y en otra sección trataremos ampliamente la cuestión de la eficiencia y de qué estrategias podemos valernos.

    En el documento usaré varios conceptos que he descrito en algunos temas que se pueden consultar en el foro, o en otros manuales, la wikipedia, etc. Llamaré la atención sobre varios:

    * espacio de disco: es la cantidad de espacio que un disco, habitualmente un disco duro, tiene disponible para el sistema. Esta cantidad depende de la organización física del propio disco duro, pero también del tipo sistema de archivos que se utilice. A mayores, la creación de particiones lógicas también consume espacio, ya que en algún lado debe guardarse dicho particionado(1). Hay otras consideraciones menores que pueden observarse en algún documento técnico. En la wikipedia podéis ver informaciones sobre el funcionamiento y los diferentes tipos de discos duros. Los HDD son dispositivos mecánicos que constan de varios discos que van rotando mientras que los SSD son discos sólidos que no se mueven.

    * sistema de ficheros: organización jerárquica de la información en un sistema operativo. En los sistemas "Unix-like" hay una raíz de la que cuelgan diversas carpetas, entre ellas /home, /usr, etc., que a su vez contienen otras o archivos, y así sucesivamente formando una especie de árbol invertido. Podemos pensar que cada sistema de ficheros se corresponde con las ramas principales del sistema, y muchos de ellos no tienen siquiera por qué estar en el mismo dispositivo. De hecho, lo usual es tener al menos dos sistemas de ficheros en dispositivos separados: / y /home (habitualmente para un usuario doméstico esto significa que están en particiones distintas dentro del mismo disco duro)

    * sistema de archivos: organización de los diversos archivos que componen el sistema, incluida su localización, posibles propiedades o permisos, etc. Para evitar ambigüedades, suelo hablar de tipo de sistema de archivos. Los más usuales son ext4, xfs y btrfs, junto con NTFS que se utiliza en sistemas Windows. Hace años diversos fabricantes nos devolvieron a la pesadilla de convivir con FAT (vfat), que hoy suele utilizarse en pendrives, cámaras digitales, etc. aunque hoy ya se utilizan otros sistemas como NFTS.

    * tabla de particiones: fichero que contiene una tabla con el particionado del disco. En los PC tenemos dos tipos de tablas de particiones: el viejo estilo, a veces llamado "tabla de particiones MS-DOS" por haber sido popularizado por ese sistema operativo. Contiene un máximo de 4 particiones primarias, aunque es posible definir una de ellas como de "tipo extendido", lo cual nos permite crear varias particiones dentro de ella llamadas "lógicas"; y el sistema moderno llamado GPT, que permite disponer muchas particiones primarias.

    (1) En el sistema tradicional de ficheros MS-DOS la tabla de particiones consta de 4 registros con unos pocos campos. En cada registro se guarda una de las particiones existentes y eso nos da un máximo de cuatro particiones. El sistema tradicional permite usar un tipo de partición especial denominado "extendida". En este tipo de partición, dentro de ella se pueden hacer divisiones similares a las particiones (llamadas particiones lógicas). Como la partición extendida se guarda en un registro que solo tiene sitio para almacenar dónde empieza y dónde acaba, la localización física de las particiones lógicas debe de guardarse dentro de la partición extendida.

  4. #3
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    1. Estableciendo el uso del almacenamiento

    Axioma 2: Si todo lo que tienes en la mano es un martillo, cualquier cosa que veas parecerá un clavo.

    Todos comenzamos nuestra singladura en un sistema nuevo asumiendo que nuestras necesidades son más o menos las mismas que las de todos los demás; si acaso, podemos pretender que, puesto que somos nuevos, quizás tengamos más dificultades para comprender ciertas cosas que usuarios más veteranos den por sentadas, y casi con total seguridad pretendamos consejos claros y concretos.

    Generalmente, tales usuarios más veteranos nos dirán que la mejor configuración de nuestro sistema dependerá del uso que le vayamos a dar. Es posible que en algunos foros quien escribe eso tenga una experiencia fructífera con un viejo Pentium en el que usa vim para desarrollar aplicaciones, tiene un gestor de correos, quizás un navegador y poco más. O puede que nos lo diga alguien que dispone de un potente equipo para disfrutar de los últimos juegos ¡no olvides una buena gráfica!!, pareciera gritar aun cuando no lo ponga por escrito.

    Y es que necesitamos tener una idea de qué vamos a hacer con nuestro equipo antes de buscar una receta para usar. Un usuario de aplicaciones CAD puede necesitar mucho espacio para ellas; un usuario que simplemente se conecte a internet -si acaso, LibreOffice para los adjuntos que nos mandan por correo- puede arreglárselas con 1 GiB. De forma similar, resolver ecuaciones diferenciales o compilar puede exigir cantidades ingentes de memoria, que puede que sólo podamos alcanzar mediante una buena swap; sin embargo, las aplicaciones precisas para hacer esos cálculos necesitarían muy poco espacio!!

    Es buena idea dedicar unos minutos a pensar en qué aplicaciones se quiere usar, o al menos en qué tipos: suites ofimáticas, navegadores, aplicaciones multimedia. Esta reflexión nos puede indicar no sólo una idea del espacio necesario para instalar lo que necesitamos, sinó también cuánta memoria necesitamos y como combinar RAM y swap para cubrir nuestras necesidades.

    Importante!!!
    tanto para el espacio de disco como para el de RAM, poco espacio libre puede ralentizar el sistema, y quedarse sin él significa que el sistema caerá.
    Aquí algunos ejemplos del espacio de disco ocupado por algunas aplicaciones, teniendo en cuenta que puede variar entre versiones. Hay que tener en cuenta que sólo se hace referencia a los paquetes que componen tal aplicación: muchas librerías compartidas podrían ser necesarias y habría que sumarlas. Por ejemplo, para usar kcalc al menos hay que tener QT y ciertas librerías de KDE, y, naturalmente, algún sistema gráfico.

    Téngase también en cuenta que en total una instalación estándar, esto es, después de concluir la instalación, debería ocupar unos 4,5 GiB. Con códecs multimedia y los pequeños ajustes típicos, debería sumar menos de, aproximadamente, 5 GiB.

    En la sección 3 añadiré un inciso sobre los archivos temporales. El ejemplo más obvio es copiar un CD para grabarlo en otro usando la misma grabadora. En este caso, necesitaremos alberbar la imagen temporal del CD en algún lugar. Más obvia se hará esta necesidad si pensamos que pueda que queramos probar que el CD ha sido grabado correctamente, o si por cualquier motivo queremos hacer más copias del CD. También es preciso disponer espacio para modificar archivos de configuración, naturalmente. Si tienes el 100% de la raíz ocupada, no podrás, por ejemplo, añadir una línea a un archivo de configuración que necesites modificar. La conclusión de esto es que necesitas tener disponible el espacio que ocupan físicamente las aplicaciones y el espacio necesario para que funcionen.

    En cuanto al espacio necesario en RAM, puede ser muy variable en función del uso. Por ejemplo, mientras escribía esto mismo en 2011 mi Firefox hacía uso de unos 100 MiB; hoy me requiere unos 700 MiB. Sin embargo, si abres unos cuantos vídeos en distintas pestañas, puedes necesitar 1GiB e incluso más, en función del tamaño de cada vídeo. Calcular la cantidad de memoria adecuada para un sistema dado es algo que cuesta aún cuando se tenga mucha experiencia en dicho sistema.

  5. #4
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    2. La memoria y la swap

    Axioma 3: No sirve de nada usar una agenda para acordarse de las cosas, si después no recuerdas que usas una agenda para recordar las cosas.

    La memoria es uno de los elementos más importantes de un sistema, ya que afecta directamente al rendimiento del equipo. A modo de ejemplo, puedes pensar que una memoria RAM es 100 veces más rápida que un disco duro. Un vistazo a la wikipedia puede dotarte de contexto
    (1)

    En rigor, un sistema operativo trata con procesos(2). Un proceso no es más que una colección de instrucciones que forma parte de un programa y una información accesoria para que el sistema operativo de turno sepa qué hacer con él. Entre esa información, figura la localización en memoria de los datos con los que deba de trabajar. Otra información puede ser por ejemplo el usuario de dicho proceso, la lista de recursos que necesita, etc.

    La Memoria Virtual es un mecanismo que permite extender la memoria principal (RAM) de un computador. En el hilo Micro Manual de Linux I: gestión de memoria en Linux se describen brevemente los principales aspectos del uso de memoria principal. A efectos de este documento, lo importante es el concepto de swap como un espacio de disco utilizado para extender la memoria principal del sistema y que el computador debe disponer de una memoria total suficiente para ejecutar los procesos que necesite ejecutar, disponiendo de los datos que necesiten tales procesos en la propia memoria. El funcionamiento se puede describir así:


    1. el sistema operativo carga en memoria el proceso a ejecutar.
    2. cuando le corresponde ejecutarse, el proceso busca los datos en memoria.
    3. si encuentra los datos, se ejecuta el proceso.
    4. si no encuentra los datos en memoria, los busca en la memoria virtual.
    5. si hay espacio en memoria, se cargan los datos y se ejecuta el punto 3.
    6. si no hay espacio en memoria, el sistema operativo debe de descargar algún proceso para hacer sitio.
    7. si consigue espacio suficiente, ejecuta el punto 3.
    8. si no consigue hacer espacio, falla.

    En este octavo punto, lo más habitual es que se pare el sistema. Así que tener RAM suficiente para ejecutar todos los procesos que deban ser ejecutados en cada momento dado es importante, como también lo es tener swap suficiente para poder mover los procesos entre RAM y disco cuando sea necesario: el sistema busca en memoria o en swap; si no tiene espacio en ninguno de los dos para cargar un proceso o sus datos, fallará igualmente.

    Esta cuestión es, como se ve, tan importante que han corrido ríos de tinta sobre ella. GNU/Linux, sin embargo, proporciona a los usuarios experimentados recursos que pueden facilitar en gran medida la gestión de su sistema. En particular, puedes crear swaps en caliente y añadirlas al sistema cuando se requiera.

    Esto no es mucho consuelo para un usuario sin experiencia en GNU/Linux, ya que sólo desplaza la cuestión. Uno podría, legítimamente, pensar "¿y cómo demonios sé yo cuándo necesito más swap?" Esto tiene una respuesta fácil que en principio puede no ser del agrado de tal usuario: experiencia.

    ¿Cómo se consigue experiencia? En este caso, lo suyo es disponer de memoria swap suficiente y monitorizar su uso de vez en cuando. Cuando ya llevamos unos meses trabajando con el sistema y tenemos una idea bien clara del uso que le damos, podremos hacer una estimación de nuestras necesidades.

    Por ejemplo, si renderizamos una escena 3D o resolvemos ecuaciones complejas, o compilamos aplicaciones un poco grandes, con toda probabilidad necesitaremos bastante swap en dichos momentos. Así que, mientras hacemos dichas tareas, podemos observar el consumo de recursos (memoria y swap) e ir estableciendo unos límites. Por supuesto, la swap no sustituye a la RAM: si el uso de la swap es muy continuado y elevado, lo que necesitamos es aumentar la RAM disponible.

    Hay muchas sugerencias para tratar de encontrar un buen tamaño para una swap al primer intento. Por ejemplo, la documentación de Red Hat de 2011 para rhel indicaba:

    hasta 4 GB - al menos 2 GB
    4 hasta 16 - al menos 4 GB
    16 hasta 64 - al menos 8 GB
    64 hasta 256 - al menos 16 GB


    Pero no os dejéis llevar por los números, sean estas u otras recomendaciones. Yo en 2011 tenía un equipo con 1 GB RAM y una swap de 1,5... y la swap raramente llegaba al 15%... ¡lo que necesitaba realmente, para que fuera más rápido, era más RAM!!!!!(3) Hoy los equipos más habituales a la venta tienen un mínimo de 8 GiB que para la mayoría de usuarios serán suficientes y no requieren usar swap.


    No puedo menos que recalcar que el término memoria virtual a veces es un pelín engañoso: la swap no actúa como una extensión de la memoria principal, como se dice en muchos lugares; en su lugar, la swap es más bien una suerte de "memoria intermedia". El procesador no puede, en ningún caso, acceder directamente a la swap: lo que necesite utilizarse, ha de ser copiado necesariamente a la memoria principal. En la swap se guardan, eso sí, los procesos y datos ya de la misma forma que estarían almacenados en memoria. Esto significa que usar swap en GNU/Linux significa intercambiar páginas entre la memoria principal y la memoria virtual, donde cada página contiene un proceso o una parte de él.

    (1) https://es.wikipedia.org/wiki/Memori...m%C3%A1tica%29
    (2) https://es.wikipedia.org/wiki/Proces...m%C3%A1tica%29
    (3) A menos que necesites hibernar el sistema, que por definición se hará en la partición swap y habrá entonces de contener al menos todo el contenido de la memoria RAM.

  6. #5
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    2.1 Añadir swap a nuestro sistema

    Si necesitamos incrementar la swap disponible de forma muy puntual, lo sensato es añadir un dispositivo swap en ese momento en lugar de tener una swap de tamaño mucho mayor del necesario. Crear una swap es sencillo. En openSUSE puedes usar el gestor de particiones de YAST, o cualquier otro gestor de particiones al uso. También puedes usar la línea de comandos para esto.

    En la web podemos encontrar cómo se hace esto con comandos. Hay dos casos posibles: usar partición o usar un archivo de intercambio.

    En esta web, por ejemplo se explica cómo se hace. En esta web se explica cómo se crean con ánimo de mantenerlas en el sistema. Naturalmente, si lo que pretendemos es, como dije más arriba, usarla puntualmente, lo que tenemos que hacer es no añadir la línea en /etc/fstab para que se monte en el arranque (punto 5).

    ¿Y si no necesitamos ya esa swap? para desmontarla, basta con usar el comando swapoff. Siguiendo el ejemplo de dicha web:
    Código:
    swapoff /tmp/swap
    La partición swap es siempre preferible al archivo swap, pero tiene el lógico inconveniente de que necesitas tener espacio para crearla; el archivo, sin embargo, puedes crearlo en cualquier punto del sistema de ficheros. GNU/Linux por defecto usa partición, mientras que Windows por defecto usa archivo, si bien ambos sistemas pueden utilizar ambas técnicas.

  7. #6
    Fecha de Ingreso
    07-febrero-2007
    Ubicación
    Ourense
    Mensajes
    8.643
    Post Thanks / Like
    Poder de Credibilidad
    22

    2.2 ¿y usar varias swaps?

    Hay varios motivos para usar varias swap, además del caso de necesitar añadir una swap de forma puntual:

    1. Disponer de varios discos duros: es posible que sea más eficiente tener los distintos sistemas de ficheros repartidos por todos los discos, ya que el tiempo medio para encontrar algo en varios discos es menor que en uno, ya que puedes hacer varias cosas a la vez en lugar de hacerlas de una en una. El rendimiento real de hacer esto es cierto que es discutible.

    2. Si tenemos un sistema basado en particiones, es posible que queramos usar dos swaps. Si tengo 3 GiB de RAM, por ejemplo, puedo crear una swap de 1,5 GiB por un lado y otra de 1,5 GiB al final del disco. Si, efectivamente, con el tiempo observo que es suficiente con la primera, será sencillo eliminar la última y extender la partición anterior para aprovechar ese espacio.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Temas Similares

  1. Usar HD SSD como disco principal
    By Pepetops in forum Hardware
    Respuestas: 16
    Último mensaje: 24-oct-2016, 08:26
  2. Cómo distribuir el disco duro estratégicamente
    By karlggest in forum FAQs, Manuales y Tutoriales
    Respuestas: 47
    Último mensaje: 15-jul-2011, 15:27
  3. como ver el espacio libre del disco
    By vizen in forum General OpenSUSE
    Respuestas: 4
    Último mensaje: 01-mar-2007, 23:48
  4. Como botear a otro disco?
    By drdiegote in forum Instalación y Actualizaciones
    Respuestas: 4
    Último mensaje: 29-sep-2006, 21:47
  5. Como sacar un disco a un RAID 0....
    By Magillon in forum General OpenSUSE
    Respuestas: 1
    Último mensaje: 07-abr-2006, 13:32

Marcadores

Normas de Publicación

  • No puedes crear nuevos temas
  • No puedes responder mensajes
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •