Một lỗi không thể tìm nạp lỗi xảy ra khi cập nhật apt-get được chạy. Làm thế nào để tôi sửa lỗi này?


42

Trái với ghi chú ở trên, tôi không tìm thấy câu trả lời cho vấn đề của mình.

Tôi đã đọc gần một chục câu hỏi cập nhật apt-get, hầu hết từ Askubfox.com, với lỗi "không thể tìm nạp" và đã thử các giải pháp được trả lời ở đó. Thật không may, không ai làm việc. Tôi mới cài đặt Ubuntu 12.04 trên máy tính xách tay của mình, khởi động kép cùng với Windows 7. Khi tôi dùng thử

sudo apt-get update

trên thiết bị đầu cuối, sau đây tiếp tục xảy ra:

Err http://ph.archive.ubuntu.com precise InRelease
Err http://ph.archive.ubuntu.com precise-updates InRelease                     
Err http://ph.archive.ubuntu.com precise-backports InRelease                   
Err http://ph.archive.ubuntu.com precise Release.gpg                           
  Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err http://ph.archive.ubuntu.com precise-updates Release.gpg            
  Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err http://ph.archive.ubuntu.com precise-backports Release.gpg          
  Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
Err http://extras.ubuntu.com precise InRelease                          
Err http://extras.ubuntu.com precise Release.gpg                        
  Unable to connect to extras.ubuntu.com:http:
Err http://security.ubuntu.com precise-security InRelease
Err http://security.ubuntu.com precise-security Release.gpg
  Unable to connect to security.ubuntu.com:http: [IP: 91.189.92.190 80]
Reading package lists... Done
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise/InRelease  
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise-updates/InRelease  
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise-backports/InRelease  
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/precise-security/InRelease  
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/precise/InRelease  
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise/Release.gpg      Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise-updates/Release.gpg  Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch http://ph.archive.ubuntu.com/ubuntu/dists/precise-backports/Release.gpg  Unable to connect to ph.archive.ubuntu.com:http: [IP: 91.189.92.177 80]
W: Failed to fetch http://extras.ubuntu.com/ubuntu/dists/precise/Release.gpg  Unable to connect to extras.ubuntu.com:http:
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/precise-security/Release.gpg  Unable to connect to security.ubuntu.com:http: [IP: 91.189.92.190 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.

Lưu ý :

Điều này xảy ra ngay sau khi tôi cài đặt Ubuntu 12.04. Tôi rất mới với thế giới Linux / Ubuntu và một người mới khi nói đến những thứ này.

Danh sách Nguồn trong cài đặt Trình quản lý cập nhật (và Trung tâm phần mềm) là ngắn. Nó chỉ chứa 2 dòng có "Canonical" trong đó, 2 dòng có "Độc lập" trong đó và 2 dòng khác. Tôi nghĩ rằng danh sách này là ngắn vì nó là một Ubuntu mới được cài đặt.

Kết nối với internet có vẻ ổn và người bạn của tôi có máy tính xách tay vừa được cài đặt Ubuntu 12.04 cùng thời gian với tôi, dường như không có vấn đề gì với bản cập nhật của anh ta. Chúng tôi chia sẻ cùng một kết nối vì vậy tôi nghĩ rằng các sự cố kết nối internet không thể là nguyên nhân gây ra lỗi.

Giải pháp đã thử :

Từ đây , tôi đã khám phá xung quanh /etc/resolvconf/resolv.conf.dvà thêm vào /etc/resolvconf/resolv.conf.d/headnhư sau:

nameserver 8.8.8.8
nameserver 8.8.4.4

Lỗi vẫn xảy ra.

Từ đâyđây , tôi liên tục thay đổi máy chủ Mirror nào sẽ sử dụng trong cài đặt Nguồn quản lý và phần mềm cập nhật. Một lần nữa, lỗi vẫn xảy ra.

Tôi cũng đã thử chỉnh sửa danh sách nguồn của mình, bỏ chọn các dòng có "độc lập" trên đó (như được đề xuất). Theo đây , tôi đã cố gắng loại bỏ các derb-srcdòng trong danh sách nguồn. Tuy nhiên, vô ích.

Cuối cùng, trang web này đề nghị chạy như sau:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf > /dev/null
or, for a permanent solution,
echo "nameserver 8.8.8.8" | sudo tee /etc/resolvconf/resolv.conf.d/base > /dev/null

Đáng buồn thay, không có gì làm việc cho tôi. Trong tất cả các diễn đàn mà tôi đã từng đến, câu trả lời liên quan đến nameserver 8.8.8.8dường như xuất hiện thường xuyên nhất. Cũng lưu ý rằng tôi thực sự không hiểu các giải pháp, ý nghĩa của chúng hoặc cách chúng được thực hiện. Tôi chỉ đơn giản là đi theo họ.

Đây là đầu ra cho cat /etc/apt/sources.list:

# deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 (20120425)]/ dists/precise/main/binary-i386/

# deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 (20120425)]/ dists/precise/restricted/binary-i386/
# deb cdrom:[Ubuntu 12.04 LTS _Precise Pangolin_ - Release amd64 (20120425)]/ precise main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://archive.ubuntu.com/ubuntu precise main restricted
deb-src http://archive.ubuntu.com/ubuntu precise main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://archive.ubuntu.com/ubuntu precise-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://archive.ubuntu.com/ubuntu precise universe
deb-src http://archive.ubuntu.com/ubuntu precise universe
deb http://archive.ubuntu.com/ubuntu precise-updates universe
deb-src http://archive.ubuntu.com/ubuntu precise-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://archive.ubuntu.com/ubuntu precise multiverse
deb-src http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-updates multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://archive.ubuntu.com/ubuntu precise-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-backports main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu precise-security main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-security main restricted
deb http://archive.ubuntu.com/ubuntu precise-security universe
deb-src http://archive.ubuntu.com/ubuntu precise-security universe
deb http://archive.ubuntu.com/ubuntu precise-security multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-security multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu precise partner
# deb-src http://archive.canonical.com/ubuntu precise partner

## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
deb http://extras.ubuntu.com/ubuntu precise main
deb-src http://extras.ubuntu.com/ubuntu precise main

Và sau đây là cho cat /etc/resolv.conf:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.0.1
search nip.upd.edu.ph

Nó đã được chỉ ra rằng câu trả lời là ở đây nhưng thật không may, nó cũng không hoạt động. Tôi đã thử chọn các máy chủ khác nhau nhưng "máy chủ chọn" không bao giờ có sẵn. Tìm kiếm máy chủ tốt nhất mang lại kết quả "Không có máy chủ phù hợp". Tôi nghĩ rằng các máy chủ nhân bản là tốt và một lần nữa, dường như không có vấn đề với kết nối internet.

Sử dụng ping -c3 archive.ubuntu.comping -c3 8.8.8.8 cả hai đều mang lại 0% packet loss. Ping cho 8.8.8.8 đôi khi mang lại 33% packet lossnhưng chủ yếu là 0%.

nslookup google.comNăng suất gõ

Server:     127.0.0.1
Address:    127.0.0.1#53

Đầu ra của ps aux | grep dns:

nobody    1761  0.0  0.0  33012  1284 ?        S    17:04   0:00 /usr/sbin/dnsmasq
 --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var
/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.0.1 --conf-
file=/var/run/nm-dns-dnsmasq.conf --cache-size=0 --proxy-dnssec
joa       2197  0.0  0.0  13576   928 pts/0    S+   17:10   0:00 grep --color=auto dns

Được rồi, chúng ta hãy bắt đầu từ đầu. Đầu tiên, bạn có thể sao chép đầu ra chính xác của thiết bị đầu cuối khi bạn nhập sudo apt-get updatekhông? Ngoài ra, bạn có thể bao gồm đầu ra của cat /etc/apt/sources.listcat /etc/resolv.conf? Và bạn xác nhận rằng bạn có thể duyệt các trang web trên internet bình thường?
Alaa Ali

@Alaa Đáp lại câu hỏi của bạn, tôi đã chỉnh sửa câu hỏi và đăng mọi thứ bạn cần biết. Và vâng, tôi đã có thể duyệt các trang web trên internet một cách bình thường.
jowabels

Mất gói 0%? Vì vậy, bạn có thể ping và duyệt, nhưng bạn không thể giải quyết trong các bản cập nhật apt-get ... hmm. Có một số loại cài đặt DNS chỉ hoạt động với apt-get? Dù sao, bạn có thể đăng hai dòng đầu tiên từ nslookup google.comvà đăng đầu ra của ps aux | grep dns? Ngoài ra, bạn đang sử dụng một IP tĩnh?
Alaa Ali

@Alaa Tôi đã chỉnh sửa câu hỏi và đăng kết quả đầu ra. Đầu ra cho ps aux | grep dnsđược cho là một dòng duy nhất nhưng tôi đã chỉnh sửa nó để dễ xem hơn. Ban đầu, tôi sẽ nói rằng tôi sử dụng IP động vì tôi chưa trả bất cứ thứ gì cho nó, nhưng tôi sử dụng các kết nối internet của trường đại học nên thật khó để biết IP tôi sử dụng là tĩnh hay động.
jowabels

@Alaa Tôi vừa xác minh rằng tôi sử dụng IP động.
jowabels

Câu trả lời:


27

Tôi đã phải đối mặt với cùng một vấn đề và tìm ra giải pháp đơn giản nhất là thiết lập lại các nguồn /etc/apt/sources.list. Để làm đươc như vậy, hãy tuân theo những bước sau:

  1. Nhận bản phát hành phiên bản Ubuntu của bạn, nhập vào bảng điều khiển:

    lsb_release -r
    
  2. Tới http://repogen.simplylinux.ch/ để tạo ra một mớisources.list

  3. Chọn quốc gia của bạn và phát hành
  4. Kiểm tra 12 hộp đầu tiên:

    Tất cả các bản cập nhật Ubuntu + Bảo mật & Cập nhật

  5. Tạo và sao chép danh sách mới của bạn
  6. Sao lưu tập tin cũ vào nguồn.list.old

    mv /etc/apt/sources.list /etc/apt/sources.list.old
    
  7. Bây giờ bạn có thể mở vi để lưu danh sách mới bằng cách thực hiện:

    vi /etc/apt/sources.list
    (Paste and save using `:wq`)
    

    Hoặc bằng cách sao chép và dán vào thiết bị đầu cuối của bạn lệnh "curl" (bao gồm một URI duy nhất cho danh sách nguồn được cập nhật của bạn) như được trình bày trong "Danh sách nguồn" trên trang đầu ra repogen.

  8. G2G, thử lại chạy apt-get update


2
Tôi quyết định trả lời điều này, mặc dù vấn đề của các tác giả đã được giải quyết khác nhau. Câu hỏi của anh ấy là kết quả hàng đầu cho rất nhiều vấn đề liên quan đến tệp source.list bị hỏng (vấp phải 3 lần) và cảm thấy để lại giải pháp của tôi ở đây, vì nó sẽ giúp tôi tiết kiệm rất nhiều thời gian.
RienNeVaPlus

Tôi đã tải xuống một máy ảo ubfox 12 và không có repos nào hợp lệ (tiếng Ý). Tôi đã làm điều này và làm việc như một cơ duyên! cảm ơn!
Feida Kila

Trước khi dán vim, bạn sẽ cần chỉnh sửa chế độ chèn bằng cách nhấn chữ 'i' sau khi bạn mở nó
sg

Đây là những gì làm việc cho tôi.
Rick

Không có 14.10 trong danh sách phát hành :(
JoeTidee

25

Chỉnh sửa /etc/resolv.conf. Trong một cửa sổ Terminal chạy

sudo gedit /etc/resolv.conf

và thêm dòng

nameserver 8.8.8.8

và lưu. Sau đó làm

ping www.google.com

Nếu thành công thì chạy các lệnh sau

sudo apt-get --download-only --reinstall install resolvconf
sudo dpkg --purge --force-depends resolvconf
sudo apt-get install resolvconf

Nếu việc giải quyết bây giờ không thành công thì nhấp chuột phải vào chỉ báo mạng trong thanh ở đầu màn hình, nhấp Edit Connections, chọn kết nối của bạn, Nhấp Edit| IPv4 Settings. Thay đổi phương thức từ Automatic (DHCP)đến Automatic (DHCP) addresses onlyvà nhập 8.8.8.8vào Additional DNS serverstrường. Nhấn vào đây Save.... Xác minh rằng /etc/resolv.confbây giờ có chứa một dòng nameserver 8.8.8.8và bạn vẫn có thể ping www.google.com.


5
@guntbert Umm. Bạn đang nói chuyện với tác giả của gói giải quyết. Tôi nghĩ rằng anh ấy biết những gì anh ấy đang nói về. ;-)
Kevin Bowen

@jdthood Trước đây, tôi có thể ping 8.8.8.8(như đã nêu trong câu hỏi) nhưng sau khi thêm dòng nameserver 8.8.8.8, nó không giải quyết được và dòng này xuất hiệnFrom nat1.up.edu.ph (10.16.1.2) icmp_seq=1 Destination Host Unreachable
jowabels

1
@maggotbrain thx vì đã giúp tôi rút chân ra khỏi miệng lần nữa :-)
guntbert

1
@guntbert Tất cả đều tốt, anh bạn. Đã ở đó, bản thân mình. Nếu có bất kỳ vấn đề dns / decveconf nào, jdthood là người goto để giải quyết chúng!
Kevin Bowen

3
Khi tôi làm theo các bước này, tôi gặp lỗi này sau khi chạy lệnh đầu tiên:Err http://us.archive.ubuntu.com/ubuntu/ wily/main resolvconf all 1.77ubuntu1 404 Not Found [IP: 91.189.91.23 80] E: Failed to fetch http://us.archive.ubuntu.com/ubuntu/pool/main/r/resolvconf/resolvconf_1.77ubuntu1_all.deb 404 Not Found [IP: 91.189.91.23 80]
MadPhysicist

7

sudo apt-get updatecuối cùng đã làm việc! Tôi chỉ nhận ra rằng vấn đề không nằm ở hệ thống mà thay vào đó là cách hệ thống kết nối và lấy dữ liệu từ internet. Tôi chỉ cấu hình cài đặt mạng của tôi và thay đổi việc phát hiện proxy để Manualvà điền vào HTTP, HTTPS, FTP, và Socks Hostkhoảng trống proxy mà tôi sử dụng. Khi tôi cập nhật lại, đầu ra lỗi này xảy ra lúc đầu:

E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/)

Chà, không hoàn toàn giống như vậy nhưng tương tự như vậy (tôi đã sao chép ở trên từ đây ). Nhưng khi tôi thử cập nhật lại, cuối cùng nó cũng hoạt động (lý do tôi đã đăng đầu ra lỗi ở trên và không phải là đầu ra chính xác mà tôi thấy) và bây giờ tôi có thể chọn một máy chủ nhân bản khác. Nếu cấu hình proxy mạng thực sự là lý do cho tai ương của tôi, thì tôi cũng cảm thấy ngu ngốc vì lỗi cơ bản như vậy.

Dù sao, cảm ơn mọi người đã giúp đỡ! :)


0

Làm cái này

sudo bash -c 'echo "nameserver 127.0.0.1" >> /etc/resolv.conf'

Sau đó làm sudo apt-get updateđể xem nếu nó hoạt động.


Không, sudo apt-get updatevẫn không làm việc. Tôi có phải xóa dòng này không nameserver 127.0.01hay để nó ở đó?
jowabels

Bạn đã thử làm điều này sau khi hoàn nguyên từ câu trả lời của jdthood? Vì vậy, chỉ cần đảm bảo rằng bạn có thể ping 8.8.8.8, sau đó thêm dòng nameserver 127.0.0.1vào /etc/resolv.conf, nó phải là dòng duy nhất (sau các bình luận của khóa học).
Alaa Ali

Vâng, tôi đã làm điều này sau khi hoàn nguyên và không có vấn đề gì với ping 8.8.8.8(Tất nhiên, sau khi hoàn nguyên). Về cơ bản, nameserver 127.0.0.1là dòng duy nhất được thêm vào /etc/resolv.conf.
jowabels

Tôi chỉ tự hỏi, tập tin gốc / etc / decv.conf` đã được chứa nameserver 127.0.0.1trước khi thêm nó. Khi tôi làm theo câu trả lời của bạn, tập tin đã chỉnh sửa bây giờ chứa các dòng của nameserver 127.0.0.1. Có lý do cho điều này?
jowabels

Lệnh trong câu trả lời của tôi đã thêm dòng nameserver 127.0.0.1bất kể đã có gì trong tệp. Các tập tin ban đầu (sau khi cài đặt mới) nên rất có thể chứa dòng đó rồi, mặc dù sản lượng mà bạn đã có trong câu hỏi của bạn không có điều đó. Nhưng, sau khi bạn làm theo các lệnh cuối cùng trong câu trả lời của jdthood, tôi nghĩ rằng tệp đã được đặt lại và dòng nameserver 127.0.0.1được thêm vào. Vì vậy, khi bạn làm theo câu trả lời của tôi, một dòng khác đã được thêm vào. Dù sao, nếu bạn có hai dòng, sẽ an toàn để loại bỏ một trong số chúng.
Alaa Ali
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.