quanti account utente può ospitare un sistema operativo unix-like? [duplicare]


13

Diciamo che voglio avere un server con il maggior numero possibile di account utente. Quanti sono i massimi?

Voglio milioni di account utente. È pazzo? Ospiterei dozzine di mirror del bilanciamento del carico della scatola e i dati dell'utente verrebbero archiviati su una condivisione di archiviazione altamente disponibile, mentre tutti gli altri dati sono considerati volatili.


"I want millions of user accounts. Is that crazy?"- Sì. Usa una directory per così tanti utenti, non dozzine di mirror per tanti utenti.
MDMarra,

Questo risponde alla tua domanda? Numero massimo di utenti su Linux
malat

Risposte:


22

Teoricamente puoi avere tanti utenti quanti sono gli spazi ID utente supportati. Per determinare ciò su un particolare sistema, controlla la definizione del uid_ttipo. Di solito è definito come unsigned into intsignifica che su piattaforme a 32 bit è possibile creare fino a quasi 4,3 miliardi di utenti. Su piattaforme a 64 bit puoi avere più di 16e18 ID utente diversi.

Tuttavia, altre risorse potrebbero esaurirsi prima di raggiungere questo limite, ad esempio lo spazio su disco. Se si crea una home directory per ciascun utente, anche con solo 1 MB di spazio per ciascun utente, sono necessari oltre 4 PB di spazio di archiviazione. Inoltre, un gran numero di utenti che lasciano i processi in esecuzione in background, pianificando processi cron, aprendo sessioni ftp e / o ssh può creare un grave onere per il sistema.


1
+1 per menzionare le risorse ... Ancora una volta, i sistemi unix-like consentono configurazioni hardware folli.
HT

Sei sicuro della differenza tra 32 e 64 bit? Puoi aggiungere un riferimento? Ecco cosa trovo 1 e 2
malat

8

Fino a quando lo spazio UID è esaurito. I sistemi contemporanei usano numeri interi senza segno a 32 bit, con 65535 e 4294967295 come valori magici per "qualsiasi" / "sconosciuto" / ecc., Quindi c'è spazio per 4294967294 utenti distinti simultanei. I sistemi meno recenti potrebbero comunque mostrare numeri interi senza segno a 16 bit.


1

Altre risposte hanno letteralmente risposto alla domanda del PO relativa a limiti specifici. Considerata la natura di SF anche come riferimento a lungo termine, penso che sia importante sottolineare un avvertimento molto importante sull'approccio che stai contemplando.

Si desidera utilizzare un servizio di directory per gestire gli account utente su questa scala. È esattamente il problema per cui sono stati progettati i servizi di directory [es. OpenLDAP, Active Directory, ecc.].

L'uso di "standard" [1] strumenti utente Unix per gestire più di una manciata di account utente locali è un percorso ben consunto carico di dolore, non si ridimensionerà molto facilmente e - data la descrizione del problema - porterà con ogni probabilità a un significativo riprogettazione della soluzione prescelta quando in realtà non viene ridimensionata orizzontalmente con più server.

[1] In genere funzionano in modo molto simile, ma gli incantesimi esatti variano da piattaforma a piattaforma, a volte sono diversi anche in distribuzioni Linux di eredità simili e, naturalmente, vengono regolarmente cambiati con le versioni di rilascio del sistema operativo. Caveat emptor.


0

Come sopra, sei teoricamente limitato dalle dimensioni int UID non firmate, ma molto probabilmente al momento sarà limitato dalle risorse prima di raggiungere tale limite.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.