2013-03-25 17 views
6

Sto lavorando a un centOS 5.5 OS.pam_appl.h e pam_misc.h mancanti, nel codice sorgente rshd.c

Mostra l'errore che mancano i file /security/pam_appl.h e /security/misc.h.

In realtà il mio rshd.c non carica il modulo PAM, potrebbe essere mettendo queste librerie, mi aiuta a lavorare bene con mio rshd. Ecco perché ho postato questa domanda.

Errore: -

rshd.c:90:31: error: security/pam_appl.h: No such file or directory 
rshd.c:91:31: error: security/pam_misc.h: No such file or directory 

che cerco molto, ma non ha ottenuto alcun rpm utile che dà a questi file.

Alcuni collegamenti sono here. Ma non adatto a centOS.

Aiutami. Dimmi come posso superare questo problema.

Edit senza 1

vostro terzo anello sembra utile. Quando provo ad installare pam-devel, mostra qualche errore.

Quando eseguo

./configure --prefix=/usr \ 
      --sysconfdir=/etc \ 
      --docdir=/usr/share/doc/Linux-PAM-1.1.6 \ 
      --disable-nis && 
make 

si verifica la presenza di alcune variabili, allora fa file oggetto, ma alla fine si vede,

make[3]: *** [pam_xauth.lo] Error 1 
make[3]: Leaving directory `~/Linux-PAM-1.1.6/modules/pam_xauth' 
make[2]: *** [all-recursive] Error 1 
make[2]: Leaving directory `~/Linux-PAM-1.1.6/modules' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `~/Linux-PAM-1.1.6' 
make: *** [all] Error 2 

Modifica No. 2

Come ho seguito il tuo comando, alla fine mi mostra l'errore seguente.

Questo errore è venuto, quando corro make && make install

pam_xauth.c:64:27: error: selinux/label.h: No such file or directory 
pam_xauth.c: In function âpam_sm_open_sessionâ: 
pam_xauth.c:616: error: âSELABEL_CTX_FILEâ undeclared (first use in this function) 
pam_xauth.c:616: error: (Each undeclared identifier is reported only once 
pam_xauth.c:616: error: for each function it appears in.) 
pam_xauth.c:616: warning: initialization makes pointer from integer without a cast 
make[3]: *** [pam_xauth.lo] Error 1 
make[3]: Leaving directory `/root/Linux-PAM-1.1.6/modules/pam_xauth' 
make[2]: *** [all-recursive] Error 1 
make[2]: Leaving directory `/root/Linux-PAM-1.1.6/modules' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/root/Linux-PAM-1.1.6' 
make: *** [all] Error 2 
+0

Perché pensi che queste intestazioni dovrebbero esistere? Cosa stai cercando di fare? – bmargulies

+0

rsh non è aperto e legge i moduli pam e limits.conf. Quando eseguo 'strace' di comando' rrsh localhost ulimit -n'. Non mostra alcun file del modulo PAM nella chiamata di sistema 'open'. Getta '1024', ma ci si aspetta che lanci' 13000' come '/ etc/security/limits.conf' contiene' 13000'. Ecco perché voglio eseguire il debug del mio codice e provare ad aggiungere queste librerie. Penso, ora capisci perché ho bisogno di questi. – devsda

+0

Sulla tua piattaforma, se cerchi da root puoi trovare quei file? Il percorso è corretto? ('stdinclude/security/xxx.h') – Mike

risposta

9

Al momento non ho CentOS, ma sembra che questo sia un problema comune. Vedere here per informazioni, si suggerisce di installare pam-devel in modo da non dover costruire da sorgente tramite:

yum install pam-devel 

Sembra ogni volta trovo un site dove il problem è uguali ai suoi la correzione è di installare Questo. Sto scaricando CentOS 5.5 per fare un tentativo ora, ma hai appena provato a eseguire quel comando?

Se è stato installato questo e non è ancora trovare i file header mi piacerebbe dare a questo una prova:

cd/
sudo find . -name "pam_appl.h" 
sudo find . -name "pam_misc.h" 

E 'possibile che essi sono stati installati e non sono andate nel vostro standard includono percorso o non è entrato nella directory security/, nel qual caso è necessario spostarli o cambiare il modo in cui l'intestazione è inclusa nel codice.

Nota per i comandi sudo è necessario inserire la password.

+0

Ho trovato le librerie. Grazie. :) Ma il mio problema principale è ancora lì. Possiamo discutere tramite chat, per favore. Voglio risolverlo. – devsda

+0

@devsda - spara un po 'di pensieri qui, aprirò una stanza quando torno e potremo parlare. Devo uscire per qualche ora. Fammi sapere quali problemi hai e vedrò se riusciremo a risolverli. Sono contento che abbiamo trovato i file – Mike

+0

Ci scusiamo per il ritardo nell'assegnarvi la mia reputazione appena guadagnata. Risolve il mio problema. Ho anche accettato la tua risposta. Grazie ancora per il vostro sostegno. – devsda

3

È necessario il numero di giri per pam-devel, disponibile per CentOS here. In alternativa, è possibile scaricare pam da here e installarlo localmente.

Edit: per compilarlo, questo funziona bene sul mio sistema:

wget http://linux-pam.org/library/Linux-PAM-1.1.6.tar.bz2 
tar xvjf Linux-PAM-1.1.6.tar.bz2 
cd Linux-PAM-1.1.6/ 
./configure --prefix=$HOME/local 
make && make install 

In caso contrario, si prega di segnalare gli errori del compilatore.

+0

Si prega di selezionare Modifica no. 1, mostra il problema si verifica durante seguendo le tue istruzioni. – devsda

+0

Prima di tutto mi dispiace per la risposta in ritardo. Ho generato i comandi impartiti, ma mostra un errore durante l'esecuzione dell'ultimo comando. Vedi quegli errori in Modifica n. 2. Per favore. – devsda

+0

puoi pubblicare l'output dell'errore di compilazione? –

1

Per le persone che trovano questo attraverso i motori di ricerca, i seguenti ha lavorato per me su CentOS 7:

yum install pam-devel 
0

se qualcuno è alla ricerca di Debian/Ubuntu, provate questo sudo apt-get install libpam0g-dev

+0

Grazie fratello –