Sử dụng fsck để kiểm tra và sửa chữa đĩa mã hóa LUKS?


13

Máy Ubuntu 11.04 của tôi sử dụng mã hóa LUKS để root, trao đổi và trang chủ. Một fsck thường xuyên -n tiết lộ một bộ lỗi tôi cần sửa chữa. fsck yêu cầu ngắt kết nối các phân vùng. Trước luks tôi chỉ cần khởi động từ thanh USB và sửa lỗi chạy fsck từ đó. Các bước để làm điều đó cho các phân vùng được mã hóa LUKS là gì?

Câu trả lời:


26

Phương pháp chính xác phụ thuộc vào cách bạn có luks thiết lập và nếu bạn có LVM trên đầu luks hoặc nếu bạn chỉ có một hệ thống tệp trong khối lượng luks.

Nếu bạn không có LVM ngoài luks thì có lẽ bạn sẽ làm một cái gì đó như thế này.

cryptsetup luksOpen /dev/rawdevice somename
fsck /dev/mapper/somename

# or

cryptsetup luksOpen /dev/sda2 _dev_sda2
fsck /dev/mapper/_dev_sda2

Nếu bạn đã sử dụng tùy chọn LVM trên LUKS do trình cài đặt Debian / Ubuntu cung cấp, thì bạn sẽ cần khởi động LVM. Vì vậy, vgchange -alysau khi mở khối lượng mã hóa, sau đó chạy fsck với /dev/mapper/lvname.

(Nếu các lệnh bị thiếu, bạn có thể cần thực hiện apt-get install cryptsetuptrước. Tương tự nếu bạn cần vgchangelàm apt-get install lvm.)


Vì bất kỳ lý do gì cryptsetup luksOpen /dev/rawdevice somenamekhông hoạt động để cung cấp cho tôi thứ gì đó để chạy fsck, mặc dù nó vẫn hiển thị vgscantốt sau khi vgchange -ay'hoạt động' ... Tôi phải tạo các thiết bị thô bằng tay vgscan --mknodesvà sau đó fscktrên khối lượng logic hiển thị trong vgscanvới fsck /dev/cryptVG/root- Hy vọng điều này sẽ giúp người khác ngoài kia
Dmitri DB

Hừm, dù tôi sử dụng cryptsetuphay cryptdisk_start, tôi cũng nhận được kết quả tương tự khi tôi thử fsck: /dev/mapper/ext_crypt is in use. Tôi đã kiểm tra mountvà nó không được gắn ở bất cứ đâu.
Nikodemus RIP

9

Bạn cần mở âm lượng LUKS trước.

cryptsetup luksOpen /dev/(whatever) someName

Điều này sẽ hỏi bạn mật khẩu, sau đó tạo /dev/mapper/someName, đây là thiết bị văn bản gốc mà bạn có thể chạy fsck. Khi bạn hoàn thành,

cryptsetup luksClose someName

sẽ loại bỏ các /dev/mapper/someNamethiết bị văn bản gốc ,.


1

Các thủ tục nên giống nhau.

Sử dụng thanh USB Debian (7.7.0 amd64, trong trường hợp của tôi), người ta có thể chuyển sang chế độ cứu, xác định phân vùng LUKS, nhắc nhập mật khẩu và ánh xạ nó. Nó cũng xác định và ánh xạ mọi phân vùng LVM có trong đó. Nếu bạn không gắn kết phân vùng gốc, từ dấu nhắc shell, bạn có thể chỉ cầne2fsck -f -c /dev/system_name/partition_name , v.v.

Câu hỏi này đã bốn tuổi, nhưng tôi không nghĩ rằng thủ tục đã thay đổi.


Tuy nhiên, tôi nên chỉ ra rằng thực hiện một fsck -nhệ thống tập tin được gắn kết gần như chắc chắn sẽ báo cáo các lỗi không thực sự tồn tại khi bạn fsckkhông đếm được!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.