apt autoremove что делает
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Использование опций команды apt-get для очистки системы
Большинство из нас, работающих с системами на базе Debian, регулярно используют apt-get для установки пакетов и обновлений, но как часто мы пользуемся инструментами очистки? Давайте рассмотрим некоторые опции инструмента для очистки.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Эти команды очищают и удаляют файлы, которые все еще находятся в вашей системе, но больше не нужны – часто потому, что приложение, которое требовало их, было удалено.
apt-get clean
Перед запуском операции очистки в каталоге может находиться несколько файлов:
Отобразить содержимое, указанное выше можно выполнив команду:
Команда apt-get clean обычно используется для очистки дискового пространства по мере необходимости, как правило, в рамках регулярного планового обслуживания.
apt-get autoclean
apt-get autoremove
Параметр autoremove удаляет пакеты, которые были установлены автоматически, поскольку они требовались для некоторых других пакетов, но после удаления этих пакетов они больше не нужны. Иногда при обновлении рекомендуется выполнить эту команду.
Удаляемые пакеты часто называют «неиспользуемыми зависимостями». На самом деле, хорошей практикой является использование autoremove после удаления пакета, чтобы быть уверенным, что не осталось ненужных файлов
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Очистка системы Ubuntu
Ни для кого не секрет что система в процессе своей работы засоряется. Установка и удаление программ, выполнение скриптов, обновления, неверная установка программ из исходников, ошибки в программах, все это оставляет в системе лишние, ненужные пакеты. Со временем этих файлов может накапливаться достаточно большое количество.
Конечно, Ubuntu, как и любая другая операционная система Linux засоряется намного меньше Windows, здесь нет реестра, и архитектура системы рассчитана так, чтобы оставлять мусор по минимуму. Но кроме системных недочетов, в файловой системе могут накапливаться ненужные файлы пользователей и программ. Поэтому очистка ubuntu от мусора необходима.
Как очистить Ubuntu
В этой инструкции будет рассмотрена очистка системы Ubuntu. Мы рассмотрим как очистить ненужные, не используемые пакеты, удалить пользовательские файлы и уже ненужные файлы настроек, которые остались в системе, а также найдем все файлы, не принадлежащие ни одному пакету, чтобы вы могли сами оценить нужны они вам или нет. Будет рассмотрена очистка кэша в ubuntu и удаление старых ядер.
1. Использование дискового пространства
Очистка системы Ubuntu 20.04 должна начаться с выяснения, какие файлы потребляют больше всего пространства на диске. В этом вам поможет программа ncdu. Это консольная утилита с псевдографическим интерфейсом, но мне она нравится больше всего. Сначала её надо установить. Для этого выполните в терминале:
sudo apt install ncdu
Затем запустите программу:
После завершения анализа вы можете увидеть какие файлы занимают больше всего пространства на жестком диске. Вы внезапно можете обнаружить, что много места занимают логи или ненужные файлы в домашней папке. Вы можете открывать папки клавишей Enter, перемещаться по ним с помощью стрелок вверх и вниз, а также прямо здесь удалять ненужные файлы с помощью кнопки Delete. Более подробно про утилиты для анализа занимаемого пространства читайте в отдельной статье.
2. Дубликаты файлов
Со временем могло накопиться несколько копий одного файла в системе. Если нужна очистка памяти в Ubuntu, то такие файлы важно найти и удалить, прежде чем они заполнят весь жесткий диск.
Для решения этой задачи есть несколько утилит. Утилита FSlint позволяет найти и очистить битые символические ссылки, а также дубликаты файлов в файловой системе.
Для установки программы используйте команду:
sudo apt install fslint
Запустить программу можно из главного меню. В главном окне нужно указать путь, по которому следует искать дубликаты файлов с помощью кнопки Add, затем перейти на вкладку Дубликаты и нажать в самом низу Найти:
Когда поиск будет завершен, утилита выведет все одинаковые файлы группами, и вы сможете прямо здесь отметить те файлы, которые надо удалить или заменить на символическую ссылку с помощью контекстного меню.
3. Очистка пакетов
Пакеты программного обеспечения одно из самых слабых мест для засорения системы. Если вы устанавливали много приложений, скорее всего, они потянули за собой большое количество зависимостей, которые после удаления этих приложений не представляют никакой пользы. Поэтому очистка Ubuntu обязательно должна включать удаление ненужных пакетов. Вот несколько команд выполняющих очистку системы:
Удалить неиспользуемые пакеты из кэша
sudo apt autoclean
Очистка кэша в Ubuntu, утилиты apt:
Удаление ненужных зависимостей:
sudo apt autoremove
Вообще хорошей практикой будет удалять зависимости сразу при удалении приложения:
sudo apt autoremove приложение
4. Старые версии snap пакетов
В новых версиях Ubuntu используется пакетный менеджер snap, он тоже оставляет в системе кэш, а также старые версии пакетов после обновления. Эти версии уже не используются но всё ещё занимают место. По умолчанию, это три, это значение можно изменить на две с помощью такой команды:
sudo snap set system refresh.retain=2
Если вы хотите полностью удалить неиспользуемые версии пакетов, для этого понадобится использовать небольшой скрипт:
sudo vi /usr/local/bin/remove_old_snaps.sh
Если система установлена достаточно давно, и обновлений было много, то такой скрипт может освободить вам несколько гигабайт места. После сохранения файла дайте ему права на выполнение:
sudo chmod ugo+x /usr/local/bin/remove_old_snaps.sh
5. Старые пакеты программ
При обновлении пакета до более новой версии, его старая версия и её конфигурационные файлы тоже остаются в системе и занимают место на диске. Вы можете освободить немного пространства, удалив такие пакеты.
Откройте менеджер пакетов Synaptec, нажмите кнопку Состояние, затем откройте пункт Не установленные (остались файлы конфигурации). Здесь и будут те пакеты, которые, остались в системе после обновления или неполного удаления.
Аналогичное действие можно выполнить в терминале. Для этого используйте команду:
Можно воспользоваться и командой попроще если у вас установлен aptitude:
sudo aptitude purge
6. Неиспользуемые пакеты
Мы часто устанавливаем различные пакеты, и не все из них нам нужны долгое время. Бывает, что пакет нужен определенному приложению, но после удаления приложения он больше не используется. Или вы установили программу, попользовались ею пару раз, а потом забыли о ее существовании. Такие приложения тоже нужно найти и ликвидировать чтобы очистка ubuntu от мусора была выполнена полностью.
Для этого будет очень полезной программа GTKOrphan. Для ее установки выполните:
sudo apt install gtkorphan
Как обычно, открыть программу вы можете из главного меню.
Она проанализирует систему и покажет все пакеты, которые не находятся ни у кого в зависимостях. То есть те, которые вы устанавливали сами. Теперь вы можете посмотреть какие из них вам не нужны и спокойно их удалить. Не удаляйте все пакеты бездумно, это может сломать вашу систему. Чтобы отобразить больше пакетов кликните по пункту Параметры и выберите Показывать пакеты не только из библиотеки.
7. Файлы локализации
Если вам не нужно переключаться между различными локализациями системы, вы можете просто удалить лишние, не используемые языковые стандарты и освободить немного пространства на диске.
Установите утилиту localepurege:
sudo apt install localepurge
На этапе установки пакета выберите те локали, которые вам нужны, все остальные будут удалены. По умолчанию выбраны en_US и ru_RU для кодировки UTF-8, вы можете выбрать и другие.
8. Никому не принадлежащие файлы
При неправильной установке программ из исходников в системе могут накопляться файлы, не принадлежащие ни одному пакету, после удаления этих программ они могут просто оставаться в системе. Также такие файлы накапливаются при установке программ из бинарных файлов или создаются вами вручную. Одним словом, такие файлы нужно удалять. Для этого будем использовать программу cruft. Для установки выполните:
sudo apt install cruft
Затем просто откройте полученный файл в с помощью less или cat:
Программа выдаст список всех никому не принадлежащих файлов. Теперь вы можете просмотреть и удалить те, которые считаете ненужными. Только будьте очень аккуратны, чтобы не удалить ничего лишнего. Не забудьте что такие файлы могут создаваться и обычными программами, например, Grub и SSL.
9. Старые ядра
После обновления ядра, особенно в старых версиях Ubuntu старые ядра всё ещё остаются и занимают место в папке /boot. Чтобы из удалить можно использовать утилиту Ubuntu Cleaner. Для её установки выполните:
sudo apt install ubuntu-cleaner
Откройте программу из главного меню или через терминал, затем отметьте пункт Old Kernel. В правой части окна появится список пакетов ядер, которые можно удалить:
Отметьте нужные и нажмите кнопку Clean. Другие способы удалить старые ядра описаны в отдельной статье.
Выводы
В этой статье мы рассмотрели несколько самых распространенных способов того, как выполняется очистка Ubuntu от хлама. Они помогут вам поддерживать систему в чистоте. Если вы знаете другие методы, напишите в комментариях!
7 способов освободить место на диске в Ubuntu и Linux Mint
Со временем любая операционная система может засоряться по мере установки и удаления программ. Если ваш диск более 1 Тб, вы можете не утруждать себя очисткой Ubuntu, чтобы освободить место на диске. Но если ваш жесткий диск имеет ограниченное пространство, например, у меня 128 ГБ SSD в ноутбуке, освобождение дискового пространства становится необходимостью.
В этой статье я покажу вам некоторые из самых простых трюков, чтобы очистить вашу систему Ubuntu и получить больше места. Я также поделюсь некоторыми продвинутыми трюками, чтобы у вас был выбор.
Но перед этим давайте посмотрим, как найти свободное место, оставшееся на Ubuntu.
Проверьте свободное место на Убунту
Всегда полезно сначала проверить свободное дисковое пространство в Linux. Сделать это в Ubuntu довольно просто. Просто используйте инструмент Disk Usage Analyzer. Выполните поиск в меню и запустите программу. Здесь вы должны увидеть используемое дисковое пространство, а также оставшееся свободное место:
Как только вы узнали о состоянии свободного места на диске, пришло время очистить систему и освободить здесь еще немного свободного места.
Как освободить дисковое пространство в Ubuntu и Linux Mint
Существует несколько способов очистки дискового пространства в Ubuntu и других системах на базе Ubuntu. Здесь я покажу несколько трюков из командной строки, а также некоторые опции GUI.
Хоть я и упомянул несколько способов здесь, если вы новичок, избегайте тех, которые помечены как «для экспертов». Не то, чтобы вы не можете их использовать, но лучше избегать, если вы не знаете, что делаете.
Я использую Ubuntu 16.04 во время написания этой статьи, но вы можете использовать те же шаги для Ubuntu 18.04 и других версий Ubuntu, Linux Mint, Elementary OS и других дистрибутивов Linux на основе Ubuntu.
Вы также можете посмотреть видео, если не хотите читать.
1. Избавьтесь от пакетов программ, которые больше не требуются [Рекомендуется]
Если вы читали руководство по командам apt-get, вы могли наткнуться на опцию apt-get command ‘autoremove’.
Эта опция удаляет библиотеки и пакеты, которые были установлены автоматически для создания зависимостей устанавливаемого пакета. Если пакет был удален, то эти автоматически установленные пакеты бесполезны в системе.
Эта команда также удаляет старые ядра Linux, которые были автоматически установлены при обновлении системы.
Это простая команда, которую вы можете запускать время от времени, чтобы освободить место в системе Ubuntu:
Как видите, эта она освободила 300 Мб свободного пространства в моей системе.
2. Удалите ненужные приложения [Рекомендуется]
У всех нас есть несколько игр и/или приложений, которые мы почти не используем. Думаете, это не так? Попробуйте найти всё установленное программное обеспечение в вашей системе Ubuntu.
Скорее всего, у вас установлено несколько приложений, которые вы редко используете. Может быть, вы установили их после просмотра какого-либо крутого обзора, из любопытства или для выполнения определенной задачи.
Вы можете удалить программы в Ubuntu прямо в центре программного обеспечения или с помощью приведенной ниже команды, если знаете правильное название приложения:
3. Очистка APT-кэша в Ubuntu
Ubuntu использует APT (Advanced Package Tool) для установки, удаления и управления программным обеспечением в системе, при этом он сохраняет кэш ранее загруженных и установленных пакетов даже после их удаления.
Система управления пакетами APT хранит кэш DEB пакетов в /var/cache/apt/archives. Со временем этот кэш может увеличиваться и содержать множество пакетов, которые вам не нужны.
Вы можете увидеть размер этого кэша с помощью команды du ниже:
Как видите, у меня более 500 Мб кэш-памяти. Когда у вас почти нет места, эти 500 Мб могут быть очень полезными.
Теперь у вас есть два способа очистить APT кэш.
Либо удалить только устаревшие пакеты, как те, которые были заменены недавним обновлением, что делает их совершенно ненужными.
Либо удалить кэш apt целиком (освобождает больше дискового пространства):
4. Очистка логов системных журналов [Средний уровень]
Каждый дистрибутив Linux имеет механизм протоколирования, который поможет Вам исследовать, что происходит в Вашей системе. В Ubuntu у вас будут данные журнала ядра, сообщения системного журнала, стандартный вывод и ошибки в различных службах.
Проблема в том, что с течением времени эти журналы занимают значительное место на диске. Вы можете проверить размер журнала с помощью этой команды:
5. Удаление старых версии Snap-приложений [Средний уровень]
Вы, наверное, уже знаете, что Snap-пакеты больше по размеру. Кроме того, в Snap хранятся как минимум две старые версии приложения (в случае, если вы хотите вернуться к предыдущей версии). Это съедает огромную часть пространства. В моем случае эта часть составляла более 5 GB.
Алан Поуп (Alan Pope), член команды Snapcraft в Canonical, создал небольшой скрипт, который вы можете использовать и запускать для очистки всех старых версий ваших snap приложений.
Здесь вам нужно создать новый shell скрипт и использовать следующие строки в нем:
Дайте ему разрешение на выполнение, запустите скрипт оболочки с помощью sudo и увидите магию. Скрипт удалил старые пакеты Snap и освободил более 2,5 ГБ пространства, используемого Snap.
6. Очистка кэша эскизов [Средний уровень]
Ubuntu автоматически создает эскизы для просмотра в файловом менеджере. Эти эскизы хранятся в скрытом каталоге в вашем аккаунте пользователя в каталоге
Со временем количество эскизов будет резко возрастать. Более того, кэш эскизов со временем будет содержать множество лишних элементов, которые больше не существуют.
Вы можете проверить размер кэша эскизов с помощью следующей команды:
В моей системе кэш эскизов размером более 300 Мб.
7. Поиск и удаление дубликатов файлов
Иногда у вас могут быть дубликаты файлов в разных местах вашей системы. Избавление от дубликатов, безусловно, освободит некоторое пространство и очистит вашу систему Ubuntu.
Для этой задачи можно использовать графический интерфейс, такой как FSlint, или инструмент командной строки, такой как FDUPES.
Другие методы очистки системы [Для экспертов]
Удаление старых ядер Linux, которые были установлены вручную [Для экспертов].
Команда, рассмотренная в пункте 1, удаляет старое ядро Linux. Но она не сработает, если вручную установить ядро в Ubuntu. Но удаление старого, неиспользуемого ядра Linux все равно сэкономит Вам много места.
Поэтому, если Вы вручную установили ядро Linux, возможно, Вы сможете вручную и удалить его.
Сначала перечислите все установленные ядра Linux:
Замечание: Замените VERSION на версию ядра, которую хотите удалить.
Я рекомендую хранить как минимум два или, желательно, три ядра, включая самые последние. Таким образом, у вас будет по крайней мере одно/два других ядра для загрузки, если по какой-то причине последнее ядро не может быть загружено.
Удаление осиротевших пакетов [Для экспертов]
Этого шага лучше всего избегать, если вы новичок. Я не являюсь поклонником этого метода и советую вам избегать его.
Во-первых, давайте посмотрим, что такое осиротевший пакет в Ubuntu.
Предположим, вы установили пакет «myprogram». Но у этого пакета есть зависимость от библиотеки ‘mylib’. Эта библиотека обычно устанавливается автоматически с помощью ‘myprogram’. Когда вы удаляете ‘myprogram’, mylib может остаться в системе. Таким образом, mylib, в данном случае, становится сиротским пакетом.
Теперь команда, перечисленная в пункте 1, удаляет такие осиротевшие пакеты. Но представьте себе случай, когда вы вручную установили mylib перед установкой myprogram. Команда ‘apt autoremove’ в данном случае может не удалить осиротевший пакет. Следовательно, вам придется удалить его вручную.
Сначала вы должны найти все осиротевшие пакеты, а затем удалить их. К счастью, у нас есть GUI-инструмент для этого: gtkorphan, графическая оболочка для deborphan.
Установите gtkorphan через терминал:
А чтобы удалить осиротевшие пакеты, найдите инструмент Removed Orphaned Package и запустите его:
Честно говоря, я бы не рекомендовал этот вариант, если конечно тебе действительно не нужен каждый Мб свободного пространства.
Бонус: Использование графических инструментов GUI для освобождения пространства в Ubuntu
Мы видели несколько вариантов работы с командной строкой, чтобы освободить место в системе Linux, но я пойму, если вы не хотите использовать команды.
Запоминать все команды или использовать их все по очереди может быть неудобно. И именно поэтому у нас есть ряд GUI инструментов, которые помогут вам сделать это за несколько кликов с помощью простого в использовании интерфейса.
Завершение
Итак, вы видели несколько способов очистки системы Ubuntu. Лично я использую apt-get autoremove чаще, чем любые другие команды, показанные здесь. Регулярное использование этой команды освобождает систему от лишних файлов.
Надеюсь, эта статья помогла Вам освободить место в Ubuntu, Linux Mint и других подобных дистрибутивах. Дайте мне знать, сработало ли это для Вас, или у Вас есть другой совет, которым Вы можете поделиться.
Использование APT в Linux. Команды apt и apt-get
Что такое APT
APT (сокращение от Advanced Packaging Tool) — это набор утилит для установки, удаления, обновления, поиска пакетов в Linux, а также для управления репозиториями. APT еще называют пакетным менеджером.
APT использует репозитории пакетов. Список репозиториев для APT хранится в файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/.
APT используется в дистрибутивах, основанных на Dedian и Ubuntu.
Для управления APT существуют разные утилиты, но самые популярные из них это утилиты командной строки apt-get и apt.
В данной статье мы рассмотрим, как пользоваться командой apt, а также узнаем, чем отличается apt от apt-get.
Чем отличаются apt и apt-get
Кратко ответим на очень популярный вопрос, а в чем разница между командами apt и apt-get?
apt это утилита, которая появилась, как альтернатива apt-get. Она выполняет практически все те же функции, что и apt-get, но с ней проще и понятнее работать.
Например, все команды apt имеют простой синтаксис: apt название_команды. А у apt-get есть дополнительные команды, например, apt-cache. Таким образом, при использовании apt, пользователю не нужно запоминать дополнительные наборы команд.
Помимо упрощения работы с командами, apt нагляднее выводит информацию, вроде бы мелочи, но работать удобнее. Например, apt умеет показывать прогресс бар, а при выполнении apt update можно увидеть сколько пакетов можно обновить.
Стоит отметить, что утилита apt-get более функциональна, чем apt. Но для рядового пользователя apt будет более чем достаточно.
Синтаксис и опции apt
Синтаксис команды apt очень простой и похож на другие команды Linux:
$ aptопциикомандапараметры_команды
Опции указывают общее поведение утилиты, команда – действие, которое надо выполнить, а в параметрах команды обычно передается имя пакета, с которым следует работать, например, установить или удалить. Вот основные опции утилиты:
А теперь давайте пройдёмся по командам apt, которые вы можете использовать:
Дальше рассмотрим несколько примеров работы с apt, которые пригодятся как начинающим, так и более опытным пользователям.
Как пользоваться apt
Обновление пакетов
Сначала давайте обновим список пакетов apt из репозиториев. Репозитории находятся на удалённых серверах и когда утилита apt ищет пакет для установки, естественно, что она не обращается ко всем репозиториям подряд чтобы узнать где он находится. В системе уже есть сохранённых кэш информации о том, какие пакеты вообще есть и где их можно скачать. Для обновления этого кэша используйте команду update:
Во время загрузки URL репозиториев обозначаются специальными префиксами, вот что они означают:
Когда кэш обновлен вы можете посмотреть для каких пакетов доступны обновления:
sudo apt list –upgradable
Аналогично можно посмотреть установленные пакеты apt:
sudo apt list –installed
Или всех доступных:
sudo apt list –all-versions
Затем можно обновить все пакеты в системе:
sudo apt full-upgrade
Установка пакетов
Чтобы установить пакет apt используйте команду install, например, для установки программы Gimp используйте команду install:
sudo apt install gimp
Если пакет установился неверно и вы хотите его переустановить, можно использовать опцию –reinstall:
sudo apt install gimp –reinstall
Как видите, опции можно указывать не только перед командой, но и после неё, аналогично можно установить несколько пакетов сразу, например:
Чтобы не подтверждать установку вручную используем опцию -y. Допустим вы установили пакет с помощью dpkg и теперь хотите установить для него зависимости, запустите команду install без параметров с опцией -f или –fix-broken:
sudo apt install –fix-broken
Можно скачать deb пакет в текущую папку без установки:
Скачивать пакеты надо от имени обычного пользователя, иначе тогда они не будут доступны для работы с ними. Если вам нужно установить пакет из файла, просто передайте путь к файлу команде install:
sudo apt install gimp_2.8.22-1_amd64.deb
Чтобы установить определенную версию пакета просто укажите нужную версию после имени пакета через знак =, например:
sudo apt install linux-хедерs-generic=4.15.0.20.23
Чтобы найти доступные версии можно использовать команду policy. Она отображает информацию о том какая версия установлена, а также какие версии доступны:
sudo apt policy linux-хедерs-generic
Если вы не знаете как точно называется пакет, можно выполнить поиск пакетов apt с помощью команды search:
sudo apt search gimp
Установить несколько пакетов
Для установки нескольких пакетов их имена записываются через пробел:
Удаление пакетов
Чтобы удалить ненужный пакет используйте команду remove:
sudo apt remove gimp
Однако если вы изменяли какие-либо конфигурационные файлы из состава пакета, то при таком способе удаления они останутся в системе, чтобы удалить всё полностью используйте команду purge:
sudo apt purge gimp
Чтобы удалить лишние пакеты, которые в системе больше не нужны выполните команду autoremove:
sudo apt autoremove
А для очистки кэша пакетов – autoclean:
sudo apt autoclean
Удалить неиспользуемые пакеты
sudo apt autoremove
Когда вы устанавливаете пакет, то часто устанавливаются дополнительные пакеты, являющиеся его зависимостями. Если теперь вы удалите этот пакет, то зависимости останутся в системе. apt autoremove удаляет эти зависимости, но только те, которые не нужны другим установленным пакетам.
Обновить список пакетов
У APT есть список репозиториев, из которых происходит установка пакетов. Список хранится в текстовом файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/. При выполнении команды apt update, APT проходит по списку репозиториев и из каждого репозитория в списке получает информацию о пакетах, находящихся в репозитории. Вся эта информация сохраняется в системе.
Если выходит новая версия какого-нибудь пакета, то APT не узнает об этом, пока не будет выполнена команда apt update. Поэтому, если установить данный пакет (не выполнив предварительно apt update), то будет установлена та версия пакета, информация о которой хранится в системе в данный момент.
Нужно ли выполнять apt update перед установкой каждого пакета?
Нет, перед установкой каждого пакета apt update конечно же выполнять не следует. Достаточно выполнять apt update периодически. Если вам предстоит установка нескольких пакетов, то сначала можно один раз выполнить apt update, а потом уже устанавливать пакеты.
Крайне рекомендуется выполнять apt update перед обновлением пакетов (перед apt upgrade).
Эта команда покажет, какие файлы для пакета с именем package_name установлены на вашем компьютере. Обратите внимание, что эта команда работает только для уже установленных пакетов. Пример:
apt-get build-dep package_name
(необходимы привилегии root)
Это очень полезная команда, с ее помощью устанавливаются все библиотеки, необходимые для разработки приложения. Так что если вам нужно скомпилировать новую версию программы, отличающуюся от той, что есть в репозитарии, для получения зависимостей используйте эту команду. Обратите внимание, что будут установлены библиотеки, необходимые для текущей версии приложения, которая взята из репозитариев, поэтому вам, возможно, потребуется установить дополнительные библиотеки. Но для большинства приложений этого не требуется. Пример:
apt-get build-dep wesnoth
С помощью этой команды будут установлены все пакеты разработчика, необходимые для приложения Wesnoth. Имейте в виду, что у вас должен быть прописан доступ к репозитариям исходных кодов (в Ubuntu по умолчанию доступ к ним есть).
apt-get clean (и apt-get autoclean)
(необходимы привилегии root)
С помощью этой команды удаляются все архивы, установленные в вашей системе. Всякий раз, когда вы устанавливаете приложение, оно будет загружено и его пакет DEB будет помещен в директорий /var/cache/apt/archives/. Данная команда удаляет эти пакеты и освобождает место.
apt-get clean
apt-get autoclean
apt-cache show package_name
Будет отображена информация о любом пакете package_name, который присутствует в репозитарии. Вам достаточно набрать только название пакета, а не указывать название и версию. Пример:
$ apt-cache show vorbis-tools
Package: vorbis-tools
Priority: optional
Section: sound
Installed-Size: 580
…
apt-get update && apt-get upgrade
(необходимы привилегии root)
Это одностроковая команда, которая обновит список ваших пакетов и выполнит обновление вашей системы. Поскольку для ее выполнения требуются привилегии root, то если ваш дистрибутив — Ubuntu, используйте sudo apt-get update && sudo apt-get upgrade. Обратите внимание, что вторая команда (после двойного амперсанда) выполняется только в случае, если выполнение первой команды было успешным, поэтому, если по какой-нибудь причине списка обновлений получить не удалось, вторая команда выполняться не будет. Если вы используете тестовый или бета-релиз, используйте вместо нее следующую команду:
sudo apt-get update && sudo apt-get dist-upgrade
Обновления будут получены даже в случае, если они зависят от более новых пакетов.
dpkg –get-selections
Эта команда выведет список всех пакетов, установленных в системе с помощью менеджера пакетов (более точно, это те пакеты, которые были выбраны в менеджере пакетов — прим.пер.). Пример:
$ dpkg –get-selections
acpi-support-base install
acpid install
adduser install
akregator install
…
Будет найден по образцу filename список файлов, имеющихся в установленных пакетах. Пример:
apt-get autoremove
(необходимы привилегии root)
С помощью этой команды удаляются ненужные пакеты (например, одиночные пакеты), которые не используются никаким из пакетов, в текущий момент установленных в системе. Такая ситуация часто возникает после удаления определенного приложения, когда его зависимости не удаляются и по-прежнему остаются в системе. Используйте эту команду, чтобы избавиться от таких пакетов.
apt-cache depends package_name
Очень полезная команда, которая перечисляет все зависимости, которые есть у пакета, в том числе и рекомендуемые пакеты.
$ apt-cache depends vorbis-tools
vorbis-tools
Depends: libao2
Depends: libc6
Depends: libcurl3-gnutls
…
apt-cache policy package_name
Эта команда выдаст список репозитариев, в которых находится пакет. В Ubuntu, есть четыре таких репозитария: main, restricted, universe и multiverse. В Debian имеются репозитари main, contrib и non-free. Для каждого пакета есть определенная политика его использования и она зависит от того, в каком из указанных репозитариев находится пакет.
apt-cache policy amarok
apt-cache policy sun-java6-jre
apt-cache showsrc package_name
Будет отображаться информация об исходном коде пакета.
(необходимы привилегии root)
apt-cdrom add
(необходимы привилегии root)
Команда добавит CD-ROM к числу источников, откуда можно получать пакеты, так что вы сможете устанавливать с него пакеты. Эта команда особенно полезна, если у вас есть образы ISO, которые вы не хотите записывать на компакт-диск. Для того, чтобы сканировать образы ISO, используйте команду:
В результате в директории /cdrom будет смонтирован образ ISO, а затем его содержимое будет добавлено в sources.list. Обратите внимание, что директорий /cdrom должен быть пустым. Для этого вы можете использовать любой пустой директорий:
apt-file
Эта программа предназначена для поиска файлов в пакетах. Также она может показать все файлы в пакете.
sudo apt-get install apt-file
Сразу после установки кэш данных о программах пуст. Чтобы его обновить нужно выполнить команду (можно выполнять как от рута, так и от пользователя):
Когда всё готово, то поиск осуществляется так:
apt-file search имя_файла
К примеру я ищу файл ffi.h:
apt-file search ffi.h
Как можно увидеть файл найден, но кроме него ещё и много лишнего:
На помощь можно призвать умные регулярные выражения, к примеру в следующей строке замените ffi.h на тот файл, который вы ищите — и вы всегда будете получать самый точный результат:
Ну и для любителей графического интерфейса, вот вам от меня графический интерфейс:
Справка по команде apt-file
Действия:
update Извлечь информацию оглавлений файлов из apt-sources.
search|find Поиск файлов в пакете
list|show Список файлов в пакете
purge Удалить файлы кэша
whichpkg
whichpkg — это единая оболочка для управления пакетами в Debian. Она является обёрткой вокруг apt, apt-cache, dpkg, aptitude и других. Её цель — простое управление пакетами из одного интерфейса путём унификации главных функций этих инструментов.
sudo apt-get install wajig
wajig
wajig> whichpkg ffi.h
INSTALLED MATCHES (x2)
———————-
libffi-dev:amd64: /usr/share/doc/libffi6/html/Using-libffi.html
libffi-dev:amd64: /usr/include/x86_64-linux-gnu/ffi.h
UNINSTALLED MATCHES (x13)
————————-
watobo: /usr/share/watobo/rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc64
libffi-dev: /usr/share/doc/libffi6/html/Using-libffi.html
pypy-doc: /usr/share/doc/pypy-doc/html/rffi.html
chipmunk-dev: /usr/include/chipmunk/chipmunk_ffi.h
watobo: /usr/share/watobo/rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.vc
ghc-doc: /usr/share/doc/ghc-doc/html/users_guide/ffi.html
watobo: /usr/share/watobo/rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/ext/ffi_c/libffi/include/ffi.h.in
jython-doc: /usr/share/doc/jython-doc/html/javadoc/org/python/modules/jffi/jffi.html
mlton-basis: /usr/lib/mlton/include/basis-ffi.h
watobo: /usr/share/watobo/rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/ext/ffi_c/rbffi.h
libgirepository1.0-dev: /usr/include/gobject-introspection-1.0/girffi.h
pypy-doc: /usr/share/doc/pypy-doc/html/config/objspace.usemodules._rawffi.html
libffi-dev: /usr/include/x86_64-linux-gnu/ffi.h
wajig>
Как видно, показаны совпадения в установленных и в неустановленных пакетах. НО мой предыдущий фокус с фильтрацией командой grep здесь не работает.
Как и положено быть унифицированному интерфейсу, у этой команды огромное количество опций и есть встроенный урок по использованию. Но их рассмотрение выходит за рамки этой заметки.
auto-apt
Программа auto-apt предназначена для поиска пакетов по файлу и установке пакетов по требованию.
Инструмент auto-apt проверяет доступ к файлам запущенными программами внутри своего окружения, и если программа пытается получить доступ к файлу про который известно, что он принадлежит к неустановленному пакету, то auto-apt установит этот пакет используя apt-get. Эта функция требует рабочих apt и sudo.
Программа также имеет простую базу данных для поиска пакета, содержащего требуемый файл.
sudo apt-get install auto-apt
После установки нужно обновить список пакетов следующей командой:
sudo auto-apt update
Поиск осуществляется так:
auto-apt search имя_файла
auto-apt search ffi.h
Лично у меня программа не сработала ни на одной из двух систем (на одной не смогла полностью загрузить файлы с содержанием пакетов, как следствие — поиск ничего не нашёл, на другой системе программа вообще ничего не стала загружать).
dlocate
sudo apt-get install dlocate
Расширенная система управления пакетами APT.
Система APT (Advanced Packaging Tool) не совсем система управления пакетам. Все действия с пакетами выполняют другие утилиты пакета dpkg, а утилиты APT представляют собой интерфейс для взаимодействия, с помощью которого осуществляется сверка контрольных сумм, поиск пакетов, разрешение зависимостей, выкачивание из репозиториев.
APT включает в себя следующий набор утилит:
Утилиты пакета apt.
Установка программ Ubuntu/Debian с помощью пакетного менеджера
Установка с помощью пакетного менеджера
Эволюция методов установки и управления программными пакетами со временем дошла до использования пакетных менеджеров, плотно интегрированных с репозиториями. В репозиториях содержатся упакованные файлы программ с данными об их зависимостях. После установки к операционной системе уже подключены системные репозитории: с их помощью можно обновлять ОС и устанавливать программные пакеты, которые были адаптированы и оптимизированы для работы с этой версией операционной системы.
Перед началом установки пакетов рекомендуется обновить данные о версиях и зависимостях в репозитории следующей командой:
sudo apt-get update
Скриншот №1. Обновление данных о версиях и зависимостях в репозитории
Если необходимо уточнить название пакета, который требуется установить — ищем в локальном кэше менеджер по ключевым словам, например, web server:
sudo apt-cache search web server
В результате получим большой перечень пакетов, где данное ключевое слово присутствует в описании:
Скриншот №2. Поиск по ключевым словам
Выбираем нужный нам пакет — в данном случае это apache2, и устанавливаем его:
sudo apt-get install apache2
Пакетный менеджер проверяет зависимости, версии, сравнивает их с уже установленными через apt-get пакетами, после чего выдает список необходимых для установки компонентов и запрашивает разрешение на продолжение операции:
Скриншот №3. Установка пакета
Нажимаем y и дожидаемся окончания установки.
Часто используемые команды пакетного менеджера:
Установка через Debian package
Программные пакеты могут распространяться и не через репозитории. Например, они могут быть доступны на сайтах разработчиков. В таком случае, пакет можно скачать и воспользоваться утилитой dpkg (debian package) для установки. При использовании dpkg не происходит автоматическое отслеживание зависимостей и скачивание дополнительных пакетов. В случае нехватки каких-либо программ или библиотек установка завершится ошибкой с указанием списка отсутствующих пакетов. Их придется установить отдельно, например, через apt-get, если они присутствуют в подключенных репозиториях, либо скачивать с сайтов разработчиков и устанавливать в нужном порядке через dpkg.
Для примера скачаем из системного репозитория установочный пакет веб-сервера Nginx командой:
sudo apt-get download nginx
и попробуем установить через dpkg –i имя_файла.deb:
В результате система выдает ошибку с перечнем отсутствующих пакетов:
Скриншот №4. Ошибка с перечнем отсутствующих пакетов
Основные опции dpkg:
Установка через файлы сценариев
после чего запустить непосредственно сценарий:
5 команд, которые должен знать каждый
Команда sudo
Sudo расшифровывается как “Superuser do”, то есть что должен сделать суперпользователь. Если вы хоть раз устанавливали/удаляли какое либо приложение, редактировали системные файлы, либо пользовались другими командами, затрагивающими систему, то вы уже наверняка пользовались командой sudo.
Команда sudo всегда пишется в начале. К примеру вот команда для обновления списка пакетов:
Shell
sudo apt-get update
1 | sudo apt-getupdate |
Для запуска графических приложений лучше использовать команду gksudo. Почему? Во-первых эта команда для этого и предназначена, во-вторых это исключает некоторые возможные ошибки, которые могут возникать при работе приложений с графическим интерфейсом, вызываемых через sudo. Пример запуска nautilus:
Shell
gksudo nautilus
Команда cd
Cd расшифровывается как “Change Directory” и с помощью этой команды осуществляется навигация по директориям.
Функции команды cd:
1 | cd/home/user/directory |
перейти “назад”, в предыдущую категорию
Помните, что при использовании команды cd можно пользоваться клавишой Tab для автоматического написания полного имени папки. На пример пишем следующее:
Нажимаем Tab и получаем следующее:
Команда ls
Навигация по папкам с помощью команды cd довольно проста, но как найти нужный файл? Вот тут и нужна команда ls.
Функции команды ls:
Отобразить все файлы и папки в директории, включая скрытые
Команда apt-get install
Приложения, которые доступны в Центре приложений Ubuntu, и которые доступны в ваших PPA, могут быть установлены с помощью apt-get install.
На пример как установить браузер Chromium:
Shell
sudo apt-get install chromium-browser
1 | sudo apt-getinstall chromium-browser |
Так же можно прописывать не install, а remove, для удаления программы. Пример:
Shell
sudo apt-get remove chromium-browser
1 | sudo apt-getremove chromium-browser |
Довольно популярный вопрос – Как узнать версию ядра (Kernel Version) в Ubuntu Linux. А сделать это довольно просто.
Вводим в терминале:
Дорогие читатели! Давайте составим свой список из 5-ти самых важных команд! Пишите ваши варианты в комментариях, либо в твиттере с упоминанием @ubuntovod. Как соберём достаточно вариантов – будет опубликован список.
2. На сколько мне известно, команда su расшифровывается как set user, а не superuser. Команда sudo подобна ей, но устанавливает пользователя только на одну команду (которая указывается сразу за sudo). Я не нашел интерпертации аббревиатуры sudo, но ваша интерпетация мне каженся сомнительной, т.к. эта команда охватывает все учетные записи, а не только учетную запись root (или superuser, как у Вас написано). Поэтому присваивать ее суперюзеру не совсем корректно.
Настройка Debian после установки
Актуализация (обновление) системы
Это самый первый шаг, если система у вас нормально запустилась и вы имеете подключение к интернету. В принципе, если вы устанавливали Debian с помощью сетевого установщика, данный шаг может не понадобится, он больше нужен пользователям, использующим CD/DVD диски.
Установка и настройка sudo
Если вы хоть в какой-то степени знакомы с Linux, вы наверняка знаете, что в нем довольно строгая система разграничения прав пользователей. Так, для большинства действий связанных с установкой/удалением ПО, настройкой ОС и т.д вам нужно обладать правами суперпользователя. В предыдущем шаге, чтобы обновить систему мы заходили под учетную запись рута, но это не самый лучший и безопасный вариант. Обычному пользователю будет гораздо удобнее воспользоваться утилитой sudo, которая позволяет выполнять действия, требующие прав администратора обычному пользователю.
В Debian по-умолчанию sudo не всегда есть, поэтому устанавливаем его (снова залогинившись под рутом):
apt-get install sudo
Но это еще не все. Чтобы пользоваться sudo, вам нужно дать себе права на это. Для этого необходимо либо вносить изменения в файл «sudoers» либо, что проще, добавить себя в группу sudo:
adduser имя_пользователя sudo
После пререзайдите в систему.
С этого момента, если вам, например, нужно установить какую-либо программу или выполнить обновление системы, не нужно заходить в учетную запись рута, просто перед нужной командой добавьте sudo, например: apt-get update под рутом, будет sudo apt-get update под обычным пользователем.
Добавляем репозиторий с несвободными пакетами
Debian известен своей политикой в отношении лицензирования ПО. В состав дистрибутива и основного репозитория входят только свободные (по мнению разработчиков) программы. Все не подходищее под это понятие попадает в non-free репозиторий, который по-умолчанию отключен. В нем находится большое количество нужного ПО, такого как: несвободные драйвера, Microsoft шрифты, Flash и т.п. Используя Debian как домашнюю десктопную ОС, данный репозиторий вам понадобится с вероятностью 99,9%.
Подключим его в систему:
Поскольку мы добавили новый источник пакетов, нужно обновить индексные файлы:
sudo apt-get update
Настраиваем сглаживание шрифтов
Из коробки в Debian довольно плохое сглаживание шрифтов во всей системе. Чтобы решить данную проблему достаточно в /etc/fonts/ создать файл «local.conf» со следующим содержанием:
Сохраните файл и перелогинтесь — шрифты станут нормальными.
Отключаем звук системного динамика
По неизвестной мне причине в Debian оставили включенным модуль ядра «pcspkr», который отвечает за срабатывания системного динамика. Таким образом, при включении или выключении компьютера, а так же в некоторых других случаях из системного блока доносится неприятный писк.
Дабы избавится от данной мелочи нужно просто отключить модуль pcspkr, а точнее — занести его в «черный список» (файл «fbdev-blacklist.conf«), который можно найти по пути /etc/modprobe.d/.
Установка Adobe Flash
Нравится вам или нет, но Flash еще достаточно распространен на просторах интернета. Поскольку это проприетарный продукт который, тем более, последние несколько лет не выпускается для Linux, он, естественно, отсутствует в Debian из коробки. Однако легко устанавливается из, как было выше сказано, non-free репозитория. Если он у вас подключен выполните:
sudo apt-get install flashplugin-nonfree
После этого, если вы пользуетесь браузером Chromium, нужно до установить пакет «pepperflashplugin-nonfree«:
sudo apt-get install pepperflashplugin-nonfree