การติดตั้งสอง glibc พร้อมกับ debian / ubuntu


15

เป็นไปได้หรือไม่ที่จะติดตั้งและใช้ glibc เวอร์ชั่นต่างกันสองเครื่องในเครื่องเดียวกัน ที่หนึ่งรุ่นใช้เพื่อรันซอฟต์แวร์รุ่นเก่าเท่านั้นซึ่งต้องอาศัยไบนารี glibc รุ่นเก่า

เป็นไปได้หรือไม่ที่จะทำเช่นนั้นด้วยความช่วยเหลือของผู้จัดการแพ็คเกจ (บางอย่างเช่น "ติดตั้งแพ็คเกจนี้และการอ้างอิงไปยัง/opt/old-glibc) แทนที่จะจัดการมันให้น่ากลัว


4
ต้องเป็น แต่ ... โอ้เจ็บปวดเหลือเกิน
tshepang

อาจเป็นไปได้ แต่คุณจะต้องให้รายละเอียดเพิ่มเติม ระบบปฏิบัติการใด (เวอร์ชันของ Debian / Ubuntu) อย่างแม่นยำและที่สำคัญกว่าคือซอฟต์แวร์รุ่นเก่าและรุ่น libc ใดที่ใช้ ฉันคิดว่าlddจะบอกคุณบางอย่าง หากเป็นไปได้คุณอาจต้องคอมไพล์ไลบรารี libc และ / หรือติดตั้ง / คอมไพล์สนับสนุนซ้ำอีกครั้ง ขึ้นอยู่กับอายุแอปของคุณซึ่งอาจมีความยุ่งยาก ฉันเห็นว่า Debian ปัจจุบันlibc6ขึ้นอยู่กับlibc-bin (= 2.13-0exp5)และlibgcc1ดังนั้นจึงlibc6ไม่มีการพึ่งพามากนัก แต่คุณยังสามารถพบปัญหาได้
Faheem Mitha

คำตอบ:


8

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

เป็นเส้นทางของแรงเสียดทานน้อยผมแนะนำให้ติดตั้งรุ่นเก่าของ Debian หรืออูบุนตูในchroot กล่าวคือสร้างไดเร็กตอรี่พูด/old/etchและติดตั้งการแจกแจงแบบเก่าในต้นไม้ที่มีรูทอยู่ เพื่อเรียกใช้โปรแกรมที่มีปัญหาโทรchrootเพื่อ จำกัด /old/etchมุมมองของระบบแฟ้มไป

Debian (หรือ Ubuntu) มาพร้อมกับแพ็คเกจเพื่อช่วยในการติดตั้งระบบอื่นใน chroot: schroot (ตัวตายตัวแทนของ dchroot) ขั้นแรกให้ใช้debootstrapเพื่อติดตั้งการกระจายรุ่นเก่า (ติดตั้งเฉพาะระบบฐานและสิ่งที่โปรแกรมของคุณต้องการไม่มีเซิร์ฟเวอร์) แล้วตั้งค่า schroot เพื่อเรียกใช้โปรแกรมอำนวยความสะดวก (มี/dev, /proc, /homeและอื่น ๆ “ดาวเทียม” filesystems เข้าถึง)

ดังนั้นแผนคือ: debootstrap แล้ว dchroot ในฉันจะรันโปรแกรม 32- บิตบน Debian / Ubuntu 64 บิตได้อย่างไร ฉันให้การสอนเกี่ยวกับการตั้งค่าที่คล้ายกัน - ไม่ว่าคุณจะใช้การกระจายรุ่นที่แตกต่างกันหรือสถาปัตยกรรมที่แตกต่างกันหรือการแจกแจงแบบเดเบียนที่แตกต่างกันมันเป็นเพียงเรื่องของการเลือกแหล่งแพคเกจที่เหมาะสม


หากมีเวอร์ชันที่ใหม่กว่าติดตั้งอยู่แล้วเขาสามารถเริ่มต้นจากเวอร์ชันนั้นแล้วติดตั้งเวอร์ชันเก่าลงในด้านบนของเวอร์ชันที่ใหม่กว่าได้/old/etchหรือไม่
n611x007

@naxa ใช่แล้วในความเป็นจริงแล้วนี่เป็นสถานการณ์ที่อธิบายไว้ที่นี่ แต่มันก็ใช้งานได้เหมือนกันถ้าคุณไปอีกทางหนึ่ง ในความเป็นจริงฉันเขียน debootstrap / schroot กวดวิชาไม่กี่วันหลังจากเขียนคำตอบนี้ฉันได้เพิ่มลิงค์
Gilles 'หยุดความชั่วร้าย'
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.