内部的には、Debian Jessie の修正版を実行する Netgear ReadyNAS システムがあります。私は主にそれをサーバーとして使用し、そこからいくつかのDockerコンテナを実行します。 NASを完全に損なうことなく、Jessieにアップグレードしたり、他のOSをインストールしたりすることはできません(何も欠けていない限り)。 rootでSSHを実行してNetjear保証を無効にしましたが、問題は発生しません。そうですか?
apt upgrade
うーん…数週間前にランタイムミスを犯し、停電後にNASがSSHに応答しないことを発見しました。インターネット検索を少しした後にリモートでログインできるように、Netjearの内部テクニカルサポートモードで再起動することに成功し、Netjearのサービスを開始しようとしたときにコンピュータが実行を停止したことがわかりました。
Dec 24 01:52:38 Nile-Nellie systemd[1]: Starting ReadyNAS System Daemon...
Dec 24 01:52:38 Nile-Nellie readynasd[3647]: /usr/sbin/readynasd: error while loading shared libraries: libcom_err.so.2:
cannot open shared object file: No such file or directory
Dec 24 01:52:38 Nile-Nellie systemd[1]: readynasd.service: Main process exited, code=exited, status=127/n/a
Dec 24 01:52:38 Nile-Nellie systemd[1]: Failed to start ReadyNAS System Daemon.
Dec 24 01:52:38 Nile-Nellie systemd[1]: readynasd.service: Unit entered failed state.
Dec 24 01:52:38 Nile-Nellie systemd[1]: readynasd.service: Failed with result 'exit-code'.
もちろん、これはすべて排他的なものです。しかし、libcom_err.so.2
アクセスできないことは残念です。だから私はパッケージを再インストールしようとしましたが、aptを実行すると次のような結果が出ることがわかりました。
# apt install libcomerr2
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
libcom-err2 : Breaks: libcomerr2 (< 1.43.9-1~)
libpython2.7-stdlib : Depends: libpython2.7-minimal (= 2.7.9-2+deb8u5) but it is not going to be installed
libvorbisenc2 : Depends: libvorbis0a (= 1.3.4-2+deb8u3) but 1.3.4-2+deb8u1 is to be installed
mysql-community-client : Depends: libaio1 (>= 0.3.93) but it is not going to be installed
mysql-community-server : Depends: libaio1 (>= 0.3.93) but it is not going to be installed
python : Depends: python2.7 (>= 2.7.9-1~) but it is not going to be installed
python-mako : Depends: python2.7:any
python-minimal : Depends: python2.7-minimal (>= 2.7.9-1~) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
まあ、簡単です。以下を実行してくださいapt-get -f install
。
# apt -f install
Reading package lists... Done
Building dependency tree
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
libaio1 libpython2.7-minimal libvorbis0a libvorbisfile3 python2.7 python2.7-minimal
Suggested packages:
python2.7-doc binfmt-support
The following NEW packages will be installed:
libaio1 libpython2.7-minimal python2.7 python2.7-minimal
The following packages will be upgraded:
libvorbis0a libvorbisfile3
2 upgraded, 4 newly installed, 0 to remove and 44 not upgraded.
1 not fully installed or removed.
Need to get 0 B/2162 kB of archives.
After this operation, 7130 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
debconf: delaying package configuration, since apt-utils is not installed
E: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such file or directory)
Setting up libc-bin (2.19-18+deb8u10.netgear1) ...
Processing triggers for libc-bin (2.19-18+deb8u10.netgear1) ...
dpkg: cycle found while processing triggers:
chain of packages whose triggers are or may be responsible:
libc-bin -> libc-bin
packages' pending triggers which are or may be unresolvable:
libc-bin: ldconfig
dpkg: error processing package libc-bin (--configure):
triggers looping, abandoned
Errors were encountered while processing:
libc-bin
E: Sub-process /usr/bin/dpkg returned an error code (1)
...設定を試していますかlibc-bin
?興味深い。ランニングはdpkg --audit
私に以下を与えます:
# dpkg --audit
The following packages are only half configured, probably due to problems
configuring them the first time. The configuration should be retried using
dpkg --configure <package> or the configure menu option in dselect:
libc-bin GNU C Library: Binaries
以下は、システムのすべてのパッケージにデータベースのmd5sums制御ファイルがないため、すべて再インストールする必要があることを示すメッセージです。まあ、少なくとも実行するコマンドが何であるかを教えてください。
# dpkg --configure libc-bin
Setting up libc-bin (2.19-18+deb8u10.netgear1) ...
Processing triggers for libc-bin (2.19-18+deb8u10.netgear1) ...
dpkg: cycle found while processing triggers:
chain of packages whose triggers are or may be responsible:
libc-bin -> libc-bin
packages' pending triggers which are or may be unresolvable:
libc-bin: ldconfig
dpkg: error processing package libc-bin (--configure):
triggers looping, abandoned
Errors were encountered while processing:
libc-bin
… …まあ。だから私はlibc-binに依存しているので、libc-binを設定することはできません。これで問題が発生し、詰まっています。助けが必要ですか?
私の問題はこれに似ていますしかし、彼の質問では、システムは削除を続けたいと思いましたlibc-bin
。私の場合、何らかの理由でlibc-binを設定したくなかったので、他のパッケージを変更することはできませんでした。
Netgear OSのみを復元するNASで工場出荷時の初期化を実行できますが、問題を解決できる場合はこの方法をお勧めします。
追加のデバイス情報:
# cat /etc/apt/sources.list
deb https://apt.readynas.com/packages/readynasos 6.10.4 updates apps main
deb http://mirrors.kernel.org/debian jessie main
deb http://security.debian.org/ jessie/updates main
# apt install libc-bin
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc-bin is already the newest version (2.19-18+deb8u10.netgear1).
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
libpython2.7-stdlib : Depends: libpython2.7-minimal (= 2.7.9-2+deb8u5) but it is not going to be installed
libvorbisenc2 : Depends: libvorbis0a (= 1.3.4-2+deb8u3) but 1.3.4-2+deb8u1 is to be installed
mysql-community-client : Depends: libaio1 (>= 0.3.93) but it is not going to be installed
mysql-community-server : Depends: libaio1 (>= 0.3.93) but it is not going to be installed
python : Depends: python2.7 (>= 2.7.9-1~) but it is not going to be installed
python-mako : Depends: python2.7:any
python-minimal : Depends: python2.7-minimal (>= 2.7.9-1~) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
# apt download libc-bin
/usr/lib/apt/methods/https: error while loading shared libraries: libcom_err.so.2: cannot open shared object file: No such file or directory
E: Method https has died unexpectedly!
E: Sub-process https returned an error code (127)
E: Method /usr/lib/apt/methods/https did not start correctly
# cat /etc/apt/sources.list.d/*
deb https://download.docker.com/linux/debian jessie stable
### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out entries below, but any other modifications may be lost.
# Use command 'dpkg-reconfigure mysql-apt-config' as root for modifications.
deb http://repo.mysql.com/apt/debian/ jessie mysql-apt-config
deb http://repo.mysql.com/apt/debian/ jessie mysql-5.6
deb http://repo.mysql.com/apt/debian/ jessie mysql-tools
#deb http://repo.mysql.com/apt/debian/ jessie mysql-tools-preview
deb-src http://repo.mysql.com/apt/debian/ jessie mysql-5.6
# apt-cache policy
Package files:
100 /var/lib/dpkg/status
release a=now
990 http://repo.mysql.com/apt/debian jessie/mysql-tools amd64 Packages
release o=MySQL,n=jessie,l=MySQL,c=mysql-tools,b=amd64
origin repo.mysql.com
990 http://repo.mysql.com/apt/debian jessie/mysql-5.6 amd64 Packages
release o=MySQL,n=jessie,l=MySQL,c=mysql-5.6,b=amd64
origin repo.mysql.com
990 http://repo.mysql.com/apt/debian jessie/mysql-apt-config amd64 Packages
release o=MySQL,n=jessie,l=MySQL,c=mysql-apt-config,b=amd64
origin repo.mysql.com
990 https://download.docker.com/linux/debian jessie/stable amd64 Packages
release o=Docker,a=jessie,l=Docker CE,c=stable,b=amd64
origin download.docker.com
990 http://security.debian.org jessie/updates/main amd64 Packages
release v=8,o=Debian,a=oldoldstable,n=jessie,l=Debian-Security,c=main,b=amd64
origin security.debian.org
990 http://mirrors.kernel.org/debian jessie/main amd64 Packages
release v=8.11,o=Debian,a=oldoldstable,n=jessie,l=Debian,c=main,b=amd64
origin mirrors.kernel.org
900 https://apt.readynas.com/packages/readynasos 6.10.4/main amd64 Packages
release a=6.10.4,c=main,b=amd64
origin apt.readynas.com
900 https://apt.readynas.com/packages/readynasos 6.10.4/apps amd64 Packages
release a=6.10.4,c=apps,b=amd64
origin apt.readynas.com
900 https://apt.readynas.com/packages/readynasos 6.10.4/updates amd64 Packages
release a=6.10.4,c=updates,b=amd64
origin apt.readynas.com
Pinned packages:
dpkg --list libc6
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-========================-=================-=================-=====================================================
ii libc6:amd64 2.19-18+deb8u10.n amd64 GNU C Library: Shared libraries
# find /lib -name libc-\*
/lib/x86_64-linux-gnu/libc-2.19.so
答え1
ああ、問題を発見しました。私は走らなければなりませんdpkg --configure --no-triggers libc-bin
。これにより、libc-binでトリガーを一時的にスキップしてapt -f install
完了できます。
その後もトリガーがlibc-bin
まだ保留中で問題が発生しましたが…実行するとapt install --reinstall libc-bin
問題が解決するようでした。システムが正しく起動しないという問題がまだ発生しますが、少なくともaptを再利用できます。