Có bao nhiêu tài khoản người dùng có thể lưu trữ một hệ điều hành giống như máy chủ hệ điều hành? [bản sao]


13

Giả sử tôi muốn có một máy chủ có càng nhiều tài khoản người dùng càng tốt. Có bao nhiêu là tối đa?

Tôi muốn hàng triệu tài khoản người dùng. Có điên không Tôi sẽ lưu trữ hàng tá gương cân bằng tải của hộp và dữ liệu người dùng sẽ được lưu trữ trên một phần lưu trữ có tính sẵn sàng cao, trong khi tất cả các dữ liệu khác được coi là không ổn định.


"I want millions of user accounts. Is that crazy?"- Đúng. Sử dụng một thư mục cho nhiều người dùng này, không phải hàng tá gương cho nhiều người dùng đó.
MDMarra

Điều này có trả lời câu hỏi của bạn không? Số lượng người dùng tối đa trên Linux
malat

Câu trả lời:


22

Về mặt lý thuyết bạn có thể có nhiều người dùng như không gian ID người dùng hỗ trợ. Để xác định điều này trên một hệ thống cụ thể, hãy kiểm tra định nghĩa của uid_tloại. Nó thường được định nghĩa là unsigned inthoặc intcó nghĩa là trên nền tảng 32 bit, bạn có thể tạo tới gần 4,3 tỷ người dùng. Trên nền tảng 64 bit, bạn có thể có hơn 16e18 ID người dùng khác nhau.

Tuy nhiên, các tài nguyên khác có thể bị cạn kiệt trước khi bạn đạt đến giới hạn này, ví dụ như không gian đĩa. Nếu bạn tạo một thư mục chính cho mỗi người dùng thì thậm chí chỉ với 1 MB dung lượng cho mỗi người dùng, bạn cần hơn 4PB dung lượng lưu trữ. Ngoài ra, số lượng lớn người dùng rời khỏi các quy trình đang chạy trong nền, lên lịch các công việc định kỳ, mở các phiên ftp và / hoặc ssh có thể tạo ra gánh nặng nghiêm trọng cho hệ thống.


1
+1 để đề cập đến tài nguyên ... Sau đó, một lần nữa, các hệ thống giống như cho phép cấu hình phần cứng điên rồ.
HTDutchy

Bạn có chắc chắn về sự khác biệt 32 bit so với 64 bit không? Bạn có thể thêm một tài liệu tham khảo? Đây là những gì tôi tìm thấy 12
malat

8

Cho đến khi không gian UID cạn kiệt. Các hệ thống hiện đại sử dụng các số nguyên không dấu 32 bit, với 65535 và 4294967295 là các giá trị ma thuật cho "bất kỳ" / "không xác định" / v.v., do đó, có chỗ cho 4294967294 người dùng khác biệt đồng thời. Các hệ thống cũ hơn vẫn có thể hiển thị số nguyên không dấu 16 bit.


1

Các câu trả lời khác đã trả lời theo nghĩa đen cho câu hỏi của OP về các giới hạn cụ thể. Do bản chất của SF là một tài liệu tham khảo dài hạn, tôi nghĩ rằng điều quan trọng là chỉ ra một cảnh báo rất quan trọng về cách tiếp cận mà bạn đang suy nghĩ.

Bạn muốn sử dụng một dịch vụ thư mục để quản lý tài khoản người dùng ở quy mô này. Đó chính xác là vấn đề mà các dịch vụ thư mục [ví dụ OpenLDAP, Active Directory và cộng sự] được thiết kế cho.

Sử dụng "tiêu chuẩn" [1] Các công cụ người dùng Unix để quản lý nhiều hơn một số tài khoản người dùng cục bộ là một con đường mòn mòn đầy đau đớn, sẽ không dễ dàng mở rộng và - theo mô tả vấn đề của bạn - rất có thể sẽ dẫn đến một vấn đề đáng kể kiến trúc lại giải pháp đã chọn của bạn khi nó không thực sự mở rộng theo chiều ngang với nhiều máy chủ.

[1] Chúng thường hoạt động rất giống nhau, nhưng các câu thần chú chính xác khác nhau tùy theo nền tảng, đôi khi khác nhau ngay cả trong các bản phát hành Linux tương tự và tất nhiên được thay đổi thường xuyên với các phiên bản phát hành HĐH. Emptor caveat.


0

Như trên, bạn bị giới hạn bởi kích thước int không dấu UID về mặt lý thuyết nhưng rất có thể sẽ bị hạn chế bởi các tài nguyên hiện tại trước khi đạt đến giới hạn nói trên.

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.