Монтирование ISO в Linux/KDE

sudo iftop

sudo netstat -ntlp

sudo tcpdump -i /dev/ethX

6
04.09.2012, 09:46
6 ответов

Лучшее решение Вашей проблемы должно добавить, что контекстные меню для Монтируют/Размонтируют у дельфина или сервисных меню, как их называют в KDE.

Чтобы сделать это, Вы должны:

  1. создайте папку, где ISO будет смонтирован. (для этого примера я буду использовать/mnt/iso),
  2. перейдите к /usr/share/kde4/services/ServiceMenus
  3. создайте новый файл с .desktop расширение (я использовал iso.desktop),
  4. добавьте следующие строки:

    [Desktop Entry]
    Type=Service
    ServiceTypes=KonqPopupMenu/Plugin
    MimeType=application/octet-stream;
    Actions=mountISO;umountISO;
    
    [Desktop Action mountISO]
    Name=Mount
    Icon=utilities-terminal
    Exec=kdesu 'sudo mount -o loop,ro -t iso9660 "%f" /mnt/iso/'
    
    [Desktop Action umountISO]
    Name=Unmount
    Icon=utilities-terminal
    Exec=kdesu 'sudo umount "%f"'
    
  5. Если kdesudo доступен на Вас система вместо kdesu, то добавьте следующие строки вместо этого:

    [Desktop Entry]
    Type=Service
    ServiceTypes=KonqPopupMenu/Plugin
    MimeType=application/octet-stream;
    Actions=mountISO;umountISO;
    
    [Desktop Action mountISO]
    Name=Mount
    Icon=utilities-terminal
    Exec=kdesudo 'mount -o loop,ro -t iso9660 "%f" /mnt/iso/'
    
    [Desktop Action umountISO]
    Name=Unmount
    Icon=utilities-terminal
    Exec=kdesudo 'umount "%f"'
    

НАБЛЮДЕНИЯ:

  • монтирование к/media/iso вместо/mnt/iso заставит смонтированную ISO удобно появляться как диск только для чтения в местах дельфина.
  • в ServiceMenus каталог можно найти другие примеры того, как файл должен быть отформатирован.
  • синтаксис симпатичен, таким образом, я не опишу его (прокомментируйте, есть ли у Вас вопросы).
  • этот метод работает только на один ISO за один раз, поскольку они все смонтированы в том же каталоге, и я еще не мог найти способ преодолеть это.
  • Вам предложат пароль каждый раз, когда Вы монтируете/размонтируете
  • в конце это должно быть похожим на это: problem solved!

Вот приложение, которое делает все вышеупомянутое.

3
27.01.2020, 20:29
  • 1
    Не отправляйте просто ссылку. Ваше сообщение должно иметь смысл, даже если читатель не принимает решение перейти по ссылке. Посмотрите, как ответить. –  Gilles 'SO- stop being evil' 05.09.2012, 00:46
  • 2
    Существует kdesudo... –  daisy 05.09.2012, 13:54
  • 3
    Этот на самом деле сделанный дельфин отказывает каждый раз, когда я щелкнул правой кнопкой по чему-то. Затем я загрузил сервисное меню, которое предоставляет подобный сценарий и меню, и теперь все работает гладкое масло.Спасибо! –  missingfaktor 13.09.2012, 11:09
  • 4
    Не уверенный, если это поражает кого-либо еще, но в Plasma5/KF5, каталог $KF5/share/kservices5/ServiceMenus, и по крайней мере для моего kdesu установка, я должен был предварительно ожидать команды с -c, например, Exec=kdesu -c 'sudo mount .....' –  chrisb2244 03.06.2015, 08:25
  • 5
    , это больше не работает в Плазме 5.8 –   13.02.2018, 14:35

Можно попробовать также acetoneiso или EasyISO

acetoneiso может быть найден в Ubuntu.

И исходный код EasyISO был здесь

enter image description here

Просто опозорьте изображение и удвойтесь для открытия смонтированной папки.

1
27.01.2020, 20:29

что такое "Linux"??

В моей Ubuntu 12.04 Вам только нужно:

  1. ищите .iso файл
  2. щелкните правой кнопкой
  3. Выберите первую опцию: "Открытый с Архивом mounter"

Затем значок CD появляется на сетевой группе файлового браузера.Это все!

-2
27.01.2020, 20:29
  • 1
    Вы, вероятно, используете GNOME/единица + Наутилус. Мой вопрос о KDE + дельфин. –  missingfaktor 04.09.2012, 14:57
  • 2
    Fwiw, я использую Linux Mint 13, выпуск KDE. –  missingfaktor 04.09.2012, 14:58

Marius Cotofana предоставил большой ответ, но здесь является двумя дополнительными примечаниями:

  1. Когда kdesu не доступен в Вашей конфигурации KDE (если команда kdesu не работает в bash/konsole), используйте kdesudo для создания монтировать/размонтировать контекстных меню у дельфина.

  2. Создание/media/iso и монтирование изображения к этому заставят изображение обнаруживаться в местах под дельфином как только для чтения, который обеспечивает дополнительные удобства.

[Настольная Запись]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/octet-stream; Actions=mountISO; umountISO;

[Настольное Действие mountISO]
Name=Mount
Icon=utilities-terminal
Exec=kdesudo 'монтируют-o цикл, ro-t iso9660 "%f"/media/iso /'

[Настольное Действие umountISO]
Name=Unmount
Icon=utilities-terminal
Exec=kdesudo 'umount "%f"'

0
27.01.2020, 20:29

Простое сервисное меню на основе KDE-Services и Монтирование образа ISO (подробнее здесь ):

 kate ~/bin/iso_manager-mount-image.sh 

С этим содержимым (вставив это сюда, чтобы избежать необходимости установки KDE-Services или загрузки сценария):

#!/bin/bash

#################################################################
# For KDE-Services. 2012-2017.                  #
# By Geovani Barzaga Rodriguez <igeo.cu@gmail.com>      #
# Improved by Victor Guardiola (vguardiola) Jan 5 2014      #
#   -Fixed the problem of [dir|file]name with whitespaces.  #
#################################################################

PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/$USER/bin
MOUNTEXIT=""

##############################
############ Main ############
##############################

cd "${1%/*}"

if [ "$1" == "${1%.*}.iso" ]; then
   fuseiso -p "$1" "${1%.iso}"
   MOUNTEXIT=$?
else
   rename .ISO .iso *
   kdialog --icon=ks-error --title="Mount ISO-9660 Image" \
                   --passivepopup="[Error] Can't mount ${1##*/}: Renamed extension of ISO image, because contain uppercase characters. Please try again."
   exit 1
fi

if [ "$MOUNTEXIT" = "0" ]; then
   kdialog --icon=ks-media-optical-mount --title="Mount ISO-9660 Image" --passivepopup="[Finished] ${1##*/} mounted."
else
   kdialog --icon=ks-error --title="Mount ISO-9660 Image" \
                   --passivepopup="[Error] Can't mount ${1##*/}: Already mount or check image integrity."
   exit 1
fi

exit 0

Затем:

kate ~/.local/share/kservices5/ServiceMenus/mount-iso.desktop

с этим содержимым:

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image;model/x.stl-binary
Actions=mount;unmount;
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
Icon=application-x-cd-image
X-KDE-Submenu=Mount/unmount image


[Desktop Action unmount]
Name=Unmount
Icon=edit-redo
Exec=which fuser fusermount; if [ "$?" != "0" ];then kdialog --icon=ks-error --title="Unmount ISO-9660 Image" --passivepopup="[Error] Please install fuser and fusermount command and try again."; exit 1; else fuser -k %f; fusermount -u "$(ls "%f"|sed 's/.iso$//')"; rm -fr "$(ls "%f"|sed 's/.iso$//')"; kdialog --icon=ks-media-optical-umount --title="Unmount ISO-9660 Image" --passivepopup="[Finished] $(basename %f) unmounted.";fi

[Desktop Action mount]
Name=Mount
Icon=circular-arrow-shape
Exec=which fuseiso; if [ "$?" != "0" ];then kdialog --icon=ks-error --title="Mount ISO-9660 Image" --passivepopup="[Error] Please install fuseiso command and try again."; exit 1; else ~/bin/iso_manager-mount-image.sh %F;fi

enter image description here

Он смонтирует образ во вновь созданный папка внутри того же каталога, что и изображение, и эта папка будет удалена, когда для файла iso.

fuser , fusermount , fuseiso и kdialog необходимы ».


Acetoneiso входит в Plasma 5 только с тремя дополнительными пакеты: fuseiso и два других, которые основаны на qt .

sudo apt install acetoneiso

Чтобы увидеть это в Dolphin, вы должны добавить программу в свойства файла iso-файла.

enter image description here

Затем его можно будет найти в Dolphin под параметром Открыть с помощью :

enter image description here

Это подключит изображение, откроет его в Dolphin, а также откроет окно Acetineiso, где вы можете найти Отключить вариант.

enter image description here


Существует также gnome-disk-utility , которая, несмотря на название, поставляется без зависимостей, отличных от kde, в Plasma 5.8 (фактически, никаких зависимостей), и включает (помимо gnome-disks , также называемый «дисками», по умолчанию в Ubuntu) инструмент под названием gnome-disk-image-mounter .

sudo apt-get install gnome-disk-utility

После этого создается пункт контекстного меню Dolphin, доступ к которому можно получить, выбрав «Открыть с помощью» - «Установщик образа диска».

enter image description here


Эти программы также можно использовать со служебным меню (но в них обоих отсутствует команда размонтирования).

Например, можно использовать это с Acetoneiso:

kate ~/.local/share/kservices5/ServiceMenus/acetoneiso-mount-iso.desktop 

с содержимым:

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image
Actions=mount
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
Icon=application-x-cd-image
X-KDE-Menu=Mount with Acetoneiso



[Desktop Action mount]
Name=Mount with Acetoneiso
Icon=Acetino2
Exec=acetoneiso %f

enter image description here


Похоже, здесь есть своего рода ошибка при использовании этих программ с Dolphin: размонтирование с помощью кнопки Acetoneiso или из списка устройств Dolphin , запись в списке останется там (в случае с gnome-disks она называется «Устройство петли»), которая, если выбрана, снова смонтирует образ. Эта запись останется там до перезапуска системы (выхода из системы недостаточно). (На первый сценарий это не влияет.)

2
27.01.2020, 20:29

Сочетая все приведенные выше ответы, это идеально подходит для меня на Kubuntu 19.10 в 2020 году. Нет необходимости kdesuили kdesudo. Единственным недостатком является то, что он не сообщает об ошибках, он молча терпит неудачу.

kate.local/share/kservices5/ServiceMenus/iso_mounter.desktop

И добавить этот конфиг:

[Desktop Entry]
Type=Service
ServiceTypes=KonqPopupMenu/Plugin
MimeType=application/x-cd-image;application/octet-stream;
Actions=mount;umount;
X-KDE-Priority=TopLevel
X-KDE-StartupNotify=false
Icon=media-import-audio-cd
X-KDE-Submenu=Mount/Unmount Image

[Desktop Action mount]
Name=Mount
Icon=media-import-audio-cd
Exec=pkexec 'env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY mount -o loop,ro -t iso9660 "%f" /media/iso/'

[Desktop Action umount]
Name=Unmount
Icon=media-eject
Exec=pkexec 'env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY umount "%f"'
0
01.03.2020, 23:15

Теги

Похожие вопросы