Trang chủ » làm thế nào để » Làm thế nào để tắt máy bất ngờ có thể gây hại cho máy tính Linux?

    Làm thế nào để tắt máy bất ngờ có thể gây hại cho máy tính Linux?

    Việc tắt máy đột ngột có gây hại cho Linux như đối với các hệ điều hành khác không? Đọc tiếp khi chúng tôi điều tra các tác động của việc tắt hệ thống thảm khốc trên các hệ thống tệp Linux.

    Phiên hỏi và trả lời hôm nay đến với chúng tôi nhờ sự hỗ trợ của SuperUser - một phân ngành của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều khiển.

    Câu hỏi

    Trình đọc SuperUser User208554 tò mò về cấu trúc tệp Linux và lo ngại về một ứng dụng / cài đặt mà anh ta đang làm việc:

    Tôi đang phát triển một ứng dụng trên bảng nhúng Linux (chạy Debian), ví dụ: Raspberry Pi, Beagle Board / Bone, hoặc olimex. Các bảng hoạt động trên một môi trường mà điện bị cắt bất ngờ (quá phức tạp để đặt PSU, v.v.) và nó sẽ xảy ra mỗi ngày một vài lần. Tôi tự hỏi liệu việc cắt điện đột xuất có gây ra sự cố trên Hệ điều hành Linux không? Nếu đó là điều mà tôi nên lo lắng, bạn sẽ đề xuất điều gì để ngăn chặn thiệt hại trên HĐH chống lại việc cắt điện đột xuất?

    Tái bút Ứng dụng cần ghi một số dữ liệu vào phương tiện lưu trữ (thẻ SD), tôi nghĩ rằng nó sẽ không phù hợp để gắn kết nó dưới dạng chỉ đọc.

    Vậy bản án là gì?

    Câu trả lời

    Người đóng góp SuperUser l0b0 cung cấp một số cái nhìn sâu sắc về hệ thống tệp nhật ký / không ghi nhật ký:

    Điều này phụ thuộc vào

    1. cho dù bạn đang sử dụng một hệ thống tập tin nhật ký và
    2. các ứng dụng có khả năng xử lý bị hủy bỏ tốt như thế nào.

    Ví dụ, xem xét một ứng dụng xử lý một tệp và ghi kết quả khi chúng được tính toán (một dòng đầu ra trên mỗi dòng đầu vào) vào một tệp khác. Nếu nguồn bị cắt trong quá trình xử lý và cùng một ứng dụng được chạy sau khi khởi động lại, nó không thể khởi động lại quá trình xử lý từ đầu tệp đầu vào - điều đó có nghĩa là tệp đầu ra sẽ chứa thông tin trùng lặp.

    Có thể rất khó để nói bất cứ điều gì chắc chắn về một hệ thống phức tạp giả định, nhưng phần mềm Linux ổn định nhất dường như có thể xử lý các sự cố khá độc đáo.

    Stu đề nghị tách hệ điều hành và dữ liệu, cũng như thêm một bản sao lưu pin:

    Để giúp giảm thiểu khả năng tham nhũng của hệ điều hành, có lẽ tốt nhất là nên tách riêng các phân vùng dữ liệu của hệ thống và dữ liệu trên các thẻ SD trên thẻ SD. Bằng cách đó, bạn có thể gắn kết phân vùng của hệ thống và chỉ đọc và sử dụng một FS có khả năng phục hồi cao trên phân vùng dữ liệu.

    Ngoài ra, hầu hết các bo mạch có yêu cầu năng lượng rất thấp, vì vậy có thể dự phòng pin. Có thể sử dụng bảng rider LiPo cho Raspberry Pi như một UPS cơ bản để cung cấp khả năng tắt nguồn khi mất điện.

    Cuối cùng, Jenny D mở rộng về đề xuất hệ thống tệp nhật ký:

    Việc cắt điện bất ngờ có thể gây ra hỏng dữ liệu hệ thống tệp - ví dụ: nếu một quá trình đã bắt đầu ghi vào một tệp, nhưng chưa viết xong, thì tệp đó có thể chỉ được viết một nửa. Bây giờ hãy tưởng tượng nếu việc cắt điện xảy ra khi bạn đang thực hiện một nửa quá trình nâng cấp kernel

    Như l0b0 đã viết, sử dụng hệ thống tệp nhật ký sẽ giúp ích, vì nó sẽ có thể theo dõi những gì đã thực sự hoàn thành. Ngoài thông tin wikipedia mà l0b0 liên kết, bạn có thể quan tâm đến việc đảm bảo ghi nhật ký hệ thống tập tin bảo vệ chống tham nhũng sau khi mất điện.

    Bạn là một lập trình viên rõ ràng cần phải xem xét cẩn thận cách xử lý việc ghi vào các tệp để nó trở thành một quy trình nguyên tử (nghĩa là nó hoàn toàn được thực hiện hoặc hoàn thành, nhưng chưa bao giờ được thực hiện một nửa). Đây là một vấn đề khá phức tạp.


    Có một cái gì đó để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra chủ đề thảo luận đầy đủ ở đây.