Как заблокировать обновление определенного пакета (программы) в Ubuntu
$ dpkg -l | grep postgresql
ii pgdg-keyring 2018.1 all keyring for apt postgresql.org
ii postgresql-10 10.3-3.1C amd64 object-relational SQL database, version 10 server
......
......
Видим, что у нас стоит postgresql-10 версии 10.3-3.1C
$ dpkg -l | grep 10.3-3.1C
Вывод в строку:
$ dpkg -l | grep 10.3-3.1C | awk -F' ' '{print $2}' | xargs
libecpg-compat3:amd64 libecpg-dev libecpg6:amd64 libpgtypes3:amd64 libpq-dev libpq5:amd64 postgresql-10 postgresql-10-dbg postgresql-client-10 postgresql-doc-10 postgresql-plperl-10 postgresql-plpython-10 postgresql-plpython3-10 postgresql-pltcl-10 postgresql-server-dev-10
Пометить как зафиксированные:
$ dpkg -l | grep 10.3-3.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
Можно добавить:
$ sudo apt-mark hold postgresql-common postgresql-client-common
Посмотреть:
$ sudo dpkg --get-selections | grep hold
libecpg-compat3:amd64 hold
libecpg-dev hold
libecpg6:amd64 hold
libpgtypes3:amd64 hold
libpq-dev hold
libpq5:amd64 hold
postgresql-10 hold
postgresql-10-dbg hold
postgresql-client-10 hold
postgresql-doc-10 hold
postgresql-plperl-10 hold
postgresql-plpython-10 hold
postgresql-plpython3-10 hold
postgresql-pltcl-10 hold
postgresql-server-dev-10 hold
$ sudo apt update
$ sudo apt list --upgradable
$ sudo apt list --upgradable
Вывод списка… Готово
libecpg-compat3/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libecpg-dev/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libecpg6/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpgtypes3/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpq-dev/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpq5/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-10-dbg/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-client-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-doc-10/xenial-pgdg,xenial-pgdg 10.6-1.pgdg16.04+1 all [может быть обновлён с: 10.3-3.1C]
postgresql-plperl-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-plpython-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-plpython3-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-pltcl-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-server-dev-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
$ sudo apt upgrade
libecpg-dev hold
libecpg6:amd64 hold
libpgtypes3:amd64 hold
libpq-dev hold
libpq5:amd64 hold
postgresql-10 hold
postgresql-10-dbg hold
postgresql-client-10 hold
postgresql-doc-10 hold
postgresql-plperl-10 hold
postgresql-plpython-10 hold
postgresql-plpython3-10 hold
postgresql-pltcl-10 hold
postgresql-server-dev-10 hold
$ dpkg -l | grep 9.6.7-1.1C
$ dpkg -l | grep 9.6.7-1.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
Можно добавить:
$ sudo apt-mark hold postgresql-common postgresql-client-common
Как посмотреть зависимости:
$ dpkg-deb -I postgresql-server-dev-10_10.5-10.1C_amd64.deb | grep Depends
Depends: libpq-dev (>= 10~~), postgresql-common (>= 142~), libc6 (>= 2.14)
$ dpkg -l | grep postgresql
ii pgdg-keyring 2018.1 all keyring for apt postgresql.org
ii postgresql-10 10.3-3.1C amd64 object-relational SQL database, version 10 server
......
......
Видим, что у нас стоит postgresql-10 версии 10.3-3.1C
$ dpkg -l | grep 10.3-3.1C
Вывод в строку:
$ dpkg -l | grep 10.3-3.1C | awk -F' ' '{print $2}' | xargs
libecpg-compat3:amd64 libecpg-dev libecpg6:amd64 libpgtypes3:amd64 libpq-dev libpq5:amd64 postgresql-10 postgresql-10-dbg postgresql-client-10 postgresql-doc-10 postgresql-plperl-10 postgresql-plpython-10 postgresql-plpython3-10 postgresql-pltcl-10 postgresql-server-dev-10
Пометить как зафиксированные:
$ dpkg -l | grep 10.3-3.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
Можно добавить:
$ sudo apt-mark hold postgresql-common postgresql-client-common
Посмотреть:
$ sudo dpkg --get-selections | grep hold
libecpg-compat3:amd64 hold
libecpg-dev hold
libecpg6:amd64 hold
libpgtypes3:amd64 hold
libpq-dev hold
libpq5:amd64 hold
postgresql-10 hold
postgresql-10-dbg hold
postgresql-client-10 hold
postgresql-doc-10 hold
postgresql-plperl-10 hold
postgresql-plpython-10 hold
postgresql-plpython3-10 hold
postgresql-pltcl-10 hold
postgresql-server-dev-10 hold
$ sudo apt update
$ sudo apt list --upgradable
$ sudo apt list --upgradable
Вывод списка… Готово
libecpg-compat3/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libecpg-dev/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libecpg6/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpgtypes3/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpq-dev/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
libpq5/xenial-pgdg 11.1-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-10-dbg/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-client-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-doc-10/xenial-pgdg,xenial-pgdg 10.6-1.pgdg16.04+1 all [может быть обновлён с: 10.3-3.1C]
postgresql-plperl-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-plpython-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-plpython3-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-pltcl-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
postgresql-server-dev-10/xenial-pgdg 10.6-1.pgdg16.04+1 amd64 [может быть обновлён с: 10.3-3.1C]
$ sudo apt upgrade
$ dpkg --get-selections | grep hold
libecpg-compat3:amd64 holdlibecpg-dev hold
libecpg6:amd64 hold
libpgtypes3:amd64 hold
libpq-dev hold
libpq5:amd64 hold
postgresql-10 hold
postgresql-10-dbg hold
postgresql-client-10 hold
postgresql-doc-10 hold
postgresql-plperl-10 hold
postgresql-plpython-10 hold
postgresql-plpython3-10 hold
postgresql-pltcl-10 hold
postgresql-server-dev-10 hold
$ dpkg -l | grep 9.6.7-1.1C
$ dpkg -l | grep 9.6.7-1.1C | awk -F' ' '{print $2}' | sudo xargs apt-mark hold
Можно добавить:
$ sudo apt-mark hold postgresql-common postgresql-client-common
Как посмотреть зависимости:
$ dpkg-deb -I postgresql-server-dev-10_10.5-10.1C_amd64.deb | grep Depends
Depends: libpq-dev (>= 10~~), postgresql-common (>= 142~), libc6 (>= 2.14)
Комментариев нет:
Отправить комментарий