Làm cách nào để nâng cấp tất cả các gói đã cài đặt trong LEDE?


26

Tôi chỉ tự hỏi những gì tương đương với

apt-get upgrade
apt upgrade
yum update

với OpenWRT hay LEDE?

Câu trả lời:


54

Không có lệnh hoặc đối số duy nhất , nhưng bạn có thể dễ dàng thực hiện nó. Để nâng cấp tất cả các gói, LEDE khuyến nghị ,

opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade 

Có nhiều cách khác kém hiệu quả hơn khi mọi người sử dụng AWK và như vậy.

Một cảnh báo quan trọng thường xảy ra với việc sử dụng rộng rãi LEDE / OpenWRTopkg

Vì phần mềm LEDE lưu trữ hệ thống cơ sở trong một phân vùng chỉ đọc được nén, mọi cập nhật cho các gói hệ thống cơ sở sẽ được ghi vào phân vùng đọc-ghi và do đó sử dụng nhiều dung lượng hơn nếu nó chỉ ghi đè lên phiên bản cũ hơn trong cơ sở nén phân vùng hệ thống. Bạn nên kiểm tra dung lượng trống trong bộ nhớ flash bên trong và các yêu cầu về không gian để cập nhật các gói hệ thống cơ sở.


1
một cách khác để làm điều này là với một vỏ cho vòng lặp. ví dụ> cho một danh sách `opkg có thể nâng cấp | cắt -f 1 -d '' `; nâng cấp opkg "$ a"; xong
Scott

5

Tôi đã tạo ra một kịch bản nhỏ được gọi opkg-upgradeđể đối phó với việc nâng cấp theo cách tốt hơn.

Nó có sẵn trên github:
https://github.com/tavinus/opkg-upTHER

Nó sẽ giúp nâng cấp dễ dàng như:
opkg-upgrade

Hướng dẫn cài đặt Curl / Wget tại đây!


Như đã đề cập trên tệp readme.md , có thể có vấn đề với việc nâng cấp mặc dù.

Vấn đề có thể xảy ra:

  • Vấn đề squashfs (ROM là chỉ đọc, do đó, việc nâng cấp cần thêm không gian trên flash hoặc extroot) .
  • Vấn đề dev / trunk (beta) (phiên bản beta có thể được xử lý mềm khi nâng cấp) .
  • Vấn đề không gian (cần đủ không gian trống cho việc tải xuống và cài đặt) .

Tôi cũng nên đề cập rằng nâng cấp từ CRON là một ý tưởng rất tồi!
Tôi có thể nói rằng ngay cả trên các bản nâng cấp Linux distro thông thường cũng là một ý kiến ​​hay.
Có rất nhiều điều có thể sai khi nâng cấp và vì OpenWrt thường chạy trên các thiết bị có thể bị brick, nên việc thực hiện nó không có ý nghĩa thậm chí còn ít hơn.

Nói tóm lại, các trường hợp duy nhất mà tôi sẽ nâng cấp EVER là:

  • Nếu sử dụng extroot trên một thanh USB lớn
  • Nếu Flash nội bộ là 32Mb trở lên
  • Nếu KHÔNG sử dụng dev / trunk (beta)
  • Nếu chạy trên ext4 FS với nhiều không gian (x86 kim loại, VM, và tất cả)

Tuy nhiên, tôi sẽ không bao giờ nâng cấp từ cron.
Tôi cũng sẽ suy nghĩ 20 lần trước khi nâng cấp Flash nội bộ (ngay cả những cái lớn), vì điều đó sẽ làm giảm tốc độ nhanh hơn.

Kịch bản của tôi có tùy chọn gửi báo cáo email với các bản cập nhật có sẵn.
Vì vậy, tôi khuyên bạn nên thêm công cụ báo cáo vào cron và sau đó mọi người có thể nâng cấp thủ công sau khi nhận được e-mail. Điều này làm cho mọi thứ an toàn hơn trong khi cũng đưa ra tùy chọn để sửa đổi các bản nâng cấp.

Chúc mừng!
Gus

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.