Risposte:
Dovrai sapere come si chiama l'unità per montarlo. Per fare questo spegni uno dei seguenti (ordinati secondo le mie preferenze):
lsblk
sudo blkid
sudo fdisk -l
Siete alla ricerca di una partizione che dovrebbe essere simile a: /dev/sdb1
. Maggiore è il numero di dischi, maggiore è la probabilità che questa sia. Comunque, trovalo e ricorda come si chiama.
Questo deve essere montato nel filesystem da qualche parte . Di solito puoi usare / mnt / se sei pigro e nient'altro è montato lì, ma altrimenti vorrai creare una nuova directory:
sudo mkdir /media/usb
sudo mount /dev/sdb1 /media/usb
Quando hai finito, spegni semplicemente:
sudo umount /media/usb
Questa risposta ha quasi 6 anni e mentre il suo nucleo funziona ancora, cose come fdisk -l
non sono le opzioni più facili da usare. Ci sono anche nuovi meccanismi in pile superiori per il montaggio di dispositivi in modo normale e normale che potrebbero non essere sempre disponibili.
Quindi ho aggiunto un po 'di smalto dalle altre risposte. Mentre stai leggendo questa nota a piè di pagina e lo stai facendo su un sistema desktop, ci sono sicuramente argomenti da usare udisksctl
, secondo la risposta di Wecac . Questo si monta allo stesso modo del desktop —creare la propria /media/$USER/device
directory— ma penso che ci siano ancora argomenti per un mountpoint statico, specialmente quando non si desidera che il percorso cambi.
Udisk si affida anche a D-Bus, quindi potrebbe non essere disponibile ovunque.
Installa pmount
. Monta i dischi in / media /
pmount /dev/sdb1
pumount /dev/sdb1
Nessun sudo necessario. Sostituisci "sdb1" con il percorso del tuo dispositivo specifico. Per maggiori informazioni consultare la manpage:
pmount ("policy mount") is a wrapper around the standard mount program
which 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.
mount
insistito sul montaggio del mio disco di sola lettura.
Oltre a utilizzare il mount
comando standard (che richiede root) è possibile montare unità usando udisks
e dbus
con l'utente standard.
Per fare ciò è utile (ma non necessario) sapere prima alcune cose sull'unità:
/dev/sdb1
)Sapendo questi è possibile utilizzare un semplice comando per montare un'unità dalla riga di comando.
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemMount "<filesystem>" []
questa chiamata dovrebbe fare eco al percorso su cui è montata se il montaggio ha esito positivo.
Per smontare le unità montate in questo modo è possibile eseguire:
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/<device> --method org.freedesktop.UDisks.Device.FilesystemUnmount []
NB la <device>
è semplicemente la fine del percorso. Quindi, per esempio, se quello che vuoi montare è, /dev/sdb2
allora dovresti metterlo sdb2
al posto di <device>
.
Se non sai di quale dispositivo si tratta o quale filesystem utilizza non temere. Puoi facilmente stampare tutte queste informazioni con questo piccolo 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) ).*|\}|.*\{)"
Questo stamperà qualcosa del genere:
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';
};
};
};
Quelli che sono stati IdUsage = 'filesystem'
possono essere montati usando il comando sopra.
Ciò significa che, ad esempio, se volessi montare il dispositivo "USB DRIVE" eseguirò il comando
gdbus call --system --dest org.freedesktop.UDisks --object-path /org/freedesktop/UDisks/devices/sdb1 --method org.freedesktop.UDisks.Device.FilesystemMount "vfat" []
Tutti questi comandi funzionano utilizzando il dbus
sistema di messaggistica, allo stesso modo in cui Nautilus
altri gestori di file montano automaticamente le cose. In questi comandi stiamo inviando vari oggetti (ad esempio /org/freedesktop/...
messaggi che chiedono loro di montare e smontare determinati dispositivi. Potrebbero o meno farlo a seconda delle autorizzazioni concesse PolicyKit
.
Usando comandi simili si può controllare quasi ogni aspetto della propria esperienza in Ubuntu e simulare la maggior parte dei programmi e delle funzioni di sistema (ad es. Spegnimento, modifica del volume, ecc.).
gdbus introspect --system --dest org.freedesktop.UDisks2 --object-path /org/freedesktop/UDisks2/drives --recurse --only-properties
Utilizzare udisksctl
da package = udisks2
(sia in Ubuntu che in Debian). La procedura è:
Trova l'ID del dispositivo a blocchi che desideri montare, utilizzando lsblk
:
user@machine:~$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 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 part
sdd 8:48 0 1.8T 0 disk
└─sdd1 8:49 0 1.8T 0 part
Dalle sue dimensioni, /dev/sdc1
sembra essere l'unità USB che voglio montare.
Utilizzare udisksctl
per montare il dispositivo. Nota che -b
== --block-device
(per ridurre la digitazione) ma preferisco lunghe opzioni per la documentazione:
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): 1
Password:
==== AUTHENTICATION COMPLETE ===
Mounted /dev/sdc1 at /media/user/USBDRIVELABEL.
Di seguito il commento di Hans Deragon : puoi anche dire udisksctl
di fare --no-user-interaction
. Non tenta di autenticare l'utente, che di solito "funziona":
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.
--object-path
quello che chiede?
Puoi anche montare automaticamente dispositivi USB su Ubuntu Server con l'aiuto di USBmount.
Assicurati di eseguire apt-get update / upgrade prima di iniziare l'installazione:
sudo apt-get update && sudo apt-get upgrade
Ora installa USBmount dai repository:
sudo apt-get install usbmount
USBmount monta tutte le unità USB /media/usb*
(usb0, usb1, usb2 ...)
Ora collega un'unità USB e attendi che venga rilevata e montata. Finché il sistema operativo host supporta il file system, dovrebbe essere montato.
Per verificare se l'unità USB è stata montata correttamente, è possibile utilizzare df -h
per visualizzare tutte le unità disponibili e i rispettivi punti di montaggio
Per smontare un'unità è possibile utilizzare umount.
sudo umount /media/usb0
È semplice. Quando voglio usare un'unità USB nel terminale, faccio questo:
Crea una cartella /media
con:
mkdir /media/mountDrive
Questa cartella verrà utilizzata per il punto di montaggio. Usa questo comando:
sudo mount /dev/sdd1 /media/mountDrive
sdd1
è la prima partizione della mia USB. Quindi puoi passare alla cartella con cui hai già montato
cd /media/mountDrive
Se si desidera elencare i file nell'unità è possibile utilizzare il ls
comando.
Per smontare l'unità è possibile utilizzare
sudo umount /dev/sdd1
Nota che nel mio sistema l'unità USB è /dev/sdd1
, ma nel tuo sistema potrebbe essere qualcosa di diverso. Per scoprire di cosa si tratta usa il df
comando per vedere tutti i dischi connessi al momento.