Если бы я должен был установить и пакетную версию, и версию пакета для репозитория, как я могу назвать каждый из них по отдельности и как узнать, какой из них запущен?
Я еще не до конца уверен, что snap лучше всего подходит для конечного пользователя, и хочу сравнить производительность нескольких пакетов.
Вызывайте каждую из них отдельно
Вы можете запустить конкретную версию приложения, указав полный путь к файлу исполняемый файл. Например, Firefox, установленный с использованием APT, будет запущен / usr / bin / firefox
. Исполняемые файлы приложений привязки находятся в каталоге / snap / bin /
, поэтому / snap / bin / firefox
запустит версию привязки.
Будет напечатан firefox
версия APT, поскольку / usr / bin
указан в пути поиска раньше, чем / snap / bin
в установке Ubuntu по умолчанию. PATH по умолчанию:
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Когда вы просто набираете firefox
, система выполняет поиск в каждом из последовательных каталогов (папок), пока не будет найден исполняемый файл с именем firefox
. Если установлена версия APT, он найдет исполняемый файл в / usr / bin
перед поиском / snap / bin
, поэтому поиск будет остановлен и этот исполняемый файл будет запущен.
Вы можете узнать, какой исполняемый файл будет запущен с помощью команды which
.
$ which firefox
/usr/bin/firefox
Вы можете узнать, какие исполняемые файлы, которые вы установили с помощью команды whereis
:
$ whereis firefox
firefox: /usr/bin/firefox /usr/lib/firefox /etc/firefox /snap/bin/firefox /usr/share/man/man1/firefox.1.gz
Здесь, как APT, так и версия моментального снимка firefox
Узнайте, какой из них запущен
Запущенные процессы
Команда ps ax
выводит список всех запущенных процессов. Таким образом:
ps ax | grep firefox
перечислит все процессы с именем «firefox». Выходные данные содержат полный путь к исполняемому файлу.
Создатель конкретного окна
Также можно определить создателя конкретного окна, узнать, является ли открытое окно из APT или из оснастки версии. Однако это довольно сложно и не всегда надежно. См. Вопросы об обмене Unix & Linux Stack здесь и здесь .
Примеры использования gnome-калькулятора, который есть у многих людей в форматах deb и snap:
Как вызывать каждый один отдельно: давайте найдем полные пути.
$ which -a gnome-calculator # -a продолжает поиск после первого попадания
/ USR / бен / гнома-калькулятор
/ Оснастка / бен / гнома-калькулятор
$ whereis -b gnome-calculator # -b возвращает только двоичные файлы
гном-калькулятор: / usr / bin / gnome-калькулятор / snap / bin / gnome-calculator
Как определить, какой из них работает. В этом примере ОБА работают. Разница очевидна.
$ ps -x | grep гном-калькулятор
69445? Sl 0:05 / snap / гном-калькулятор / 748 / usr / bin / gnome-калькулятор
69549 баллов / 0 сл 0:01 гном-калькулятор
69727 баллов / 0 S + 0:00 grep --color = автоматический гном-калькулятор
$ pgrep -af гном-калькулятор
69445 / оснастка / гном-калькулятор / 748 / usr / bin / гном-калькулятор
69549 гном-калькулятор