Montaje de todas las particiones en el disco duro automáticamente en Linux Mint

14

Problema
Tengo una instalación de Linux Mint. Cada vez que inicio, necesito montar manualmente las dos particiones en mi computadora ( New volume Dy Drive C). Si no hago esto, estas unidades no aparecen en ningún lado. Quiero saber si hay alguna forma de automatizar este proceso.

Objetivo Montar
automáticamente todas las particiones en el disco duro cada vez que arranque.

Especificaciones
arranque dual Linux Mint 14 con Windows XP SP3

IcyFlame
fuente
Como se discutió en la respuesta anterior aceptada, el archivo / etc / fstab lo ayudará a lograrlo. Eche un vistazo a genfstab que, como se sugiere, utiliza blkid para crear uno automáticamente.
Rany Albeg Wein

Respuestas:

15

Puedes hacer esto a través del archivo /etc/fstab. Echa un vistazo a este enlace . Este tutorial también tiene buenos detalles.

Pasos de ejemplo

Primero debe averiguar el UUID de los discos duros. Puedes usar el comando blkidpara esto. Por ejemplo:

% sudo blkid
/dev/sda1: TYPE="ntfs" UUID="A0F0582EF0580CC2"
/dev/sda2: UUID="8c2da865-13f4-47a2-9c92-2f31738469e8" SEC_TYPE="ext2" TYPE="ext3"
/dev/sda3: TYPE="swap" UUID="5641913f-9bcc-4d8a-8bcb-ddfc3159e70f"
/dev/sda5: UUID="FAB008D6B0089AF1" TYPE="ntfs"
/dev/sdb1: UUID="32c61b65-f2f8-4041-a5d5-3d5ef4182723" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb2: UUID="41c22818-fbad-4da6-8196-c816df0b7aa8" SEC_TYPE="ext2" TYPE="ext3" 

El resultado del blkidcomando anterior se puede utilizar para identificar el disco duro al agregar entradas /etc/fstab.

A continuación, debe editar el /etc/fstabarchivo. Las líneas en este archivo están organizadas de la siguiente manera:

UUID={YOUR-UID}    {/path/to/mount/point}               {file-system-type}    defaults,errors=remount-ro 0       1

Ahora edite el archivo:

% sudo vi /etc/fstab

Y agregue un archivo como este, por ejemplo:

UUID=41c22818-fbad-4da6-8196-c816df0b7aa8  /disk2p2      ext3    defaults,errors=remount-ro 0       1

Guarde el archivo y luego reprocese el archivo con el mount -acomando.

Particiones de Windows

Para montar una partición ntfs, deberá hacer algo como esto en su /etc/fstabarchivo:

/dev/sda2   /mnt/excess ntfs-3g    permissions,locale=en_US.utf8    0   2
slm
fuente
las dos particiones /dev/sda5y dev/sda6no se enumeran en el fstabarchivo y en el blkidcomando. ¿por qué?
IcyFlame
bueno. Lo tengo. es porque es una partición de Windows que está en / media
IcyFlame
Las particiones de Windows necesitarán usar dev / sda * para montarlas, también necesitarán especificar ntfs-3g para el tipo de sistema de archivos, creo.
slm
14

Puedes hacer esto de la manera más simple. Ir:

  • Menú -> Discos (aplicación)
  • Seleccione el volumen que desea montar y haga clic en sus opciones
  • Seleccione "Editar opciones de montaje" -> Y asegúrese de seleccionar "Montar al inicio" en la unidad.
Arrendajo
fuente
En algún momento, la interfaz gráfica tiene sentido o es fácil hacer estas cosas.
Ramsharan
¡Oh, Holly S ***, bien!
felipsmartins
Solución Wysiwyg, mejor para principiantes.
Sandburg
1

Si tiene muchas particiones para montar, tal vez necesite un script como yo.


# ! python
# mount all partition by neoedmund
from subprocess import Popen
from subprocess import PIPE

def getCol(col, line):
    p1 = line.find(col)
    if p1<0 : return ""
    p2 = p1 + len(col) + 1
    p3 = line.find('"',p2+1)
    return line[p2+1:p3]

data_stream = Popen(["/bin/lsblk", "-P", "-o", "FSTYPE,UUID,MOUNTPOINT,KNAME"], stdout=PIPE)
data=[]
for line in data_stream.stdout:
    fstype = getCol("FSTYPE", line)
    if fstype=="": continue # no fs
    mountpoint = getCol("MOUNTPOINT", line)
    if mountpoint!="":continue  # already mounted   
    uuid = getCol("UUID", line)
    kname = getCol("KNAME", line)
    data.append((kname, uuid))

print("### mount script ###")
for (kname,uuid) in data:
    print("mkdir /media/%s-%s"%(kname, uuid))
    print("mount /dev/%s /media/%s-%s" %(kname, kname, uuid))

print("### umount script ###")
for (kname,uuid) in data:
    print("umount /dev/%s" %(kname))




Es un script de Python, depende de "/ bin / lsblk", guarda la salida en dos scripts de shell para mount y umount.

neoedmund
fuente
0
for i in $(lsblk -r |awk '{ print $1 }'|grep -v md |grep -v loop |grep .*[[:digit:]]|sort|uniq;); 
do
    if [ -z  "$(grep  $i /proc/mounts)" ]
    then  
        mkdir /mnt/$i;
        mount /dev/$i /mnt/$i
    fi
done
cobarde anónimo
fuente
2
Sería útil si pudiera explicar exactamente lo que hace su comando.
Dhag
Poner una secuencia enorme de comandos y estructuras de control en la misma línea realmente no hace que su código sea de una sola línea . Simplemente hace que sea más difícil de entender ...
John WH Smith
0

Copia de seguridad de fstab actual:

#cp -a /etc/fstab /etc/fstab.bk

procese la salida de lsblk -f usando sed y awk y redirija la salida a fstab:

#lsblk -f|sed 's/\[SWAP]/swap /g'|awk '/(-)/{printf"UUID=%-36s %-23s %-7s defaults 
           0 0\n", $3, ($4==""?mnt"NR:$4), $2}'>/etc/fstab

montar los nuevos puntos de montaje invocando

#mount -a
AVA
fuente