Điểm:0

Long-overdue "yum update" has multiple "requires" errors

lá cờ cd

After much neglect of my VPS (currently running CentOS 7.4.1708), I tried to run yum update, but after a long list of "Processing Dependency..." lines, the end of the output looked like this:

...
---> Package nginx-mod-mail.x86_64 1:1.20.1-9.el7 will be an update
--> Processing Dependency: nginx(abi) = 1.20.1 for package: 1:nginx-mod-mail-1.20.1-9.el7.x86_64
---> Package nginx-mod-stream.x86_64 1:1.20.1-9.el7 will be an update
--> Processing Dependency: nginx(abi) = 1.20.1 for package: 1:nginx-mod-stream-1.20.1-9.el7.x86_64
--> Finished Dependency Resolution
Error: Package: libzip5-1.8.0-2.el7.remi.x86_64 (remi)
           Requires: libzstd(x86-64) >= 1.3.6
           Installing: libzstd-1.3.4-1.el7.x86_64 (MariaDB)
               libzstd(x86-64) = 1.3.4-1.el7
Error: Package: 1:nginx-1.10.2-1.el7.x86_64 (@epel)
           Requires: nginx-all-modules = 1:1.10.2-1.el7
           Removing: 1:nginx-all-modules-1.10.2-1.el7.noarch (@epel)
               nginx-all-modules = 1:1.10.2-1.el7
           Updated By: 1:nginx-all-modules-1.20.1-9.el7.noarch (epel)
               nginx-all-modules = 1:1.20.1-9.el7
Error: Package: 1:nginx-mod-stream-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: libzip5-1.8.0-2.el7.remi.x86_64 (remi)
           Requires: libzstd(x86-64) >= 1.3.6
           Available: libzstd-1.3.4-1.el7.x86_64 (MariaDB)
               libzstd(x86-64) = 1.3.4-1.el7
Error: Package: 1:nginx-mod-http-image-filter-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-mod-mail-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-1.10.2-1.el7.x86_64 (@epel)
           Requires: nginx-filesystem = 1:1.10.2-1.el7
           Removing: 1:nginx-filesystem-1.10.2-1.el7.noarch (@epel)
               nginx-filesystem = 1:1.10.2-1.el7
           Updated By: 1:nginx-filesystem-1.20.1-9.el7.noarch (epel)
               nginx-filesystem = 1:1.20.1-9.el7
Error: Package: 1:nginx-mod-http-perl-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
Error: Package: 1:nginx-mod-http-xslt-filter-1.20.1-9.el7.x86_64 (epel)
           Requires: nginx(abi) = 1.20.1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Web searches produced questions about specific errors about specific packages, but does that mean I have to figure out what to do about each of these one by one? Or is it safe to use --skip-broken like it says is an option?

I also have Webmin, and it says that 391 packages have updates, 35 of which are security updates. It is offering to update them, but can I trust it to not mess things up? I trust yum, but...

EDIT: I decided to go ahead and run yum update --skip-broken and let it do what it could. After the "Installed", "Dependency Installed", and "Updated" stages, this was the end of the output:

Skipped (dependency problems):
  gd.x86_64 0:2.0.35-27.el7_9                 libzip5.x86_64 0:1.8.0-2.el7.remi                  libzstd.x86_64 0:1.3.4-1.el7
  nginx-all-modules.noarch 1:1.20.1-9.el7     nginx-filesystem.noarch 1:1.20.1-9.el7             nginx-mod-http-image-filter.x86_64 1:1.20.1-9.el7
  nginx-mod-http-perl.x86_64 1:1.20.1-9.el7   nginx-mod-http-xslt-filter.x86_64 1:1.20.1-9.el7   nginx-mod-mail.x86_64 1:1.20.1-9.el7
  nginx-mod-stream.x86_64 1:1.20.1-9.el7      php-pecl-zip.x86_64 0:1.20.0-1.el7.remi.7.1

Replaced:
  grub2.x86_64 1:2.02-0.64.el7.centos             grub2-tools.x86_64 1:2.02-0.64.el7.centos       grub2-tools-efi.x86_64 1:2.02-0.64.el7.centos
  iwl7265-firmware.noarch 0:22.0.7.0-56.el7       python-parsedatetime.noarch 0:1.5-3.el7         python2-requests.noarch 0:2.6.0-0.el7

Complete!

And now the view in Webmin looks like this - 10 packages (and the 7 related to nginx are considered "security updates"):

enter image description here

Remi Collet avatar
lá cờ jp
thiếu đầu ra yum đầy đủ (đặc biệt đối với repo đã bật và plugin đã bật), BTW libzstd nên được lấy từ EPEL có 1.5.2 (vì vậy đã xảy ra sự cố với repo MariaDB)
lá cờ cd
Xin lỗi, tôi không biết làm cách nào để cung cấp cho bạn đầu ra yum đầy đủ - cửa sổ SSH không chứa nhiều như vậy. Tôi cho rằng tôi có thể đã hướng nó đến một tệp, nhưng sau đó tôi sẽ không thể nói đồng ý khi nó hỏi liệu nó có thể tiến hành cập nhật hay không. Dù sao thì, bây giờ tôi đã chạy nó với `--skip-broken`, vì vậy đó là nước chảy qua cầu (xem CHỈNH SỬA). Đối với libzstd và EPEL, tôi chưa bao giờ nghe nói về một trong số chúng (các lượt truy cập của Google dường như nghĩ rằng EPEL là một thứ của Fedora, không phải CentOS), vì vậy tôi không biết làm thế nào để làm những gì bạn đề xuất.
lá cờ cd
Hmm, tôi thấy trong chế độ xem Webmin rằng các gói chưa được cập nhật liên quan đến nginx nói rằng nguồn của chúng là "Epel", vì vậy tôi đoán là tôi có gói đó - tôi không nhớ đã cài đặt nó, nhưng đã lâu rồi vì tôi đã thiết lập VPS này và có lẽ tôi không đủ năng lực để tự mình duy trì một máy chủ - điều đó chỉ là không cần thiết.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.