Cómo crear un fichero SWAP (no una partición)

A veces tienes contratado un sistema remoto que no te permite modificar las particiones ni ampliar la RAM, pero necesitas más. La solución más sencilla sería una partición Swap, pero al no poder hacer particiones… ¿Qué puedes hacer? Pues un fichero Swap.

Gracias al Swap FAQ de Ubuntu os pongo una guía bien sencilla (sirve para cualquier distribución).

Continúa leyendo Cómo crear un fichero SWAP (no una partición)

Quitar tamaño a partición LVM Swap y dárselo a la partición raíz

Tengo una partición Swap en LVM de 6 GB que quiero cambiar a 2 GB.

# swapoff /dev/mapper/fedora-swap
# lvm lvresize --size 2G /dev/mapper/fedora-swap
# mkswap /dev/mapper/fedora-swap
# swapon /dev/mapper/fedora-swap

Ahora quiero asignar el espacio sobrante a la partición raíz.

# lvm lvresize --extents +100%FREE --resizefs /dev/mapper/fedora-root

Insatalar ownCloud en CentOS

Una vez montado el servidor CentOS 6 a mi gusto, ahora voy a configurar ownCloud a mi gusto también. Descargar repositorio comunitario de ownCloud, ya que no está en los de CentOS, e instalarlo:

# cd /etc/yum.repos.d
# wget http://download.opensuse.org/repositories/isv:/ownCloud:/community/CentOS_CentOS-6/isv:ownCloud:community.repo
# yum install owncloud-3rdparty

Crear una partición ext4 para los datos de ownCloud:

# lvm lvcreate --size 10G --name owncloud_data vg_srv
# mkfs -T ext4 /def/mapper/vg_srv-owncloud_data

Añadirla a fstab para que se monte automáticamente, y montarla:

# echo "/dev/mapper/vg_srv-owncloud_data /var/www/html/owncloud/data ext4 defaults 1 3" >> /etc/fstab
# mount /dev/mapper/vg_srv-owncloud_data

Asignarle corregir el usuario y permisos de la partición:

# chown apache:apache /var/www/html/owncloud/data
# chmod -R ug=rwx,o= /var/www/html/owncloud/data

Corregir el contexto SELinux (ponerle el mismo que el que tiene la carpeta config):

# chcon --reference /var/www/html/owncloud/config /var/www/html/owncloud/data

Cómo reducir el tamaño de la partición (volumen lógico) LVM root

¿Qué es LVM?

Ya existen explicaciones técnicas, así que simplemente digamos que permite usar el total de tus discos duros a tu antojo, pudiendo cambiar el tamaño de las particiones sin reiniciar la máquina, hacer snapshots, o haciendo particiones repartidas en varios discos duros. Estas son solo algunas de las ventajas que ofrece.

Por ejemplo, si te quedas sin espacio en los discos duros, añades otro más, expandes el volumen lógico (la partición), y es como si tuvieras un solo disco duro más grande.

Cambiando el tamaño de la partición raíz

En mi caso quería reducir el tamaño del volumen lógico usado por la partición raíz (/), para asignarlo a una nueva partición.

Para ello primero necesito saber cuánto tiene ocupado, para no quitarle más de lo necesario:

$ df --human-readable
S.ficheros Size Used Avail Use% Montado en
/dev/mapper/vg_srv-lv_root
49G 2,1G 46G 5% /
tmpfs 496M 0 496M 0% /dev/shm
/dev/sda1 485M 52M 408M 12% /boot
/dev/mapper/vg_srv-lv_home
4,8G 138M 4,4G 3% /home

De modo que en vg_rsv-lv_root tengo usados 2,1GB y me sobran 46GB. La dejaré con 5GB, que debería sobrarme, y aprovecharé el resto del espacio.

Sin embargo, mientras que para aumentar el tamaño de una partición no hace falta desmontarla (si usas un sistema de ficheros que lo soporte, como ext3/4), para reducirlo sí. Claro, no puedo desmontar / o me quedo sin ordenador.

Para solventar este problema, inserta el CD Live de la distro que instalaste y arranca sin montar ningún disco. En mi caso usé CentOS, así que reiniciaré con el CD metido y seleccionaré la opción Boot (Text Mode). Cuando arranque me pedirá un usuario, que será root, sin contraseña. Ahora sí que podré reducir el tamaño de la partición raíz a mi antojo.

# lvm lvresize --resizefs --size 5G vg_srv/lv_root

Nota que para referirme a la partición he usado una ruta especial de LVM, que es grupo-de-volúmenes/volumen-lógico, pero podríamos haber usado la ruta física como /dev/mapper/vg_srv-lv_root.

Hecho esto, saca el CD, reinicia, y ya deberías tener tu nueva partición raíz de 5GB.

Ahora puedes seguir estas instrucciones para crear nuevos volúmenes lógicos y aprovechar ese espacio.