this post was submitted on 11 Jul 2023
170 points (96.7% liked)
Linux
48186 readers
1510 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Since I'm not sure where to ask what is probably a basic question, what's a Linux package?
It's just a fancy way of saying program. So Linux programs.
Correct, the reason they are called packages, is that the package can contain other resources besides usable programs, like libraries used by other programs.
It's a signed archive of deployable files along with meta-data. Usually a cpio archive (which is similar to a tarball) with that extra signature wrapper and meta-data (which, itself, should be a list of files and checksums).
A proper package can validate a project's installation, either from the local database or from remote resources, at any time, which gives positive assurance that what is installed is what should be installed.
As well, proper package info is exported by SNMP to be consolidated centrally and validate what is vs what should be installed at the group level.
TL;DR? Like a tarball with tracking info, signatures, checksums, and top-to-bottom validation. If it's a good package, anyway.
So it's basically like installing a program in windows but, idk how to phrase it, more through and less prone to errors during installation?
You're really close, yeah .
But because like every layer is checksummed both in delivery AND when it's installed, so you can easily validate a delivered file, and it's all signed with signatures you can easily check, you can at least be assured that
the chance of problems should be reduced.
Bonus1: with a proper repo config, you can check for updates so fast. It's like the chocolatey windows repo but more formalized and usually vendor-maintained.
Bonus2: bad upgrade? Enterprise packages on Linux (long description; trust me) can be reverse-installed over what's there so you can back-revise or downgrade with almost no pain. It's a good oh-no fix. At every point you can still validate that what is there should be there, according to hard signatures at every stage.
Bonus3: grabbing os version 6.1 and upgrading to 6.5 OR just installing 6.5 fresh gives the same final content - files and services - when you're done. (almost entirely) No cruft, since package installs (because of the locking below) just install over themselves in a way Linux people just accept and windows people may freak over.
Linux bonus: Linux locks file differently; again, long description, so trust me or look it up. You can upgrade many files and services without stopping them, and then bounce a service or a host, so your patch-and-bounce process is fast, it happens after the upgrades, and is like 2 min or with systemd 3min.
Ultimately