Handbook:Alpha/Blocks/Disks

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Handbook:Alpha/Blocks/Disks and the translation is 76% complete.


Particiones

Aunque es teóricamente posible usar un disco entero para alojar un sistema Linux, esto no es hecho casi nunca en la práctica. En cambio, los dispositivos de bloque enteros son divididos en pequeños y más manejables dispositivos de bloque. En sistemas Alpha, estos son llamados "particiones".

Nota
En las siguientes secciones, las instrucciones de instalación utilizarán el ejemplo de particionado para la configuración ARC/AlphaBIOS. Por favor, ajústelo a sus preferencias personales.

Designing a partition scheme

How many partitions and how big?

The number of partitions is highly dependent on the environment. For instance, if there are lots of users, then it is advised to have /home/ separate as it increases security and makes backups easier. If Gentoo is being installed to perform as a mail server, then /var/ should be separate as all mails are stored inside /var/. A good choice of filesystem will then maximize the performance. Game servers will have a separate /opt/ as most gaming servers are installed there. The reason is similar for the /home/ directory: security and backups. In most situations, /usr/ is to be kept big: not only will it contain the majority of applications, it typically also hosts the Gentoo ebuild repository (by default located at /var/db/repos/gentoo) which already takes around 650 MiB. This disk space estimate excludes the binpkgs/ and distfiles/ directories that are stored under /var/cache/ by default.

It very much depends on what the administrator wants to achieve. Separate partitions or volumes have the following advantages:

  • Choose the best performing filesystem for each partition or volume.
  • The entire system cannot run out of free space if one defunct tool is continuously writing files to a partition or volume.
  • If necessary, file system checks are reduced in time, as multiple checks can be done in parallel (although this advantage is more with multiple disks than it is with multiple partitions).
  • Security can be enhanced by mounting some partitions or volumes read-only, nosuid (setuid bits are ignored), noexec (executable bits are ignored), etc.

However, multiple partitions have disadvantages as well. If not configured properly, the system might have lots of free space on one partition and none on another. Another nuisance is that separate partitions - especially for important mount points like /usr/ or /var/ - often require the administrator to boot with an initramfs to mount the partition before other boot scripts start. This isn't always the case though, so results may vary.

There is also a 15-partition limit for SCSI and SATA unless the disk uses GPT labels.

What about swap space?

There is no perfect value for the swap partition. The purpose of swap space is to provide disk storage to the kernel when internal memory (RAM) is under pressure. A swap space allows for the kernel to move memory pages that are not likely to be accessed soon to disk (swap or page-out), freeing memory. Of course, if that memory is suddenly needed, these pages need to be put back in memory (page-in) which will take a while (as disks are very slow compared to internal memory).

When the system is not going to run memory intensive applications or the system has lots of memory available, then it probably does not need much swap space. However, swap space is also used to store the entire memory in case of hibernation. If the system is going to need hibernation, then a bigger swap space is necessary, often at least the amount of memory installed in the system.


Utilizar fdisk para particionar un disco (únicamente SRM)

En los siguientes párrafos se explica como crear el ejemplo del esquema de particiones para el SRM:

Particiones Descripción
/dev/sda1 Partición de intercambio
/dev/sda2 Partición raíz
/dev/sda3 Todo el disco (requerido)

Cambie el equema de particiones según sus preferencias particulares.

Identificar los discos disponibles

Para conocer los discos que están funcionando en el sistema, utilice las siguientes órdenes:

Para discos IDE:

root #dmesg | grep 'drive$'

Para discos SCSI:

root #dmesg | grep 'scsi'

La salida indicará los discos que se detectaro y su respectiva entrada en /dev/. En los siguientes párrafos asumiremos que el disco en uno SCSI en /dev/sda.

Ahora lance fdisk:

root #fdisk /dev/sda

Borrar todas las particiones

Si el disco está completamente vacío, deberá en primer lugar crear una etiqueta de disco BSD.

Command (m for help):b
/dev/sda contains no disklabel.
Do you want to create a disklabel? (y/n) y
A bunch of drive-specific info will show here
3 partitions:
#       start       end      size     fstype   [fsize bsize   cpg]                                    
  c:        1      5290*     5289*    unused        0     0

Comenzaremos eliminando todas las particiones excepto la partición 'c' (es un requisito para utilizar las etiquetas BSD). A continuación se muestra la forma de eliminar una partición (en el ejemplo utilizamos 'a'). Repita el proceso hasta borrar el resto de particiones (recuerde no eliminar la partición 'c').

Utilice la tecla p para ver las particiones existentes. La tecla d se usa para eliminar una partición.

BSD disklabel command (m for help):p
8 partitions:
#       start       end      size     fstype   [fsize bsize   cpg]                                    
  a:        1       235*      234*    4.2BSD     1024  8192    16
  b:      235*      469*      234*      swap
  c:        1      5290*     5289*    unused        0     0
  d:      469*     2076*     1607*    unused        0     0
  e:     2076*     3683*     1607*    unused        0     0
  f:     3683*     5290*     1607*    unused        0     0
  g:      469*     1749*     1280     4.2BSD     1024  8192    16
  h:     1749*     5290*     3541*    unused        0     0
BSD disklabel command (m for help):d
Partition (a-h): a

Después de repetir el proceso para todas la particiones, el listado debería mostrar algo como lo siguiente:

BSD disklabel command (m for help):p
3 partitions:
#       start       end      size     fstype   [fsize bsize   cpg]                                    
  c:        1      5290*     5289*    unused        0     0

Crear la partición de intercambio

En dispositivo basados en Alpha no es necesario disponer de una partición distinta para arrancar. Sin embargo, el primer cilindro no se puede utilizar como la imagen aboot que se colocará allí.

We will create a swap slice starting at the third cylinder, with a total size of 1 GB. Use n to create a new slice. After creating the slice, we will change its type to 1 (one), meaning swap.

BSD disklabel command (m for help):n
Partition (a-p): a
First cylinder (1-5290, default 1): 3
Last cylinder or +size or +sizeM or +sizeK (3-5290, default 5290): +1024M
BSD disklabel command (m for help):t
Partition (a-c): a
Hex code (type L to list codes): 1

After these steps a layout similar to the following should be shown:

BSD disklabel command (m for help):p
3 partitions:
#       start       end      size     fstype   [fsize bsize   cpg]                                    
  a:        3      1003      1001       swap
  c:        1      5290*     5289*    unused        0     0

Crear la partición raíz

We will now create the root slice, starting from the first cylinder after the swap slice. Use the p command to view where the swap slice ends. In our example, this is at 1003, making the root slice start at 1004.

Another problem is that there is currently a bug in fdisk making it think the number of available cylinders is one above the real number of cylinders. In other words, when asked for the last cylinder, decrease the cylinder number (in this example: 5290) with one.

When the slice is created, we change the type to 8, for ext2.

BSD disklabel command (m for help):n
Partition (a-p): b
First cylinder (1-5290, default 1): 1004
Last cylinder or +size or +sizeM or +sizeK (1004-5290, default 5290): 5289
BSD disklabel command (m for help):t
Partition (a-c): b
Hex code (type L to list codes): 8

El esquema de particiones resultante debería ser similar al siguiente:

BSD disklabel command (m for help):p
3 partitions:
#       start       end      size     fstype   [fsize bsize   cpg]                                    
  a:        3      1003      1001       swap
  b:     1004      5289      4286       ext2
  c:        1      5290*     5289*    unused        0     0

Guarde el esquema de particiones y salga

Exit the fdisk application by typing w. This will also save the slice layout.

Command (m for help):w

Using fdisk to partition the disk (ARC/AlphaBIOS only)

The following parts explain how to create the example partition layout for ARC/AlphaBIOS:

Partición Descripción
/dev/sda1 Partición de arranque
/dev/sda2 Partición de intercambio
/dev/sda3 Partición raíz

Change the partition layout according to personal preference.

Identifying the available disks

To figure out what disks are running, use the following commands:

Para discos IDE:

root #dmesg | grep 'drive$'

Para discos SCSI:

root #dmesg | grep 'scsi'

From this output it should be easy to see what disks were detected and their respective /dev/ entry. In the following parts we assume that the disk is a SCSI disk on /dev/sda.

Now fire up fdisk:

root #fdisk /dev/sda

Deleting all partitions

If the hard drive is completely blank, then first create a DOS disklabel.

Command (m for help):o
Building a new DOS disklabel.

We start with deleting all partitions. The following shows how to delete a partition (in the example we use '1'). Repeat the process to delete all other partitions.

Utilice la tecla p para mostrar las particone existentes. La tecla d se usa para eliminar una partición.

command (m for help):p
Disk /dev/sda: 9150 MB, 9150996480 bytes
64 heads, 32 sectors/track, 8727 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
  
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1         478      489456   83  Linux
/dev/sda2             479        8727     8446976    5  Extended
/dev/sda5             479        1433      977904   83  Linux Swap
/dev/sda6            1434        8727     7469040   83  Linux
command (m for help):d
Partition number (1-6): 1

Crear la partición de arranque

On Alpha systems which use MILO to boot, we have to create a small vfat boot partition.

Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-8727, default 1): 1
Last cylinder or +size or +sizeM or +sizeK (1-8727, default 8727): +16M
Command (m for help):t
Selected partition 1
Hex code (type L to list codes): 6
Changed system type of partition 1 to 6 (FAT16)

Crear la partición de intercambio

We will create a swap partition with a total size of 1 GB. Use n to create a new partition.

Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (17-8727, default 17): 17
Last cylinder or +size or +sizeM or +sizeK (17-8727, default 8727): +1000M
Command (m for help):t
Partition number (1-4): 2
Hex code (type L to list codes): 82
Changed system type of partition 2 to 82 (Linux swap)

Una vez realizados estos pasos, se mostrará un esquema similar al siguiente:

Command (m for help):p
Disk /dev/sda: 9150 MB, 9150996480 bytes
64 heads, 32 sectors/track, 8727 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
  
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          16       16368    6  FAT16
/dev/sda2              17         971      977920   82  Linux swap

Crear la partición raíz

We will now create the root partition. Again, just use the n command.

Command (m for help):n
Command action
  e   extended
  p   primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (972-8727, default 972): 972
Last cylinder or +size or +sizeM or +sizeK (972-8727, default 8727): 8727

After these steps a layout similar to the following should be shown:

Command (m for help):p
Disk /dev/sda: 9150 MB, 9150996480 bytes
64 heads, 32 sectors/track, 8727 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
  
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          16       16368    6  FAT16
/dev/sda2              17         971      977920   82  Linux swap
/dev/sda3             972        8727     7942144   83  Linux

Guardar el esquema de particiones y salir

Guarde los cambios realizados en fdisk tecleando w.

Command (m for help):w

Now that the partitions are created, continue with Creating filesystems.