apt-get
ターミナルを使用して何かを行おうとすると、apt-get
が停止し0% [Working]
ます。
ping -c 3 google.com
何ですか?
apt-get
ターミナルを使用して何かを行おうとすると、apt-get
が停止し0% [Working]
ます。
ping -c 3 google.com
何ですか?
回答:
キャッシュを確認し、キャッシュディレクトリを消去することができます。
順番に(各ステップはより深いので、解決策が見つかったら停止します):
sudo apt-get clean
(更新)最近のバージョンでは、取得したパッケージファイルのローカルリポジトリがクリアされます。ほとんどの場合、それで十分です。以前のバージョンではそうではありませんでした(そうでした)。
ロックファイルを除くすべてを/ var / cache / apt / archives /および/ var / cache / apt / archives / partial /から削除します。
内部を見る/var/lib/apt/lists/partial/
ことは空でなければなりません。
そうでない場合は、sudo rm /var/lib/apt/lists/partial/*
最終的に空にすることを決定できますsudo rm -f /var/lib/apt/lists/partial/*
sudo apt-get check
パッケージキャッシュを更新し、破損した依存関係をチェックします。
リストの通常の(巨大ではない)リポジトリの数に縮小します/etc/apt/sources.list
。
それらが多すぎると、システムはすべての依存関係ツリーを構築しようとしてハングする可能性があります。
あなたはからリポジトリの最小セットを作成することができますUbuntuのソースリストジェネレータサイトとバックアップその後/etc/apt/sources.list
(例えば付きsudo cp -i /etc/apt/sources.list /etc/apt/sources.list.000
)あなたはそれを貼り付けることができます代わりに、あなたの現在のリストで。
apt-transport-https
インストールされていません(コメントを参照)。sudo apt-get update
、失敗した場合/var/lib/apt/lists
ディレクトリのバックアップsudo cp -r -p -i /var/lib/apt/lists ${HOME}/temp_apt_lists
後sudo rm -R /var/lib/apt/lists/*
sudo apt-get update
もう一度走る次のディレクトリのいくつかを手できれいにする必要がある可能性があります(内部のファイルを削除した後でのみ、いつでもそれらをバックアップできます)。
PS>成功した場合は、不要になったバックアップコピーを削除することを忘れないでくださいsources.list.000
。
関連する回答には、これと同様の追加のヒントがあります。
更新
パッケージsquid-deb-proxy-client はすべての変更をクリーンアップしないため、古いバグがありました。
行の削除:
Acquire :: http :: ProxyAutoDetect "/ usr / share / squid-deb-proxy-client / apt-avahi-discover";
から:
/etc/apt/apt.conf.d/30autoproxy
可能であれば、より徹底的にパッケージを削除します。
http://extras.ubuntu.com/ubuntu
、あなたの内側に...ブラウザ内(またはより良いライン /etc/apt/sources.list
sources.list
を使用していましたが、インストールされていませんでした。https
http
apt-transport-https
自分のネットワークから、さらに重要なこととしてUbuntuネットワークにpingできることを確認してください。
ping us.archive.ubuntu.com
OR
ping security.ubuntu.com
次のような出力が得られるはずです。
PING security.ubuntu.com (91.189.88.161) 56(84) bytes of data.
64 bytes from keeton.canonical.com (91.189.88.161): icmp_seq=1 ttl=52 time=127 ms
64 bytes from keeton.canonical.com (91.189.88.161): icmp_seq=2 ttl=52 time=128 ms
--- security.ubuntu.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 127.325/127.952/128.579/0.627 ms
最初にそれを更新しようとします
aptitude update
そして、apt-getを実行します
または、ミラーを自分の場所に最も近いものに変更する必要があります。これを見てください- 近くのミラーを使用したり、より高速なミラーを選択するにはどうすればよいですか?
sudo aptitude update
今、私は再び立ち往生しています0% [Working]
これは、アクセスをブロックするプロキシの背後にあることによっても発生する可能性があります。时々NODATAエラーが発生しました0% [Working...]
。
場所を変更した場合は、ダウンロードサーバーも変更します。
sudo software-properties-gtk
その他をクリックして、最適なサーバーを選択します。
その後、他のすべてのソフトウェアリポジトリを選択して削除します。
最後に:
sudo apt-get update
sudo apt-get upgrade
私がどこでもインターネットで見つけられなかった答えは、実際に私が数時間前に実行したコマンドに基づいて見つけました。そのようなコマンドの例は次のとおりです。
echo "deb http://dl.bintray.com/tproenca/pmsarm7 jessie main" | sudo tee /etc/apt/sources.list.d/pms.list
その後、ファイルが/etc/apt/sources.list.d/に追加されます。このディレクトリには、ソースも追加できます。私の場合、無効なURLを持つ独自のリストを含んでいたのはteamviewerでした。したがって、更新が失敗します。これらは私が実行したコマンドです。
注: teamviewer.listが問題を引き起こしていましたが、このディレクトリ内では何でもかまいません。それを試して、バックアップを作成してください!)
cd /etc/apt/
cp sources.list.d/* sources.list.d.backup/
rm sources.list.d/teamviewer.list
apt-get clean
apt-get check
apt-get update
これで誰かが私を救うことができた時間を救うことを願っています!
この問題は、読み取り専用ファイルシステムがあることによっても発生する可能性があります。
次のコマンドを使用してこれを確認できます。
mount | grep "on / "
出力にro
マウントフラグの1つとして含まれている場合、ルートファイルシステムは読み取り専用モードです。apt-get update
続行する前に、ファイルシステムを読み書き可能に再マウントする必要があります。
ファイルシステムを再マウントする方法に関するリソース:
apt-transport-httpsをインストールすると、新しいDebian 9で役立ちました。
sudo apt-get install apt-transport-https