ฉลาดต้องใช้เวลานานในการอัปเดต \ อัปเกรด


15

ในเครือข่ายงานของฉันคำสั่ง apt-get (หรือ aptitude) ใช้เวลานานมากดูเหมือนว่าผู้ดูแลระบบจะบล็อกพอร์ตบางพอร์ตไว้ (โดยไม่ทราบสาเหตุ) ตัวอย่างเช่น

sudo apt-get update

ใช้เวลา 2 วันและทั้งหมดที่ฉันได้รับ - รายการคำตอบที่ยาวมาก ๆ

Get: 36 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 37 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 38 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 39 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]
Get: 40 http://security.ubuntu.com precise-security/universe amd64 Packages [11.6 kB]

สถานการณ์เดียวกันจากนั้นฉันพยายามดาวน์โหลดซอฟต์แวร์

Get:1 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:2 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:3 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:4 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]
Get:5 http://archive.ubuntu.com/ubuntu/ precise/main dash i386 0.5.7-2ubuntu2 [85.8 kB]

มีบางอย่างที่ฉันสามารถทำได้เพื่อเปลี่ยนพอร์ตสำหรับ apt-get หรืออย่างอื่น

คำตอบ:


11

เซิร์ฟเวอร์อูบุนตูของฉันติดตั้งapt-getและอัปเดตอย่างรวดเร็วเสมอ โดยทั่วไปแล้วเส้นบนหน้าจอจะเร็วเกินไปที่จะมองเห็น ทันใดนั้นพวกเขาก็ช้าลงจนคลานข้ามคืน

มันเป็น IPv6 ทำมัน

ฉันพบวิธีแก้ไขปัญหาต่อไปนี้:

sudo nano /etc/gai.conf

ยกเลิกหมายเหตุบรรทัดต่อไปนี้:

precedence ::ffff:0:0/96 100

สำหรับฉันมันคือบรรทัด 54 (ตรวจสอบให้แน่ใจว่าคุณไม่ได้แสดงความคิดเห็นที่ไม่มีใน10)

บันทึกและออก.

sudo nano /etc/apt/apt.conf.d/99force-ipv4 # (this is to make a new file)

เพิ่มบรรทัดต่อไปนี้ในไฟล์ใหม่:

Aquire::ForceIPv4 false;

บันทึกและออก.


3
ฉันไม่ใช่แฟนของคำตอบเหล่านี้เนื่องจากไม่มีคำอธิบายที่แท้จริงว่าทำไมจึงเป็นวิธีแก้ปัญหา
Adams สีเทา

1
@GrayAdams หากคุณมีคำอธิบายคุณสามารถเพิ่มได้ ฉันไม่มี. หวังว่าฉันจะ :( ฉันเพิ่งรู้ว่าสิ่งที่ได้ผลสำหรับฉันดังนั้นฉันโพสต์มันสำหรับคนอื่น ๆ ในการแก้ไขปัญหาอย่างน้อยก็ชั่วคราว
Ryan

3
sudo nano /etc/gai.conf

เพิ่ม / ไม่ใส่หมายเหตุบรรทัดเหล่านี้:

reload yes
precedence ::ffff:0:0/96 100
precedence ::/0 10

เมื่อฉันอัปเดตด้วยบรรทัดด้านบนฉัน/etc/gai.confจะแก้ไขและใช้ipv4โดยตรงแทนipv6และติดตั้งอย่างรวดเร็ว


ใช่!!!!! ขอขอบคุณ!!! ฉันไม่รู้ว่าเกิดอะไรขึ้นที่นี่ ต้องรอ 10 นาทีสำหรับการติดตั้ง apt-get แต่ละครั้ง
Jacko

1

ฉันขอแนะนำให้คุณเริ่มต้นด้วยการวัดปริมาณการใช้อินเทอร์เน็ต / เครือข่ายโดยทั่วไปโดยใช้หนึ่งในเว็บไซต์ที่ทำการตรวจสอบประสิทธิภาพ ความเป็นไปได้หนึ่งคือwww.speedtest.net คุณสามารถใช้การค้นหาโดย Google แบบง่าย ๆเพื่อค้นหาไซต์อื่น ๆ ที่คุณสามารถใช้เพื่อทดสอบความเร็วการเชื่อมต่ออินเทอร์เน็ตของคุณ

หากการทดสอบแสดงให้เห็นว่าปัญหานั้นไม่ได้จำกัด การเชื่อมต่ออินเทอร์เน็ตของคุณดังนั้นขั้นตอนต่อไปอาจจะดูคำตอบของคำถามนี้:
ฉันจะใช้งานมิเรอร์ใกล้ ๆ ฉันได้อย่างไรหรือเลือกมิเรอร์ที่เร็วขึ้น ?

ฉันขอแนะนำให้คุณเริ่มต้นด้วยการลองคำตอบที่เป็นที่นิยมที่สุดสำหรับคำถามนั้น /etc/apt/sources.listมันเดือดลงไปเพิ่มสองบรรทัดด้านล่างไปด้านบนของ นี่ควรจะสนับสนุนกระบวนการอัปเดตให้เลือกมิเรอร์ดาวน์โหลดที่มีประสิทธิภาพดีกว่าโดยอัตโนมัติ

deb mirror://mirrors.ubuntu.com/mirrors.txt precise main restricted universe multiverse
deb mirror://mirrors.ubuntu.com/mirrors.txt precise-updates main restricted universe multiverse
  • หมายเหตุ:เส้นดังกล่าวข้างต้นจะหมายถึงการที่ใช้กับUbuntu 12.04 (Precise Pangolin) สำหรับรุ่นก่อนหน้าแทนที่preciseในสองบรรทัดด้านบนด้วยชื่อรหัสที่สอดคล้องกันของรุ่นที่คุณกำลังใช้

    Lucid(10.04), Maverick(10.10), Natty(11.04), Oneiric(11.10)

หากวิธีการนี้ไม่ช่วยหรือไม่ใช่สิ่งที่คุณต้องการคุณอาจลองให้Update Managerพยายามเลือกมิเรอร์ " เร็วที่สุด " นี่คือรายละเอียดเพิ่มเติมในคำตอบอื่น ๆ สำหรับคำถามที่ฉันให้ลิงค์ไปด้านบน


อินเทอร์เน็ตของฉันทำงานได้ดี ฉันลองกระจกจำนวนมาก - แต่ผลลัพธ์เหมือนกันฉันไม่สามารถดาวน์โหลดอะไรจากเว็บไซต์
ShockwaveNN

@ShockwaveNN หากอินเทอร์เน็ตของคุณทำงานได้ดีแล้วคุณไม่ควรมีปัญหาในการดาวน์โหลดจากกระจก ไม่มีอะไรแตกต่างอย่างมีนัยสำคัญในแง่ของอินเทอร์เน็ตที่เกิดขึ้นระหว่างพูดsudo apt-get updateและใช้firefoxเบราว์เซอร์ คุณลองบูทจาก Live CD / USB แล้วลองsudo apt-get updateดูว่ามีความแตกต่างหรือไม่? หากมีสิ่งใดชี้ไปที่สิ่งผิดปกติในการติดตั้ง Ubuntu ของคุณ หากคุณได้รับผลลัพธ์เดียวกันฉันก็ไม่มีความคิดอื่นในตอนนี้
ไม่มีเหตุผล John

0

อย่างแรก, 2 ข้อเท็จจริง:
apt-get ใช้ http (พอร์ต 80) โดยค่าเริ่มต้นใน distros linux มาตรฐาน

apt-getโดยทั่วไปจะดาวน์โหลดข้อมูลประมาณ 20MB เพื่ออัปเดตรายการ หากคุณเพียงแค่apt-get updateเรียกใช้และเรียกใช้อีกครั้งมันดาวน์โหลดข้อมูล ~ 100KB เท่านั้น
ดังนั้นหากคุณสามารถเรียกดูเวิลด์ไวด์เว็บ (เช่นเว็บไซต์ที่ใช้เบราว์เซอร์) และคุณกำลังใช้ distros มาตรฐาน (ไม่ได้ปรับแต่งเพื่อใช้พอร์ตอื่น) ไม่มีการบล็อกโดยผู้ดูแลระบบที่หยุดคุณจากการเรียกใช้คำสั่งนี้
ปัญหาอาจเป็นได้ว่าการร้องขอจากเครื่องของคุณไปยังเซิร์ฟเวอร์ปัจจุบันที่ใช้สำหรับการปรับปรุงโดย apt-get กำลังเผชิญกับปัญหาบางอย่าง (เช่นอาจเป็นเพียงปัญหาการดาวน์โหลด)
เพื่อแก้ปัญหาของคุณคำแนะนำของฉัน (ในขณะที่คุณใช้งาน Ubuntu):

เปิดupdate-manager-> คลิกที่การตั้งค่าที่ด้านล่างซ้าย -> คลิกที่แท็บแรกซอฟต์แวร์ ubuntu -> คลิกที่กล่องแบบหล่นลงถัดจากดาวน์โหลดจากตัวเลือก -> เปลี่ยนเซิร์ฟเวอร์เป็นสถานที่ซึ่งใกล้กับตำแหน่งของคุณโดยเลือกอื่น ๆ ใน รายการ. ตรวจสอบโปรโตคอลที่ใช้สำหรับการอัพเดต ควรเป็น http สำหรับผู้ใช้ทั่วไป -> ตอนนี้ทำการเรียกใช้ sudo apt-get update หรือใช้ update manager เพื่อตรวจสอบการอัพเดท ตอนนี้ทุกอย่างจะทำงานได้ดีสำหรับคุณ หากสิ่งต่าง ๆ ไม่สามารถใช้การได้หลังจากทำตามนี้


ดูเหมือนจะเป็นปัญหาของไฟล์ที่ล้าสมัยหรือเก็บบางส่วนในขณะที่พยายามอัปเดตบางเวลา
ฉันอยากจะแนะนำให้คุณเรียกใช้คำสั่งนี้ใน terminal:

sudo mv /var/cache/apt/archives/partial{,bakjune9}
sudo mv /var/lib/apt/lists{,bakjune9}

คำสั่งเหล่านี้จะเปลี่ยนชื่อไดเรกทอรีที่จัดเก็บไฟล์เมื่อapt-getดาวน์โหลดในขณะที่อัปเดตและอัปเกรด (คุณสามารถเปลี่ยนชื่อพวกเขากลับมาได้หากมีสิ่งผิดปกติดังนั้นจึงไม่มีความเสี่ยงในการทำให้สถานการณ์เลวร้ายยิ่งกว่าปัจจุบัน)
หลังจากนั้น:

sudo apt-get update 

มันจะดาวน์โหลดบางอย่างเช่นข้อมูล 20MB
หากทำงานได้สำเร็จปัญหาของคุณจะได้รับการแก้ไข

ตอนนี้คุณควรจะสามารถเรียกใช้sudo apt-get upgradeเพื่อติดตั้งการปรับปรุง
ถ้าไม่แสดงความคิดเห็นที่นี่กลับ


สิ่งนี้ไม่ได้ช่วยฉันเปลี่ยนเซิร์ฟเวอร์เป็นประเทศอื่นและตรวจสอบโปรโตคอลนั้นคือ 'http' แต่ฉันมีปัญหาเดียวกัน นอกจากนี้ฉันสามารถเรียกดูอินเทอร์เน็ต (ยกเว้นบางเว็บไซต์เช่น youtube.com) และสามารถไปที่archive.ubuntu.com/ubuntu ในเบราว์เซอร์ของฉันและใช้งานได้ดี
ShockwaveNN

ฉันได้เพิ่มขั้นตอนต่อไปซึ่งฉันรู้สึกว่าควรช่วยคุณ ดูว่ามันใช้งานได้
drake01

ตัวแปรที่สองไม่ทำงานเช่นกัน ฉันคิดอย่างยิ่งว่านี่เป็นปัญหาเกี่ยวกับการเชื่อมต่อมีวิธีใดบ้างในการวินิจฉัยปัญหาการเชื่อมต่อ
ShockwaveNN

คุณได้เพิ่มแหล่งซอฟต์แวร์จำนวนมากนอกเหนือจากที่เก็บข้อมูลหลักหรือไม่ หากคุณมี ppa ไม่กี่โหลที่ดาวน์หรือยกเลิกหรือช้ามากนั่นอาจทำให้การอัปเดตช้าลง ควรให้ข้อความแสดงข้อผิดพลาดทุกครั้งที่ไม่สามารถเชื่อมต่อได้
Marc

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.