Solo tengo acceso a la línea de comandos.
Necesito hacer una copia de seguridad de mis datos (en la carpeta de usuario) en un lápiz (USB DOK).
- ¿Cómo puedo montar una unidad flash manualmente?
- ¿Cuál debería ser el comando de copia?
Solo tengo acceso a la línea de comandos.
Necesito hacer una copia de seguridad de mis datos (en la carpeta de usuario) en un lápiz (USB DOK).
Necesitarás saber cómo se llama la unidad para montarla. Para hacer eso, dispare uno de los siguientes (clasificados en orden de preferencia):
lsblksudo blkidsudo fdisk -l
Está buscando una partición que debería verse algo como: /dev/sdb1
. Cuantos más discos tenga, mayor será la letra que probablemente sea. De todos modos, encuéntralo y recuerda cómo se llama.
Esto debe montarse en el sistema de archivos en algún lugar. Por lo general, puede usar /mnt / si es vago y no hay nada más montado allí, pero de lo contrario querrá crear un nuevo directorio:
sudo mkdir /media/usb
sudo mount /dev/sdb1 /media/usb
Cuando hayas terminado, solo dispara:
sudo umount /media/usb
Esta respuesta tiene casi 6 años y, aunque su núcleo aún funciona, cosas como fdisk -l
no son las opciones más fáciles de usar. También hay nuevos mecanismos en pilas más altas para montar dispositivos de una manera sensata y estándar que puede que no siempre estén disponibles.
Así que he añadido un poco de pulido de las otras respuestas. Mientras lee esta nota a pie de página y lo hace en un sistema de escritorio, definitivamente hay argumentos a favor utilizar udisksctl
, según la respuesta de wecac. Esto se monta de la misma manera que lo hace el escritorio: creando el suyo propio /media/$USER/device
directorio - pero creo que todavía hay argumentos para un punto de montaje estático, especialmente cuando no desea que cambie la ruta.
Udisks también se basa en D-Bus, por lo que es posible que no esté disponible en todas partes.
pmount
/ pumount
Instalar pmount
. Monta discos en /media/
pmount /dev/sdb1pumount /dev/sdb1
No sudo
necesario.
Reemplace "sdb1" con la ruta de su dispositivo específico. Para obtener más información, consulte el manual:
pmount ("policy mount") is a wrapper around the standard mount programwhich permits normal users to mount removable devices without a match-ing /etc/fstab entry.pmount is invoked like this:pmount device [ label ]This will mount device to a directory below /media if policy is met(see below). If label is given, the mount point will be /media/label,otherwise it will be /media/device.
Utilizar udisksctl
del paquete=udisks2
(tanto en Ubuntu como en Debian). El procedimiento es:
Encontrar el ID del dispositivo de bloque que desea montar, utilizando lsblk
:
user@machine:~$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 1.8T 0 disk├─sda1 8:1 0 19.1M 0 part /boot/efi├─sda2 8:2 0 1.8T 0 part└─sda3 8:3 0 16G 0 part [SWAP]sdb 8:16 0 931.5G 0 disk├─sdb1 8:17 0 37M 0 part├─sdb2 8:18 0 15.9G 0 part [SWAP]└─sdb3 8:19 0 915.7G 0 part /sdc 8:32 1 14.4G 0 disk└─sdc1 8:33 1 14.4G 0 partsdd 8:48 0 1.8T 0 disk└─sdd1 8:49 0 1.8T 0 part
Por su tamaño, /dev/sdc1
parece ser la unidad USB que quiero montar.
Utilizar udisksctl
para montar el dispositivo. Tenga en cuenta que -b
== --block-device
(para reducir la tipificación) pero prefiero opciones largas para la documentación:
user@machine:~$ udisksctl mount --block-device /dev/sdc1==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount ===Authentication is required to mount Kingston DT microDuo 3C (/dev/sdc1)Multiple identities can be used for authentication: 1. XXXXX,,, (user) 2. ,,, (YYYYY)Choose identity to authenticate as (1-2): 1Password:==== AUTHENTICATION COMPLETE ===Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.
Dirigiéndose a Hans Deragon comente a continuación: también se puede decir udisksctl
hacer --no-user-interaction
. No intenta autenticar al usuario, lo que generalmente "simplemente funciona":
user@machine:~$ udisksctl mount --block-device /dev/sdc1 --no-user-interaction# possibly some complaining here about I/O charset or need to run `fsck`Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.
Además de utilizar el estándar mount
comando (que requiere root) puede montar unidades usando udisks
y dbus
con su usuario estándar.
Para hacer esto, es útil (pero no obligatorio) saber algunas cosas sobre la unidad primero:
/dev/sdb1
)Sabiendo esto, puede usar un comando simple para montar una unidad desde la línea de comandos.
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemMount "<filesystem>" []
esta llamada debe hacer eco de la ruta en la que se monta si el montaje se realiza correctamente.
Para desmontar las unidades montadas de esta manera, puede ejecutar:
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemUnmount []
N.B. el <device>
es simplemente el final del camino hacia él. Entonces, por ejemplo, si lo que desea montar está en /dev/sdb2
entonces pondrías sdb2
en lugar de <device>
.
Si no sabe qué dispositivo es o qué sistema de archivos utiliza, no tema. Puede imprimir fácilmente toda esa información con este pequeño comando:
gdbus introspect --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices --recurse --only-properties | grep -E "(readonly .+ (IdLabel|IdType|Device(IsMounted|IsDrive|File) ).*|\}|.*\{)"
Esto imprimirá algo como esto:
node /org/freedesktop/UDisks/devices { node /org/freedesktop/UDisks/devices/sda { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = ''; readonly s IdUsage = ''; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sda'; }; }; node /org/freedesktop/UDisks/devices/sda1 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = 'SYSTEM'; readonly s IdType = 'ntfs'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sda1'; }; }; node /org/freedesktop/UDisks/devices/sda2 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = 'Windows7'; readonly s IdType = 'ntfs'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = true; readonly s DeviceFile = '/dev/sda2'; }; }; node /org/freedesktop/UDisks/devices/sda3 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = 'Recovery'; readonly s IdType = 'ntfs'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sda3'; }; }; node /org/freedesktop/UDisks/devices/sda4 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = ''; readonly s IdUsage = ''; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sda4'; }; }; node /org/freedesktop/UDisks/devices/sda5 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = 'ext4'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = true; readonly s DeviceFile = '/dev/sda5'; }; }; node /org/freedesktop/UDisks/devices/sda6 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = 'swap'; readonly s IdUsage = 'other'; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sda6'; }; }; node /org/freedesktop/UDisks/devices/sda7 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = 'ext4'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = true; readonly s DeviceFile = '/dev/sda7'; }; }; node /org/freedesktop/UDisks/devices/sdb { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = ''; readonly s IdUsage = ''; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sdb'; }; }; node /org/freedesktop/UDisks/devices/sdb1 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = 'USB DRIVE'; readonly s IdType = 'vfat'; readonly s IdUsage = 'filesystem'; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sdb1'; }; }; node /org/freedesktop/UDisks/devices/sr0 { interface org.freedesktop.UDisks.Device { readonly s IdLabel = ''; readonly s IdType = ''; readonly s IdUsage = ''; readonly b DeviceIsMounted = false; readonly s DeviceFile = '/dev/sr0'; }; };};
Los que tienen IdUsage = 'filesystem'
se puede montar usando el comando anterior.
Esto significa que, por ejemplo, si quisiera montar el dispositivo 'UNIDAD USB' ejecutaría el comando
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/sdb1 --method org.freedesktop.UDisks.Device.FilesystemMount "vfat" []
Todos estos comandos funcionan con el dbus
sistema de mensajería, de la misma manera que Nautilus
y otros administradores de archivos montan automáticamente cosas. En estos comandos estamos enviando varios objetos (es decir, /org/freedesktop/...
mensajes pidiéndoles que monten y desmonten ciertos dispositivos. Pueden o no hacer esto dependiendo de los permisos que se le hayan otorgado PolicyKit
.
Usando comandos similares, uno puede controlar casi todos los aspectos de la experiencia en Ubuntu y simular la mayoría de los programas y funciones del sistema (es decir, apagado, cambio de volumen, etc.).
También puede montar automáticamente dispositivos USB en Ubuntu Server con la ayuda de USBmount.
Asegúrese de ejecutar apt-get update / upgrade antes de iniciar la instalación:
sudo apt-get update && sudo apt-get upgrade
Ahora instale USBmount desde los repositorios:
sudo apt-get install usbmount
USBmount monta todas las unidades USB en /media/usb*
(usb0, usb1, usb2 ...)
Ahora conecte una unidad USB y espere a que se detecte y monte. Siempre que el sistema operativo host admita el sistema de archivos, debe montarse.
Para verificar si la unidad USB se montó correctamente, puede usar df -h
para ver todas las unidades disponibles y sus respectivos puntos de montaje
Para desmontar una unidad, puede usar umount.
sudo umount /media/usb0
Es simple. Cuando quiero usar una unidad USB en la terminal, hago esto:
Crear una carpeta en /media
con:
mkdir /media/mountDrive
Esta carpeta se utilizará para el punto de montaje. Utilice este comando:
sudo mount /dev/sdd1 /media/mountDrive
sdd1
es la primera partición de mi USB. Luego puede navegar a la carpeta con la que ya montó
cd /media/mountDrive
Si desea enumerar los archivos en Drive, puede usar el ls
comando.
Para desmontar la unidad, puede usar
sudo umount /dev/sdd1
Tenga en cuenta que en mi sistema la unidad USB es /dev/sdd1
pero en su sistema puede ser algo diferente. Para averiguar qué es, use el df
comando para ver todos los discos conectados en el momento actual.
No agregaré sobre cómo montar la unidad. Sin embargo, dado que el autor de la pregunta también preguntó cuál es el mejor comando para usar para copiar los datos, responderé que, por lo que puedo decir, no fue respondido.
Recomendaría primero crear una carpeta en la unidad (incluso si está vacía) para hacer una copia de seguridad de sus cosas para proporcionar organización. Algo en la línea de mkdir <mountpath>/mybackup
debería hacerlo.
En segundo lugar, usaría rsync para copiar todo. Hacer algo en la línea de rsync -r ~/* <mountpoint>/mybackup
. También puede utilizar cp -r
sin embargo, si lo desea, he descubierto que hacerlo no hace todo lo que esperaría todo el tiempo.