[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: No ssh service after upgrade from trixie Sid to forky Sid



On 2025-09-12 07:18:49 -0400, Greg Wooledge wrote:
> "apt-get upgrade" will not install any new packages, nor will it remove
> any packages, in order to satisfy the dependencies.  The .deb files are
> left in place.
> 
> "apt-get upgrade --with-new-pkgs" will install new packages if needed,
> but will not remove any packages, in order to satisfy dependencies.
> The .deb files are left in place.
> 
> "apt upgrade" will install new packages if needed, but will not remove
> any packages, in order to satisfy dependencies.  Any .deb files downloaded
> during this operation will be removed after successful completion.

Indeed, as I no longer use apt-get directly, I forgot this
(confusing) difference. In particular, this difference does not
seem to be documented explicitly.

The apt(8) man page only says

     All features of apt(8) are available in dedicated APT tools like
     apt-get(8) and apt-cache(8) as well.  apt(8) just changes the
     default value of some options (see apt.conf(5) and specifically
     the Binary scope). So you should prefer using these commands
     (potentially with some additional options enabled) in your scripts
     as they keep backward compatibility as much as possible.

but the apt.conf(5) man page says nothing about this difference
between apt and apt-get.

And the apt command is not covered in APT User's Guide.

> "apt-get dist-upgrade" will install new packages or remove old packages
> if needed to satisfy dependencies.  The .deb files are left in place.
> 
> "apt full-upgrade" will install new packages or remove old packages if
> needed to satisfy dependencies.  Any .deb files downloaded during this
> operation will be removed after successful completion.
> 
> "apt dist-upgrade" is a synonym for "apt full-upgrade".
> 
> Here's a table:
> 
>  Command                         NewPkgs RmvPkgs KeepDebs
>  ------------------------------- ------- ------- --------
>  apt-get upgrade                                    ✓    
>  apt-get upgrade --with-new-pkgs    ✓               ✓    
>  apt upgrade                        ✓                    
>  apt-get dist-upgrade               ✓      ✓        ✓    
>  apt full-upgrade                   ✓      ✓             

Such a table would have been very useful in a man page.

> "apt upgrade" will "do the kernel" as you put it because the new kernel
> is a new *package* (it has a different name, because multiple kernels
> must be able to coexist).  "apt-get upgrade" will not, because it doesn't
> bring in new packages.

-- 
Vincent Lefèvre <vincent@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Pascaline project (LIP, ENS-Lyon)


Reply to: