Linux - Làm cách nào để tạo một thư mục RW và phần còn lại của hệ thống tệp RO?


0

Tôi đã cấu hình thành công hệ thống tệp Debian Linux của mình ở chế độ chỉ đọc. Tôi đã thực hiện một số thay đổi, tuy nhiên tệp có liên quan đến câu hỏi này là /etc/fstab:

proc            /proc           proc    defaults          0       0
/dev/mmcblk0p1  /boot           vfat    defaults          0       2
/dev/mmcblk0p2  /               ext4    defaults,ro,noatime,errors=remount-ro  0       1
tmpfs           /tmp            tmpfs   nodev,nosuid,size=30M,mode=1777    0    0
tmpfs           /var/log        tmpfs   nodev,nosuid,size=30M,mode=1777    0    0

Điều này đang hoạt động rất tốt, nhưng tôi muốn /homethư mục của mình là "rw" (Tất nhiên, không mất bất kỳ dữ liệu nào), làm thế nào để tôi làm điều đó? Tất cả mọi thứ là trên một ổ cứng trong một phân vùng duy nhất.


2
Bạn không. Sử dụng các phân vùng riêng biệt.
Daniel B

Câu trả lời:


2

Không thể có thư mục đọc-ghi trên hệ thống tệp chỉ đọc. Nếu bạn muốn làm cho các hệ thống tệp của mình chỉ đọc, bạn nên tạo một hệ thống tệp khác /homeđể có chức năng đọc-ghi đó.

  1. Tạo phân vùng bằng fdisk
  2. Chạy mkfs.ext4 /path/to/partition
  3. Di chuyển / nhà đến /home.old ( mv /home /home.old)
  4. mkdir /home
  5. Chỉnh sửa /etc/fstabđể bao gồm hệ thống tập tin mới được tạo của bạn
  6. mount /home
  7. Sao chép tất cả các tệp vào hệ thống tệp mới ( cp /home.old/* /home/)
  8. Xóa tất cả các tệp khỏi hệ thống tệp cũ ( rm -rf /home.old)

2
+1 Để thay đổi kích thước phân vùng mà không mất dữ liệu bạn cũng phải sử dụng resize2fs. Cách đơn giản nhất là thực hiện với nó gparted, đó là một GUI đẹp cho tất cả các tác vụ đó. Khởi động từ đĩa CD trực tiếp hoặc ổ đĩa USB (ví dụ: Ubuntu là một lựa chọn đơn giản và Unetbootin là một công cụ dễ dàng để tạo đĩa USB nếu bạn muốn), sau đó chạy gpartedtrên ổ đĩa; thu nhỏ và tạo khi cần thiết. Sao lưu đầu tiên, tất nhiên.
Jason C

Ngoài ra, có vẻ như OP đang làm điều này trên thẻ SD. Tôi thực sự đã sử dụng chiến lược gần như tương tự sau khi thực sự có 38 trên 40 thẻ SD (38 trong số 38 Kingstons thất bại theo cách xấu, 2 trong số 2 SanDisks sống sót) trong một lần cài đặt trang web thất bại trong vòng một tuần sau khoảng 3 tháng. Tất cả mọi thứ đã được thực hiện ro ngoại trừ một khu vực để cập nhật phần mềm từ xa; / var / cache và / var / log được đặt trên đĩa ram. Một số mẹo: chạy fstrimmột lần trên hệ thống tệp chỉ đọc, gắn hệ thống tệp rw của bạn discardvà nếu nguy cơ mất dữ liệu rw khi mất điện có thể chấp nhận được, hãy tắt ghi nhật ký trên hệ thống rw.
Jason C

Tôi thực sự đang sử dụng SDcard và hệ thống Raspberry Pi. Cảm ơn vì những lời khuyên.
Xin chào thế giới

Tôi có thể đạt được kết quả tương tự mà không làm hỏng mọi thứ ở cấp độ hệ thống tập tin không? Tôi có thể làm cho FS Read-write và sau đó sử dụng chmod trên tất cả các thư mục để làm cho chúng chỉ đọc và loại trừ / home. Vấn đề duy nhất là root sẽ không quan tâm đến chmod.
Xin chào thế giới

Tất nhiên là bạn có thể, nhưng đó không phải là những gì bạn đã hỏi;) (một vấn đề phổ biến trên các trang web Hỏi & Đáp nơi mọi người không thêm câu chuyện nền vào câu hỏi của họ, xem vấn đề XY ) Và như bạn đã nói, root vẫn có thể truy cập tất cả các tệp .
mtak
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.