GNU/Linux >> Linux Esercitazione >  >> Linux

[Linux]:SSH Impossibile passare a un utente specifico con un errore "su:impossibile impostare l'ID utente:risorsa temporaneamente non disponibile"

Uno dei miei colleghi ha riscontrato il problema di non essere in grado di accedere a un determinato account utente su una macchina Linux. Tuttavia, sono stato in grado di accedere a un altro account sulla stessa macchina, ma non a quello che il mio collega desidera effettivamente. Anche io ho provato a passare (su -) dal mio account utente sulla stessa macchina al suo account, ma vedo solo un messaggio di errore come "su:impossibile impostare l'id utente:risorsa temporaneamente non disponibile “. Bene, quel messaggio di errore ci ha fornito un suggerimento che il problema potrebbe riguardare un account stesso e non il computer.

Di seguito è riportato l'istantanea del messaggio di errore:

$su - swift
Password:
su: cannot set user id: Resource temporarily unavailable

La causa potrebbe essere dovuta al "limite di esecuzione del processo" dell'utente superato. Per verificarlo, ho eseguito il comando seguente.

$ ps -eLF|grep swift | wc -l
1026

Dove "-L L'opzione "visualizza tutti i processi per l'account utente "swift".

Scopri la procedura per utenti massimi consentito utilizzando il comando seguente:

$ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) 1024
pending signals                 (-i) 514963
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 1024
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

Nel caso precedente, 1026 è maggiore del massimo consentito di 1024. La soluzione è aumentare il numero massimo di processi consentiti per un account utente.

Soluzione:

1. Il limite del processo può essere aumentato modificando:/etc/security/limits.conf (è necessario il privilegio di root per farlo)

swift hard nproc 4096

Non è necessario riavviare alcun servizio.

2. Se non disponi del privilegio di root, l'utente può aumentare il limite utilizzando il comando seguente.

$ulimit -u 4096

3. interrompere eventuali processi indesiderati

Questo è tutto! Il mio collega ha lasciato il posto con un grande sorriso stampato in faccia.


Linux
  1. Come configurare un sudo Passa a un altro utente che non ha password o set di chiavi ssh in Linux

  2. creazione di collegamento simbolico:errore di protocollo

  3. SSH con authorized_keys su un sistema Ubuntu con homedir crittografato?

  4. Monta dispositivo con diritti utente specifici

  5. Come usare ssh come un altro utente

Come impostare o modificare l'agente utente con curl

Disabilita l'autenticazione con password SSH per utenti o gruppi specifici

Come disabilitare l'accesso SSH a un utente specifico in Linux

Controllo dell'utilizzo delle risorse del sistema con il comando Ulimit

Correzione dell'errore del tubo rotto con la connessione SSH

fork:retry:Risorsa temporaneamente non disponibile