CS615A -- Aspects of System Administration -- Package Manager Exercise

The objective of this exercise is for you to compare the process of installing software using a package manager to that of installing software "manually".

In particular, you are to install the nginx web server on a Fedora instance. Do this twice, on distinct instances. You will use the local package manager (section "binary packages") on one instance and build the software from source on a second instance.

For each section below, answer the questions in as much detail as needed; elaborate on anything noteworthy.

Binary Packages

Use the systems' native package manager to install nginx.

How many packages were added?
How many new files were added?
Are all added packages necessary to run the software?
Which version of nginx did you end up with?
Which directories did the software get installed into?
How do you know you didn't get any backdoors installed?

Build manually from source

Do not use the same instance as for the previous part. Create a new, separate instance.

Retrieve the latest sources of nginx from http://nginx.org/download/ and build and install the software without using the package manager.

What additional software did you have to install?
How did you install these pre-requisites? Can you do this without using any package manager at all (i.e. everything from source)?
How many new files were added?
Did this software use any of the added packages you had installed in the previous step? Why / why not?
Does this version of the software have feature parity with the binary package above? Are there some features enabled in one version that are not enabled in the other?
Which directories did the software get installed into?
How do you know you didn't get any backdoors installed?

Next, repeat the same process for one of the other Unix versions we use (NetBSD, FreeBSD, OmniOS, Ubuntu) -- what's different?


[Course Website]