Поиск по этому блогу

понедельник, 29 июня 2015 г.

Ubuntu обновление пакетов

Будит описано банальное обновление пакета/ов, по которому есть сотни мануалов и HOWTO. Для продвинутых пользователей ничего нового и интересного, наоборот, может присутствовать некоторый дискомфрт от написанного :). Но т.к. опыт работы с убунту небольшой мне пришлось углубиться в чтение манов.
Итак имеется
#uname -a
Linux atos-pc 3.16.0-23-generic #31-Ubuntu SMP Tue Oct 21 17:56:17 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Потребовалось обновить ядро (вышел новый релиз безопасности, той же ветки) и некоторых пакетов (все по той же причине).

Перед каждым обновлением или установкой пакетоврекомендуется делать apt-get update

В Ubuntu обновить пакет можно несколькоими способами:
-apt-get upgrade - Обновляется все установленные пакеты или пакет (если указан) и его зависимости. Установленные пакеты не удаляются. Новые версии уже установленных пакетов, которые не могут быть обновлены без изменения статуса установки другого пакета останутся в своей текущей версии.
-apt-get dist-upgrade - впринципе тоже, что и upgrade только более "умно" работает с зависимостями и может удалять пакеты
-apt-get install <имя пакета> - обновит только конкретный пакет до более свежей версии
-apt-get install --only-upgrade - делает тоже, что и предыдущий. Обновляет только конкретный пакет, никакие зависимсоти не трогает (в чем разница так и не понял). (данным способом и производил обновление)

Мне пригодилась такая конструкция, для понимания в каком состоянии окажется система после обновлени тем или иным способом
apt-get -o APT::Get::Simulate=Yes -o APT::Get::Show-Upgraded=Yes <способ> <имя пакета>
# apt-get  -o APT::Get::Simulate=Yes -o APT::Get::Show-Upgraded=Yes dist-upgrade curl
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Расчёт обновлений…Готово
НОВЫЕ пакеты, которые будут установлены:
  linux-headers-3.16.0-41 linux-headers-3.16.0-41-generic linux-image-3.16.0-41-generic linux-image-extra-3.16.0-41-generic
Пакеты, которые будут обновлены:
  apport bind9-host bsdutils ca-certificates cgmanager command-not-found command-not-found-data cpio curl dbus dnsutils dpkg e2fslibs e2fsprogs file fuse gir1.2-gtk-3.0 gnupg gpgv isc-dhcp-client
  isc-dhcp-common krb5-locales landscape-common libbind9-90 libblkid1 libc-bin libcgmanager0 libcomerr2 libcups2 libcurl3 libcurl3-gnutls libdbus-1-3 libdns100 libelf1 libevent-2.0-5 libfreetype6
  libfuse2 libgcrypt11 libgcrypt20 libglib2.0-0 libglib2.0-data libgnutls-deb0-28 libgnutls-openssl27 libgssapi-krb5-2 libgtk-3-0 libgtk-3-bin libgtk-3-common libicu52 libisc95 libisccc90
  libisccfg90 libk5crypto3 libkrb5-3 libkrb5support0 libldap-2.4-2 liblwres90 libmagic1 libmount1 libnuma1 libpam-systemd libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0
  libprocps3 libpython2.7 libpython2.7-minimal libpython2.7-stdlib libpython3.4 libpython3.4-minimal libpython3.4-stdlib libsmartcols1 libss2 libssl-dev libssl-doc libssl1.0.0 libsystemd-daemon0
  libsystemd-journal0 libsystemd-login0 libtasn1-6 libudev1 libuuid1 libxext6 libxrender1 linux-firmware linux-generic linux-headers-generic linux-image-generic linux-libc-dev lshw mercurial
  mercurial-common mime-support mount mountall multiarch-support ntpdate openssl patch policykit-1 ppp procps python-requests python2.7 python2.7-minimal python3-apport python3-commandnotfound
  python3-distupgrade python3-problem-report python3.4 python3.4-minimal rsyslog sudo systemd systemd-shim tcpdump tzdata ubuntu-release-upgrader-core udev unattended-upgrades util-linux
  uuid-runtime wpasupplicant
обновлено 122, установлено 4 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Inst bsdutils [1:2.25.1-3ubuntu4] (1:2.25.1-3ubuntu4.1 Ubuntu:14.10/utopic-updates [amd64])
Conf bsdutils (1:2.25.1-3ubuntu4.1 Ubuntu:14.10/utopic-updates [amd64])
Inst dpkg [1.17.13ubuntu1] (1.17.13ubuntu1.1 Ubuntu:14.10/utopic-updates [amd64])
Conf dpkg (1.17.13ubuntu1.1 Ubuntu:14.10/utopic-updates [amd64])
Inst e2fslibs [1.42.10-1.1ubuntu1] (1.42.10-1.1ubuntu1.2 Ubuntu:14.10/utopic-updates [amd64]) [e2fsprogs:amd64 on e2fslibs:amd64] [e2fsprogs:amd64 ]
Conf e2fslibs (1.42.10-1.1ubuntu1.2 Ubuntu:14.10/utopic-updates [amd64]) [e2fsprogs:amd64 ]
Inst e2fsprogs [1.42.10-1.1ubuntu1] (1.42.10-1.1ubuntu1.2 Ubuntu:14.10/utopic-updates [amd64])
s [amd64])
Conf libsmartcols1 (2.25.1-3ubuntu4.1 Ubuntu:14.10/utopic-updates [amd64])
.........

APT::Get::Show-Upgraded=Yes - покзывать обновляемые пакеты, выводить список всех пакетов, которые будут обновлены.
APT::Get::Simulate=Yes - производит симуляцию событий, которые будут происходить, но никакие изменения в системе сделаны не будут.

Чтобы посмотреть список пакетов, которым необходимо обновление можно использовать apt-show-versions - она показывает, какие пакеты в системе можно обновить и еще некоторую полезную информацию. Опция -u отображает список обновляемых пакетов:
root@pc:~# apt-show-versions -u
linux-generic:amd64/utopic-security 3.16.0.23.24 upgradeable to 3.16.0.44.44
linux-headers-generic:amd64/utopic-security 3.16.0.23.24 upgradeable to 3.16.0.44.44
linux-image-generic:amd64/utopic-security 3.16.0.23.24 upgradeable to 3.16.0.44.44

Использованные источники:
-man apt-get
-APT HOWTO
-Unix Toolbox

Комментариев нет:

Отправить комментарий