Điểm:1

Đọc hình ảnh DVD với dd cho đến khi trống

lá cờ cn

Tôi muốn so sánh hàm băm SHA của tệp .iso mà tôi đã ghi vào đĩa DVD với hình ảnh của chính đĩa DVD để xem chúng có giống nhau không nếu quá trình ghi thành công. Vấn đề là chúng không phải như vậy, không phải vì có thể có lỗi, mà bởi vì cách thức hoạt động của các cung đĩa là nếu 1 cung đầy một nửa thì nó sẽ đọc tất cả hoặc đại loại như thế.

Có cách nào để sử dụng đ công cụ chỉ đọc dữ liệu đã điền trên đĩa, nghĩa là cho đến bit/byte cuối cùng không trống và bỏ qua khoảng trống và phần làm tròn ở cuối, sao cho phần hình ảnh đĩa đọc cho đến khi đầy, sẽ giống với .iso mà tôi đã sử dụng để ghi nó (tất nhiên nếu không có lỗi nào khác)?

guiverc avatar
lá cờ cn
Bạn chưa cung cấp bất kỳ chi tiết nào về hệ điều hành hoặc bản phát hành, nhưng hầu như tất cả các phương tiện Ubuntu đều có tính năng tự xác thực để thực hiện việc kiểm tra này khi bạn khởi động nó. Trên một số ISO hoặc bản phát hành mà bạn chọn để chạy nó theo cách thủ công, trên một số ISO khác, quá trình kiểm tra được chạy nhưng bạn cần tìm kiếm kết quả... vậy tại sao không khởi động hệ thống *chưa khai báo* của bạn và để nó tự xác minh phương tiện? FYI: * Đã một vài chu kỳ (tôi nghĩ là thú vị) khi lần cuối tôi được yêu cầu sử dụng phương tiện DVD trong kiểm tra QA và quá trình xác thực DVD diễn ra chậm; nhưng việc khởi động và xác thực đĩa không chậm hơn so với việc chỉ đọc tất cả - nó vẫn phải đọc toàn bộ đĩa*
lá cờ cn
Nó không phải là Ubuntu .iso, mà là một thứ khác, nhưng tôi đặc biệt muốn có một giải pháp dd dựa trên thiết bị đầu cuối cho vấn đề này. Tôi biết rằng có một, tôi nhớ rằng có, nhưng tôi không thể tìm thấy câu trả lời ở bất cứ đâu. (cũng như việc khởi động và tự xác thực nó không tốt cho bảo mật, nếu đây là iso của Ubuntu và tôi đã tải xuống một biến thể bị nhiễm phần mềm độc hại, nó chỉ có thể thay thế các cơ chế xác minh đáng tin cậy đó, điều quan trọng là phải xác thực bên ngoài .iso, bất kể đó là gì có thể là để tránh vấn đề bảo mật này)
lá cờ cn
Bạn không hiểu, tôi đang sử dụng Ubuntu trên PC khác của mình để làm điều này, chỉ là thứ mà tôi đang ghi vào DVD không phải là HĐH, nó nằm trong chủ đề của cuộc thảo luận này. Tôi đang hỏi cách sử dụng công cụ DD trên hệ điều hành Ubuntu để đạt được các mục tiêu của mình đã nêu ở đây.
Điểm:2
lá cờ jp

Tôi đã thử nghiệm ngay bây giờ với tệp iso Lubuntu 16.04.1 LTS amd64 cũ và đĩa DVD mà tôi đã ghi khi nó còn mới (2016). Tôi đã giải nén từ đĩa DVD với đ,

$ sudo dd if=/dev/sr0 of=dvd.img bs=4096
218880+0 áp phích trong
218880+0 áp phích
Tốc độ 896532480 byte (897 MB, 855 MiB), 95,2247 s, 9,4 MB/s

và so sánh kết quả với tệp iso được lưu trữ của tôi,

$ ls -l lubuntu-16.04.1-desktop-AMD64.iso /media/multimed-2/test/test0/temp/dvd.img
-rw------- 1 nio 1002 896532480 ngày 20 tháng 7 năm 2016 lubuntu-16.04.1-desktop-AMD64.iso
-rw-r--r-- 1 gốc gốc 896532480 ngày 7 tháng 12 12:25 /media/multimed-2/test/test0/temp/dvd.img

$ md5sum lubuntu-16.04.1-desktop-AMD64.iso /media/multimed-2/test/test0/temp/dvd.img
d2d7edc41ea03998e267db607f92b40d lubuntu-16.04.1-desktop-AMD64.iso
d2d7edc41ea03998e267db607f92b40d /media/multimed-2/test/test0/temp/dvd.img

$ sha256sum lubuntu-16.04.1-desktop-amd64.iso /media/multimed-2/test/test0/temp/dvd.img
1b91a43b0101e03b0890428d3e77198c0d35364cf35e38aaea2755d10ace26a7 lubuntu-16.04.1-desktop-AMD64.iso
1b91a43b0101e03b0890428d3e77198c0d35364cf35e38aaea2755d10ace26a7 /media/multimed-2/test/test0/temp/dvd.img

Như bạn có thể thấy, kích thước và tổng kiểm tra khớp nhau.

lá cờ cn
Thật không may, nó không hoạt động với tôi, có thể Ubuntu và các biến thể HĐH Linux khác được tạo ra có kích thước chính xác để lấp đầy tất cả các khu vực đĩa nhưng những gì tôi đang ghi vào DVD không có kích thước được làm tròn chính xác nên một vài bit/byte sẽ bị bỏ lơ lửng trong khu vực khác trong khi phần còn lại, được cho là chứa đầy các số không. Tôi có thể `cat` về 0 với nó nhưng tôi nghĩ có một giải pháp đơn giản hơn cho vấn đề này chỉ với `dd`, có lẽ một số cờ để bỏ qua phần còn lại, tôi không biết, không phải là chuyên gia về công cụ này.
sudodus avatar
lá cờ jp
@Orchid67732, Nếu bạn *biết* kích thước (số byte), bạn có thể sử dụng dd với `count=blocks`. Sẽ hữu ích nếu số byte là bội số chẵn của số lớn, nếu không, bạn phải sử dụng kích thước khối nhỏ (trong trường hợp xấu nhất là bs=1), điều này làm cho dd chậm. Có thể tốt hơn nếu đánh số 0 hoặc sử dụng một số phương pháp khác để làm cho các kích thước khớp với nhau.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.