Điểm:2

Hạ cánh trong dấu nhắc khẩn cấp systemd sau quá trình sửa chữa khởi động kéo dài. Sự cố: Thiếu FS trong tệp fstab

lá cờ de

Tôi nhận ra rằng đã có một số câu hỏi của những người đã gặp sự cố khi khởi động, nhưng tôi nghĩ trường hợp của tôi là một trường hợp khá đặc biệt, vì vậy tôi đăng một câu hỏi khác với hy vọng giải quyết được một số vấn đề mới.

Tôi đã sửa chữa quá trình khởi động của một máy ảo có lỗi initramfs (initrd.imgvmlinuz tập tin trong /khởi động) từ các hạt nhân không còn được cài đặt nữa và đang cố gắng khởi động từ chúng.

Tôi sắp hoàn thành, nhưng nó cứ khởi động lại vào hệ thống'S chế độ khẩn cấp (nơi nó nói: )

Bạn đang ở chế độ khẩn cấp. Sau khi đăng nhập, gõ "journalctl -xb" để xem nhật ký hệ thống, "systemctl reboot" để khởi động lại, "systemctl default" hoặc "exit" để khởi động vào chế độ mặc định.
Cho mật khẩu gốc để bảo trì
(hoặc nhấn Control-D để tiếp tục):

Tôi đã khởi động từ đĩa CD trực tiếp, gắn 3 phân vùng thích hợp vào /mnt, chroot thành /mnt:

gắn kết/dev/sda3/mnt
gắn kết/dev/sda2/mnt/boot
gắn kết/dev/sda1/mnt/boot/efi
cho tôi trong proc dev dev/pts sys tmp run; thực hiện gắn kết --bind /$i /mnt/$i; xong
chroot / mnt

Tôi đã sửa chữa và khởi động lại.

bây giờ của tôi fstab không gắn kết phân vùng của tôi. Tôi nghĩ nó đã được định cấu hình đúng - UUID được sao chép trực tiếp từ blkid | grep/dev/sda. Tôi không nghĩ rằng nó đã mất bất cứ điều gì.

Dưới đây là các lỗi tôi thấy ngay trước khi chuyển sang lời nhắc chế độ khẩn cấp:

[FAILED] Không thể gắn/khởi động
Xem 'trạng thái systemctl boot.mount' để biết chi tiết.
[DEPEND] Lỗi phụ thuộc đối với Hệ thống tệp cục bộ
[DEPEND] Phụ thuộc không thành công đối với Tắt nâng cấp không giám sát
[DEPEND] Lỗi phụ thuộc đối với /boot/efi

Vì vậy, tất nhiên tôi đã xem xét trạng thái systemctl boot.mount, nhưng nó đang hoạt động (màu xanh lục) và cho biết nó đã được tải, mặc dù /khởi động thư mục trống trừ khi tôi tự gắn kết /dev/sda2.

Có vẻ rất lạ. Tại sao boot.mount nói rằng nó đang tải /khởi động phân vùng nếu rõ ràng là không?

Organic Marble avatar
lá cờ us
Tôi rất thích đọc nó, nhưng để phù hợp với định dạng của trang web này, nó cần phải là một câu hỏi và trả lời. Hầu hết điều này đọc giống như một câu trả lời. Bạn có thể trả lời câu hỏi của riêng mình; xem xét một bản chỉnh sửa để biến điều này thành một câu hỏi và trả lời.
Artur Meinild avatar
lá cờ vn
Xin chào.Bạn có thể gặp nhiều may mắn hơn nếu bạn có thể cụ thể hơn về vấn đề chính xác mà bạn cần câu trả lời. Có rất nhiều văn bản và thật khó để tôi biết phần nào có liên quan đến vấn đề cụ thể của bạn.
AveryFreeman avatar
lá cờ de
Xin chào, vâng, đó là một vấn đề. Lúc đầu thì không, nhưng sau đó tôi đã khắc phục sự cố trong khi đặt câu hỏi. Tôi sẽ cố gắng và cô đọng nó lên một chút.
Organic Marble avatar
lá cờ us
Đã rút lại phiếu bầu kín.
Điểm:2
lá cờ de

Vì vậy, tôi thực sự đã tìm ra vấn đề trong khi viết câu hỏi. Như bạn có thể thấy từ những gì tôi viết lúc đầu, đó là một quá trình rất dài (tôi đã làm việc với nó trong khoảng 2 ngày trước khi tôi muốn nhờ giúp đỡ).

Nếu bạn nhìn vào phần cuối của Q, tôi đã nhận được tin nhắn này từ dmesg trong quá trình khởi động:

[FAILED] Không thể gắn/khởi động
Xem 'trạng thái systemctl boot.mount' để biết chi tiết.

Vì vậy, tất nhiên tôi đã cố gắng trạng thái systemctl boot.mount để xem những gì nó nói, nhưng nó nói boot.mount đang hoạt động (màu xanh lục), nó được tải và hoạt động bình thường, mặc dù /khởi động trống trừ khi tôi tự gắn /dev/sda2 (điều này hoàn toàn ngược lại với những gì tôi mong đợi).

Vì vậy, tôi bắt đầu nghĩ rằng có thể có điều gì đó không ổn với dịch vụ. tôi đã vô hiệu hóa boot.mount mặc dù nó nói nó đã hoạt động bình thường:

vô hiệu hóa systemctl --now boot.mount

Tôi đã cố kích hoạt lại nhưng gặp lỗi:

kích hoạt systemctl --now boot.mount
Không thể bật đơn vị: Đơn vị /run/systemd/generator/boot.mount tạm thời hoặc được tạo

OK, điều đó hợp lý, nó được kích hoạt thông qua quá trình khởi động và không thể được gọi thông qua lệnh của người dùng. Vì vậy, tôi đã cố gắng gắn lại tất cả các thiết bị với:

gắn kết -a

Và thấy rằng có một lỗi trong /etc/fstab tập tin:

lỗi: rw,relatime không phải là hệ thống tệp hợp lệ

(hoặc một thứ gì đó hiệu quả).

Chìa khóa ở đây là, nếu tôi không thử cài đặt hệ thống tệp theo cách thủ công, tôi sẽ không bao giờ nhận được phản hồi đó. Thông báo lỗi từ gắn kết -a người ta nhận được khi fstab chứa cú pháp không đúng là vô cùng hữu ích. Hữu ích hơn rất nhiều so với:

[FAILED] Không thể gắn/khởi động
Xem 'trạng thái systemctl boot.mount' để biết chi tiết.

... và sau đó nhìn thấy một đơn vị systemd "đang hoạt động" cho boot.mount khi nào /khởi động không được gắn kết (mặc dù nó đã làm đưa tôi đến đúng nơi cuối cùng).

Vì vậy, tôi đã chỉnh sửa fstab và nhập thông tin hệ thống tập tin cho /khởi động phân vùng không gắn kết được, sau đó tôi chạy lại gắn kết -a (về cơ bản làm điều tương tự như boot.mount) và nhận được phản hồi tích cực.

Giờ đây, hai phân vùng đang được gắn đúng cách sau khi khởi động lại và tất cả đều ổn ở vùng đất của cải ngựa và mứt cam.

Nếu điều này không giải quyết được bất kỳ vấn đề nào của bạn, thì đây là một số ghi chú bổ sung về quá trình tôi đã trải qua trước khi đi đến điểm mà tôi đang tìm kiếm sự trợ giúp ở trên (vui lòng ngừng đọc sau khi bạn giải quyết được vấn đề của mình):

Vấn đề ban đầu mà tôi gặp phải hai ngày trước là hệ thống đang cố khởi động từ các nhân không còn trên hệ thống. Vì vậy, sau khi khởi động bằng đĩa CD trực tiếp, tôi đã xóa /khởi động nội dung của thư mục (trong đó tất cả các ban đầu tập tin được định vị).

Tôi hình dung tôi sẽ chỉ tạo lại initramfs sử dụng cập nhật-initramfs -c -k tất cả từ các hạt nhân hiện tại mà tôi đã cài đặt, nhưng sau đó tôi biết rằng tôi không thể tạo lại cấu hình hoặc Hệ thống.map tập tin với depmod một mình. Điều này hóa ra lại rắc rối hơn một chút so với những gì tôi đã mặc cả.

Tôi thấy cách dễ nhất để tạo lại hoặc lấy tất cả các tệp này là:

  1. xóa tất cả nội dung của /khởi động,
  2. gỡ cài đặt bất kỳ hình ảnh linux, tiêu đề linuxmô-đun linux tập tin tôi không có ý định sử dụng,
  3. xóa tất cả các thư mục còn lại trong /usr/lib/mô-đun, và sau đó
  4. cài đặt lại hình ảnh linux, mô-đun linuxtiêu đề linux các tệp tôi dự định sử dụng (hai phiên bản chung mới nhất)

Lưu ý: Cài đặt lại 3 loại tệp này Tất cả cùng một lúc là cách tôi quản lý để có được /boot/System.map/boot/config tập tin trở lại - trước khi chỉ cài đặt lại hình ảnh linux các tập tin đã không làm điều đó. Có thể chúng được bao gồm trong mô-đun (mô-đun sẽ có ý nghĩa), hoặc tiêu đề gói, nhưng đây là những gì làm việc cho tôi.

  1. Sau đó tôi chạy cập nhật-grub sau khi cài đặt lại các tệp đó và xác nhận /khởi động đã được điền chính xác.
  2. tôi cũng đã chạy cài đặt bootctl/etc/kernel/postinst.d/zz-udpate-systemd-boot, vì vậy tôi sẽ có systemd-boot được cài đặt như một dự phòng.

Tại một thời điểm sau khi khởi động lại, tôi phải cấu hình lại hệ thống.mục tiêu đến nhiều người dùng.mục tiêu thay vì đồ họa.mục tiêu, có lẽ là do có chrooted với tất cả các mount đó trong một đĩa CD đồ họa trực tiếp để chạy sửa chữa khởi động chương trình vài ngày trước, yêu cầu đồ họa (và tôi tin /dev/pts /tmp/chạy được yêu cầu để có được hiển thị: 0,0 làm việc):

systemctl set-default multi-user.target

Ok đó là về nó. Hy vọng điều này sẽ giúp một ai đó.

Đă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.