gio mount
gvfs jest teraz na liście przestarzałych (2018) i zaleca się używanie „gio”, które jest Gnome In Out i jest częścią Glib. Zobacz Wikipedia .
Na przykład, aby automatycznie zamontować drugą partycję dysku; utwórz skrypt bash z uprawnieniami wykonywalnymi do uruchomienia podczas uruchamiania za pomocą następującego polecenia:
gio mount -d /dev/sda2
Jeśli jesteś właścicielem partycji (zobacz chown
), nie będziesz potrzebować sudo.
Aby zamontować plik ISO umieszczony na przykład na ~/ISOs
:
gio mount "archive://file%3A%2F%2F%2Fhome%2Fpablo%2FISOs%2Fubuntu-18.04-desktop-amd64.iso"
Możesz URL zakodować ścieżkę w Pythonie 3 i realpath
(aby połączyć z archive://
:
python -c "import urllib.parse, sys; print(urllib.parse.quote(sys.argv[1] if len(sys.argv) > 1 else sys.stdin.read()[0:-1], \"\"))" "file://$(realpath ubuntu-18.04-desktop-amd64.iso)"
To się zamontuje /run/user/$(id -u)/gvfs/
.
Jako alternatywa gnome-disk-image-mounter
zostanie zamontowany na /media/$USER/
.
Aby odmontować użycie gio mount -u /run/user/$(id -u)/gvfs/archive*
(lub /media/$USER/
, w zależności od sposobu zamontowania).
udisksctl
Lista dostępnych urządzeń:
udisksctl status
Montaż odbywa się poprzez:
udisksctl mount -b /dev/sdf
lub
udisksctl mount -p block_devices/sdf
Odmontowywanie odbywa się poprzez:
udisksctl unmount -b /dev/sdf
lub
udisksctl unmount -p block_devices/sdf
object-path
Można znaleźć się wykonując:
udisksctl dump
Obiekt typu org.freedesktop.UDisks2.Block
wydaje się być poprawny object-patch
, ponieważ /org/freedesktop/UDisks2/
prefiks musi zostać wycięty ze ścieżki, aby udisksctl mógł je zaakceptować.
gvfs-mount
Listę dostępnych urządzeń można wykonać za pomocą:
gvfs-mount --list
Montaż można wykonać za pomocą:
gvfs-mount -d /dev/sdf
Odmontowanie jest możliwe poprzez:
gvfs-mount --unmount /media/user/01234567890
Pozostającym problemem jest to, że nie mam pojęcia, jak użyć danych gvfs-mount --list
wyjściowych w poleceniu mount, ponieważ --list
nie pokażę nazw urządzeń blokowych, a próba użycia nazw urządzeń drukowanych w mount spowoduje:
Error mounting location: volume doesn't implement mount
Wniosek
Choć obie gvfs-mount
i udisksctl
będzie pracować dla zadań, ich interfejs jest niepraktyczne, ponieważ nie dostarczają ludzkiemu statusowi czytelną dysków dostępne tylko nadmiernie gadatliwy informacji wysypisko.
/media/{disk}
czegoś innego niż to, co dałby Thunar lub Nautilus. Wydaneudisksctl
polecenieudisks2
wydaje się jednak robić to, co chcę.