Có lẽ mọi thứ bạn muốn biết đều có ở đây trên các trang " Hệ thống khởi tạo tranh luận để sử dụng " mà dự án Debian đưa ra xung quanh để đưa ra quyết định nên sử dụng hệ thống inits nào. Trong trang đó là một liên kết riêng cho mỗi lựa chọn của initsystems.
Đối với một primer trên Systemd, trang này có khá nhiều thứ người ta cần biết để bắt đầu với nó, RHEL7: Cách bắt đầu với Systemd .
Các tài nguyên bổ sung mà tôi thấy hữu ích trong việc hiểu rõ hơn về 2 lựa chọn chính tôi cũng sẽ đọc các trang Wikipedia về các công nghệ tương ứng:
Dự án Gentoo cũng duy trì một so sánh tốt đẹp về một số tính năng chính trên các initsytems khác nhau:
Tôi nhận câu hỏi của bạn
Q # 1: Systemd so với các hệ thống init khác như thế nào?
Đây là một câu hỏi rất khó giải quyết trong không gian của câu trả lời SE, vì vậy tôi muốn nói đến các nguồn khác nhau mà tôi đã tham khảo ở trên. Tôi sẽ nói điều này mặc dù. Khi đọc qua nhiều bài viết về systemd
các lựa chọn thay thế, nó đang cố gắng giải quyết nhiều khía cạnh của những công cụ trước đây được sử dụng để khởi động dịch vụ trên các hệ thống Linux. Nó có một thiết kế rất chu đáo và đang cố gắng cung cấp nó theo một cách rất mô-đun.
thành phần systemd
Vì vậy, IMO, tôi sẽ nói rằng nó so sánh rất thuận lợi cả về nỗ lực trong thiết kế, thực hiện thiết kế đó và việc áp dụng nó bởi một số bản phân phối Linux lớn hơn.
Q # 2: Điều gì làm nó khác biệt - nó có thể làm gì mà các hệ thống init khác không thể?
Có rất nhiều điều sytemd
có thể làm mà các hệ thống khác không thể làm được. Có lẽ 3 tính năng mạnh nhất của nó là:
- Ghi nhật ký
- Giới hạn tài nguyên
- Xử lý daemon mà ngã ba
1. đăng nhập
Về mặt đăng nhập, systemd
đã thiết lập một hệ thống ghi nhật ký mới gọi là "Nhật ký", dịch vụ được gọi systemd-journald.service
. Đây là chủ đề riêng của nó, bạn có thể đọc thêm về nó ở đây trong bài viết này có tiêu đề: Giới thiệu Tạp chí . Đây là một ví dụ về người dùng, "harald", đăng nhập.
_SERVICE=systemd-logind.service
MESSAGE=User harald logged in
MESSAGE_ID=422bc3d271414bc8bc9570f222f24a9
_EXE=/lib/systemd/systemd-logind
_COMM=systemd-logind
_CMDLINE=/lib/systemd/systemd-logind
_PID=4711
_UID=0
_GID=0
_SYSTEMD_CGROUP=/system/systemd-logind.service
_CGROUPS=cpu:/system/systemd-logind.service
PRIORITY=6
_BOOT_ID=422bc3d271414bc8bc95870f222f24a9
_MACHINE_ID=c686f3b205dd48e0b43ceb6eda479721
_HOSTNAME=waldi
LOGIN_USER=500
2 & 3. Giới hạn tài nguyên & daemon ngã ba
systemd
sử dụng một cách tiếp cận mới ở đây là sử dụng cgroups
để chứa và giới hạn tài nguyên cho bất kỳ dịch vụ nào yêu cầu giả mạo hoặc giới hạn quyền truy cập vào tài nguyên.
đoạn trích
Systemd có một giải pháp rất thông minh cho vấn đề theo dõi daemon mà ngã ba, tình cờ xảy ra để xử lý giới hạn tài nguyên cùng một lúc. Trong đó Upstart sử dụng ptrace để xem forking, systemd chạy từng daemon trong một nhóm điều khiển (yêu cầu Linux 2.6.24 trở lên) mà từ đó nó không thể thoát được với bất kỳ số lượng forking nào. Điều này cho phép giới hạn tài nguyên dễ dàng, cả cho da và không giả da, vì các nhóm kiểm soát được tạo ra cho loại điều này.
Nguồn: Daemon Showdown: Upstart vs. Runit vs. Systemd vs. Circus vs. God
Q # 3: Có gì để mất khi chuyển sang hệ thống init khác không?
Có lẽ sự cảnh báo lớn nhất để chuyển sang systemd qua Upstart hoặc sysV init là phải nắm lấy rất nhiều phức tạp mới. Systemd có rất nhiều bộ phận chuyển động và cực kỳ giàu tính năng và với các khả năng được thêm vào đó, bạn có thể sẽ dành một lượng thời gian hợp lý để hiểu được cách thức hoạt động của tất cả.
Q # 4: Làm thế nào để quản trị systemd so với những người khác?
Như đã nêu trong câu trả lời trên của tôi cho Q # 3. Tôi xin nhắc lại ở đây một lần nữa. Khi sysV init khá đơn giản để học cách quản lý và điều hướng trong vài giờ đến vài ngày, Upstart có thể sẽ khiến bạn mất một tuần hoặc hơn để tăng tốc, trong khi systemd có thể sẽ khiến bạn mất nhiều thời gian hơn, tôi dự đoán sẽ mất nhiều thời gian vài tuần để có đủ kiến thức đáng chú ý về nó, nơi tôi có thể vừa tạo ra .service
các tệp của riêng mình , vừa dừng / bắt đầu dịch vụ một cách dễ dàng như bây giờ tôi thích với sysV init.
Tài liệu tham khảo