5.5. Cùng tồn tại với các Hệ thống Gói Khác
Các gói Debian không phải là gói phần mềm duy nhất được sử dụng trong thế giới phần mềm tự do. Đối thủ cạnh tranh chính là định dạng RPM của bản phân phối Red Hat Linux và các dẫn xuất của nó. Red Hat là một phân phối thương mại rất phổ biến. Do đó các phần mềm được cung cấp bởi bên thứ ba được cung cấp ở gói RPM hơn là Debian.
Trong trường hợp này, bạn nên biết rằng chương trình rpm
, xử lý các gói RPM, có sẵn như là một gói Debian, vì vậy bạn có thể sử dụng định dạng gói này trên Debian. Tuy nhiên, cần cẩn thận để hạn chế các thao tác này để trích xuất thông tin từ một gói hàng hoặc để xác minh tính toàn vẹn của nó. Đúng vậy, thật không hợp lý để sử dụng rpm
để cài đặt RPM trên một hệ thống Debian; RPM sử dụng cơ sở dữ liệu riêng của nó, tách biệt với các phần mềm gốc (như dpkg
). Đây là lý do tại sao không thể đảm bảo sự tồn tại ổn định của hai hệ thống gói.
Mặt khác, tiện ích alien có thể chuyển đổi gói RPM thành các gói Debian và ngược lại.
$
fakeroot alien --to-deb phpMyAdmin-5.1.1-2.fc35.noarch.rpm
[..]
Warning: Skipping conversion of scripts in package phpMyAdmin: postinst
Warning: Use the --scripts parameter to include the scripts.
[..]
phpmyadmin_5.1.1-3_all.deb generated
$
ls -sh phpmyadmin_5.1.1-3_all.deb
6,0M phpmyadmin_5.1.1-3_all.deb
$
dpkg -c phpmyadmin_5.1.1-3_all.deb
drwxr-xr-x root/root 0 2021-08-09 02:02 ./
drwxr-xr-x root/root 0 2021-08-09 02:02 ./etc/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./etc/httpd/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./etc/httpd/conf.d/
-rw-r--r-- root/root 1181 2021-07-27 09:32 ./etc/httpd/conf.d/phpMyAdmin.conf
drwxr-xr-x root/root 0 2021-08-09 02:02 ./etc/nginx/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./etc/nginx/default.d/
-rw-r--r-- root/root 430 2021-07-27 09:32 ./etc/nginx/default.d/phpMyAdmin.conf
drwxr-x--- root/root 0 2021-08-09 02:02 ./etc/phpMyAdmin/
-rw-r----- root/root 4546 2021-07-27 09:34 ./etc/phpMyAdmin/config.inc.php
drwxr-xr-x root/root 0 2021-08-09 02:02 ./usr/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./usr/share/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./usr/share/doc/
drwxr-xr-x root/root 0 2021-08-09 02:02 ./usr/share/doc/phpMyAdmin/
[..]
$
dpkg -I phpmyadmin_5.1.1-3_all.deb
new Debian package, version 2.0.
size 6195324 bytes: control archive=44444 bytes.
102 bytes, 3 lines conffiles
593 bytes, 15 lines control
180405 bytes, 1919 lines md5sums
448 bytes, 11 lines * postinst #!/bin/sh
Package: phpmyadmin
Version: 5.1.1-3
Architecture: all
Maintainer: Daniel Leidert <[email protected]>
Installed-Size: 40693
Section: alien
Priority: extra
Description: A web interface for MySQL and MariaDB
phpMyAdmin is a tool written in PHP intended to handle the administration of
MySQL over the Web. Currently it can create and drop databases,
create/drop/alter tables, delete/edit/add fields, execute any SQL statement,
manage keys on fields, manage privileges,export data into various formats and
is available in 50 languages
.
(Converted from a rpm package by alien version 8.95.4.)
Bạn sẽ thấy rằng quá trình này rất đơn giản. Tuy nhiên, bạn phải biết rằng gói được tạo ra không có bất kỳ thông tin phụ thuộc nào, vì các phụ thuộc trong hai định dạng đóng gói không có sự tương thích trong hệ thống kia. Quản trị viên phải tự đảm bảo rằng gói được chuyển đổi sẽ hoạt động chính xác, và đó là lý do tại sao các gói Debian được tự tạo ra nên tránh càng nhiều càng tốt. May mắn thay, Debian có bộ sưu tập lớn nhất các gói phần mềm của tất cả các bản phân phối, và có thể là bất cứ điều gì bạn tìm kiếm đã có trong đó.
Nhìn vào man page của lệnh alien
, bạn cũng sẽ lưu ý rằng chương trình này xử lý các định dạng đóng gói khác, đặc biệt là sử dụng bởi phân phối Slackware (nó được làm bằng một tệp nén đơn giản tar.gz
).
Sự ổn định của phần mềm được triển khai sử dụng công cụ dpkg
góp phần vào sự nổi tiếng của Debian. Bộ công cụ APT, được mô tả trong chương tiếp theo, bảo tồn lợi thế này, đồng thời giảm bớt quản trị viên khỏi việc quản lý tình trạng của bao bì, một nhiệm vụ cần thiết nhưng rất khó khăn.