สามารถลบ udisks จาก 14.04 และแทนที่ด้วยฟังก์ชันการทำงานของยูทิลิตี้ดิสก์จาก 12.04 ได้หรือไม่?


5

ขณะนี้ฉันกำลังทดสอบ 14.04 และในขณะที่มีหลายสิ่งที่ฉันชอบเกี่ยวกับudisksข้อผิดพลาดที่กำลังอารมณ์เสีย ฉันกำลังใช้งาน 12.04 ในทุกระบบการผลิตเนื่องจากปัญหาเหล่านี้ซึ่งถ้าฉันไม่ผิดเริ่มต้นด้วย 12.10 และมีมาตั้งแต่นั้นเป็นต้นมา

เมื่อฉันพยายามใช้การเปรียบเทียบจากภายในdisksบนพาร์ติชันที่ไม่ได้ต่อเชื่อมsdaฉันได้รับข้อผิดพลาดต่อไปนี้:

Error seeking to offset 2560872448 (g-io-error-quark, 13)

ข้อมูลที่สนับสนุน (ยาวเกินกว่าจะรวมที่นี่):

http://pastebin.com/7YmaEmtJ


2
มันควรจะทำงานได้ดีใน 14.04 มันใช้ udisks แทน udisks2 & deps อื่น ๆ ก็ยังมีอยู่เช่นกัน ดีที่สุดที่จะสร้างใหม่ใน 14.04 เป็นการอัพเกรด ดังนั้นแทนที่จะเอาชนะรอบ ๆ แพ็กเกจบุช & แหล่งที่ปรับ ฉันไม่มีความตั้งใจที่จะรักษาหรือแก้ไขใด ๆ ดังนั้นอาจจะลองถ้าตกลง dl แหล่งที่มาเพื่อให้คุณสามารถสร้างตัวเองถ้าจำเป็นต้องเป็น มันเปิดเล็ก ๆ น้อย ๆ คุณจะต้องปรับขนาดหรือสูงสุด เท่าที่ผู้สร้าง usb รุ่น 14.04 นั้นใช้ได้เพียงฟอร์แมตแฟลชไดรฟ์เป็น fat32 ก่อนจากนั้นจึงเปิดตัวสร้าง usb https://launchpad.net/~mc3man/+archive/trusty-tests
doug

1
@doug ไร้ที่ติ ฉันดึงแพ็คเกจ 3.10.0-1ubuntu3.really.3.0.2-2ubuntu8 จาก PPA ของคุณ เขียนคำตอบนี้ขึ้น! คุณมีความกรุณาและขอบคุณ
Elder Geek

คำตอบ:


4

แหล่งที่มา 3.0.2 ที่เก่ากว่าควรยังคงทำงานได้ถึง 14.04 เนื่องจาก deps ส่วนใหญ่พร้อมใช้งานสำหรับ 14.04 อย่างไรก็ตามควรสร้างใหม่ & แพคเกจสำหรับความน่าเชื่อถือเป็นการอัปเกรดเป็นแพคเกจ gnome-disk-utility ปัจจุบันดังนั้นเมื่อต้องการจบ ppa

https://launchpad.net/~mc3man/+archive/trusty-tests

หมายเหตุ: ใช้แหล่ง 3.0.2 สุดท้ายใน Ubuntu - 3.0.2-2ubuntu7 ที่แม่นยำ (- ชื่อแพคเกจมีค่าเท่ากับ 8 เมื่อสิ้นสุดโดยไม่ตั้งใจ

การเปลี่ยนแปลงที่แท้จริงเท่านั้นคือการลบส่วนขยาย nautilus & การรวม launchpad เนื่องจากไม่ทำงานหรือใช้แล้ว & จะทำให้เกิด ftbfs

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

หากไม่เหมาะสมให้ใช้ ppa-purge หรือเพียงแค่ลบ ppa ลบ gnome-disk-utility อัปเดตแหล่งที่มาและติดตั้ง gnome-disk-utility ปัจจุบันอีกครั้ง

คัดลอกไปที่รุ่นก่อนหน้าเพื่อ ppa สำหรับทะลึ่ง (saucy เกือบ EOL

เท่าที่ผู้สร้าง usb รุ่น 14.04 นั้นใช้ได้เพียงฟอร์แมตแฟลชไดรฟ์เป็น fat32 ก่อนจากนั้นจึงเปิดตัวสร้าง usb และควรใช้งานได้ดี


2

ฉันได้ตรวจสอบแหล่งที่มาของ gnome-disk-utility จากที่เก็บ git แล้วและปัญหาคือบนสถาปัตยกรรม 32 บิตจะใช้ฟังก์ชัน 32 บิต lseek () เพื่อค้นหาออฟเซ็ตที่ลงนามแล้ว ดังนั้นจึงประสบความสำเร็จในการค้นหาครั้งแรก แต่แล้วก็ล้มเหลวเกิน 2 ^ 31 ไบต์ (2560872448 อยู่นอกเหนือขอบเขตนี้)

ตามคู่มือของ lseek64 การแก้ไขอาจเป็นการเพิ่มเพียงหนึ่งบรรทัดก่อนส่วนหัวทั้งหมด:

#define _FILE_OFFSET_BITS 64

หรือเปลี่ยนไปใช้ต้นแบบ lseek64


น่าสนใจ จะไม่หา LBA มากกว่าไบต์ที่เฉพาะเจาะจงส่งผลให้ค่าที่ต่ำกว่าจึงช่วยให้การค้นหาที่จะประสบความสำเร็จ? สิ่งนี้บ่งชี้ว่าการเปรียบเทียบอาจล้มเหลวในไดรฟ์ใด ๆ ที่มากเกินประมาณ 2GB กับรุ่น 32 บิต ฉันงงงวยว่าทำไมต้องใช้วิธีการเช่นนี้และจะทำการทดสอบบนสื่อเก็บข้อมูลขนาด 2 GB
Elder Geek

ฉันสามารถยืนยันได้ว่าการทำงานภายใต้ 2 ^ 31 (ทดสอบกับสื่อ 2.1GB) ทำไมคู่มือ lseek64 ถึงเกี่ยวข้องกับ lseek รุ่น 32 บิต?
Elder Geek

มันไม่มีส่วนเกี่ยวข้องกับ LBA นี่คือส่วนติดต่อเคอร์เนล Linux ตามค่าเริ่มต้นบนสถาปัตยกรรม 32 บิต lseek 32 บิตได้รับการรวบรวมและด้วยตัวเลือกนี้คุณจะได้รับ 64 บิต lseek ซึ่งเทียบเท่ากับ lseek64 คุณสามารถอ่านต้นฉบับได้เสมอ
MariusM

ขอบคุณสำหรับการตอบกลับของคุณ: ถ้าฉันเข้าใจสิ่งที่คุณกำลังพูดว่าอินเทอร์เฟซเคอร์เนลสำหรับ Ubuntu 32 บิตถูกคอมไพล์ด้วย #define _FILE_OFFSET_BITS 64 โดยค่าเริ่มต้นแทนการเปรียบเทียบและการถ่ายภาพจะไม่ล้มเหลว นี่เป็นข้อความที่ถูกต้องหรือไม่?
Elder Geek

1
ใช่หนึ่งบรรทัดนี้แก้ปัญหาได้ ฉันทำกับคอมพิวเตอร์ i686 เครื่องเก่าดังนั้นไม่จำเป็นต้องใช้คอมพิวเตอร์ 64 บิต ในกรณี udisk อาจมีไฟล์มากกว่านี้และอาจมีปัญหาที่กว้างกว่า (ผู้ดูแล): ตัวเลือกดังกล่าวจะถูกกำหนดค่าได้ดีกว่าในไฟล์ config.h ทั่วโลกโดยใช้เครื่องมือ autoconf / automake บางส่วนแทนที่จะแก้ไขโดยพิจารณาแต่ละกรณีเช่นฉัน .
MariusM
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.