2012-07-02 4 views
5

가 나는 다음 두 행는 /etc/security/limits.conf 내 전체 시스템에 추가 -r : 시스템 재부팅 후다른 값이

*  soft rtprio  55 
*  hard rtprio  55 

, 나는에 따라 두 개의 서로 다른 결과를 얻을 수 방법은 컴퓨터에서 내 사용자 계정에 액세스합니다.

[email protected]# ssh [email protected] 

[email protected]# ulimit -r 
55 

그럼 내가 로그 아웃하고 루트

[email protected]# ssh [email protected] 

[email protected]# su - user 
[email protected]# ulimit -r 
0 

나는 적어도 난 그렇게 생각, .bashrc에의하거나 다른 곳에서 어느 특별한 설정이 없거나으로 다시 로그인합니다.

왜 이런 일이 발생합니까?

+0

루트에는 그러한 제한이 없으며'su - user' 다음에 그 값을 상속한다고 생각합니다. –

+0

분명히, su - 은 호출 bash의 환경 제한 설정 인 을 제공합니다. 한계 값을 변경하기 위해 limits.conf에 명시 적으로 설명해야하는 유일한 사용자이기 때문에 루트에서 이 항상 잘못된 ulimit 값을 제공합니다. 나는 그것을 고정 지금은 예상, 감사로 작동합니다 55' rtprio 당신이 옳았 – Blazor

답변

5

sshsu의 PAM 구성을 확인해야합니다. 나는 그들이 같지 않다고 생각합니다. 내 시스템에서 예를 들어

:

$ grep limit /etc/pam.d/su 
# Sets up user limits, please uncomment and read /etc/security/limits.conf 
# (Replaces the use of /etc/limits in old login) 
# session required pam_limits.so 

$ grep limit /etc/pam.d/sshd 
# access limits that are hard to express in sshd_config. 
# Set up user limits from /etc/security/limits.conf. 
session required  pam_limits.so 

당신이 pam_limits 라인이 주석 사례 중 하나에서 볼 수 있듯이. 나는 당신도 이것과 비슷한 것을 가지고 있다고 생각합니다.

+0

다음 위의 명령은 동일한 결과를 준 - 내가 뭘하려 는 '루트 같은 루트에 대한 행을 설정하는 것이 었습니다! – Blazor