Week 3 - Software Distribution Flashcards

1
Q

What are executable files?

A

.exe files contain instructions for the computer to run once executed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does PE mean?

A

Portable executable

(Microsoft’s special implementation of EXE)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What does MSI files stand for?

A

Microsoft Install Package

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What do MSI files do?

A

MSI files guide the Windows Installer in the installation, maintenance, and removal of a program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are 2 ways an .exe file is used?

A
  1. starting point to bootstrap Windows installer
  2. contain all instructions needed to be used as a custom installer (no MSI file or Windows Installer used)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the differences in using an MSI file/Windows Installer and a custom installer for an executable program?

A

Customer installer = more control over Window’s actions when installing

MSI file/W Installer = Simpler setup, most taken care of for you, but only able to install it a certain way

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are 2 ways to install an .exe from the command line? Both

A
  1. change into the directory with the file
  2. type in its name

or

  1. type in the absolute path from wherever you are in the file system
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

How do you see sub-commands a package might have?

A

/?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

In Windows, what is software usually packaged as?

A

an .exe file

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What 4 types of things does the MSI file installation package contain?

A
  1. installation database
  2. summary info
  3. data streams for each part of the installation
  4. maybe internal/external source files needed for installation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What are the 7 commands for self-extracting executables?

A
  1. /extract:[path] extracts the content of package to the path folder. If no path provided, Browse box appears
  2. /log:[path to log file] enables verbose logging (more detailed info recorded in log file) for the update installation
  3. /lang:lcid sets user interface to specified locale when multiple locales are in the package
  4. /quiet runs package in silent mode
  5. /passive runs update without any interaction from user
  6. /norestart prevents prompting user when a restart is needed
  7. /forcerestart forces a restart of the computer as soon as the update is finished
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is MakeAppx.exe?

A

a program/tool that:
1. creates an app package from files on a disk
2. extracts files from an app package to a disk

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the Microsoft store? How is software installed through here updated?

A

contains apps and programs that are curated for content and certified for compatibility

software installed through here are updated automatically

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What’s the file extension for a portable executable file (PE)?

A

.exe

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What’s the software package used for Linux?

A

.RPM

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What does .RPM stand for?

A

. (Red Hat Manager)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What software distribution type does Ubuntu use?

A

.deb (Debian)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

How to install a debian package?

A

sudo dpkg -i filepath

-i for install

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

How to remove a program from Ubuntu?

A

sudo dpkg -r programname

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

How to list debian packages installed on machine

A

dpkg -l

  • -l for list
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Search for a program you installed ubuntu? 2 ways

A

dpkg -l | grep packagename

or

dpkg -s packagename

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

How do you define an app store?

A

a central managed marketplace where app developers publish and sell mobile apps

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

between an app store app and app store service, which is the repository and which is the package manager?

A

app store app is the package manager
app store service is the respository

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Mobile OS only trusts code for an app that’s been ____? By who?

A

signed by a publisher/developer it recognizes

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
What happens if someone changes the code to an app? What does the OS know about it?
it becomes invalid, OS knows it's tampered
26
What allows an organization to distribute custom mobile apps?
enterprise app management
27
how are enterprise apps signed?
with an enterprise certificate that needs to be trusted by the devices installing it
28
what does MDM stand for? What is it?
Mobile Device Management what an IT support specialist would use to help manage enterprise app installation
29
What is side-loading?
you install apps directly without using a mobile app store
30
How do you reset a mobile app to how it was when it was first installed?
delete or clear the cache (each app has its own storage location/cache)
31
What is an archive? w
An archive is multiple files that are compressed (unless .tar) and combined into a single file
32
What is a package archive? w
A package archive are all the core software files compressed into a single file
33
What is 'installing from source' referring to? windows. Installing what?
When installing software from a source archive
34
What's an example of an archive type?
.zip .rar .tar
35
What is 7 Zip?
Windows and Linux tool that can extract/un-extract (archiving/un-archiving) compressed files
36
Command to compress files Windows
Compress-Archive -Path C:\Users\cindy\Desktop\CoolFiles\ ~\Desktop\CoolArchive.zip
37
Extract file using 7 Zip
7z e filepath - she said to use e as a flag but there’s no -e
38
To create an archive with 7zip linux
7z a archivename.7z filetoarchive
39
To see a list of files in a 7z archive l
7z l archivename.7z
40
To compress all files in directory using 7zip l
7z a test *
41
How to compress certain files in a directory with 7zip l
7z a my_archive2.zip file1 file2
42
What is an archive?
a single file that contains any number of individual files and information on how to restore them to their original form by an extraction program
43
What are archives useful for?
archives are useful for distributing package/program files, transmitting data, and storing files
44
What are archives created with tar called?
tarballs
45
Does tar compress files?
No
46
Unlike many commands, tar requires the use of at least one ____?
option
47
What options are used to create tar files?
-c and -f the -f must always be the final option
48
Is the .tar extension necessary?
No but it's helpful to label the tar files to organize them and know what they are
49
For .tar files, what option MUST be the final option to prevent system confusion?
-f (it tells the system what the file name will be and it gets confused if it's behind other options)
50
What steps should be taken before unpacking tar files onto a computer?
1. Make sure that there's enough space on the HDD 2. Make sure you're in an empty directory to avoid extracted files from overwriting files 3. If the file was compressed, you must decompress it with a decompression program
51
What does having dependencies mean?
It refers to software that relies on other software to run
52
What's a library?
A packaged bundle of useful code written by someone else
53
What's a DLL? Accessed by who?
Dynamic Link Library code that is accessed and shared by programs that support their function
54
What handles managing dependencies and their availability to a program?
55
How does Windows avoid DLL hell now?
By using SXS
56
What is SXS? What do they do?
Side by side assemblies, it manages shared libraries/resources SXS system and installer bundle dependencies together in installation packages
57
What does a manifest do?
When an application requests access to a shared library it's added to the manifest
58
___ supports access to multiple versions of the same ___ ___ automatically
SXS supports access to multiple versions of the same shared library automatically
59
What can you use to help you install and maintain the libraries and other dependencies that your installed software needs to use?
a Windows Package Manager
60
How to locate software and its dependencies?
Find-Package packagename -IncludeDependencies
61
What is a commandlet?
a command that has a verb-noun format (Select-String, Get-Help, Find-Package)
62
What's a sys internals package? w
it is a set of troubleshooting tools provided by Windows
63
What's the place called where all kinds of Windows software packages live?
chocolatey
64
How to locate software and its dependencies? w
Find-Package packagename -IncludeDependencies
65
How to add a package source w 4 things
Register-PackageSource -Name chocolatey -ProviderName chocolatey -Location http://chocolatey.org/api/v2
66
How to Verify Package Source? w
Get-PackageSource
67
Install a Package w
Install-Package packagename
68
What are some common DLLs used by Windows? 3
1. .drv files - device drivers (printers, etc) 2. .ocx files - Active X program object selections like selecting calendar date 3. .cpl files - control panel files manage control panel functions
69
What are 4 ways a DLL dependencies can be broken?
1. Overwriting DLL - app overwrites, another app fails 2. Deleting DLL files - malware or apps delete files 3. Upgrading/Fixes to DLLs - DLL Hell. New version DLL but another app isn't compatible with new version DLL yet. 4. Rollback Previous DLL versions - installing old app rewrites newer version DLL with older version
70
What are 3 ways Windows has remedied DLL issues?
1. Windows File Protection - Windows controls DLL updates/deletion (only apps with valid signatures) 2. Private DLLs - copy of DLL stored in apps root folder, changes to shared version do not affect private copy 3. .Net Framework assembly versioning - allows app to add updated DLL version without removing older DLL version
71
Where can DLL versions be found?
C:\Windows\assembly and placed in the GAC
72
What is GAC? What does it contain? Windows
Global Assembly Cache contains the "Strong Name Assembly " of each DLL version
73
What 4 items does "Strong Name Assembly" in the GAC include?
1. name of the assembly (multiple DLL files can share assembly name) 2. version number 3. culture - country or region where app is deployed 4. public key token - 16 character key assigned when built
74
DLLs and dependencies can also be found in _____?
side by side assemblies
75
What is a side by side assembly?
public/private resource collection available to running apps that contain XML files (manifests)
76
What are side by side assembly manifests? what type of files are they?
They're XML files that contain configuration settings stored in the WinSxS folder instead of the traditional Windows registry. (typically a group of several DLLs and resources deployed together and made available for applications)
77
Where are private manifests stored?
inside application's folder or embedded in an application or assembly (They typically contain info about where resources are stored, settings for loading those resources, etc.)
78
What 4 things does the metadata of a manifest include?
1. Names 2. Resource collections (DLLs, COM servers, Windows classes, interfaces, type libraries) 3. Classes - included if versioning is used 4. Dependencies - can create dependencies to other side-by-side assemblies
79
Does dpkg install package dependencies for us?
No, Package Managers help us install package dependencies (will show up with an error when trying to install a package) - Dependencies can be other packages or other shared libraries
80
What is Debian?
One of many free Linux OS
81
What are 6 things that Linux packages contain?
1. binary executables 2. software libraries 3. configuration files 4. package dependencies 5. command line utilities 6. and/or apps with a GUI
82
What are 3 common Linux Package types?
1. tgz - TAR gzip 2. .rpm - Redhat packages 3. .deb - Debian packages
83
What is a Linux respository?
storage space on a server that hosts thousands of Linux packages
84
What lists the external dependencies needed by the package?
Package manifests
85
What are 3 package managers for Debian-based systems?
1. dpkg 2. APT (Advanced Package Tool) uses dpkg commands, installs package dependencies required 3. aptitude - user friendly PM
86
What are 3 package managers for RedHat-based systems like CentOS?
1. rpm 2. yum - yellowdog updater modified (comes with redhat) 3. dnf - dandified Yum
87
Windows: 2 ways to check options for installing packages from CLI?
- /? for any useful information into what options installer provides - check documentation for the app to see what options it provides
88
What is chocolatey?
3rd party package manager for Windows (public repository)
89
Uninstalling a package Windows?
Uninstall-Package -Name packagename
90
What is NuGet?
a package manager primarily used for software written using .NET framework (also evolved to include other tools/services like open-source client app, hosted package servers, and software deployment tools)
91
What does a NuGet package file look like? What does it contain?
Single zip file that bears a .nupack or .nupkg file extension contains .NET assemblies and manifest file describing contents
92
How to install a package with apt? Linux (apt is for Ubuntu)
sudo apt install packagename
93
Remove a package with apt
sudo apt remove packagename
94
What is a package repository?
server that acts as central storage location for packages
95
Where is the respository source file in Ubuntu?
/etc/apt/sources.list add package/repository links to this file so the computer knows where to check for software
96
What are PPAs? L
personal package archives special repositories hosted on launchpad servers but not as secure and can contain malicious code
97
How do you update and upgrade packages? Linux
sudo apt update sudo apt upgrade
98
How to learn more about the commands available with apt?
apt - -help
99
what does apt stand for?
advanced package tool
100
What are closed-source packages? Windows
We're not able to view the source code for a package so we can't see what the program is doing
101
What are 6 things MSI files contain?
1. installation instructions in different tables 2. files 3. objects 4. shortcuts 5. resources 6. libraries program will need all grouped together
102
How does the Windows Installer let users uninstall a program later?
It keeps track of its actions and creates a separate set of instructions to undo the installation
103
What does a process monitoring program do? Who is it provided by? W
Provided by MS sysinternals toolkit, it sees the actions an installer is taking (even when it's a closed source package)
104
What is orca.exe?
Orca.exe is a database table editor for creating and editing Windows Installer packages and merge modules.
105
In what format does Microsoft package their apps/programs released in the Windows store?
APPX
106
What is a package?
A compressed software archive file that contains the files needed for a software application.
107
Linux OS installations normally come with thousands of packages. Common Linux package types include these 3:
1. Debian packages .deb 2. Red Hat Manager packages .RPM 3. TAR archive .tgz
108
What is a standalone package?
Doesn't require any dependencies to function/install
109
Do packages contain the dependencies needed to install software they contain? L
No
110
How do we know which dependencies are needed to install software if they're not included? L
External dependencies are listed in the package's manifests
111
______ can read package manifests to determine if any dependencies are needed
Package Managers, then the PM finds and installs dependencies needed before the software
112
Like we added chocolatey as a package manager source in Windows, how do we add a source to Linux?
/etc/apt/sources.list package and repository links are added here
113
___ makes sure that the process of software installation, removal, update and dependency management is as easy and automatic as possible
a package manager
114
What format is used by the Windows Store to distribute universal Windows platform apps?
appx packages
115
How do you install a software package named "boo" on Ubuntu?
apt-get install boo
116
To troubleshoot mobile apps, what will remove changes to the settings and sign out of any accounts the app was signed into?
clearing the cache
117
How do you verify that a software package was installed on PS?
Get-Package -Name TestPackage
118
In Ubuntu, what kind of device might create a file called /dev/sdc?
a memory stick
119
When Windows sees a new device is connected, what does it do first?
Ask for the device's hardware ID
120
Which command will show you what Linux kernel version you have?
uname -r
121
PS: How do you install a package called "TestPackage"?
Install-Package -Name TestPackage
122
What hardware devices appear as a character device in your Ubuntu /dev directory?
1. keyboard 2. mouse
123
What command will update your Linux application sources?
sudo apt update
124
What is the repository source file in Ubuntu?
/etc/APT/sources.list
125
What actions may update your Linux device drivers?
1. Installing a kernel module 2. Updating the Linux kernel
126
How do you install a new version of the Linux Kernel?
sudo apt full-upgrade