ฉันจะหยุดชั่วคราว / กลับสู่กระบวนการอัพเดต apt-get ใน terminal ได้อย่างไร?


20

บางครั้งอินเทอร์เน็ตของฉันหยุดชั่วคราวเนื่องจากการเปลี่ยนแปลงของความแรงของสัญญาณ 3G และฉันต้องเริ่มกระบวนการอัปเดต apt-get ทั้งหมดอีกครั้ง! การอัปเดตแต่ละครั้งใช้ 13-15 mb และทุก mb มีค่าใช้จ่ายที่นี่ !! ฉันสามารถทำบางสิ่งเพื่อหยุดการอัปเดตชั่วคราวเพื่อให้ฉันสามารถดำเนินการต่อได้หลังจากที่ฉันเชื่อมต่ออินเทอร์เน็ตอีกครั้ง! ปล. - ฉันรู้ว่าฉันสามารถทำการดาวน์โหลดแอพ / อัปเกรดต่อได้


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

@EvilPhoenix ไม่มันไม่ได้เป็นอย่างนั้นประเด็นก็คือถ้าการเชื่อมต่อขาดหายไปในขั้นตอนสุดท้ายของการอัปเดตของฉันฉันจะสูญเสีย 14 MB เนื่องจากฉันจะเรียกใช้อีกครั้ง! และการเชื่อมต่ออินเทอร์เน็ตของฉันเป็นไปตามข้อมูล .. ดังนั้นฉันไม่สามารถจะสูญเสียข้อมูลโดยไม่จำเป็นได้!
avi

@amith เพื่อทำเครื่องหมายคำตอบเป็นคำตอบให้คลิกเครื่องหมายถูกที่อยู่ถัดจากคำตอบของ @jgbelacqua
theTuxRacer

@ Kaustubh แต่คำตอบที่ถูกต้องของเขาไม่ใช่คำตอบที่แท้จริง!
avi

แต่ละการอัพเดทใช้เวลา 13-15mb อย่างไร คุณใช้งานพรีรีลีสหรือไม่? การอัปเดตใหม่ควรใช้เวลาเพียงไม่กี่ 100 kBs
user1974

คำตอบ:


25

ดูคำแนะนำสำหรับการใช้Ctrl+ Cฉันคิดว่าควรลองCtrl+ Zเพื่อระงับกระบวนการในเบื้องหลังเมื่อ / หากเครือข่ายลดลง คุณอาจสามารถใช้fgเพื่อดำเนินการต่อเมื่อการเชื่อมต่อของคุณกลับมา (ฉันไม่ทราบว่า apt-get ที่แข็งแกร่งในสถานการณ์นี้ได้อย่างไร)

ความเป็นไปได้อีกอย่างก็คือการใช้axelและapt-fastสคริปต์ โฆษณานั้นเป็นการเร่งความเร็วการดาวน์โหลดโดยทำการดาวน์โหลดแบบขนาน แต่ก็ดูเหมือนว่าจะดีในการติดตามสิ่งที่ถูกดาวน์โหลดไปแล้วน่าจะเป็นเพราะมันต้องติดตามชิ้นส่วนของไฟล์เมื่อทำการดาวน์โหลดในแบบขนาน

นี่คือหัวข้อเดิมจาก Ubuntuforum


axel / apt-fast สามารถติดตามการอัพเดท apt-get ได้หรือไม่? มันสามารถหยุดชั่วคราว
avi

@amith - เท่าที่ axel / apt-fast หยุดชั่วคราวมีค่าเผื่อไว้สำหรับการหยุดชั่วคราว แต่ฉันไม่รู้ว่ากลไกนั้นเป็นสิ่งที่คุณต้องการหรือไม่
belacqua

ใครลงคะแนนเสียงบ้าง? ฉันโหวตคุณ!
avi

5

คุณสามารถหยุดการดาวน์โหลดแพ็คเกจหรืออัปเดตระบบได้โดยกด "Ctrl + C" และหยุดโปรแกรม จะเป็นการหยุดโปรแกรมอย่างสมบูรณ์ ครั้งต่อไปที่คุณลองใช้คำสั่งเดียวกัน apt-get จะทำการดาวน์โหลดต่อจากจุดที่มันหยุดครั้งล่าสุด


@Amith มันจะกลับมาแพ็คเกจ แต่ไม่ใช่ update! update เริ่มต้นใหม่อีกครั้ง!
avi

1
มันจะเป็นการดีกว่าถ้าคุณลองใช้ Ctrl-Z เพื่อระงับกระบวนการในเบื้องหลังหากเครือข่ายลดลง - คุณอาจสามารถใช้fgเพื่อดำเนินการต่อเมื่อการเชื่อมต่อของคุณกลับมา แต่ไม่รู้ว่า apt-get ที่แข็งแกร่งนั้นอยู่ในสถานการณ์นี้ได้อย่างไร
belacqua

1
@jgbelacqua เฮ้ !! มันใช้งานได้ .. ฉันจะทำเครื่องหมายว่านี่เป็นคำตอบได้อย่างไร?
avi

@amithv - ฉันได้เพิ่มความคิดเห็นไว้ด้านบนของคำตอบเดิมของฉันเนื่องจากดูเหมือนว่าจะทำงาน ฉันยินดีเป็นอย่างยิ่งที่มันช่วย
belacqua

5

ก่อนอื่นหยุดงานนั้นชั่วคราว เพื่อหยุดงานชั่วคราว:

Ctrl + z 

สำหรับการรีสตาร์ทงานอีกครั้งเมื่อคุณได้รับสัญญาณเครือข่าย:

สำหรับการทำงานในเบื้องหน้าให้ใช้

fg %1 

สำหรับการเรียกใช้ในพื้นหลังให้ใช้

 bg %1 

อย่างน้อยใน bash คุณไม่จำเป็นต้องระบุ%1สำหรับfgหรือbgอย่างน้อยถ้ามันเพิ่งถูกระงับ
Xen2050

4

ตามที่ฉันaptitudeบอกฉันหลังจากรีบูตโดยไม่คาดคิดให้ใช้:

sudo dpkg --configure -a

และตามที่man dpkgอธิบายไว้:

หากได้รับ -a หรือ - pending แทนแพ็กเกจแพ็กเกจที่ไม่ได้แพ็ก แต่ไม่ได้กำหนดค่าทั้งหมดจะถูกกำหนดค่า


2

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


-1

ฉันไม่ชอบขั้ว ไม่ทราบว่าเป็นไปได้โดยใช้เทอร์มินัลหรือไม่ แต่มีวิธีที่ไม่ดีในการทำสิ่งที่คุณถาม สำหรับสิ่งนี้คุณต้องมี "Synaptic Package Manager" หากคุณไม่มีสิ่งนี้ให้ติดตั้งก่อน ตอนนี้ถ้าคุณมีมันแล้วเปิดมัน; คลิกที่ "ทำเครื่องหมายการอัปเกรดทั้งหมด" สิ่งนี้จะนำเสนอแพคเกจที่อัปเกรดได้ (อัปเดตได้) ทั้งหมด ตอนนี้เริ่มดาวน์โหลดแพ็คเกจจนกว่าการเชื่อมต่อของคุณจะหายไป หากการเชื่อมต่อขาดหายไป Synaptic จะบ่นเกี่ยวกับมันและหยุดการอัปเกรด ไม่ต้องกังวลปิดตัวจัดการแพคเกจ synaptic (อย่าเปิดศูนย์ซอฟต์แวร์หรือใช้คำสั่ง apt-get through command จนกว่าการไล่ระดับขึ้นจะเสร็จสิ้น)

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

นี่ไม่ใช่ทางออกที่ดี แต่ใช้งานได้ หากศูนย์ synaptic หรือซอฟต์แวร์บ่นเกี่ยวกับ "Lock" บางอย่างให้ไปที่ / var / cache / apt / archives แล้วลบไฟล์ "lock" ออกและคุณจะไปได้ดี :)


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