OPERATING SYSTEM (LABORATORY 2) REVIEWER
LINUX SOFTWARE
Red Hat
Uses Red Hat Package Manager (RPM)
Debian Package
Packaged as a .deb file for Debian
Installation commands:
Install Debian: Use the Debian package command (dpkg)
Install Atom:
sudo dpkg -i atom-amd64.deb
Remove a package:
sudo dpkg -r atom
List installed Debian packages:
dpkg -l
Search installed Atom package:
dpkg -l | grep atomPipe Command (|): Takes standard output of one command and sends it to the standard input of another command.
Windows Software Packages
Packages come in varying formats; primary form is .exe (executable files).
Executable Files: Contain instructions for operations (copy, install, perform actions).
Includes texts, images, and MSI Files.
Microsoft Install Package/MSI File: Guides the Windows installer in installation, maintenance, removal.
Creates uninstall instructions for programs.
Installation Differences:
Custom Installer Route: Provides precise control over actions taken during installation.
Windows Installer guided by MSI File: Automates bookkeeping and setup.
Windows Store: Microsoft platform for distributing programs; acts as an application repository or warehouse for universal Windows apps compatible with all Windows devices.
Uses APX format for app packaging.
INSTALLATION OF EXE FILES
From GUI:
Double-click the executable file and install.
From CLI: Install depending on the package's requirements.
Run EXE files from CLI:
Open command prompt or PowerShell.
Navigate to the directory where the file is located or paste the path.
Mobile App Packages
Software for mobile OS distributed as applications or apps.
Apps must originate from trusted device sources.
App Stores: Centralized managed marketplaces for publishing/selling mobile apps; act like package managers.
Only signed codes are trusted: App Store services function like a package repository.
Centralized App Store: Ideal for public apps.
Enterprise App Management: Allows organizations to distribute custom apps not available to the public; signed with an enterprise certificate.
Mobile Device Management (MDM) Service: Assists in managing enterprise app installation.
Side Loading: Installing mobile apps directly without using an app store (poses risks).
Mobile apps are usually standalone with their dependencies.
WINDOWS ARCHIVES
Archive: Comprised of one or more files compressed into a single file.
Package Archives: Core/source software files compressed.
Installation from Source: Installing software from a source archive.
Archive Types: Includes .rar, .zip, .tar files.
7-Zip: Open-source tool for archiving/unarchiving different file types.
EXTRACTING AND COMRESSING FILES
Using PowerShell:
Open PowerShell.
Command:
Compress-Archive -Path (Insert Path) -DestinationPath (New Path)
Linux Archives
7-Zip also available on Linux.
Open terminal.
Command:
7z e (filename)(e.g.,7z e myarchive.zip)
Tar Command: Also used in Linux for archiving and unarchiving.
WINDOWS PACKAGE DEPENDENCIES
Software packages typically rely on other code: Dependencies.
Library: Way to bundle useful code as a single unit.
Dynamic Link Libraries (DLL): Used by different programs to reduce memory usage.
DLL Hell: Issues of incompatibility among DLLs in the past.
Side-by-Side Assemblies (SXS): Manages shared libraries and resources in Windows.
If an application requires a shared library, it is specified in a manifest.
Windows Package Manager: Assists in installing and managing libraries.
Windows Package Commandlet: e.g., find-package locates software with dependencies in CLI.
Commandlet: PowerShell command format, e.g.,
find-package.Install Sysinternal Package:
Open PowerShell.
Locate Sysinternals package:
Find-Package sysinternals -IncludeDependencies
Register package source if an error occurs:
Register-PackageSource -Name chocolatey -ProviderName Chocolatey -Location http://chocolatey.org/api/v2
Verify sources with:
Get-PackageSource
Locate again:
Find-Package sysinternals -IncludeDependencies
Install package:
Install-Package
LINUX PACKAGE DEPENDENCIES
Linux may report errors when installing packages like Google Chrome due to dependency issues.
Solution: Install the libappindicator1 package.
Package Managers: Include tools for easier package installation/removal, including handling dependencies.
If a stand-alone package is installed, dependencies are not automatically installed.