ฉันกำลังพยายามติดตั้งซอฟต์แวร์บางอย่างโดยใช้ homebrew และเมื่อดาวน์โหลดและพยายามติดตั้งการอ้างอิงอย่างใดอย่างหนึ่งแพคเกจจะไม่ติดตั้งเนื่องจาก MD5 ไม่ตรงกัน
เป็นไปได้ไหมที่จะทำให้ homebrew ละเว้นการแฮช MD5 ของไฟล์และดำเนินการติดตั้งต่อไป?
ฉันกำลังพยายามติดตั้งซอฟต์แวร์บางอย่างโดยใช้ homebrew และเมื่อดาวน์โหลดและพยายามติดตั้งการอ้างอิงอย่างใดอย่างหนึ่งแพคเกจจะไม่ติดตั้งเนื่องจาก MD5 ไม่ตรงกัน
เป็นไปได้ไหมที่จะทำให้ homebrew ละเว้นการแฮช MD5 ของไฟล์และดำเนินการติดตั้งต่อไป?
คำตอบ:
ในฐานะที่เป็นหนึ่งความคิดเห็นที่เหลือใน OP ของคุณกล่าวถึง: ฉันจะกังวลว่าผลรวม MD5 ไม่ตรงกัน อาจหมายถึง tarball ที่คุณดาวน์โหลดเสียหายซึ่งในกรณีดังกล่าวข้างต้นเพื่อแทนที่การจับคู่จริง ๆ แล้วจะทำให้คุณมีปัญหาเพราะคุณจะติดตั้งเครื่องมือที่ใช้งานไม่ได้ หรืออาจเป็นไปได้ว่า tarball ที่คุณดาวน์โหลดไม่สามารถเชื่อถือได้ว่าคุณได้รับสิ่งที่ไม่ถูกต้องและมีการปฏิบัติที่อาจเป็นอันตราย ฉันต้องแน่ใจว่าคุณเป็นที่เก็บ homebrew เป็นปัจจุบันด้วย:
brew update
หากเป็นข้อมูลล่าสุดคุณสามารถลอง:
brew install --force <package>
เพื่อบังคับให้ติดตั้ง ตัวเลือกนั้นมักจะบังคับให้ติดตั้งแพคเกจที่ติดตั้งแล้วของรุ่นเดียวกันอีกครั้ง แต่อาจละเว้นข้อผิดพลาด MD5 ฉันแหย่ผ่านรูทีนการติดตั้งในhomebrew
แต่มันก็ไม่ชัดเจนว่าจะทำงานได้
กรณีที่เลวร้ายยิ่ง: คุณสามารถดาวน์โหลด tarball สำหรับสูตรคำนวณ MD5 ด้วยมือแล้วอัปเดตไฟล์สูตรด้วยค่า MD5 ที่เหมาะสมเพื่อให้ผ่านการตรวจสอบ ตัวอย่างเช่นถ้าคุณกำลังมีปัญหาในการติดตั้ง dos2unix /usr/local/Library/Formula/dos2unix.rb
คุณพบไฟล์สูตรใน ที่ด้านบนของไฟล์คือ tarball และผลรวมของ MD5:
> more dos2unix.rb
require 'formula'
class Dos2unix < Formula
url 'http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz'
md5 '438c48ebd6891b80b58de14c022ca69e'
homepage 'http://waterlan.home.xs4all.nl/dos2unix.html'
หากการตรวจสอบ MD5 ล้มเหลวให้ดาวน์โหลด tarball:
> wget http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz
--2012-03-17 18:07:07-- http://waterlan.home.xs4all.nl/dos2unix/dos2unix-5.3.1.tar.gz
Resolving waterlan.home.xs4all.nl... 194.109.6.92, 2001:888:0:18::80
Connecting to waterlan.home.xs4all.nl|194.109.6.92|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 54967 (54K) [application/x-gzip]
Saving to: `dos2unix-5.3.1.tar.gz'
100%[==============================================================================================================>] 54,967 84.8K/s in 0.6s
2012-03-17 18:07:09 (84.8 KB/s) - `dos2unix-5.3.1.tar.gz' saved [54967/54967]
คำนวณ MD5 checksum สำหรับไฟล์ด้วยตัวคุณเอง:
> md5 dos2unix-5.3.1.tar.gz
MD5 (dos2unix-5.3.1.tar.gz) = 438c48ebd6891b80b58de14c022ca69e
จากนั้นป้อนค่าที่คุณคำนวณในไฟล์สูตรสำหรับบันเดิลและรันคำสั่ง install สำหรับบันเดิลอีกครั้ง
ฉันมีปัญหาเดียวกันเมื่อไม่กี่นาทีที่ผ่านมาด้วยสูตรที่ฉันพยายามจะติดตั้ง ฉันพยายามเรียกใช้การติดตั้งด้วย --force สถานะ แต่ไม่ได้แทนที่การตรวจสอบ MD5 (ซึ่งสมเหตุสมผล TBH)
ทำตามคำแนะนำของ Ian C. ในคำตอบของเขาฉันไปข้างหน้าและวิ่งไปที่ 'brew update' หลังจากนั้นฉันสามารถรันการติดตั้งสำหรับสูตรที่ฉันพยายามติดตั้ง & มันทำงานได้อย่างสมบูรณ์ / ไม่มี MD5 ไม่ตรงกันอีกต่อไป
นี่คือลิงค์ของปัญหาใน Homebrew repo (อันนี้เกี่ยวกับ httrack ซึ่งเป็นสิ่งที่ฉันพยายามจะติดตั้งเมื่อฉันเจอสิ่งนี้) ซึ่งโดยทั่วไปเพิ่งยืนยันว่าการเรียกใช้ 'การอัพเดตชง' ควรแก้ไขปัญหาของคุณ
https://github.com/mxcl/homebrew/issues/11242
หากใช้งาน 'การอัพเดตการชง' ไม่สามารถแก้ไขปัญหาได้เช่นกัน:
ในกรณีของ A คุณสามารถอัปเดตสูตรด้วยตัวเองตามที่ Ian C. อธิบายไว้ - คุณควรสนับสนุนให้ส่งคำขอดึงเพื่อให้ได้รับการอัปเดตใน repo อัปสตรีมเพื่อให้ทุกคนได้รับประโยชน์เช่นกัน!
ในกรณีของ B สูตรอาจอ้างอิง URL เก่าหรือการดาวน์โหลดอาจใช้งานไม่ได้หรืออ้างอิงไฟล์ผิดเป็นต้น - ในกรณีนี้คุณอาจต้องทำการวิจัยและดำเนินการต่อจากที่นั่นโดยติดต่อเจ้าของโครงการ หรือคล้ายกัน