XPost: linux.debian.devel
On Thu, Apr 11, 2024 at 04:46:03PM +0000, mYnDstrEAm wrote:
With the two commands above one can already split it up into two steps but especially the second command still requires a lot of disk space.
I am going to assume that your "a lot of disk space" stems from the
*.deb files that are downloaded. If so, you can e.g. attach an USB disk/
drive and mount it e.g. under /media/apt-archives
Tell apt to use that directory instead of /var/cache/apt/archives, e.g.:
apt upgrade -o dir::cache::archives=/media/apt-archives
(for some more free MBs you could 'apt clean' and then move dir::cache
elsewhere, but for that you need to create some directories in the
target location and the binary caches are not THAT large to make it
really worthwhile in practice. Similar for other files like
/var/lib/apt aka dir::state::lists)
Instead of an USB drive you could do the same with e.g. an SD card, drop
them into RAM (if your device has surprisingly more RAM than disk) or
even use a network share (NFS, sshfs, … you name it). The filesystem is
not usually a concern (as in: even fat32 should work given we encode
away the : in epochs).
Note that whoever has write access to the files on the storage (or in
case of unencrypted transfer, also everyone who can meddle with transfer
over the network) could use that to attack you as apt (well, apt will
casually check them first, but after that and dpkg, who actually
interacts with them the most) will assume that the files in /var/cache/apt/archives (or where ever else you stored them and told apt
to use them) are valid & trusted.
Note also that apt uses for its space check statvfs(3) f_bavail, as in, depending on how you configured your disk, it should have a couple of additional free blocks in reserve (typically 5%, see tune2fs(8) -m).
If you know what you are doing, you could decrease that value.
Note that the value apt displays is only an estimate, powered by what
the individual packages claim (via dpkg), which is an estimate. Also, if
you happen to have a 2GB installed, the upgrade will roughly take an
additional 2GB as dpkg would first extract the new files along the old
ones and then replace them in one swoop – so for a bit, you have that
package installed two times. Multiple this by group size, divide by
unchanged files and sprinkle some salt over it for flavour.
Predictions are hard, especially about the future.
I would in general not recommend to try approaches like upgrading
individual packages as that easily leads unsuspecting users into
situations that nobody else has encountered before: aka bugs in
packages that nobody else will encounter as they are either hidden
by the involved set usually being upgraded together as intended™ or
– which tends to be even worse – the breakage is known but ignored
on purpose as the solution is far worse than the problem (at least for
everyone doing upgrades the normal way – example: usrmerge). Also, but
that is just an aside, people grossly overestimate how easy it is for
packages to be upgraded individually (compare: t64 testing migration).
Best regards
David Kalnischkies
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEE5sn+Q4uCja/tn0GrMRvlz3HQeIMFAmYammsACgkQMRvlz3HQ eINsAA//TlFwynxgJXyUhnb3JjVpzltb/70jTtq11Dep6uhxTGUhokbMfroXiQvc yf03bNVD3fEdNF8DxtglFz/0mADuxGNDooYi0KaRVij7Y3PyWhCC/RLKLDVdYTeO bttk+bUVhMO8JgNQRc6OII+cMYLH27Sv/OWgCwi9RwXtnWLNOHR9+ZnTF+KHPets 1Cs+1wwpQDDolpJfdgTjhJm/SEom0tlSDrkhjLlHFPZFQNswd3JDLr3kyO8kFc1L 3lAoJvRZjs+dI7GLmtPx7yjU08EqFJzMlSiZLFceHg701DV4i00C9OixUsNRFkDf pIZAtI4rXeCwl2rIr2NA2NGoZY5+AxaHl8Y7S6TS9ZMZH6gRzTM2Ox84XvKlFEZg S60p3ZznrIQpfQY+NIrQC2gyFYHBCh2sOYOJWuScc++1hdZyfNXWZxVAFpb5WQkn sXzkgwfoPREEvKIJcZiHiCTQOwdC3sWv5kYu6nNEpxDKqp/o95OkZh70mq4z+HGY 44ivw4ptHtiSOw8I8arjVKgoi50rtlEuqSmMA1MG8EYbY7bITRg5XRDTBsLPWtAs rrDXAcOlcZ+qnQ00fPPmqDWukiIfyk2wUWUPjevJD/kgXYcfrLljvOncNaBKb7n4 9ajIxsoZKlZF/EuHOE0xCoCq/TDyeKwMXlD6Wxb1RdhfgTGgizw=
=PnoK
-----END PGP SIGNATURE-----
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)