Ubuntu Serverのミラーを地域からメインに変更するにはどうすればよいですか?


76

Lucid Server(10.04)をセットアップしていますが、ミラーを米国(または他の国)からメインUbuntuミラーに変更したいと思います。

たとえば、sources.listの最初の2つのエントリは次のとおりです。

deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted

デスクトップ環境では、次のようにメインミラーを選択します。

ソフトウェアソース

しかし、グラフィカル環境がインストールされていないので、どのようにターミナルからそれを行いますか!

回答:


95

sources.listお気に入りのテキストエディターを使用してファイルを開きます。

sudo nano /etc/apt/sources.list

テキストhttp://us.archive.ubuntu.com/ubuntuを見つけて、に置き換えますhttp://archive.ubuntu.com/ubuntu


私はこれでうまくいくと思っていましたが、あなたが提案したようにやったのですが、リポジトリに404エラーが出ました。もう一度確認しましたが、問題ないようです。ネットワーク接続に問題があるようです。答えてくれてありがとう。
ソリンミハイオプレア

GUIのような安全な方法があります。つまり、手動で置き換えたり、タイプミスなどを避けたりすることはありません。
ログオフ14年


1
apt-get updateAPTがそのパッケージを更新できるように、その後も実行します。Package X has no installation candidateAPTがまだパッケージの新しいリポジトリをスキャンしていないため、最初にメッセージが表示されました。
NSデュトワ

スクリプトでそれを使用するには、次sedのコマンドを使用することができますsed -E -i 's#http://[^\s]*archive\.ubuntu\.com/ubuntu#http://be.archive.ubuntu.com/ubuntu#g' /etc/apt/sources.list'置き換えるの/etc/apt/sources.list NLあなたの国コードとを。
マンディS

55

このコマンドはトリックを実行する必要があります。

sudo sed -i 's|http://us.|http://|g' /etc/apt/sources.list

「私たち」を削除します。各アドレスにプレフィックスを付けて、メインサーバーのアドレスに変換します。

もちろん、「us」を、使用している他のミラーに置き換えてください。

コマンドの詳細説明:

sed-テキストをフィルタリングおよび変換するためのストリームエディター。

  • -i引数は場所にファイルを編集することです。

  • その後の|正規表現|交換| G 'sの検索を指定して、コマンドを交換してください。

  • 最後のgは、「グローバル」検索の引数です。

  • 結論:http:// usのすべての出現を置き換えますファイル/etc/apt/sources.listhttp://を使用します。


1
コマンドをもう少し説明してみてください、それは何をしますか?
エヴァンドロシルバ14

1
:ミラーを解除するために私たちから切り替えるには、次の操作を行いますsudo sed -i 's/http:\/\/us./http:\/\/de./g' /etc/apt/sources.list'
クリスチャン・

ここに投稿された方法は正しいですが、上部に投稿されたコードは間違っています[code] "sudo sed -i 's / http:\ / \ / us./http:\/\//g' / etc / apt / sources.list "[/ code]下部に投稿されているsed cmdは意味をなします。
サガーナイア

手動でテキストを編集する必要のないワンライナーに感謝します。sudo sed -i 's|http://us.|http://ch.|g' /etc/apt/sources.list(私はスイスにいます)を使用して、数kB / sのダウンロード速度から10 MB / sに変更しました。私はosboxesイメージを使っていましたが、明らかにその点でかなり間違って設定されています
...-masterxilo

4

sedの使用法を修正して、国コード「us」をsource.listから「au」などの別のものに削除/変更すると、コマンドは次のようになります。

sed -i 's/http:\/\/us./http:\/\/au./g' /etc/apt/sources.list

または、何かに変更する代わりに「us」のみを削除するには、以下のコードを使用します。

sed -i 's/http:\/\/in./http:\/\//g' /etc/apt/sources.list

3

vim

mv /etc/apt/sources.list{,.bak}   # you may want to make a backup
vim /etc/apt/source.list

入力して:(を保持する必要がありますShift)コマンドインモードに入り、次に入力します:

%s/http:\/\/us\./http:\/\//g

ヒット Enter

Escコマンドラインモードを終了し、通常モードに入ったことを確認するためにヒットします。これで、キーボード移動キー(必要な場合)を使用してファイルをスクロールして、ミラーのすべての出現が編集されたことを確認できます。

最後に、コマンドラインモード(:)を入力wq!して保存して終了し、Enter で保存して終了しvimます。


ここで検索正規表現%s / http:\ / \ / us \ ./ http:\ / \ // g; 「。」(ドット)は区切り文字ではないため、バックスラッシュでエスケープする必要はありません。
サガーナイア

@SAGARBHOOSHAN .自体は「改行を除く任意の文字」です。バックスラッシュは、リテラルドットとのみ一致するようにすることです。
チャイT.レックス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.