Làm cách nào để cài đặt .debtệp qua dòng lệnh?
Làm cách nào để cài đặt .debtệp qua dòng lệnh?
Câu trả lời:
Các gói được cài đặt thủ công thông qua dpkglệnh (Hệ thống quản lý gói Debian). dpkglà phần phụ trợ cho các lệnh như apt-getvà aptitude, đến lượt nó là phần phụ trợ cho các ứng dụng cài đặt GUI như Trung tâm phần mềm và Synaptic.
Một cái gì đó dọc theo dòng:
dpkg-> apt-get, aptitude-> Synaptic, Trung tâm phần mềm
Nhưng tất nhiên, cách dễ nhất để cài đặt gói là, trước tiên, các ứng dụng GUI (Synaptic, Software Center, v.v.), tiếp theo là các lệnh đầu cuối apt-getvà aptitudethêm cách tiếp cận thân thiện với người dùng vào dpkg phụ trợ, bao gồm nhưng không giới hạn ở các phụ thuộc đóng gói, kiểm soát những gì được cài đặt, cần cập nhật, không cài đặt, các gói bị hỏng, v.v. Cuối cùng, dpkglệnh là cơ sở cho tất cả chúng.
Vì dpkg là cơ sở, bạn có thể sử dụng nó để cài đặt đóng gói trực tiếp từ dòng lệnh.
sudo dpkg -i DEB_PACKAGE
Ví dụ nếu tập tin gói được gọi askubuntu_2.0.debthì bạn nên làm sudo dpkg -i askubuntu_2.0.deb. Nếu dpkgbáo cáo lỗi do sự cố phụ thuộc, bạn có thể chạy sudo apt-get install -fđể tải xuống các phụ thuộc bị thiếu và định cấu hình mọi thứ. Nếu điều đó báo cáo lỗi, bạn sẽ phải tự mình phân loại các phụ thuộc bằng cách làm theo ví dụ: Làm thế nào để tôi giải quyết các phụ thuộc chưa được đáp ứng sau khi thêm PPA? .
sudo dpkg -r PACKAGE_NAME
Ví dụ nếu gói được gọi askubuntuthì bạn nên làm sudo dpkg -r askubuntu.
sudo dpkg-reconfigure PACKAGE_NAME
Điều này rất hữu ích khi bạn cần cấu hình lại một cái gì đó liên quan đến gói đã nói. Một số ví dụ hữu ích đó là keyboard-configurationkhi bạn muốn bật Ctrl+ Alt+ Backspaceđể đặt lại máy chủ X, vì vậy bạn sẽ làm như sau:
sudo dpkg-reconfigure keyboard-configuration
Một điều tuyệt vời nữa là khi bạn cần đặt Timezone cho máy chủ hoặc máy tính thử nghiệm cục bộ của mình, vì vậy bạn sử dụng tzdatagói:
sudo dpkg-reconfigure tzdata
sudo apt-get install texlive-latex-base, nó đã thất bại trong nhiều tháng với "Hash Sum không khớp". Tôi có thể tải xuống tệp .deb từ http://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb. Nếu tôi cài đặt nó bằng dpkg, thì sau đó nó sẽ được nhận ra (và cập nhật) bởi apt-get.
aptitudehoặc apt-get(hoặc đơn giản apt) dễ dàng hơn và tốt hơn , tại sao không có ví dụ cho các lệnh này được đưa ra ở đây?
Các gói Debian (.deb) là các gói được sử dụng trong Ubuntu. Bạn có thể cài đặt bất kỳ gói .deb nào trong hệ thống của bạn. Các tệp .deb thường có thể được cài đặt từ trình quản lý tệp của bạn (Nautilus) chỉ bằng cách nhấp vào chúng, vì các liên kết tệp với trình cài đặt mặc định đã được đặt trong Ubuntu. Các hướng dẫn này dành cho những người muốn cài đặt các gói từ thiết bị đầu cuối dòng lệnh (Terminal).
Để cài đặt gói Debian ( Ubuntu ) đã tải xuống (.deb): Mở Terminal và gõ
sudo dpkg -i packagename.deb
Để xóa gói Debian (Ubuntu) (.deb):
sudo dpkg -r packagename
Để cấu hình lại / Sửa chữa gói Debian (Ubuntu) đã cài đặt (.deb):
sudo dpkg-reconfigure packagename
Yêu thích của tôi là GDebi, có sẵn từ cả thiết bị đầu cuối / vỏ hoặc đồ họa.

Tôi thường liên kết .debcác tệp với GDebi vì nó nhanh và hiệu quả - đặc biệt là so với Trung tâm phần mềm Ubuntu. Một trong những tính năng chính của GDebi là nó giải quyết các phụ thuộc và cài đặt chúng.
Đối với dòng lệnh chạy sudo gdebi <package.deb>để cài đặt một tệp gỡ lỗi.
Bạn đang tìm kiếm tất cả các lệnh dpkg ? nhấp vào liên kết này để có một đọc.
15 lệnh dpkg để quản lý máy chủ Linux dựa trên Debian
Có hai hành động, chúng là dpkg-queryvà dpkg-deb.
# sudo dpkg -i {package_name}
# sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb
# sudo dpkg -r {package_name}
# sudo dpkg -r vlc
# sudo dpkg -P {package_name}
# sudo dpkg -P vlc
Bạn có thể chuyển lệnh sang less(máy nhắn tin) để bạn có thể dễ dàng cuộn nội dung hơn:
# dpkg -l | less
# dpkg -l {package_name}
# dpkg -l vlc
# dpkg -l | vlc
Và điều này sẽ hiển thị vị trí nơi gói sẽ được cài đặt. Ở đây -S(vốn S) để tìm kiếm xem gói đã được cài đặt hay chưa.
# sudo dpkg -S {package_name}
# sudo dpkg -S skype
Đây -Rlà đệ quy. (Xử lý đệ quy tất cả các tệp thông thường khớp với mẫu *.debđược tìm thấy tại các thư mục được chỉ định và tất cả các thư mục con của nó).
# sudo dpkg -R --install {package_location}
# sudo dpkg -R --install /home/sysadmin/soft
Ở đây -p(chữ thường p) sẽ hiển thị thông tin gói:
# dpkg -p {package_name}
# dpkg -p apache2
Sử dụng -c(chữ thường c) để hiển thị nội dung:
# sudo dpkg -c {package_name}
# sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb
*.debtập tin góiSử dụng -x(chữ thường x) để giải nén:
# dpkg -x {package_name} {location_were_to_extract}
# dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
Sử dụng -X(chữ hoa X) để hiển thị nội dung với trích xuất.
# dpkg -X {package_name} {location_were_to_extract}
# dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
Ở đây -Ilà viết tắt của thông tin:
# dpkg -I {package_name}
# dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb
dpkg-reconfigurecấu hình lại các gói sau khi chúng đã được cài đặt. Truyền cho nó tên (các) gói hoặc gói để cấu hình lại. Nó sẽ hỏi các câu hỏi cấu hình, giống như khi gói được cài đặt lần đầu tiên.
# dpkg-reconfigure postfix
Điều này sẽ cấu hình lại postfixgiống như khi bạn cài đặt lần đầu tiên.
Cần biết thêm về dpkgcác lệnh? Hãy xem trang hướng dẫn:
# man dpkg
# dpkg -l | vlc " - điều này sẽ chỉ dẫn một danh sách các gói đến vlc, với kết quả không thể đoán trước nếu được cài đặt; và không tốt hơn là chỉ gõvlc
Mặc dù dpkg -ithực sự cài đặt gói, nó không thực hiện bất kỳ độ phân giải phụ thuộc tự động nào, trong khi đó, có hai lựa chọn thay thế khác, sử dụng gdebi hoặc công cụ apt-get. Để sử dụng sau chỉ cần sử dụng:
sudo apt-get install /path/to/package.deb
Ngay cả khi bạn đang ở trong thư mục với gói bạn cần đưa ra một đường dẫn sử dụng ./khi bắt đầu:
sudo apt-get install ./package.deb
aptsẽ ngăn bạn phá vỡ hệ thống của bạn nếu bạn không có sự phụ thuộc chính xác.
Một mẹo hữu ích khi cài đặt một chương trình như Libreoffice có nhiều tệp .deb trong một thư mục là sử dụng.
sudo dpkg -i *.deb
sudo apt remove example, sudo apt autoremoveVà sudo dpkg -r *.debkhông hoạt động.
gdebigiải pháp dòng lệnhĐây là cách tốt nhất để cài đặt tệp .deb trên Ubuntu trên dòng lệnh:
sudo gdebi skype.deb
Nếu bạn chưa gdebicài đặt, hãy cài đặt nó bằng sudo apt install gdebi-core.
gdebisẽ tìm kiếm tất cả các phụ thuộc của .debtệp và sẽ cài đặt chúng trước khi thử cài đặt .debtệp. Tôi thấy điều này thích hơn nhiều sudo dpkg -i skype.deb && sudo apt install -f. Điều thứ hai là quá háo hức để loại bỏ sự phụ thuộc trong các tình huống nhất định. Chẳng hạn, khi tôi cố cài đặt Skype, nó đã cố xóa các gói 96 (!), Bao gồm các gói như compizvà unity! gdebiđưa ra một thông báo lỗi rõ ràng hơn nhiều:
$ sudo gdebi skype.deb
Cannot install 'libqtgui:i386'
(Nhân tiện, đây là giải pháp cho vấn đề cụ thể đó.)
gdebicó thể được sử dụng từ dòng lệnh
dpkg -i skype.deb
Tạo trình cài đặt tập lệnh của riêng bạn debInstallernhư sau:
#!/bin/bash
dpkg -i "$@"
apt-get --yes --fix-broken install
Làm cho tập lệnh thực thi với
chmod +x debInstaller
Sau đó di chuyển nó đến một số thư mục trong PATH của bạn hoặc thêm thư mục hiện tại vào PATH của bạn.
Tôi sẽ chuyển nó sang / usr / bin
sudo cp debInstaller /usr/bin
Bây giờ bạn có thể cài đặt bất kỳ .debgói nào bằng lệnh:
sudo debInstaller some-package.deb
Giá trị gia tăng của phương pháp này là giải quyết vấn đề phụ thuộc, vì chủ yếu là bạn sẽ phải đối mặt với một số vấn đề khi bạn cài đặt một .deb với dpkg -ido lỗi phụ thuộc, vì vậy bạn phải sử dụng apt-get install -fđể giải quyết nó, kịch bản này sẽ làm công việc cho bạn, nhưng Ở đây tôi đã sử dụng apt-get --yes --fix-broken installđể tự động giải quyết các lỗi này mà không cần sự can thiệp của người dùng.
Có nhiều công cụ để cài đặt gói deb, cá nhân tôi sử dụng trình cài đặt gói tích hợp dpkg
Nếu bạn đã đăng nhập bằng root, hãy thay đổi thư mục thành vị trí của gói deb
dpkg -i package_name.deb
nếu bạn không đăng nhập bằng root
sudo dpkg -i package_name.deb
Để đảm bảo gói được cài đặt chính xác và không có bất kỳ phụ thuộc bị hỏng
sudo apt-get check
Nếu có bất kỳ phụ thuộc bị hỏng
sudo apt-get -f install