Skip to content

DEB packages

apt

Check updates

apt-get update

Install package

apt install docker-ce

Update package

apt install --only-upgrade <package1>

Search for package

apt list docker-ce
apt search docker-ce
apt info docker-ce

Search for files provided by package

apt install apt-file
apt-file update
apt-file list docker-ce

Check installed package

apt list --installed | grep -E -i -w 'docker|dockerd'

Show 3rd party packages (not from Debian)

apt list '?narrow(?installed, ?not(?origin(Debian)))'

Show hold packages (frozen pacakges, kept packages)

dpkg --get-selections | grep 'hold$'
apt-mark showhold

Ubuntu unhold package

apt-mark unhold package_name

Configure automatic updates

cat /etc/apt/apt.conf.d/20auto-upgrades
https://itsfoss.com/auto-updates-ubuntu/

Enable unattended upgrade Ubuntu

apt install unattended-upgrades
apt install update-notifier-common
/etc/apt/apt.conf.d/20auto-upgrades

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
/etc/apt/apt.conf.d/50unattended-upgrades

Unattended-Upgrade::Remove-Unused-Kernel-Packages "true";
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "02:00";

Dpkg::Options {
  "--force-confdef";
  "--force-confold";
}

--force-confold: do not modify the current configuration file, the new version is installed with a .dpkg-dist suffix. With this option alone, even configuration files that you have not modified are left untouched. You need to combine it with --force-confdef to let dpkg overwrite configuration files that you have not modified.

Remove package

apt-get remove --purge charon-systemd

Установка программ, обновлений (APT)

добавление GPG-ключа репозитория

wget -O - http://debian.opennms.org/OPENNMS-GPG-KEY | sudo apt-key add -  

проверяет наличие обновлений для утановленых

sudo apt-get update

скачивает и устанавливает обновления и завиимости

apt-get dist-upgrade

удалить пакет, установленный в систему с сохранением файлов конфигурации

aptitude remove <package_name>

удалить пакет, установленный в систему с удалением файлов конфигурации

aptitude purge <package_name>

добавление репозитория (список храниться в sources.list.d)

apt-add-repository http://extras.ubuntu.com/ubuntu

добавление репозитория PPA (Personal Package Archive)

apt-add-repository ppa:user/repository

Ubuntu show which repositories contain a given package now

apt policy rr

rr:
  Installed: 5.2.0-1
  Candidate: 5.2.0-2
  Version table:
     5.2.0-2 100
        100 http://ftp.fr.debian.org/debian testing/main amd64 Packages
        100 http://ftp.fr.debian.org/debian unstable/main amd64 Packages
 *** 5.2.0-1 100
        100 /usr/var/lib/dpkg/status
     4.4.0-2+b1 500
        500 http://ftp.fr.debian.org/debian stretch/main amd64 Packages
This output tells me apt knows about these rr versions: - 4.4.0-2+b1, which is available from my configured Debian 9 (Stretch) repository; - 5.2.0-1, which is the currently-installed version, and is not available from any currently-configured repository; - 5.2.0-2, which is available from my configured testing and unstable repositories.

Versions with no matching repository can happen in a variety of circumstances: - a repository used to host the version, but no longer does (this happens if you don’t upgrade your packages, and new versions are uploaded to the repositories you track); - the package was installed from a repository, and then the repository was removed; - the package was installed from a source other than a repository (this is the case here: the package I have installed is my locally-built version).

Ubuntu distribution upgrade to LTS

  • Ensure your current system is fully upgraded before starting a distribution upgrade. Run:

    sudo apt update
    sudo apt upgrade
    sudo apt dist-upgrade
    
  • remove any unnecessary packages and clean up before attempting to upgrade:

sudo apt autoremove
sudo apt clean
  • Once your system is fully upgraded and cleaned, try the release upgrade again:

    do-release-upgrade
    

If some packages are being held back you would see Please install all available updates for your release before upgrading. You can try to install them manually to see what's preventing them from being upgraded.

```
sudo apt install --only-upgrade initramfs-tools initramfs-tools-bin initramfs-tools-core linux-firmware
```

If you see the essential package 'ubuntu-minimal' could not be located error

RELEASE_UPGRADER_ALLOW_THIRD_PARTY=1 do-release-upgrade

dpkg

Check installed package

dpkg -l | grep -E -i -w 'docker|dockerd'
dpkg -L docker

скачивания deb-файла с сайта

sudo wget <http>.deb

удаление пакета

sudo dpkg -r <name>.deb

установка deb-файла (файлы конфиги остаются в системе)

sudo dpkg -i *.deb

удалить пакет и его файлы конфигурации из системы

dpkg -P <package_name>

среди всех установленных пакетов найти

dpkg -l | grep <what>

отобразить информацию о конкретном пакете

dpkg -s <package_name>

RPM packages

yum

Update

yum update

Install

yum install epel-release gf-release
yum install chrony mc nano htop wget curl nethogs hyperv-daemons

проверить наличие обновлений в репозитариях

yum check-update

удалить пакет

yum remove <package_name>

Install from specific repo

yum --disablerepo "*" --enablerepo "kibana-5.x" install kibana 

вывести список всех пакето в репозиториях

yum list

список установленных в системе пакетов

yum list installed

Show configured repositories

yum repolist

Show packages in specific repos

yum --disablerepo="*" --enablerepo="elasticsearch-5.x" list available

проверить наличе обновлений и если есть свежие версии, то обновить

yum update

поиск пакета

yum search

Upgrade AlmaLinux 8 to 9

sudo localectl set-locale LANG=en_US.UTF-8
vim /etc/sysconfig/selinux (SELINUX=disabled)
vim /etc/firewalld/firewalld.conf (AllowZoneDrifting=no)
yum install -y http://repo.almalinux.org/elevate/elevate-release-latest-el$(rpm --eval %rhel).noarch.rpm
yum install -y leapp-upgrade leapp-data-almalinux
reboot
leapp preupgrade
leapp upgrade
reboot
....
vim /etc/sysconfig/selinux (SELINUX << return back)
vim /etc/firewalld/firewalld.conf (AllowZoneDrifting=yes)
grubby --update-kernel ALL  --remove-args="rhgb quiet  selinux=0 enforcing=0 "
fixfiles -F onboot
yum clean all
yum update -y
sed 's/^exclude/exclude=""/' -i  /etc/dnf/dnf.conf 
yum erase leapp\*

rpm

Query Configuration Files

rpm -qc php-common

установка расширенных пакетов

rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

исключение пакета из репозитория

nano /etc/yum.repos.d/CentOS-Base.repo

exclude=postgresql*

установить пакет с выводом сообщений и прогресс-бара

rpm -ivh package.rpm

удалить пакет

rpm -e <package_name>.rpm

среди всех установленных пакетов найти

rpm -qa | grep <what>

вывести информацию о конкретном пакете

rpm -qi <package_name>

вывести необходимые для установик пакеты (зависимости)

rpm -q <package_name> --whatrequires

импортировать публичный ключ цифровой подписи

rpm --import <RPM-GPG-KEY>

Show files installed by the packet RPM

rpm -ql dante-server-1.4.1-176.9.x86_64

Source package install

Install golang

VER=1.22.2
wget https://dl.google.com/go/go${VER}.linux-amd64.tar.gz
tar -C /usr/local -xzf go${VER}.linux-amd64.tar.gz
rm go${VER}.linux-amd64.tar.gz
ln -s /usr/local/go/bin/go /usr/local/bin/go