Если у вас есть ОЗУ объемом 3 ГБ или более, Ubuntu автоматически НЕ ИСПОЛЬЗУЕТ пространство подкачки, так как этого более чем достаточно для ОС.
Теперь вам действительно нужен раздел подкачки?
Ответ, на мой взгляд, - да. Потому что вы не знаете, что вы будете устанавливать или делать в будущем, что может потребовать пространства подкачки. Также, если вы планируете использовать гибернацию, вам может понадобиться некоторое пространство подкачки. На самом деле вам не нужно иметь раздел подкачки, но это рекомендуется, если вы используете столько памяти при нормальной работе.
Для получения дополнительной информации о необходимости или не в обмене см. Ubuntu Swap Faq или Требования по обмену
.
Команда apt-file
может сделать это для вас из командной строки. Я часто использую его при сборке пакетов из исходного кода. Для файлов, предоставляемых пакетами, которые уже установлены в вашей системе, apt-cache
является другим выбором.
Чтобы установить apt-file
, выполните:
sudo apt-get install apt-file
Затем вам нужно обновить базу данных:
apt-file update
И, наконец, поискать файл:
[ 112]Однако, гораздо более дружественный способ - использовать поиск пакетов Ubuntu . У них есть возможность «искать содержимое пакетов» по конкретному имени файла.
Я пытался отследить, что установлено which
в моей системе. После небольшой работы я создал apt-whatprovides
#!/bin/sh
#apt-whatprovides ver. 201801010101 Copyright alexx, MIT Licence
#rdfa:deps="[realpath,apt-file,grep,which,sh,echo]"
BINARY=$(realpath $(which $@))
PACKAGE=$(apt-file search $BINARY|grep -E ":\s*${BINARY}$")
echo ${PACKAGE%:*}
Хотя для большинства вещей вы можете просто использовать
apt-file search $(realpath $(which THING))|grep 'THING
Вы можете искать содержимое пакетов, включенных в различные выпуски Ubuntu, на веб-сайте Ubuntu Packages . Загляните под заголовок « Поиск содержимого пакетов ».
Например, вот результаты поиска для libnss3.so в lucid (10.04):
Одна из причин, по которой вам, возможно, придется это сделать, - если вы компилируете программное обеспечение, в котором уже есть пакет ubuntu, вы можете запустить apt-get build-dep $PACKAGENAME
. Это установит все пакеты, необходимые для компиляции $PACKAGENAME
.
Это продолжение превосходного ответа Алекса Роша . Я попытался отредактировать этот ответ, но он был отклонен (но не Alexx)
Я пытался отследить, что установлено which
в моей системе. После небольшой работы я создал /usr/local/bin/apt-whatprovides
#!/bin/sh
#apt-whatprovides ver. 201801010101 Copyright alexx, MIT Licence
#rdfa:deps="[realpath,apt-file,grep,which,sh,echo]"
BINARY="$(realpath $(which $@) 2>/dev/null)"
[ -z "$BINARY" ] && BINARY="$@"
echo Searching for $BINARY
PACKAGE="$(apt-file search $BINARY|grep -E ":.*[^-.a-zA-Z0-9]${BINARY}$")"
echo "${PACKAGE}"
Хотя для большинства установленных вещей вы можете просто использовать:
apt-file search $(realpath $(which THING)) | grep 'THING Для вещей, которые не установлены, вы можете использовать:
apt-file search THING | grep '/THING Скрипт apt-whatprovides
работает для файлов, которые есть и отсутствуют в вашей системе. Например, моей системе не хватало dig
, но было ping
, поэтому я получил следующее:
pi@raspberrypi:~ $ apt-whatprovides ping
Searching for /bin/ping
inetutils-ping: /bin/ping
iputils-ping: /bin/ping
pi@raspberrypi:~ $ apt-whatprovides dig
Searching for dig
dnsutils: /usr/bin/dig
epic4: /usr/share/epic4/script/dig
epic4-help: /usr/share/epic4/help/8_Scripts/dig
knot-dnsutils: /usr/bin/dig
Обратите внимание, что Searching for
- это полный путь для ping
(установлен) и только двоичное имя для dig
не установлено. Это помогло мне обнаружить, что мне нужно было установить dnsutils
без необходимости искать https://packages.ubuntu.com/#search_contents
Скрипт apt-whatprovides
работает для файлов, которые есть и отсутствуют в вашей системе. Например, моей системе не хватало dig
, но было ping
, поэтому я получил следующее:
pi@raspberrypi:~ $ apt-whatprovides ping
Searching for /bin/ping
inetutils-ping: /bin/ping
iputils-ping: /bin/ping
pi@raspberrypi:~ $ apt-whatprovides dig
Searching for dig
dnsutils: /usr/bin/dig
epic4: /usr/share/epic4/script/dig
epic4-help: /usr/share/epic4/help/8_Scripts/dig
knot-dnsutils: /usr/bin/dig
Обратите внимание, что Searching for
- это полный путь для ping
(установлен) и только двоичное имя для dig
не установлено. Это помогло мне обнаружить, что мне нужно было установить dnsutils
без необходимости искать https://packages.ubuntu.com/#search_contents
Для вещей, которые не установлены, вы можете использовать:
apt-file search THING | grep '/THING Скрипт apt-whatprovides
работает для файлов, которые есть и отсутствуют в вашей системе. Например, моей системе не хватало dig
, но было ping
, поэтому я получил следующее:
pi@raspberrypi:~ $ apt-whatprovides ping
Searching for /bin/ping
inetutils-ping: /bin/ping
iputils-ping: /bin/ping
pi@raspberrypi:~ $ apt-whatprovides dig
Searching for dig
dnsutils: /usr/bin/dig
epic4: /usr/share/epic4/script/dig
epic4-help: /usr/share/epic4/help/8_Scripts/dig
knot-dnsutils: /usr/bin/dig
Обратите внимание, что Searching for
- это полный путь для ping
(установлен) и только двоичное имя для dig
не установлено. Это помогло мне обнаружить, что мне нужно было установить dnsutils
без необходимости искать https://packages.ubuntu.com/#search_contents
Скрипт apt-whatprovides
работает для файлов, которые есть и отсутствуют в вашей системе. Например, моей системе не хватало dig
, но было ping
, поэтому я получил следующее:
pi@raspberrypi:~ $ apt-whatprovides ping
Searching for /bin/ping
inetutils-ping: /bin/ping
iputils-ping: /bin/ping
pi@raspberrypi:~ $ apt-whatprovides dig
Searching for dig
dnsutils: /usr/bin/dig
epic4: /usr/share/epic4/script/dig
epic4-help: /usr/share/epic4/help/8_Scripts/dig
knot-dnsutils: /usr/bin/dig
Обратите внимание, что Searching for
- это полный путь для ping
(установлен) и только двоичное имя для dig
не установлено. Это помогло мне обнаружить, что мне нужно было установить dnsutils
без необходимости искать https://packages.ubuntu.com/#search_contents
Вы имеете в виду, какой пакет, а не какое приложение. Приложение является вашим менеджером пакетов, например Software Center
.
Используя dpkg
:
dpkg -S /usr/lib/tracker/tracker-store
dpkg -S tracker-extract
dpkg -S tracker-miner-fs
Пример
% dpkg -S /usr/lib/tracker/tracker-store
tracker: /usr/lib/tracker/tracker-store
Используя apt-file
:
apt-file search /usr/lib/tracker/tracker-store
или также возможно:
apt-file search --regex /tracker-extract$
apt-file search --regex /tracker-miner-fs$
Пример
% apt-file search /usr/lib/tracker/tracker-store
tracker: /usr/lib/tracker/tracker-store
<час> Или онлайн здесь , в разделе Search the contents of packages
. [ 1123]
Пример
apt-file find
какapt-find
давным-давно и it' s действительно удобный! Btw, последние версии требуют, поддерживаютapt-file update
. – user545424 06.05.2020, 09:14apt-file
часто находит ложные срабатывания, то есть пакеты, которые не установлены. Конечно, этот ответ отлично подходит для «бонусного вопроса». – Ned Batchelder 06.05.2020, 09:14apt-file search <>
является наиболее близким аналогомdnf/yum whatprovides <>
. – Honest Abe 06.05.2020, 09:15