Tạo subvolume btrfs như @ hoặc @home


11

Bị hấp dẫn bởi btrfs, tôi quyết định chơi đồ chơi với nó trong VM. Cài đặt hoạt động tốt miễn là tôi nhớ đặt /boottrên một phân vùng riêng và tất cả dường như hoạt động tốt.

Những gì tôi muốn làm là tạo một subvolume riêng cho dữ liệu hàng loạt với các cài đặt khác với những thứ như @@home. btrfs subvolume create datasẽ làm điều đó cho tôi, nhưng tôi tò mò tại sao nó cứ đặt tên nó @/data(hoặc những thứ tương tự khi tôi thử /datahoặc @data). Có một cách đặc biệt để tạo các subvolume như thế @@homevì vậy subvolume dữ liệu của tôi sẽ hiển thị dưới dạng @data? (và: sự khác biệt chính xác giữa các chương trình đặt tên là gì?)


Thông tin thêm:

  • ubfox 12.04.2, chạy với tư cách là khách KVM trên máy chủ mint15;
  • kernel 3.8.0-27-generic từ ubfox-x-swat (cổng sau hiếm);
  • btrfs sử dụng hai thiết bị /dev/sda/dev/sdb
  • /dev/sda/dev/sdblà các phân vùng trên đĩa không được sử dụng bởi hệ điều hành máy chủ

Câu trả lời:


13

Thở dài , dường như tôi đã đăng một chút quá sớm, với một chút giúp đỡ của Zosma toàn năng trên IRC, chúng tôi đã tìm ra cách thức hoạt động của nó.

Subvolume @@homelà con của root btrfs, vì vậy /thực sự không phải là root của hệ thống tập tin. UUID của root btrfs được cung cấp /etc/fstabhai lần, cung cấp các mount cho //home. Gắn gốc thực sự của hệ thống tệp cho thấy các tệp con được tạo bởi trình cài đặt:

root@box:~# mkdir /mnt/btrfs
root@box:~# mount UUID=f8963df3-1320-4bc0-a125-62be185b029e /mnt/btrfs
root@box:~# ls /mnt/btrfs
@  @home

Vì vậy, đó là nơi họ đã đi! Tạo một subvolume mới theo cách chính xác mà trình cài đặt Ubuntu đã làm bây giờ thật dễ dàng:

root@box:~# btrfs subvolume create /mnt/btrfs/@data
Create subvolume '/mnt/btrfs/@data'

Bây giờ, khi chúng tôi đã tạo một subvolume trong root btrfs thay vì trong hệ thống tập tin gốc để cài đặt, /data/nó sẽ không tự hiển thị. May mắn thay, việc sao chép thủ thuật được trình cài đặt sử dụng bằng cách kiểm tra /etc/fstabvà thêm một lần gắn kết khác cho /data:

UUID=f8963df3-1320-4bc0-a125-62be185b029e /data  btrfs  defaults,subvol=@data 0 2

Bước cuối cùng là tạo điểm gắn kết : mkdir /data. Sau khi khởi động lại, chúng ta sẽ có một /datathư mục được gắn từ một subvolume btrfs riêng.

… Lợi nhuận!


5

Cài đặt hoạt động tốt miễn là tôi nhớ đặt / khởi động trên một phân vùng riêng

Bạn không cần phải có boot / boot riêng. GRUB2 có thể đọc và khởi động Linux từ btrfs.

Những gì tôi muốn làm là tạo một subvolume riêng cho dữ liệu hàng loạt với các cài đặt khác với những thứ như @ và @home.

Nếu bạn đang nói về việc gắn subvolume với các tùy chọn gắn khác nhau , hãy lưu ý rằng hiện tại (tháng 11 năm 2013) chúng không được hỗ trợ: theo Câu hỏi thường gặp của Btrfs, " Tôi có thể gắn subvolume với các tùy chọn gắn khác nhau không? ", Hiện tại chỉ dành riêng cho btrfs tùy chọn không được hỗ trợ hoặc không được thực hiện. Tuy nhiên, các nhà phát triển có kế hoạch thực hiện nó trong tương lai.

btrfs subvolume tạo dữ liệu sẽ làm điều đó cho tôi, nhưng tôi tò mò tại sao nó cứ đặt tên nó là @ / data (hoặc những thứ tương tự khi tôi thử / data hoặc @data)

Theo mặc định, trình cài đặt Ubiquity của Ubuntu tạo ra các tệp con @@hometrong hệ thống tệp và gốc Ubuntu của bạn thực sự nằm trong tệp con @.

Có cách nào đặc biệt để tạo các subvolume như @ và @home để subvolume dữ liệu của tôi sẽ hiển thị dưới dạng @data không? (và: sự khác biệt chính xác giữa các chương trình đặt tên là gì?)

@@homelà các tên tùy ý được chọn bởi trình cài đặt, không có ý nghĩa bên ngoài /etc/fstab. Trên thực tế, tôi thường đổi tên chúng thành các tên cụ thể hơn, để tôi có thể có nhiều bản phân phối được cài đặt Ubiquity trên cùng các btrfs, miễn là tôi nhớ cập nhật fstab của chúng.

Giải thích thêm về subvolume tại Funtoo.org - BTRFS .


Cảm ơn cho một bổ sung kỹ lưỡng ở đây; nhiều thông tin hữu ích :)
akaIDIOT
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.