Quantcast
Channel: Debian User Forums
Viewing all articles
Browse latest Browse all 4056

Installation • Re: gstreamer broken in Buster

$
0
0
It looks like you may have only changed the sources for the main Debian repository. There are also entries below that for Debian security and for Debian updates.

While it is possible to simply run apt full-upgrade after changing sources.list, upgrading that way may work. But for upgrading between major stable releases, it is best to follow the full procedure to minimize opportunity for breakage.

Please check out section 4 of the Buster release notes:

Code:

Chapter 4. Upgrades from Debian 9 (stretch)4.1. Preparing for the upgrade    We suggest that before upgrading you also read the information in    Chapter 5, Issues to be aware of for buster. That chapter covers    potential issues which are not directly related to the upgrade    process but could still be important to know about before you    begin.4.1.1. Back up any data or configuration information    Before upgrading your system, it is strongly recommended that you    make a full backup, or at least back up any data or configuration    information you can't afford to lose. The upgrade tools and    process are quite reliable, but a hardware failure in the middle    of an upgrade could result in a severely damaged system.    The main things you'll want to back up are the contents of /etc,    /var/lib/dpkg, /var/lib/apt/extended_states and the output of    dpkg --get-selections "*" (the quotes are important). If you use     aptitude to manage packages on your system, you will also want to    back up /var/lib/aptitude/pkgstates.    The upgrade process itself does not modify anything in the /home    directory. However, some applications (e.g. parts of the Mozilla    suite, and the GNOME and KDE desktop environments) are known to    overwrite existing user settings with new defaults when a new    version of the application is first started by a user. As a    precaution, you may want to make a backup of the hidden files and    directories (“dotfiles”) in users' home directories. This backup    may help to restore or recreate the old settings. You may also    want to inform users about this.    Any package installation operation must be run with superuser    privileges, so either log in as root or use su or sudo to gain    the necessary access rights.    The upgrade has a few preconditions; you should check them before    actually executing the upgrade.4.1.2. Inform users in advance    It's wise to inform all users in advance of any upgrades you're    planning, although users accessing your system via an ssh    connection should notice little during the upgrade, and should be    able to continue working.    If you wish to take extra precautions, back up or unmount the /    home partition before upgrading.    You will have to do a kernel upgrade when upgrading to buster, so    a reboot will be necessary. Typically, this will be done after    the upgrade is finished.4.1.3. Prepare for downtime on services    There might be services that are offered by the system which are    associated with packages that will be included in the upgrade. If    this is the case, please note that, during the upgrade, these    services will be stopped while their associated packages are    being replaced and configured. During this time, these services    will not be available.    The precise downtime for these services will vary depending on    the number of packages being upgraded in the system, and it also    includes the time the system administrator spends answering any    configuration questions from package upgrades. Notice that if the    upgrade process is left unattended and the system requests input    during the upgrade there is a high possibility of services being    unavailable^[1] for a significant period of time.    If the system being upgraded provides critical services for your    users or the network^[2], you can reduce the downtime if you do a    minimal system upgrade, as described in Section 4.4.4, “Minimal    system upgrade”, followed by a kernel upgrade and reboot, and    then upgrade the packages associated with your critical services.    Upgrade these packages prior to doing the full upgrade described    in Section 4.4.5, “Upgrading the system”. This way you can ensure    that these critical services are running and available through    the full upgrade process, and their downtime is reduced.4.1.4. Prepare for recovery    Although Debian tries to ensure that your system stays bootable    at all times, there is always a chance that you may experience    problems rebooting your system after the upgrade. Known potential    issues are documented in this and the next chapters of these    Release Notes.    For this reason it makes sense to ensure that you will be able to    recover if your system should fail to reboot or, for remotely    managed systems, fail to bring up networking.    If you are upgrading remotely via an ssh link it is recommended    that you take the necessary precautions to be able to access the    server through a remote serial terminal. There is a chance that,    after upgrading the kernel and rebooting, you will have to fix    the system configuration through a local console. Also, if the    system is rebooted accidentally in the middle of an upgrade there    is a chance you will need to recover using a local console.    For emergency recovery we generally recommend using the rescue    mode of the buster Debian Installer. The advantage of using the    installer is that you can choose between its many methods to find    one that best suits your situation. For more information, please    consult the section “Recovering a Broken System” in chapter 8 of    the Installation Guide (https://www.debian.org/releases/buster/    installmanual) and the Debian Installer FAQ (https://    wiki.debian.org/DebianInstaller/FAQ) .    If that fails, you will need an alternative way to boot your    system so you can access and repair it. One option is to use a    special rescue image or a Linux live CD. After booting from that,    you should be able to mount your root file system and chroot into    it to investigate and fix the problem.4.1.4.1. Debug shell during boot using initrd    The initramfs-tools package includes a debug shell^[3] in the    initrds it generates. If for example the initrd is unable to    mount your root file system, you will be dropped into this debug    shell which has basic commands available to help trace the    problem and possibly fix it.    Basic things to check are: presence of correct device files in /    dev; what modules are loaded (cat /proc/modules); output of dmesg    for errors loading drivers. The output of dmesg will also show    what device files have been assigned to which disks; you should    check that against the output of echo $ROOT to make sure that the    root file system is on the expected device.    If you do manage to fix the problem, typing exit will quit the    debug shell and continue the boot process at the point it failed.    Of course you will also need to fix the underlying problem and    regenerate the initrd so the next boot won't fail again.4.1.4.2. Debug shell during boot using systemd    If the boot fails under systemd, it is possible to obtain a debug    root shell by changing the kernel command line. If the basic boot    succeeds, but some services fail to start, it may be useful to    add systemd.unit=rescue.target to the kernel parameters.    Otherwise, the kernel parameter systemd.unit=emergency.target    will provide you with a root shell at the earliest possible    point. However, this is done before mounting the root file system    with read-write permissions. You will have to do that manually    with:    # mount -o remount,rw /    More information on debugging a broken boot under systemd can be    found in the Diagnosing Boot Problems (https://freedesktop.org/    wiki/Software/systemd/Debugging/) article.4.1.5. Prepare a safe environment for the upgrade    Important    If you are using some VPN services (such as tinc) consider that    they might not be available throughout the upgrade process.    Please see Section 4.1.3, “Prepare for downtime on services”.    In order to gain extra safety margin when upgrading remotely, we    suggest that you run upgrade processes in the virtual console    provided by the screen program, which enables safe reconnection    and ensures the upgrade process is not interrupted even if the    remote connection process temporarily fails.4.1.6. Verify network interface name support    Systems upgraded from older releases that still use network    interfaces with names like eth0 or wlan0 are at risk of losing    networking once they switch to buster; see Section 5.1.6,    “Migrating from legacy network interface names” for migration    instructions.4.2. Checking APT configuration status    The upgrade process described in this chapter has been designed    for “pure” Debian stable systems. If your APT configuration    mentions additional sources besides stretch, or if you have    installed packages from other releases or from third parties,    then to ensure a reliable upgrade process you may wish to begin    by removing these complicating factors.    The main configuration file that APT uses to decide what sources    it should download packages from is /etc/apt/sources.list, but it    can also use files in the /etc/apt/sources.list.d/ directory -    for details see sources.list(5) (https://manpages.debian.org/    buster//buster/apt/sources.list.5.html) . If your system is using    multiple source-list files then you will need to ensure they stay    consistent.    Below there are two methods for finding installed packages that    did not come from Debian, using either aptitude or apt-forktracer    . Please note that neither of them are 100% accurate (e.g. the    aptitude example will list packages that were once provided by    Debian but no longer are, such as old kernel packages).    $ aptitude search '~i(!~ODebian)'    $ apt-forktracer | sort    Direct upgrades from Debian releases older than 9 (stretch) are    not supported. Please follow the instructions in the Release    Notes for Debian 9 (https://www.debian.org/releases/stretch/    releasenotes) to upgrade to Debian 9 first.    This procedure also assumes your system has been updated to the    latest point release of stretch. If you have not done this or are    unsure, follow the instructions in Section A.1, “Upgrading your    stretch system”.    You should also make sure the package database is ready before    proceeding with the upgrade. If you are a user of another package    manager like aptitude or synaptic, review any pending actions. A    package scheduled for installation or removal might interfere    with the upgrade procedure. Note that correcting this is only    possible if your APT source-list files still point to stretch and    not to stable or buster; see Section A.2, “Checking your APT    source-list files”.    It is a good idea to remove obsolete packages from your system    before upgrading.4.2.1. The proposed-updates section    If you have listed the proposed-updates section in your APT    source-list files, you should remove it before attempting to    upgrade your system. This is a precaution to reduce the    likelihood of conflicts.4.2.2. Unofficial sources    If you have any non-Debian packages on your system, you should be    aware that these may be removed during the upgrade because of    conflicting dependencies. If these packages were installed by    adding an extra package archive in your APT source-list files,    you should check if that archive also offers packages compiled    for buster and change the source item accordingly at the same    time as your source items for Debian packages.    Some users may have unofficial backported “newer” versions of    packages that are in Debian installed on their stretch system.    Such packages are most likely to cause problems during an upgrade    as they may result in file conflicts^[4]. Section 4.5, “Possible    issues during upgrade” has some information on how to deal with    file conflicts if they should occur.4.2.3. Disabling APT pinning    If you have configured APT to install certain packages from a    distribution other than stable (e.g. from testing), you may have    to change your APT pinning configuration (stored in /etc/apt/    preferences and /etc/apt/preferences.d/) to allow the upgrade of    packages to the versions in the new stable release. Further    information on APT pinning can be found in apt_preferences(5).4.2.4. Checking packages status    Regardless of the method used for upgrading, it is recommended    that you check the status of all packages first, and verify that    all packages are in an upgradable state. The following command    will show any packages which have a status of Half-Installed or    Failed-Config, and those with any error status.    # dpkg --audit    You could also inspect the state of all packages on your system    using aptitude or with commands such as    # dpkg -l | pager     or    # dpkg --get-selections "*" > ~/curr-pkgs.txt    It is desirable to remove any holds before upgrading. If any    package that is essential for the upgrade is on hold, the upgrade    will fail.    Note that aptitude uses a different method for registering    packages that are on hold than apt and dselect. You can identify    packages on hold for aptitude with    # aptitude search "~ahold"    If you want to check which packages you had on hold for apt, you    should use    # dpkg --get-selections | grep 'hold$'    If you changed and recompiled a package locally, and didn't    rename it or put an epoch in the version, you must put it on hold    to prevent it from being upgraded.    The “hold” package state for apt can be changed using:    # echo package_name hold | dpkg --set-selections    Replace hold with install to unset the “hold” state.    If there is anything you need to fix, it is best to make sure    your APT source-list files still refer to stretch as explained in    Section A.2, “Checking your APT source-list files”.4.3. Preparing APT source-list files    Before starting the upgrade you must reconfigure APT's    source-list files (/etc/apt/sources.list and files under /etc/apt    /sources.list.d/).    APT will consider all packages that can be found via any    configured archive, and install the package with the highest    version number, giving priority to the first entry in the files.    Thus, if you have multiple mirror locations, list first the ones    on local hard disks, then CD-ROMs, and then remote mirrors.    A release can often be referred to both by its codename (e.g.    stretch, buster) and by its status name (i.e. oldstable, stable,    testing, unstable). Referring to a release by its codename has    the advantage that you will never be surprised by a new release    and for this reason is the approach taken here. It does of course    mean that you will have to watch out for release announcements    yourself. If you use the status name instead, you will just see    loads of updates for packages available as soon as a release has    happened.    Debian provides two announcement mailing lists to help you stay    up to date on relevant information related to Debian releases:      * By subscribing to the Debian announcement mailing list        (https://lists.debian.org/debian-announce/) , you will        receive a notification every time Debian makes a new release.        Such as when buster changes from e.g. stable to oldstable.      * By subscribing to the Debian security announcement mailing        list (https://lists.debian.org/debian-security-announce/) ,        you will receive a notification every time Debian publishes a        security announcement.4.3.1. Adding APT Internet sources    On new installations the default is for APT to be set up to use    the Debian APT CDN service, which should ensure that packages are    automatically downloaded from a server near you in network terms.    As this is a relatively new service, older installations may have    configuration that still points to one of the main Debian    Internet servers or one of the mirrors. If you haven't done so    yet, it is recommended to switch over to the use of the CDN    service in your APT configuration.    To make use of the CDN service, add a line like this to your APT    source configuration (assuming you are using main and contrib):    deb http://deb.debian.org/debian buster main contrib    After adding your new sources, disable the previously existing “    deb” lines by placing a hash sign (#) in front of them.    However, if you get better results using a specific mirror that    is close to you in network terms, this option is still available.    Debian mirror addresses can be found at https://www.debian.org/    distrib/ftplist (https://www.debian.org/distrib/ftplist) (look at    the “list of Debian mirrors” section).    For example, suppose your closest Debian mirror is http://    mirrors.kernel.org. If you inspect that mirror with a web    browser, you will notice that the main directories are organized    like this:          http://mirrors.kernel.org/debian/dists/buster/main/binary-amd64/...          http://mirrors.kernel.org/debian/dists/buster/contrib/binary-amd64/...    To configure APT to use a given mirror, add a line like this    (again, assuming you are using main and contrib):    deb http://mirrors.kernel.org/debian buster main contrib    Note that the “dists” is added implicitly, and the arguments    after the release name are used to expand the path into multiple    directories.    Again, after adding your new sources, disable the previously    existing archive entries.4.3.2. Adding APT sources for a local mirror    Instead of using remote package mirrors, you may wish to modify    the APT source-list files to use a mirror on a local disk    (possibly mounted over NFS).    For example, your package mirror may be under /var/local/debian/,    and have main directories like this:          /var/local/debian/dists/buster/main/binary-amd64/...          /var/local/debian/dists/buster/contrib/binary-amd64/...    To use this with apt, add this line to your sources.list file:    deb file:/var/local/debian buster main contrib    Note that the “dists” is added implicitly, and the arguments    after the release name are used to expand the path into multiple    directories.    After adding your new sources, disable the previously existing    archive entries in the APT source-list files by placing a hash    sign (#) in front of them.4.3.3. Adding APT sources from optical media    If you want to use only DVDs (or CDs or Blu-ray Discs), comment    out the existing entries in all the APT source-list files by    placing a hash sign (#) in front of them.    Make sure there is a line in /etc/fstab that enables mounting    your CD-ROM drive at the /media/cdrom mount point. For example,    if /dev/sr0 is your CD-ROM drive, /etc/fstab should contain a    line like:          /dev/sr0 /media/cdrom auto noauto,ro 0 0    Note that there must be no spaces between the words noauto,ro in    the fourth field.    To verify it works, insert a CD and try running    # mount /media/cdrom    # this will mount the CD to the mount point    # ls -alF /media/cdrom  # this should show the CD's root directory    # umount /media/cdrom   # this will unmount the CD    Next, run:    # apt-cdrom add    for each Debian Binary CD-ROM you have, to add the data about    each CD to APT's database.4.4. Upgrading packages    The recommended way to upgrade from previous Debian releases is    to use the package management tool apt.    Note    apt is meant for interactive use, and should not be used in    scripts. In scripts one should use apt-get, which has a stable    output better suitable for parsing.    Don't forget to mount all needed partitions (notably the root and    /usr partitions) read-write, with a command like:    # mount -o remount,rw /mountpoint    Next you should double-check that the APT source entries (in /etc    /apt/sources.list and files under /etc/apt/sources.list.d/) refer    either to “buster” or to “stable”. There should not be any    sources entries pointing to stretch.    +--------------------------------------------------+    |Note                                              |    |                                                  |    |Source lines for a CD-ROM might sometimes refer to|    |“unstable”; although this may be confusing, you   |    |should not change it.                             |    +--------------------------------------------------+4.4.1. Recording the session    It is strongly recommended that you use the /usr/bin/script    program to record a transcript of the upgrade session. Then if a    problem occurs, you will have a log of what happened, and if    needed, can provide exact information in a bug report. To start    the recording, type:    # script -t 2>~/upgrade-busterstep.time -a ~/upgrade-busterstep.script    or similar. If you have to rerun the typescript (e.g. if you have    to reboot the system) use different step values to indicate which    step of the upgrade you are logging. Do not put the typescript    file in a temporary directory such as /tmp or /var/tmp (files in    those directories may be deleted during the upgrade or during any    restart).    The typescript will also allow you to review information that has    scrolled off-screen. If you are at the system's console, just    switch to VT2 (using Alt+F2) and, after logging in, use less -R    ~root/upgrade-buster.script to view the file.    After you have completed the upgrade, you can stop script by    typing exit at the prompt.    apt will also log the changed package states in /var/log/apt/    history.log and the terminal output in /var/log/apt/term.log.     dpkg will, in addition, log all package state changes in /var/log    /dpkg.log. If you use aptitude, it will also log state changes in    /var/log/aptitude.    If you have used the -t switch for script you can use the     scriptreplay program to replay the whole session:    # scriptreplay ~/upgrade-busterstep.time ~/upgrade-busterstep.script4.4.2. Updating the package list    First the list of available packages for the new release needs to    be fetched. This is done by executing:    # apt update    Note    Users of apt-secure may find issues when using aptitude or     apt-get. For apt-get, you can use apt-get update    --allow-releaseinfo-change.4.4.3. Make sure you have sufficient space for the upgrade    You have to make sure before upgrading your system that you will    have sufficient hard disk space when you start the full system    upgrade described in Section 4.4.5, “Upgrading the system”.    First, any package needed for installation that is fetched from    the network is stored in /var/cache/apt/archives (and the partial    / subdirectory, during download), so you must make sure you have    enough space on the file system partition that holds /var/ to    temporarily download the packages that will be installed in your    system. After the download, you will probably need more space in    other file system partitions in order to both install upgraded    packages (which might contain bigger binaries or more data) and    new packages that will be pulled in for the upgrade. If your    system does not have sufficient space you might end up with an    incomplete upgrade that is difficult to recover from.    apt can show you detailed information about the disk space needed    for the installation. Before executing the upgrade, you can see    this estimate by running:    # apt -o APT::Get::Trivial-Only=true full-upgrade    [ ... ]    XXX upgraded, XXX newly installed, XXX to remove and XXX not upgraded.    Need to get xx.xMB of archives.    After this operation, AAAMB of additional disk space will be used.    Note    Running this command at the beginning of the upgrade process may    give an error, for the reasons described in the next sections. In    that case you will need to wait until you've done the minimal    system upgrade as in Section 4.4.4, “Minimal system upgrade”    before running this command to estimate the disk space.    If you do not have enough space for the upgrade, apt will warn    you with a message like this:    E: You don't have enough free space in /var/cache/apt/archives/.    In this situation, make sure you free up space beforehand. You    can:      * Remove packages that have been previously downloaded for        installation (at /var/cache/apt/archives). Cleaning up the        package cache by running apt clean will remove all previously        downloaded package files.      * Remove forgotten packages. If you have used aptitude or apt to        manually install packages in stretch it will have kept track of        those packages you manually installed, and will be able to mark        as redundant those packages pulled in by dependencies alone which        are no longer needed due to a package being removed. They will        not mark for removal packages that you manually installed. To        remove automatically installed packages that are no longer used,        run:        # apt autoremove        You can also use deborphan, debfoster, or cruft to find redundant        packages. Do not blindly remove the packages these tools present,        especially if you are using aggressive non-default options that        are prone to false positives. It is highly recommended that you        manually review the packages suggested for removal (i.e. their        contents, sizes, and descriptions) before you remove them.      * Remove packages that take up too much space and are not currently        needed (you can always reinstall them after the upgrade). If you        have popularity-contest installed, you can use         popcon-largest-unused to list the packages you do not use that        occupy the most space. You can find the packages that just take        up the most disk space with dpigs (available in the        debian-goodies package) or with wajig (running wajig size). They        can also be found with aptitude. Start aptitude in full-terminal        mode, select Views → New Flat Package List, press l and enter ~i,        then press S and enter ~installsize. This will give you a handy        list to work with.      * Remove translations and localization files from the system if        they are not needed. You can install the localepurge package and        configure it so that only a few selected locales are kept in the        system. This will reduce the disk space consumed at /usr/share/        locale.      * Temporarily move to another system, or permanently remove, system        logs residing under /var/log/.         * Use a temporary /var/cache/apt/archives: You can use a temporary        cache directory from another filesystem (USB storage device,        temporary hard disk, filesystem already in use, ...).        +-----------------------------------------------------+        |Note                                                 |        |                                                     |        |Do not use an NFS mount as the network connection    |        |could be interrupted during the upgrade.             |        +-----------------------------------------------------+        For example, if you have a USB drive mounted on /media/usbkey:         1. remove the packages that have been previously downloaded for            installation:            # apt clean         2. copy the directory /var/cache/apt/archives to the USB drive:            # cp -ax /var/cache/apt/archives /media/usbkey/         3. mount the temporary cache directory on the current one:            # mount --bind /media/usbkey/archives /var/cache/apt/archives         4. after the upgrade, restore the original /var/cache/apt/            archives directory:            # umount /media/usbkey/archives         5. remove the remaining /media/usbkey/archives.        You can create the temporary cache directory on whatever        filesystem is mounted on your system.      * Do a minimal upgrade of the system (see Section 4.4.4, “Minimal        system upgrade”) or partial upgrades of the system followed by a        full upgrade. This will make it possible to upgrade the system        partially, and allow you to clean the package cache before the        full upgrade.    Note that in order to safely remove packages, it is advisable to    switch your APT source-list files back to stretch as described in    Section A.2, “Checking your APT source-list files”.4.4.4. Minimal system upgrade    In some cases, doing the full upgrade (as described below)    directly might remove large numbers of packages that you will    want to keep. We therefore recommend a two-part upgrade process:    first a minimal upgrade to overcome these conflicts, then a full    upgrade as described in Section 4.4.5, “Upgrading the system”.    To do this, first run:    # apt-get upgrade    This has the effect of upgrading those packages which can be    upgraded without requiring any other packages to be removed or    installed.    The minimal system upgrade can also be useful when the system is    tight on space and a full upgrade cannot be run due to space    constraints.    If the apt-listchanges package is installed, it will (in its    default configuration) show important information about upgraded    packages in a pager after downloading the packages. Press q after    reading to exit the pager and continue the upgrade.4.4.5. Upgrading the system    Once you have taken the previous steps, you are now ready to    continue with the main part of the upgrade. Execute:    # apt full-upgrade    This will perform a complete upgrade of the system, installing    the newest available versions of all packages, and resolving all    possible dependency changes between packages in different    releases. If necessary, it will install some new packages    (usually new library versions, or renamed packages), and remove    any conflicting obsoleted packages.    When upgrading from a set of CDs/DVDs/BDs, you will probably be    asked to insert specific discs at several points during the    upgrade. You might have to insert the same disc multiple times;    this is due to inter-related packages that have been spread out    over the discs.    New versions of currently installed packages that cannot be    upgraded without changing the install status of another package    will be left at their current version (displayed as “held back”).    This can be resolved by either using aptitude to choose these    packages for installation or by trying apt install package.4.5. Possible issues during upgrade    The following sections describe known issues that might appear    during an upgrade to buster.4.5.1. Dist-upgrade fails with “Could not perform immediateconfiguration”    In some cases the apt full-upgrade step can fail after downloading    packages with:       E: Could not perform immediate configuration on 'package'.  Please see man 5 apt.conf under APT::Immediate-Configure for details.    If that happens, running apt full-upgrade -o    APT::Immediate-Configure=0 instead should allow the upgrade to    proceed.    Another possible workaround for this problem is to temporarily    add both stretch and buster sources to your APT source-list files    and run apt update.4.5.2. Expected removals    The upgrade process to buster might ask for the removal of    packages on the system. The precise list of packages will vary    depending on the set of packages that you have installed. These    release notes give general advice on these removals, but if in    doubt, it is recommended that you examine the package removals    proposed by each method before proceeding. For more information    about packages obsoleted in buster, see Section 4.8, “Obsolete    packages”.4.5.3. Conflicts or Pre-Depends loops    Sometimes it's necessary to enable the APT::Force-LoopBreak    option in APT to be able to temporarily remove an essential    package due to a Conflicts/Pre-Depends loop. apt will alert you    of this and abort the upgrade. You can work around this by    specifying the option -o APT::Force-LoopBreak=1 on the apt    command line.    It is possible that a system's dependency structure can be so    corrupt as to require manual intervention. Usually this means    using apt or    # dpkg --remove package_name    to eliminate some of the offending packages, or    # apt -f install    # dpkg --configure --pending    In extreme cases you might have to force re-installation with a    command like    # dpkg --install /path/to/package_name.deb4.5.4. File conflicts    File conflicts should not occur if you upgrade from a “pure”    stretch system, but can occur if you have unofficial backports    installed. A file conflict will result in an error like:    Unpacking <package-foo> (from <package-foo-file>) ...    dpkg: error processing <package-foo> (--install):    trying to overwrite `<some-file-name>',    which is also in package <package-bar>    dpkg-deb: subprocess paste killed by signal (Broken pipe)    Errors were encountered while processing:    <package-foo>    You can try to solve a file conflict by forcibly removing the    package mentioned on the last line of the error message:    # dpkg -r --force-depends package_name    After fixing things up, you should be able to resume the upgrade    by repeating the previously described apt commands.4.5.5. Configuration changes    During the upgrade, you will be asked questions regarding the    configuration or re-configuration of several packages. When you    are asked if any file in the /etc/init.d directory, or the /etc/    manpath.config file should be replaced by the package    maintainer's version, it's usually necessary to answer “yes” to    ensure system consistency. You can always revert to the old    versions, since they will be saved with a .dpkg-old extension.    If you're not sure what to do, write down the name of the package    or file and sort things out at a later time. You can search in    the typescript file to review the information that was on the    screen during the upgrade.4.5.6. Change of session to console    If you are running the upgrade using the system's local console    you might find that at some points during the upgrade the console    is shifted over to a different view and you lose visibility of    the upgrade process. For example, this may happen in systems with    a graphical interface when the display manager is restarted.    To recover the console where the upgrade was running you will    have to use Ctrl+Alt+F1 (if in the graphical startup screen) or     Alt+F1 (if in the local text-mode console) to switch back to the    virtual terminal 1. Replace F1 with the function key with the    same number as the virtual terminal the upgrade was running in.    You can also use Alt+Left Arrow or Alt+Right Arrow to switch    between the different text-mode terminals.4.6. Upgrading your kernel and related packages    This section explains how to upgrade your kernel and identifies    potential issues related to this upgrade. You can either install    one of the linux-image-* packages provided by Debian, or compile    a customized kernel from source.    Note that a lot of information in this section is based on the    assumption that you will be using one of the modular Debian    kernels, together with initramfs-tools and udev. If you choose to    use a custom kernel that does not require an initrd or if you use    a different initrd generator, some of the information may not be    relevant for you.4.6.1. Installing a kernel metapackage    When you full-upgrade from stretch to buster, it is strongly    recommended that you install a linux-image-* metapackage, if you    have not done so before. These metapackages will automatically    pull in a newer version of the kernel during upgrades. You can    verify whether you have one installed by running:    # dpkg -l "linux-image*" | grep ^ii | grep -i meta    If you do not see any output, then you will either need to    install a new linux-image package by hand or install a    linux-image metapackage. To see a list of available linux-image    metapackages, run:    # apt-cache search linux-image- | grep -i meta | grep -v transition    If you are unsure about which package to select, run uname -r and    look for a package with a similar name. For example, if you see “    4.9.0-8-amd64”, it is recommended that you install    linux-image-amd64. You may also use apt to see a long description    of each package in order to help choose the best one available.    For example:    # apt show linux-image-amd64    You should then use apt install to install it. Once this new    kernel is installed you should reboot at the next available    opportunity to get the benefits provided by the new kernel    version. However, please have a look at Section 5.1.12, “Things    to do post upgrade before rebooting” before performing the first    reboot after the upgrade.    For the more adventurous there is an easy way to compile your own    custom kernel on Debian. Install the kernel sources, provided in    the linux-source package. You can make use of the deb-pkg target    available in the sources' makefile for building a binary package.    More information can be found in the Debian Linux Kernel Handbook    (https://kernel-team.pages.debian.net/kernel-handbook/) , which    can also be found as the debian-kernel-handbook package.    If possible, it is to your advantage to upgrade the kernel    package separately from the main full-upgrade to reduce the    chances of a temporarily non-bootable system. Note that this    should only be done after the minimal upgrade process described    in Section 4.4.4, “Minimal system upgrade”.4.7. Preparing for the next release    After the upgrade there are several things you can do to prepare    for the next release.      * Remove newly redundant or obsolete packages as described in        Section 4.4.3, “Make sure you have sufficient space for the        upgrade” and Section 4.8, “Obsolete packages”. You should        review which configuration files they use and consider        purging the packages to remove their configuration files. See        also Section 4.7.1, “Purging removed packages”.4.7.1. Purging removed packages    It is generally advisable to purge removed packages. This is    especially true if these have been removed in an earlier release    upgrade (e.g. from the upgrade to stretch) or they were provided    by third-party vendors. In particular, old init.d scripts have    been known to cause issues.    Caution       Purging a package will generally also purge its log files, so you    might want to back them up first.    The following command displays a list of all removed packages    that may have configuration files left on the system (if any):    # dpkg -l | awk '/^rc/ { print $2 }'    The packages can be removed by using apt purge. Assuming you want    to purge all of them in one go, you can use the following    command:    # apt purge $(dpkg -l | awk '/^rc/ { print $2 }')    If you use aptitude, you can also use the following alternative    to the commands above:    # aptitude search '~c'    # aptitude purge '~c'4.8. Obsolete packages    Introducing lots of new packages, buster also retires and omits    quite a few old packages that were in stretch. It provides no    upgrade path for these obsolete packages. While nothing prevents    you from continuing to use an obsolete package where desired, the    Debian project will usually discontinue security support for it a    year after buster's release^[5], and will not normally provide    other support in the meantime. Replacing them with available    alternatives, if any, is recommended.    There are many reasons why packages might have been removed from    the distribution: they are no longer maintained upstream; there    is no longer a Debian Developer interested in maintaining the    packages; the functionality they provide has been superseded by    different software (or a new version); or they are no longer    considered suitable for buster due to bugs in them. In the latter    case, packages might still be present in the “unstable”    distribution.    Some package management front-ends provide easy ways of finding    installed packages that are no longer available from any known    repository. The aptitude textual user interface lists them in the    category “Obsolete and Locally Created Packages”, and they can be    listed and purged from the commandline with:    # aptitude search '~o'    # aptitude purge '~o'    The Debian Bug Tracking System (https://bugs.debian.org/) often    provides additional information on why the package was removed.    You should review both the archived bug reports for the package    itself and the archived bug reports for the ftp.debian.org    pseudo-package (https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg    =ftp.debian.org&archive=yes) .    For a list of obsolete packages for Buster, please refer to    Section 5.1.10, “Noteworthy obsolete packages”.4.8.1. Transitional dummy packages    Some packages from stretch may have been replaced in buster by    transitional dummy packages, which are empty placeholders    designed to simplify upgrades. If for instance an application    that was formerly a single package has been split into several, a    transitional package may be provided with the same name as the    old package and with appropriate dependencies to cause the new    ones to be installed. After this has happened the redundant dummy    package can be safely removed.    The package descriptions for transitional dummy packages usually    indicate their purpose. However, they are not uniform; in    particular, some “dummy” packages are designed to be kept    installed, in order to pull in a full software suite, or track    the current latest version of some program. You might also find     deborphan with the --guess-* options (e.g. --guess-dummy) useful    to detect transitional dummy packages on your system.

Statistics: Posted by Uptorn — 2024-11-09 04:09



Viewing all articles
Browse latest Browse all 4056

Trending Articles