Môi trường linux bị cô lập nhẹ


15

Tôi muốn một môi trường Linux (khách) bị cô lập trên máy tính của mình mà tôi có thể gây rối mà không phải lo lắng về máy chủ. Ví dụ: cài đặt rất nhiều thứ từ nguồn mà không có quản lý gói, biến môi trường môi trường gây ô nhiễm, v.v., sau đó sinh ra một môi trường khách khác khi khách cũ quá bừa bộn.

Tôi đã có một số niềm vui khi sử dụng Virtualbox với Tinycore linux, nhưng ít nhất là cách tôi sử dụng nó, tôi không nghĩ rằng việc sử dụng Virtualbox là hoàn toàn cần thiết. Đối với một điều, nếu có thể, tôi muốn sử dụng cùng một hạt nhân như máy chủ của tôi.

Ngoài ra, khi tôi chạy qua hướng dẫn Linux From Scratch, tôi đã tìm hiểu một chút về nó chroot, có vẻ như đó có thể là thứ tôi đang tìm kiếm. Thành thật mà nói, có rất nhiều điều tôi không thực sự hiểu trong LFS, chroot là một trong số họ. Tôi sẽ thử chơi xung quanh vớichroot nếu tôi không sợ nó có thể làm xáo trộn môi trường hiện tại của tôi.

Vì vậy, tôi đang tìm kiếm một chương trình ảo hóa sử dụng thực tế là tôi đang sử dụng linuxbox (tôi đang sử dụng PinguyOS btw), để tăng tốc độ ảo hóa hoặc tham khảo về cách sử dụng chroot như một sân chơi biệt lập.

Câu trả lời:


16

Chroot là môi trường trọng lượng nhẹ nhất có thể phù hợp với bạn. Nó cho phép bạn cài đặt một bản phân phối khác (hoặc một bản cài đặt khác của cùng một bản phân phối), với cùng một người dùng, có cùng cấu hình mạng, v.v. Chroot chỉ cung cấp một số cách ly thô ở cấp hệ thống tệp. Đang duyệt trang này để xem chroot có thể giúp ích, nếu bạn vẫn không chắc chắn những gì chroot có thể và không thể làm.

Nếu bạn đang tìm kiếm bước tiếp theo, LXC hiện được bao gồm trong dòng chính kernel. Một khách LXC (được gọi là container) có hệ thống tệp, quy trình và không gian mạng riêng. Root trong container cũng là root trên máy chủ; LXC bảo vệ chống lại nhiều hành động vô tình của một khách gốc nhưng không chống lại một gốc khách độc hại (đây là một tính năng được lên kế hoạch, xem không gian này ).

Các công nghệ khác có phần giống với LXC là VServerOpenVZ . Một tính năng quan trọng mà OpenVZ cung cấp nhưng không phải VServer hay LXC là các điểm kiểm tra : bạn có thể chụp ảnh nhanh của một máy đang chạy và khôi phục nó sau. Một ứng cử viên khác là Linux chế độ người dùng , chạy một hệ thống Linux hoàn chỉnh bên trong một quy trình chạy như một người dùng bình thường trong máy chủ.

Đối với mục đích thử nghiệm cài đặt hệ điều hành khác, chroot vẫn ổn. Nếu bạn muốn chạy các dịch vụ trong cài đặt thử nghiệm hoặc chơi với mạng, hãy đến LXC. Nếu bạn muốn ảnh chụp nhanh, hãy sử dụng OpenVZ. Nếu bạn muốn một hạt nhân hoàn toàn riêng biệt nhưng ít chi phí bộ nhớ, người dùng chế độ người dùng Linux. Nếu bạn muốn ảnh chụp nhanh và một hạt nhân riêng biệt, hãy sử dụng VirtualBox.


LXC hỗ trợ ảnh chụp nhanh ngay bây giờ.
baptx

5

Docker làm cho LXC dễ sử dụng hơn:

Các tính năng đáng chú ý

Cách ly hệ thống tập tin : mỗi bộ chứa tiến trình chạy trong một hệ thống tập tin gốc hoàn toàn riêng biệt.

Cách ly tài nguyên : tài nguyên hệ thống như cpu và bộ nhớ có thể được phân bổ khác nhau cho từng vùng chứa quy trình, sử dụng các nhóm.

Cách ly mạng : mỗi bộ chứa tiến trình chạy trong không gian tên mạng riêng, với giao diện ảo và địa chỉ IP của chính nó.

Copy-on-write : hệ thống tập tin gốc được tạo bằng cách sử dụng copy-on-write, giúp triển khai cực kỳ nhanh, rẻ bộ nhớ và rẻ đĩa.

Ghi nhật ký : các luồng tiêu chuẩn (stdout / stderr / stdin) của mỗi bộ chứa quy trình được thu thập và ghi lại để truy xuất theo thời gian thực hoặc theo đợt.

Quản lý thay đổi: các thay đổi đối với hệ thống tệp của bộ chứa có thể được cam kết thành một hình ảnh mới và được sử dụng lại để tạo thêm các thùng chứa. Không cần cấu hình khuôn mẫu hoặc thủ công.

Shell tương tác : docker có thể phân bổ giả và gắn vào đầu vào tiêu chuẩn của bất kỳ container nào, ví dụ để chạy shell tương tác vứt đi.

Dưới mui xe

Dưới mui xe, Docker được xây dựng trên các thành phần sau:

  • Các khả năng phân nhóm và không gian tên của nhân Linux

  • AUFS, một hệ thống tập tin liên minh mạnh mẽ với khả năng sao chép trên ghi

  • Ngôn ngữ lập trình Go

  • lxc, một tập hợp các kịch bản tiện lợi để đơn giản hóa việc tạo các thùng chứa linux.


1
Điều này không cung cấp một câu trả lời cho câu hỏi. Để phê bình hoặc yêu cầu làm rõ từ một tác giả, hãy để lại nhận xét bên dưới bài đăng của họ.
Anthon

@Anthon: Tại sao nó không phải là một câu trả lời? Yêu cầu là một "môi trường Linux (khách) bị cô lập" có cùng "nhân với máy chủ của tôi".
Janus Troelsen

@JanusTroelsen, Câu trả lời không trả lời cơ bản câu hỏi có thể bị xóa. Điều này bao gồm các câu trả lời là nhiều hơn một liên kết đến một trang web bên ngoài. Câu hỏi thường gặp Vui lòng giải thích Docker làm gì và nó khác với những phần mềm tương tự khác.
manatwork

2

Nhìn vào OpenVZ hoặc Linux Container, cả hai đều thực hiện một môi trường giả ảo nhẹ với các vùng người dùng duy nhất trên một kernel thông thường.

OpenVZ trưởng thành hơn ở giai đoạn này.


Có, thậm chí được sử dụng trong prod ... Tôi khuyên dùng Xen cho những cách sử dụng nghiêm túc hơn.
Aki

0

Có lẽ điều này có thể giúp bạn: aufs : một hệ thống tập tin thống nhất nhiều lớp nâng cao

Bạn có hệ thống của bạn ở cấp thấp hơn. Trên đầu trang, bạn có thể gắn hệ thống tập tin aufs. Sửa đổi (ghi) chỉ được thực hiện trên hệ thống tệp aufs này, mà không thay đổi hệ thống tệp 'thực' bên dưới.

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.