👇Technical exchange QQ group with 1000 members, note “public account” for faster approval
1. Differences Between RPM and DEB
Some systems only support installing with RPM packages, while others only support DEB packages. Mixing installations can lead to system issues.
About RPM and DEB
RPM (Red Hat Package Manager) is the package management system based on Red Hat’s Linux Distribution,
and it also refers to the RPM package itself. RPM is used for managing RPM packages (such as installation, uninstallation, upgrades, etc.),
Distributions like Mandrake and SuSE that are based on RPM usually have their specific RPM packages,
If mixed installations may not work properly, generally third-party RPM packages can be installed normally on RPM-based systems.
For Debian-based systems, DEB format packages are used, and there are package conversion tools that allow conversion between RPM and DEB and other files (Alien Package Converter),
Installation and upgrades can be done using dpkg, but it can’t handle package dependencies conveniently; more convenient options include dselect and apt-get,
Ubuntu is a variant of Debian, and its software appears in the form of DEB packages or source files.
RPM packages are mainly used for Red Hat and its branches like Red Hat, CentOS, Fedora, while DEB packages are mainly used for Debian and its branches like Debian, Ubuntu, etc.
RPM packages tend to have older versions but are relatively stable; DEB packages are generally newer, and a new software release may have a DEB package, but bugs may arise during use.
2. Format and Usage of DEB Packages
2.1 DEB Package Command Follows the Following Convention
soft_ver-rev_arch.deb
For example: pptview_8.0-5_i386.deb where the name is pptview, the version number is 8.0, and the architecture is i386.
2.2 dpkg Command
root@huxiping:~# dpkg --helpUsage:dpkg -i|--install <.deb file name> ... | -R|--recursive...dpkg --unpack <.deb file name> ... | -R|--recursive...dpkg -A|--record-avail <.deb file name> ... | -R|--recursive...dpkg --configure ... | -a|--pendingdpkg -r|--remove | -P|--purge ... | -a|--pendingdpkg --get-selections [ ...] get list of selections to stdoutdpkg --set-selections set package selections from stdindpkg --update-avail replace available packages infodpkg --merge-avail merge with info from filedpkg --clear-avail erase existing available infodpkg --forget-old-unavail forget uninstalled unavailable pkgsdpkg -s|--status ... display package status detailsdpkg -p|--print-avail ... display available version detailsdpkg -L|--listfiles ... list files `owned' by package(s)dpkg -l|--list [ ...] list packages conciselydpkg -S|--search ... find package(s) owning file(s)dpkg -C|--audit check for broken package(s)dpkg --print-architecture print dpkg architecturedpkg --compare-versions compare version numbers - see belowdpkg --help | --version show this help / version numberdpkg --force-help | -Dh|--debug=help help on forcing resp. debuggingdpkg --licence print copyright licensing termsUse dpkg -b|--build|-c|--contents|-e|--control|-I|--info|-f|--field|-x|--extract|-X|--vextract|--fsys-tarfile on archives (type dpkg-deb --help.)For internal use: dpkg --assert-support-predepends | --predep-package |--assert-working-epoch | --assert-long-filenames | --assert-multi-conrepOptions:--admindir= Use instead of /var/lib/dpkg--root= Install on alternative system rooted elsewhere--instdir= Change inst'n root without changing admin dir-O|--selected-only Skip packages not selected for install/upgrade-E|--skip-same-version Skip packages whose same version is installed-G|--refuse-downgrade Skip packages with earlier version than installed-B|--auto-deconfigure Install even if it would break some other package--no-debsig Do no try to verify package signatures--no-act|--dry-run|--simulateJust say what we would do - don't do it-D|--debug= Enable debugging - see -Dhelp or --debug=help--status-fd Send status change updates to file descriptor--log= Log status changes and actions to--ignore-depends=,... Ignore dependencies involving--force-... Override problems - see --force-help--no-force-...|--refuse-... Stop when problems encountered--abort-after Abort after encountering errorsComparison operators for --compare-versions are:lt le eq ne ge gt (treat empty version as earlier than any version);lt-nl le-nl ge-nl gt-nl (treat empty version as later than any version);< << <= = >= >> > (only for compatibility with control file syntax).Use `dselect' or `aptitude' for user-friendly package management.root@huxiping:~#dpkg -i | --install xxx.deb Install DEB packagedpkg -r | --remove xxx.deb Remove packagedpkg -r -P | --purge xxx.deb Remove along with configuration filesdpkg -I | -info xxx.deb View package informationdpkg -L xxx.deb View file copy detailsdpkg -l View installed package informationdpkg-reconfigure xxx Reconfigure package
Sometimes, when you use “dpkg” to install a package, the system will prompt you that the package depends on other packages.In this case, you first install the other packages until the dependencies are satisfied.Or install multiple packages at the same time.
dpkg -i aaa.deb bbb.deb ccc.deb
2.3 apt Command
The apt command in Ubuntu can automatically complete software dependencies, the most commonly used is apt-get, but there are other usages worth exploring, such as the following
root@huxiping:~# apt-apt-cache apt-config apt-ftparchive apt-keyapt-cdrom apt-extracttemplates apt-get apt-sortpkgsroot@huxiping:~# apt-
If a software dependency is too complex, using “dpkg” to install it is not a wise choice; at this time, you need to use the APT package management system.
APT can automatically check dependencies, obtain related packages in a preset manner, and automatically install and configure them. In fact, in most cases, we recommend using the APT package management system. The APT system requires a software information database and at least one software repository containing a large number of DEB packages, which we call a “source.” A “source” can be a network server, installation CD, or local software repository. You need to modify the “/etc/apt/sources.list” file so that the APT system can connect to the “source.”
3. Differences Between Unix and Linux
The main differences between Unix and Linux lie in their licensing, history, user interface, hardware requirements, etc. Here is a related introduction:
Licensing. Unix is a closed commercial operating system, usually only provided to paying users or specific partners; Linux is an open-source operating system that follows the GPL agreement, allowing users to freely access, modify, and distribute its source code. History. Unix is one of the earliest commercial operating systems, developed by Ken Thompson and Dennis Ritchie in 1969; Linux was created by Finnish student Linus Torvalds in 1991 based on Unix ideas and the Minix operating system. User Interface. Unix generally tends to use command-line interfaces, while Linux focuses more on the development of graphical user interfaces. Hardware Requirements. Unix is mostly paired with hardware and has higher hardware requirements; Linux can run on a variety of hardware platforms with lower hardware requirements. Application Compatibility. Since Unix is commercial software, certain commercial software may only run on it, while Linux has many open-source alternatives, making application compatibility broader. Distribution Versions. Unix has different versions, each with its own characteristics and features; Linux has many distribution versions, such as Ubuntu, Red Hat, Debian, etc., which differ in kernel and package selection. Kernel. The kernel used by Unix is proprietary, developed and maintained by the respective vendor; the kernel used by Linux is open-source, maintained and improved by developers worldwide. File Systems. Both Unix and Linux support various file systems, but Linux supports more types of file systems, such as FAT32, NTFS, and HFS+, which allows Linux to be better compatible with other operating systems.
In summary, Linux is an open-source clone of Unix, and the two have significant differences in licensing, history, user interfaces, hardware requirements, etc.
The main differences between Unix and Linux are that UNIX is a multi-user and multi-tasking operating system, while Linux is an operating system based on UNIX. Other differences include:
1. Linux is open-source, while Unix is not open-source. 2. Linux is free to use, while Unix is a licensed operating system. 3. Linux has a wider range of usage, from desktops, servers, smartphones to mainframes, while Unix is mainly used for servers, workstations, or PCs.
What is UNIX?
This operating system was launched in the 1960s and was initially a one-man project led by Ken Thompson at Bell Labs.It gradually developed into a popular operating system, meaning Unix is a proprietary operating system.It is a powerful multitasking operating system that acts as a bridge between users and computers.Moreover, it protects users’ data and resources from being accessed without authorization, making it popular in universities, laboratories, and other places.
What is Linux?
Linux is an open-source operating system launched by Linus Torvalds at the University of Helsinki in 1991.Unix is indeed a better operating system, but it is quite expensive.Linux’s advantages lie in being free and open-source, allowing anyone to use and modify it.Moreover, Linux’s graphical user interface is more user-friendly for using applications.It also includes a powerful command-line interface (CLI).Users can type commands in the terminal to perform a wide range of tasks.
The Relationship Between UNIX and Linux
Linux is an operating system based on UNIX.
Definition
UNIX is a series of multitasking, multi-user computer operating systems derived from the original AT&T Unix. Linux is a series of free and open-source software operating systems built around the Linux kernel.
Cost
As mentioned earlier, Unix is a more expensive operating system, while Linux is free.
Installation
Installing Unix has very high hardware requirements, while Linux has lower requirements, even lower than Windows in some cases.
Portability
Considering Unix’s characteristics, it cannot be ported to other devices. However, Linux is one of the most widely used operating systems for embedded systems and has good portability.
Conclusion
The differences between UNIX and Linux are that UNIX is a multi-user and multi-tasking operating system, while Linux is an operating system based on UNIX. Additionally, UNIX is mainly used for high-end servers and laboratories, while Linux is used for more everyday desktops, laptops, etc.
Course consultation add: HCIE666CCIE
↑ Or scan the QR code above ↑
What technical points and content would you like to see?
You can leave a message below to let Xiaomeng know!