프로 세 스 제어 사용자 표식

940 단어 사용자
모든 프로 세 스 는 실제 사용자 ID 와 그룹 ID 를 얻 을 수 있 습 니 다.하지만 이 프로그램 을 실행 하 는 사용자 로그 인 이름 을 찾 고 싶 을 때 도 있다.getpuid (getuid () 를 호출 할 수 있 습 니 다. 그러나 한 사용자 가 여러 개의 로그 인 이름 을 가지 고 있다 면 이 로그 인 이름 들 은 같은 사용자 ID 에 대응 합 니 다. 그러면 어떻게 되 겠 습 니까?(한 사람 은 암호 파일 에 여러 개의 로그 인 항목 이 있 을 수 있 습 니 다. 사용자 ID 는 같 지만 로그 인 셸 은 다 릅 니 다.) 시스템 은 보통 사용자 가 로그 인 할 때 사용 하 는 이름 을 기록 합 니 다. getlogin 함수 로 로그 인 이름 을 가 져 올 수 있 습 니 다.
#include <unistd.h>

char *getlogin(void);

   :                 ,      NULL

이 함 수 를 호출 하 는 프로 세 스 가 사용자 가 로그 인 할 때 사용 하 는 터미널 에 연결 되 지 않 으 면 이 함수 가 실 패 됩 니 다.일반적으로 이 프로 세 스 를 데 몬 (daemon) 이 라 고 부 릅 니 다.
로그 인 이름 을 제시 하면 getpwnam 에서 암호 파일 에서 사용자 의 해당 기록 을 찾 아 로그 인 셸 등 을 확인 할 수 있 습 니 다.
 
이 박문 의 내용 은 '유 닉 스 환경 고급 프로 그래 밍' (2 판) 에서 발췌 한 것 으로 개인 학습 기록 에 만 사용 된다.이 책 에 대하 여 참고 할 수 있 습 니 다.

좋은 웹페이지 즐겨찾기