- A networked server with Docker installed (can be any Linux distribution)
- A target offline server running Rocky Linux 9.4
- Both servers have the same architecture (e.g., x86_64)
The container image (rockylinux/rockylinux:9.4) provides an environment identical to the target offline server. This ensures all downloaded RPM packages are compatible, regardless of the networked server's host operating system.
# Run container to download fio and its dependencies
docker run --rm -it \
-v /tmp/offline:/root/offline \
rockylinux/rockylinux:9.4 \
bash# Install dnf download plugin
dnf install -y dnf-plugins-core
# Change to the mounted directory
cd /root/offline
# Download fio with all dependencies
dnf download --resolve fioNote: The downloaded RPM packages will appear in /tmp/offline on the host machine. The networked server's operating system doesn't matter—only the container image version must match the target server.
Copy the entire /tmp/offline directory from the networked server to the target offline server using one of the following methods:
-
USB drive: Copy files to USB and transfer manually
-
SCP (if network allows): scp -r /tmp/offline user@offline-server:/path/to/destination
On the target server, place the packages in a directory (e.g., /tmp/rpms).
Navigate to the directory containing RPM packages and install them without accessing network repositories.
# Navigate to the packages directory
cd /tmp/rpms
# Install all RPM packages, disabling all network repositories
sudo dnf localinstall -y --disablerepo=* *.rpm# Navigate to the packages directory
cd /tmp/rpms
# Install all RPM packages directly
sudo rpm -ivh *.rpm# Check fio version
fio --version
# Verify installed files
rpm -ql fio