RPM (Red Hat Package Manager) là những dạng gói phần mềm được sử dụng cho các hệ điều hành như CentOS, Fedora, … Các gói thường được kết thúc bằng đuôi .rpm. Bài viết này sẽ hướng dẫn các bạn cách download và cài đặt bằng file RPM trên CentOS-7

Việc cài đặt các gói trên CentOS thông qua Internet có thể gặp tình trạng tải khó khăn hoặc thậm chí không thể tải được. Một số lý do thường gặp phải:

  • Internet chập chờn
  • Mất kết nối internet
  • Không phân giải được DNS

Khi điều đó xảy ra, ta cần một giải pháp để giải quyết vấn đề này. Đó là cài đặt các gói offline bằng cách tải các gói về và cài đặt từ file đó.

Các bước thực hiện

Bước 1: Tải các gói RPM

Chúng ta có thể tải các gói phần mềm và thư việc tương ứng được đóng gói sẵn dưới dạng các file .rpm

Tuy nhiên, bước này cần thực hiện khi có mạng. Việc thực hiện này có ý nghĩa lưu trữ các gói RPM cần thiết để cài đặt. Hoặc có thể tải từ một máy khác rồi copy sang máy cần cài đặt.

Sử dụng câu lệnh sau để tải gói RPM tương ứng:

yum install --downloadonly --downloaddir=<directory> <package>

Trong đó:

  • directory: là folder chứa các gói RPM mà yum tải về.
  • package: là tên gói tương ứng mà ta cần lưu lại.

Trong bài viết này, ta sẽ sử dụng gói HTTPD làm ví dụ:

Tạo thư mục để lưu trữ các gói:

mkdir cloud365-httpd

Tải các gói của httpd về thư mục vừa tạo:

yum install --downloadonly --downloaddir=/root/cloud365-httpd/ httpd

Sau khi tải xong, ta sẽ thấy thông báo tương tự dưới đây:

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                       2.7 MB/s | 3.0 MB  00:00:01
exiting because "Download Only" specified

Kiểm tra các gói vừa tải về:

ls -1 cloud365-httpd/

apr-1.4.8-5.el7.x86_64.rpm
apr-util-1.5.2-6.el7.x86_64.rpm
httpd-2.4.6-93.el7.centos.x86_64.rpm
httpd-tools-2.4.6-93.el7.centos.x86_64.rpm
mailcap-2.1.41-2.el7.noarch.rpm

Bước 2: Tiến hành cài đặt các gói trong môi trường Offline

Ngắt kết nối internet. Ở đây, ta sẽ comment dòng cấu hình DNS và GATEWAY trong file cấu hình network:

/etc/sysconfig/network-scripts/ifcfg-eth0

Bật lại interface:

ifdown eth0 && ifup eth0

Kiểm tra sẽ thấy máy không ra được internet nữa:

Tiến hành cài đặt các gói trong môi trường offline:

cd cloud365-httpd/
rpm -ivh *.rpm

Trong đó:

  • -i: install – Option cài đặt.
  • -v: verbose – In ra output khi cài đặt.
  • -h: hash – In ra dấu # hiển thị quá trình giải nén package

Khởi động và kiểm tra service HTTPD:

systemctl start httpd
systemctl status httpd
httpd -v

Tổng kết

Bài viết đã hướng dẫn các bạn cách cài đặt phần mềm trên CentOS-7 từ file RPM. Rất mong sự đóng góp ý kiến từ mọi người.

Cảm ơn mọi người đã theo dõi.