Stylesheet conf/userstyle.css not found, please contact the developer of "dokuwiki_2024" template.
linux:debian:apt
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
linux:debian:apt [2022/04/17 01:58] – dx | linux:debian:apt [2023/05/22 23:28] (текущий) – dx | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== apt & dpkg - сборник полезностей ====== | ||
+ | ==== apt pin для php из sury ==== | ||
+ | |||
+ | В Debian 11 уже идёт PHP 7.4, но я предпочитаю репозиторий sury. | ||
+ | |||
+ | Задача: | ||
+ | Проблема: | ||
+ | Решение: | ||
+ | |||
+ | Добавляем в ''/ | ||
+ | |||
+ | < | ||
+ | Package: * | ||
+ | Pin: origin " | ||
+ | Pin-Priority: | ||
+ | </ | ||
+ | |||
+ | либо только для пакетов php7.4-* | ||
+ | |||
+ | < | ||
+ | Package: *php7.4* | ||
+ | Pin: origin " | ||
+ | Pin-Priority: | ||
+ | </ | ||
+ | |||
+ | Вариант ниже надо проверить | ||
+ | |||
+ | < | ||
+ | Package: * | ||
+ | Pin: release o=deb.sury.org | ||
+ | Pin-Priority: | ||
+ | </ | ||
+ | |||
+ | Подсказка по priority | ||
+ | |||
+ | [[https:// | ||
+ | * P >= 1000 - пакет будет установлен, | ||
+ | * 990 <= P < 1000 - пакет будет установлен, | ||
+ | * 500 <= P < 990 - пакет будет установлен, | ||
+ | * 100 <= P < 500 - пакет будет установлен, | ||
+ | * 0 < P < 100 - пакет будет установлен, | ||
+ | * P < 0 - пакет не будет установлен ни при каких условиях | ||
+ | * P = 0 - неопределенное состояние, | ||
+ | |||
+ | EN | ||
+ | |||
+ | Package: * | ||
+ | Pin: origin my.custom.repo.url | ||
+ | Pin-Priority: | ||
+ | |||
+ | Package: * | ||
+ | Pin: origin packages.sury.org | ||
+ | Pin-Priority: | ||
+ | |||
+ | * P > 1000 causes a version to be installed even if this constitutes a downgrade of the package | ||
+ | * 990 < P <=1000 causes a version to be installed even if it does not come from the target release, unless the installed version is more recent | ||
+ | * 500 < P <=990 causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent | ||
+ | * 100 < P <=500 causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent | ||
+ | * 0 < P <=100 causes a version to be installed only if there is no installed version of the package | ||
+ | * P < 0 prevents the version from being installed | ||
+ | |||
+ | ==== Посмотреть версию установленного пакета ==== | ||
+ | |||
+ | <code bash> | ||
+ | apt-show-versions nginx | ||
+ | dpkg -s nginx | grep -i version | ||
+ | apt-cache policy nginx | ||
+ | </ | ||
+ | |||
+ | Устаревшая команда | ||
+ | <code bash> | ||
+ | apt-cache madison curl | ||
+ | </ | ||
+ | |||
+ | ==== Исключить пакет из обновлений ==== | ||
+ | |||
+ | **apt-mark** | ||
+ | |||
+ | <code bash> | ||
+ | #apt-mark hold nginx | ||
+ | nginx set on hold. | ||
+ | |||
+ | # apt upgrade | ||
+ | The following packages have been kept back: | ||
+ | nginx | ||
+ | 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. | ||
+ | </ | ||
+ | |||
+ | Вернуть обратно | ||
+ | |||
+ | <code bash> | ||
+ | # apt-mark unhold nginx | ||
+ | Canceled hold on nginx. | ||
+ | </ | ||
+ | |||
+ | **dpkg** | ||
+ | |||
+ | <code bash># echo "nginx hold" | dpkg --set-selections</ | ||
+ | |||
+ | Вернуть обратно | ||
+ | |||
+ | <code bash># echo "nginx install" | ||
+ | |||
+ | **aptitude** | ||
+ | |||
+ | <code bash> | ||
+ | # aptitude hold nginx | ||
+ | # aptitude unhold nginx | ||
+ | </ | ||
+ | |||
+ | ==== configure: error: Please reinstall the gpgme distribution ==== | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | ==== sudo: phpize: command not found ==== | ||
+ | |||
+ | <code bash>apt install php7.0-dev</ | ||
+ | |||
+ | ==== rulesfile not readable: / | ||
+ | |||
+ | **iptables-persistent** заменили на **netfilter-persistent** | ||
+ | |||
+ | iptables-persistent | ||
+ | |||
+ | <code bash> | ||
+ | # service iptables-persistent | ||
+ | Usage: / | ||
+ | </ | ||
+ | |||
+ | netfilter-persistent | ||
+ | |||
+ | <code bash> | ||
+ | # service netfilter-persistent | ||
+ | Usage: / | ||
+ | </ | ||
+ | |||
+ | ==== sqlcmd ==== | ||
+ | |||
+ | <code bash> | ||
+ | $ curl https:// | ||
+ | $ sudo apt update | ||
+ | $ sudo apt install mssql-tools | ||
+ | $ / | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | <code bash> | ||
+ | echo ' | ||
+ | echo ' | ||
+ | </ | ||
+ | |||
+ | ===== Ошибки ===== | ||
+ | |||
+ | ==== TLS not available: requires Net:: | ||
+ | |||
+ | <code bash> | ||
+ | apt-get install libnet-ssleay-perl | ||
+ | apt-get install libcrypt-ssleay-perl | ||
+ | </ | ||
+ | |||
+ | ==== Unable to open env file: / | ||
+ | |||
+ | Ошибка **pam_env(cron: | ||
+ | |||
+ | <code bash> | ||
+ | apt-get install locales | ||
+ | locale-gen en_US.UTF-8 | ||
+ | dpkg-reconfigure locales | ||
+ | update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 | ||
+ | echo " | ||
+ | echo " | ||
+ | echo " | ||
+ | </ | ||
+ | |||
+ | Проверить FIXME | ||
+ | |||
+ | ==== Разное ==== | ||
+ | |||
+ | Ошибка **The value ' | ||
+ | |||
+ | Нужно [[https:// | ||
+ | |||
+ | Ошибка **UnicodeDecodeError: | ||
+ | |||
+ | Файл сохранен в windows редакторе. Пересохранить в UTF-8 кодировке. | ||
+ | |||
+ | Ошибка **UnicodeDecodeError: | ||
+ | |||
+ | < | ||
+ | export LC_CTYPE=en_US.UTF-8 | ||
+ | source ~/.bashrc | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | < | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | < | ||
+ | locale-gen " | ||
+ | dpkg-reconfigure locales | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ==== ipv4 и ipv6 для apt ==== | ||
+ | |||
+ | Принудительно использовать v4 или v6 соединение. | ||
+ | |||
+ | Добавить в файл ''/ | ||
+ | |||
+ | < | ||
+ | |||
+ | или | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== Запретить обновление определенных пакетов ==== | ||
+ | |||
+ | Запретить обновление пакета mariadb-server | ||
+ | |||
+ | < | ||
+ | |||
+ | Проверка | ||
+ | |||
+ | < | ||
+ | # dpkg --get-selections | grep mariadb-server | ||
+ | mariadb-server | ||
+ | </ | ||
+ | |||
+ | Если выполнить **apt-get upgrade** | ||
+ | |||
+ | < | ||
+ | The following packages have been kept back: | ||
+ | mariadb-server mariadb-server-10.2 | ||
+ | </ | ||
+ | |||
+ | Разрешить обновление пакета | ||
+ | |||
+ | < | ||
+ | |||
+ | Проверка | ||
+ | |||
+ | < | ||
+ | # dpkg --get-selections | grep mariadb-server | ||
+ | mariadb-server | ||
+ | </ | ||
+ | |||
+ | ==== sury php failed ==== | ||
+ | |||
+ | ❌Ошибка | ||
+ | |||
+ | < | ||
+ | W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https:// | ||
+ | W: Failed to fetch https:// | ||
+ | W: Some index files failed to download. They have been ignored, or old ones used instead. | ||
+ | </ | ||
+ | |||
+ | ✅Решение | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== Как обновить только один пакет ==== | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== There is no public key available ==== | ||
+ | |||
+ | < | ||
+ | # apt-get update | ||
+ | # apt-get install debian-archive-keyring debian-keyrin | ||
+ | </ | ||
+ | |||
+ | ==== Посмотреть с какими опциями был сконфигурирован PHP ==== | ||
+ | |||
+ | < | ||
+ | # apt-get install php5-dev | ||
+ | # php-config --configure-options | ||
+ | </ | ||
+ | |||
+ | ==== APT shell & apt-spy. Особая Debian магия ==== | ||
+ | |||
+ | < | ||
+ | / | ||
+ | / | ||
+ | collect2: error: ld returned 1 exit status | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | |||
+ | ==== Как вывести список всех установленных пакетов в Debian ==== | ||
+ | |||
+ | < | ||
+ | $ dpkg --get-selections | ||
+ | adduser | ||
+ | alsa-base | ||
+ | alsa-utils | ||
+ | apache2 | ||
+ | apache2-mpm-prefork | ||
+ | apache2-utils | ||
+ | apache2.2-common | ||
+ | apt | ||
+ | apt-utils | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | $ dpkg --get-selections | grep php | ||
+ | |||
+ | libapache2-mod-php5 | ||
+ | php-db | ||
+ | php-pear | ||
+ | php-sqlite3 | ||
+ | php5 install | ||
+ | php5-cli | ||
+ | php5-common | ||
+ | php5-gd | ||
+ | php5-memcache | ||
+ | php5-mysql | ||
+ | php5-sqlite | ||
+ | php5-sqlite3 | ||
+ | php5-xsl | ||
+ | </ | ||
+ | |||
+ | ==== mailx и s-nail ==== | ||
+ | |||
+ | Ошибка - **mailx: invalid option -- ' | ||
+ | Решение - заменить mailx на s-nail ¯\_(ツ)_/ | ||
+ | |||
+ | История утилиты mail из 70-х годов - [[http:// |