...
On the disconnected (air-gapped) computer we will firstly determine which pre-installation required packages need to be downloaded:
First we check if tar package is installed:
rpm -q tar.x86_64
tar-1.26-35.el7.x86_64
tar # tar package is installed.
We # We will only consider downloading and installing it later if we find we are unable to unpack the Opmantek Installer Runfile.
Next # Next we check if libnsl package is installed:
rpm -q libnsl
package libnsl is not installed
libnsl # libnsl is not installed.
# From the above checks on this disconnected (air-gapped) computer, we have ascertained that the following packages are needed:linbnsl
Using the connected computer with same OS and Version we will now fetch the pre-installation required packages:
# Navigate to a clean directory to download packages to
mkdir -p /tmp/omk_opXyz_packages
cd /tmp/omk_opXyz_packages/
# Download each of the dependent packages:
yumdownloader libnslLoaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
epel/x86_64/metalink | 26 kB 00:00:00
* base: centos.mirror.serversaustralia.com.au
* epel: mirror.xeonbd.com
* extras: centos.mirror.serversaustralia.com.au
* updates: mirror.nsw.coloau.com.au
base | 3.6 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
No Match for argument libnsl
Nothing to download
# At first sight it appears we don't need libnsl for the OS + Version we are running this example on.
# If the Opmantek Installer Runfile fails to unpack we may need to download this package from an OS Repository that is not enabled by default.
# Since we don't have any package to download in this example we will download the tar package.
# We will assume for the purposes of this example that the tar package needs to be updated to a newer version.
# The command to download tar package with dependencies is:
yumdownloader --resolve tar
# Downloaded packages will now be in the current directory and ready for transferring to the disconnected (air-gapped) computer where they will be installed.
ls -la-rw-rw-r--. 1 user user 865848 Nov 12 2018 tar-1.26-35.el7.x86_64.rpm
On the disconnected (air-gapped) computer we will now install the downloaded required packages:
# Install each of the downloaded required packages.
# Since we don't have any package to install in this example we will install the tar package.
# We will assume for the purposes of this example that the tar package needs to be updated to a newer version.
sudo yum install tar-1.26-35.el7.x86_64.rpm
...
On the disconnected (air-gapped) computer we will firstly determine which pre-installation required packages need to be downloaded:
# Navigate to a clean directory to download packages to
mkdir -p /tmp/omk_opXyz_packages
cd /tmp/omk_opXyz_packages/# First we check if tar package is installed:
type tar
tar is /bin/tar
# tar package is installed
# We will only consider downloading and installing it later if we find we are unable to unpack the Opmantek Installer Runfile.
# Extract the list of dependent packages - I've used sort and formatted the results
# to make the needed comparison to those packages already installed easier:
# to see the unsorted results run command apt-cache show tar
apt-cache show tar|grep "Pre-Depends:"|sed -e 's/Pre-Depends:\s\+//' -e 's/,\s*/\n/g'|sort|uniqlibacl1 (>= 2.2.51-8)
libc6 (>= 2.17)
libselinux1 (>= 1.32)# Now we check each package and package-version against the dependency lists above:
dpkg -s libacl1|grep -e "Status:" -e "Version:"
Status: install ok installed
Version: 2.2.52-3+b1dpkg -s libc6|grep -e "Status:" -e "Version:"Status: install ok installed
Status: install ok installed
Version: 2.24-11+deb9u4dpkg -s libselinux1|grep -e "Status:" -e "Version:"
Status: install ok installed
Version: 2.6-3+b3# From the above checks on this disconnected (air-gapped) computer, we have ascertained that no packages are needed.
Using the connected computer with same OS and Version we would now fetch the pre-installation required packages:
# Navigate to a clean directory to download packages to
mkdir -p /tmp/omk_opXyz_packages
cd /tmp/omk_opXyz_packages/
# Download each of the dependent packages, here using libacl1 as an example, even though it is not actually needed in this case:
apt-get download libacl1Get:1 http://ftp.us.debian.org/debian stretch/main amd64 libacl1 amd64 2.2.52-3+b1 [28.1 kB]
Fetched 28.1 kB in 1s (16.6 kB/s)
# Downloaded packages will now be in the current directory and ready for transferring to the disconnected (air-gapped) computer where they will be installed:
ls -la-rw-rw-r--. 1 user user 4463036 Apr 3 21:12 libacl1_2.2.52-3+b1_amd64.deb
On the disconnected (air-gapped) computer we will now install the downloaded required packages:
# Install each of the downloaded required packages, here using libacl1 as an example, even though it is not actually needed in this case:
sudo apt-get install libacl1_2.2.52-3+b1_amd64.deb