- Русские Блоги
- Kali Linux E: Невозможно найти пакет — отличное решение!
- Интеллектуальная рекомендация
- Пошаговая загрузка файла Spring MVC-09 (на основе файла загрузки клиента Servlet3.0 + Html5)
- Создайте многоканальное окно в приложениях Win32
- Путь к рефакторингу IOS-APP (3) Введение в модульное тестирование
- Tree——No.617 Merge Two Binary Trees
- Статья Поиск пакетов для Kali Linux
- Причина появления ошибки «Не удалось найти пакет…» на ОС Debian
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Управление пакетами в Kali Linux и других дистрибутивах на основе Debian (поиск, установка и удаление программ, решение проблем)
- Как работают репозитории приложений Linux
- Для чего нужны зависимости
- Использовать apt или apt-get
- Обновления кэша с информацией о приложениях
- Как установить программу
- Поиск пакетов
- Поиск пакетов только по названию
- Как проверить, установлен ли пакет
- Как посмотреть информацию о пакете
- Как удалить пакет
- Как полностью удалить пакет, вместе с конфигурационными файлами
- Обновление всех пакетов системе в Kali Linux
- Как узнать, в каком пакете содержится файл
- Как посмотреть зависимости пакета
- Как узнать, для каких программ данный пакет является зависимостью
- Как просмотреть список изменений пакета
- Как скачать пакет без установки
- Как проверить, всё ли впорядке с кэшем приложений
- Как установить локальный .deb пакет
- Удаление ненужных программ
- Очистка кэша установочных файлов
- Исправление ошибок установки пакетов и зависимостей
- Альтернативы для apt
- aptitude
- synaptic
- wajig
- Портативные программы в Linux
- Как решить проблему «команда не найдена» («command not found»)
- Warning: apt-key is deprecated
Русские Блоги
Kali Linux E: Невозможно найти пакет — отличное решение!
В разных системах есть разные способы решения этой проблемы. Моя проблема в том, что пакет нельзя установить в Kali.
Я привожу только один пример решения:
Шаг 1. Откройте файл sources.list
Шаг 2. Добавьте в файл следующее содержимое
Затем сохраните и выйдите, а затем обновите
Вы обнаружите большую разницу.В настоящее время вы можете установить то, что вам нужно!
Добро пожаловать, чтобы подписаться на паблик автора 【Honker】, Узнайте больше о Kali
Интеллектуальная рекомендация
Пошаговая загрузка файла Spring MVC-09 (на основе файла загрузки клиента Servlet3.0 + Html5)
пример тестовое задание Исходный код Несмотря на загрузку файлов в Servlet3.0 +, мы можем очень легко программировать на стороне сервера, но пользовательский интерфейс не очень дружелюбен. Одна HTML-ф.
Создайте многоканальное окно в приложениях Win32
Создайте многоканальное окно в приложениях Win32, создайте несколько оконных объектов одного и того же класса Windows, а окна объектов разных классов окон. .
Путь к рефакторингу IOS-APP (3) Введение в модульное тестирование
IOS-APP реконструкция дороги (1) структура сетевых запросов IOS-APP реконструкция дороги (два) Модельный дизайн При рефакторинге нам нужна форма, позволяющая вносить смелые изменения, обеспечивая при .
Tree——No.617 Merge Two Binary Trees
Problem: Given two binary trees and imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped while the others are not. You need to merge them into a new bin.
Источник
Статья Поиск пакетов для Kali Linux
В предыдущей статье мы рассмотрели управления пакетами в Kali Linux. С легкостью установки, которые обеспечивает APT, у нас есть выбор среди десятков тысяч пакетов, однако оборотной стороной является то, что у нас есть десятки тысяч пакетов. Выяснить, какие пакеты доступны и найти один, которые нам нужен, может быть сложной задачей, особенно для новичков в Linux. В этой статье мы будем рассматривать три утилиты, которые могут быть использованы для поиска через haystack и помочь вам воспользоваться обширной экосистемой с открытым исходным кодом.
Различные интерфейсы, доступные для поиска пакетов apt-cache имеет самые основные и элементарные из всех их . Однако это также интерфейс, который мы, как правило, наиболее часто используем, потому что это быстро, легко и эффективно. По умолчанию apt-cache поиск в имена пакетов, а также их описания, для данного терминала. Например зная, что во все имена метапакетов Kali Linux включена «kali-linux«, мы можем легко искать каждый из них.
Во многих случаях apt-cache возвращает слишком много результатов, потому что ищет в описании пакетов. Поиск может быть ограничен для имён пакетов с помощью варианта –names-only
Так как apt-cache имеет такой удивительный greppable выход, мы можем сохранить результаты фильтрации.
Далее можно фильтровать результаты поиска, но как только вы начинаете комбинировать вместе цепочки нескольких команд, это обычно является хорошим свидетельством того, что настало время для использования другого инструмента.
Приложение aptitude является в очень тесной связи «aka двоюродный брат» apt и apt-get, за исключением того, что она также включает в себя весьма полезный ncurses интерфейс. Он не входит в Kali по умолчанию, но она быстро может быть установлена следующим образом.
После установки и запуска aptitude без каких-либо параметров запустится ncurses интерфейс. Одна из первых вещей, которые вы заметите, это то, что вы можете быстро и легко просматривать пакеты по категориям, что значительно помогает с сортировкой среди тысячи доступных пакетов.
Для поиска пакета либо нажмите символ / или выберите «Найти» в меню «Поиск«. Когда вы вводите ваш запрос, результаты поиска пакетов будут обновляться динамически.
После того как вы нашли расположение пакета, вызывающего интерес, вы можете пометить его для установки с помощью символа + или удалить/отменить его удаление с помощью – символа.
На данный момент вы можете зафиксировать поиск для других пакетов, пометить для установки или удаления. Когда вы будете готовы к установке, нажмите клавишу g, для просмотра различных мер, которые необходимо принять.
Если вы удовлетворены предлагаемыми изменениями, нажмите g снова и aptitude завершит установку как обычно.
Если вы хотите ограничить поиск инструментов, которые собраны и упакованы командой разработчиков Kali, самый простой способ сделать это, вероятно, используя оператор поиска на Google сайте.
Надеюсь этот пост поможет вам ответить на то, доступен ли определенный инструмент в Kali (или Debian). Для более подробного обращения с управлением пакетами мы рекомендуем вам проверить сайт Kali Training.
Источник
Причина появления ошибки «Не удалось найти пакет…» на ОС Debian
Здравствуйте. Моё знание UNIX систем нельзя назвать хорошим, единственное что я могу по-сути, это запустить веб-сервер, хотя когда мой сервер начали активно форсить, пришлось немного подумать о безопасности. Поэтому я и решил написать статью о denyhosts, но когда создавал виртуальную машину совсем забыл, что denyhosts ещё не добавлен в репозитарии Debian 8, так что столкнулся с ошибкой «Не удалось найти пакет…» или «Unable to locate package…» в английском варианте.
В принципе ничего страшного нет, все решается добавлением новых источников в source.list, чем мы сейчас займёмся. Но также есть ещё возможные ошибки: проверьте правильно ли вы указали имя пакета для установки или входит ли данный пакет вообще в общие репозитории (возможно данные пакет устанавливается путем скачивания исходников).
Итак, для редактирования списка репозиторий необходимо открыть source.list, для этого вводим команду (если вы находитесь из под пользователя, то конечно же добавляем sudo):
Где nano — это мой любимый текстовый редактор (apt-get install nano), используйте тот, который вам нравится.
Откроется текстовый редактор со списком репозиториев.
Что за что отвечает:
deb — это бинарные пакеты, deb-src — пакеты с исходниками (если нужно пересобрать пакет);
*ссылка* репозитория;
jessie — название выпуска Debian, на виртуальной машине у меня стоит Debian 8 — Jessie, ранее были Debian 7 — Wheezy, Debian 6 — Squeeze. Также можно использовать название ветки stable, unstable, testing и т.д. (подробнее о выпусках можно прочитать на википедии);
main — основная секция репозитория; contrib — пакеты в этой части распространяются владельцем авторских прав на условиях свободной лицензии, но зависят от несвободного программного обеспечения; non-free — лицензии пакетов в этой части содержат условия, ограничивающие использование или распространение ПО.
В общем обо всём этом вы можете прочитать на крупных форумах, нас же интересует конкретика, поэтому прописываем две строчки:
Это добавит ссылку на главный репозиторий Debian. Он работает всегда. Также можно заметить, что я добавил ссылку на архив с пакетам для прошлых версий debian, это всё из-за того, что denyhosts ещё не допущен до Debian 8. При необходимости меняем jessie на свою версию системы. При желании остальное можно отключить, поставив # в начале строчки (это полезно, если у вас лимитированный трафик).
Теперь записываем изменения, нажав Ctrl+O на клавиатуре и нажав Enter, для подтверждения текущего имени файла.
И закрываем редактор, клавишами Ctrl+X.
Теперь вводим команду:
Это обновит список доступных пакетов.
И вводим команду по установке необходимого пакета.
Вроде всё. Надеюсь эта статья оказалась вам полезной, нажмите одну из кнопок ниже, чтобы рассказать о ней друзьям. Также подпишитесь на обновления сайта, введя свой e-mail в поле справа или подписавшись на группу во Вконтакте и канал YouTube.
Спасибо за внимание
Источник
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Управление пакетами в Kali Linux и других дистрибутивах на основе Debian (поиск, установка и удаление программ, решение проблем)
Сопроводители дистрибутивов Linux поддерживают репозитории пакетов из которых программы можно установить в дистрибутив с помощью того или иного менеджера пакетов. Такие репозитории (их состав, частота обновления, предварительная настройка пакетов) являются главными отличиями дистрибутивов друг от друга (а не обои или графическое окружение рабочего стола, которые всегда можно поменять).
Такой централизованный подход позволяет не тратить время на обновление отдельных программ (как например это нужно делать в Windows, где вам самостоятельно нужно отслеживать появление новых версий и обновлять их).
Умение управлять пакетами в Linux нужно как для установки и обновления программ, так и решения других проблем, например, отсутствующие файлы, необходимые для компиляции программы, которую вы хотите установить из исходного кода. В этой статье рассмотрены как азы, так и даны более продвинутые подсказки (например, как найти пакет, содержащий необходимый для компиляции файл).
Данная статья сфокусирована на менеджере пакете apt и дистрибутиве Kali Linux, но всё сказанное в ней применимо и к другим основанным на Debian дистрибутивам (Linux Mint, Ubuntu).
Как работают репозитории приложений Linux
Сопроводители дистрибутивов Linux отбирают программы для помещения в репозитории. Эти программы упаковываются в пакеты, для Debian и производных это файлы с расширением .deb. В эти пакеты помещаются скомпилированные файлы программ, файлы настроек и все другие, необходимые для работы прогрммы файлы, а также метаинформация, в которой указано, какие ещё пакеты нужно установить для разрешения зависимостей, а также какие действия нужно выполнить перед и после установки пакета, а также перед и после его удаления.
Для установки пакета из репозитория достаточно выполнить команду apt install с указанием имени пакета. Эта команда сама найдёт адрес файла .deb, скачает его, определит и скачает необходимые зависимости и затем всё это установит.
В случае выхода новых версий пакетов, их все можно обновить одной командой — очень удобно.
Для чего нужны зависимости
Если вы уже устанавливали пакеты в Linux, то вы могли обратить внимание, что вы вводите имя одной программы для установки, но зачастую одновременно с ней устанавливаются ещё и другие пакеты — это зависимости.
Зависимости — это библиотеки, программы, драйверы и прочее, что необходимо для работы другой программы. Такой подход позволяет один и тот же код (библиотеку) использовать в различных программах. К примеру, мы пишем приложение, в которое ходим добавить сетевые функции с поддержкой различных протоколов — нам не нужно всё писать с нуля, мы можем воспользоваться библиотекой libcurl (от авторов программы cURL), которая уже поддерживает десятки сетевых протоколов. И так могут поступить многие другие программы — они все могут использовать одну библиотеку без необходимости дублировать код — достаточно установить библиотеку в ОС один раз.
Для работы некоторых программ необходимы другие программы, либо они являются обёртками, графическими интерфейсами для облегчения использования утилиты. Такие программы также являются зависимостями.
Использовать apt или apt-get
Для управления пакетами может применяться команда apt или apt-get. На самом деле, выбор ещё больше: dpkg, aptitude, synaptic, wajig, а также графические интерфейсы от авторов дистрибутивов. Но все эти менеджеры пакетов имеют свои чёткие особенности, а apt и apt-get очень похожи, у них практически одинаковые команды и опции, они выполняют одинаковые функции. Разберёмся, чем отличаются apt и apt-get.
Программа apt предназначена для интерактивного использования и её поведение может меняться с выходом новых версий. А программа apt-get предназначена для использования в скриптах и её поведение и вывод очень консервативны.
На самом деле, для большинства типичных задач (установка и удаление пакетов), программы очень похожи.
Я предпочитаю apt как более «свежую», но на самом деле практически во всех последующих примерах команд вы можете заменить «apt» на «apt-get» и не почувствуете никакой разницы.
Обновления кэша с информацией о приложениях
Когда в репозиторий вносятся изменения, например, при обновлении пакета, необходимо синхронизировать эту информацию с локальным кэшем вашей операционной системы Linux. Это делается командой:
Этого же результата (обновления кэша) можно достичь разными способами, в том числе имеется ещё несколько команд. Например, следующая команда также обновит кэш (нет принципиальной разницы, какую команду вы используете):
Даже если вы не собираетесь выполнять полное обновление системы, обновление кэша необходимо выполнить перед установкой любых пакетов. В противном случае вы можете столкнуться с ошибкой, что требуемый пакет не найден. Эта ошибка возникает из-за того, что в вашей системе есть информация о предыдущей версии пакета и ссылка для его скачивания, и именно по этому адресу менеджер пакетов пытается получить файл пакета. Но в репозитории устаревшая версия уже могла быть удалена. В результате получается, что пакет есть в репозитории, но ваша система не узнает его новый адрес, пока не обновит свой кэш.
Как установить программу
Используйте команду вида:
Вы можете установить сразу несколько пакетов за раз:
Поиск пакетов
Для поиска пакетов предназначена команда вида:
Данная команда ищет по описанию пакетов и может выводить слишком большой список. Эта команда может пригодиться, если имя нужной утилиты не совпадает с названием пакета (например, один пакет содержит несколько утилит).
Обратите внимание, что для данной команды, в отличие от большинства других с apt, не требуются права root (можно использовать без sudo).
Поиск пакетов только по названию
Предыдущая команда бывает бесполезной из-за слишком большого вывода информации. Вы можете использовать следующую команду для поиска по имени пакета:
Вы также можете указать подстановочные символы, например для поиска по названию, начинающемуся на слово ПАКЕТ:
Для поиска по названию, оканчивающемуся на слово ПАКЕТ:
Для поиска по названию, в котором присутствует слово ПАКЕТ:
Ещё более удобной, на мой взгляд, командой для поиска пакетов является:
Последняя команда ищет в именах по слову ПАКЕТ и выводит список всех пакетов, где оно встречается. Использовать подстановочные символы не нужно.
Как проверить, установлен ли пакет
Вы можете использовать команды apt list или apt search не только для поиска пакетов, но и просмотра информации о том, установлены ли они.
Рядом с описанием пакетов вы можете увидеть один из трёх вариантов:
- строка «[установлен]» — пакет установлен вручную
- строка «[установлен, автоматически]» — пакет установлен как зависимость или как включённый в метапакет (во время установке операционной системы Kali Linux активно использует метапакеты, поэтому многие инструменты имеют такую отметку)
- ничего не написано — значит пакет не установлен
Как посмотреть информацию о пакете
Вы можете узнать следующую информацию о любом пакете, независимо от того, установлен он в вашей системе или нет:
- номер версии
- адрес сайта
- краткое описание
- список зависимостей
- размер установки
- репозиторий-источник
- приоритет
- к какому виду программ относится
Чтобы узнать информацию о пакете используйте команду вида:
Как удалить пакет
Для удаления используйте команду вида
Можно удалять сразу много пакетов за раз:
Как полностью удалить пакет, вместе с конфигурационными файлами
При удалении пакета удаляются все его файлы, но обычно остаются небольшие (изменённые) файлы конфигурации пользователя на случай, если удаление было случайным. В этом случае простая отправка запроса на установку для случайно удалённого пакета восстановит его работу, как и раньше. С другой стороны, вы можете избавиться от этих остатков, вызвав purge даже для уже удалённых пакетов. Обратите внимание, что это не влияет на данные или конфигурацию, хранящиеся в вашем домашнем каталоге.
Итак, для полного удаления пакета используйте команду вида:
Обновление всех пакетов системе в Kali Linux
Чтобы обновить все пакеты, для которых вышли новые версии, а также установить необходимые зависимости и удалить мешающие пакеты, используется команда:
Среди удаляемых пакетов могут быть конфликтующие (мешающие установке требуемых зависимостей).
Аналогичный результат можно получить командами (это одна из немногих команд, которая различается для apt и apt-get):
Для удобства можно объединить команду обновления кэша и команду запуска полного обновления системы в одну, опция -y используется для того, чтобы у нас не спрашивалось подтверждение, а сразу начался процесс установки новых пакетов:
Как узнать, в каком пакете содержится файл
Если вы компилируете программы из исходных кодов, то вы, наверняка, сталкивались с ошибками компиляции, когда программа не находит какой-либо файл и компиляция обрывается. Что делать в данной ситуации? Понятно, что нужно установить пакет, который содержит требуемый файл. Но как узнать имя этого пакета?
С помощью программы apt-file можно искать по именам файлов в пакетах (как установленных, так и нет). Также она может показать все файлы в пакете.
Сразу после установки кэш данных о программах пуст. Чтобы его обновить нужно выполнить команду:
Когда всё готово, то поиск осуществляется так:
К примеру поиск файла ffi.h:
У программы apt-file есть альтернативы, подробности смотрите в статье «Как в Linux узнать, в каком пакете содержится файл».
Как посмотреть зависимости пакета
Вы можете посмотреть, какие пакеты будут установлены в качестве зависимостей командой вида:
Как узнать, для каких программ данный пакет является зависимостью
Если вы хотите удалить программу, но не уверены, нужна ли она для других программ, то вы можете проверить, для каких пакетов она является зависимостью командой вида:
Как просмотреть список изменений пакета
Для пакетов вы можете вывести список изменений, сделанных в различных версиях программы. Для этого выполните команду вида:
Как скачать пакет без установки
Если вы хотите скачать пакет без установки, например, чтобы изучить его или внести изменения, то выполните команду вида:
Как проверить, всё ли впорядке с кэшем приложений
Если вы хотите узнать, имеются ли сломанные зависимости, то выполните диагностическую команду:
Как установить локальный .deb пакет
Иногда может потребоваться установка локальных .deb, то есть файлов не из репозиториев.
Следующая команда dpkg установит пакет без проверки зависимостей:
При выполнении операции менеджером пакетов, например, обновление кэша:
может возникнуть сообщение об отсутствующих зависимостях, исправить это можно командой:
Программа apt также умеет устанавливать пакеты из указанных файлов, при этом одновременно будут установлены необходимые зависимости для этого пакета:
Удаление ненужных программ
Время от времени рекомендуется выполнять команды по удалению пакетов, которые были установлены автоматически (так как были зависимостями других программ), но теперь больше не нужны.
Для этого применяется команда:
Её использование безопасно и не должно приводить к проблемам.
Очистка кэша установочных файлов
При каждом обновлении программ файлы пакетов скачиваются в кэш. После обновления скаченные файлы (можно назвать их установочными) не удаляются, и постепенно кэш разрастается до больших размеров. Это сделано намерено с той идеей, что если после очередного обновления вы обнаружите, что новый пакет имеет проблемы, а старая версия уже недоступна в онлайн репозитории, то вы сможете окатиться до старой версии установив её из файла, сохранённого в кэше.
Для роллинг дистрибутивов кэш разрастается очень быстро. Поэтому время от времени можно выполнять команду:
clean вычищает локальный репозиторий от полученных файлов пакетов. Она удаляет все, кроме lock файла из /var/cache/apt/archives/ и /var/cache/apt/archives/partial/.
Исправление ошибок установки пакетов и зависимостей
Опция -f исправляет, пытается привести в норму систему с нарушенными зависимостями. Эта опция, когда используется с install/remove, может пропустить какие-либо пакеты, чтобы позволить APT найти вероятное решение. Если пакеты указаны, эта команда должна полностью исправить проблему.
Альтернативы для apt
Для apt, кроме программы apt-get, которая является очень похожей, существует ещё несколько альтернатив.
В Debian вы можете выбрать среди следующих менеджеров пакетов:
dpkg — этот пакет предоставляет низкоуровневую инфраструктуру для обработки установки и удаления пакетов программного обеспечения Debian. При установке программ не устанавливает зависимости.
aptitude
aptitude — это менеджер пакетов с рядом полезных функций, в том числе: похожий на mutt синтаксис для гибкого сопоставления пакетов, возможность извлекать и отображать журнал изменений Debian для большинства пакетов и режим командной строки, аналогичный режиму apt-get. Программа не позволяет разрастаться кэшу слишком сильно и выполняет автоматическую очистку.
Чтобы былы понятны основные возможности программы, посмотрите на доступные команды и опции.
Действия (если не задано, aptitude запускается в диалоговом режиме):
synaptic
Synaptic — это графический инструмент для управления пакетами, основанный на GTK+ и APT.
Synaptic позволяет устанавливать, обновлять и удалять программные пакеты удобным способом.
Помимо этих основных функций, предоставляются следующие возможности:
- Поиск и фильтрация списка доступных пакетов
- Выполняйте интеллектуальные обновления системы
- Исправление неработающие зависимости пакетов
- Редактирование списка используемых репозиториев (sources.list)
- Загрузка последнего журнала изменений пакета
- Настройка пакеты через систему debconf
- Просмотр всей доступной документации, относящуюся к пакету (требуется dwww)
wajig
Обёртка командной строки для apt, apt-cache, dpkg, aptitude и других. Её цель — упростить управление пакетами за счёт объединения основных функций этих инструментов в одном интерфейсе.
Кроме рассмотренных программ, в дистрибутивах Linux могут применяться и собственные инструменты. К примеру, в Linux Mint имеется собственный инструмент с графическим интерфейсом для обновления программ. Также в Linux Mint при запуске программы apt вместо неё будет использоваться собственный скрипт, который является обёрткой для aptitude (из-за этого вывод команды apt может вас смутить).
Портативные программы в Linux
Программы Linux можно использовать как портативные. К примеру, вы можете скачать файл .deb, извлечь из него исполнимый файл и запускать его из любого места. Некоторые пакеты содержат кроме установочного файла ещё и другие файлы: конфигурационный, файлы расширения функциональности и прочее — в этом случае для большинства программ можно указать расположение этих файлов с помощью опций.
При компиляции программы из исходного кода, совсем необязательно устанавливать её на уровне системы — вы можете запускать скомпилированные файлы из любого места в вашей системе. Это позволяет попробовать новую версию программу без удаления той, которая установлена из репозитория.
Как решить проблему «команда не найдена» («command not found»)
Если при попытке запуска программы вы столкнулись с ошибкой «команда не найдена» («command not found»), то она означает, что не установлен пакет, содержащей данную программу. Конечно, при условии, что вы правильно ввели имя команды — поэтому начните с проверки имени, а также используйте клавишу TAB для вывода подсказок и автоматического дополнения.
Начните с попытки установить пакет с одноимённым именем — довольно часто название команды совпадает с именем пакета, например nmap, sqlmap — это команды запуска и имена пакетов, которые их содержат:
Если вы получите сообщение, что пакет с таким именем не найден, то попробуйте выполнить поиск по описанию пакетов — довольно часто в описании перечислены программы, которые включены в данный пакет:
Если удалось определить имя пакета, установите его.
Если и это не помогло, то установите (если ещё не сделали) команду apt-file, обновите кэш и выполните поиск:
Данный способ наверняка поможет найти нужный пакет. Если даже это не сработало, то возможны следующие варианты:
- вы неправильно вводите имя команды
- данная программа отсутствует в репозиториях вашего дистрибутива и вам остаётся только устанавливать её вручную — компилировать из исходного кода или скачать предварительно скомпилированные файлы, если автор программы их создаёт
Warning: apt-key is deprecated
Команда apt-key управляет ключами, которые отвечают за проверку подписи репозиториев пакетов приложений.
Теперь при любом использовании команды apt-key вы будете получать сообщение:
Источник