오늘은 대한입니다.
sun's longitude:299 59 31.35 
· 자유게시판 · 묻고답하기 · 알파문서 · RPMS list
· 사용자문서 · 팁/FAQ모음 · 리눅스Links · 자료실
· 서버정보 · 운영자 · Books/FAQ · FreeBSD
/board/read.php:소스보기  

질문과 답변 게시판입니다.

현재 실시간으로 이곳 서버의 설정파일(몇개)를 보여주고 있습니다.
서버의 설정내용에 관한 질문은 먼저 이곳 서버의 설정내용을 참고하시길 바랍니다.

[*** 쓰기 금지단어 패턴 ***]
글 본문 중간에 업로드할 이미지를 추가하는 방법 : @@이미지이름@@
ex) @@foo.gif@@
1340 번 글의 답장글: Re: etc 디렉토리를 몽땅 일반계정자로 바뀌었을때...
글쓴이: 산이 [홈페이지] 글쓴날: 2003년 02월 24일 23:51:23 월(저녁) 조회: 896
[초보자]님이 남기신 글:

>수고하십니다.

>작업을 하다가 어처구니 없게도
>/etc 방과 그 외 모든 관련 방들이 일반계정의 소유와
그룹으로
>변경이 되어버렸습니다.
 T.T
>
>다시 root로 되돌릴 방법이 없나요?
>
>루트권한으로 변경할려면 요렇게 나오네요
>su: cannot set groups: Operation not permitted
>
>다른 방법이 없을까요???
>
>답변 부탁드립니다. 어처구니 없는 초보가...T.T 

========================================

헙 그런 치명적인 실수를...

일단 바뀌 소유자와 그룹의
uid 와 gid를 알아냅니다.

여기에서는 san2.san2(500.500)
을 예를 듭니다.

$ id san2 (바뀐 유저)
uid=500(san2) gid=500(san2) groups=500(san2)

$ ls -l /bin/su
-rwsr-xr-x    1 root     root        14224 10월 27  2000 /bin/su

이렇게 되어 있어야 정상인데

-rwsr-xr-x    1 san2     san2        14224 10월 27  2000 /bin/su

이렇게 되어 있을 겁니다.

즉 /bin/su 파일은 반드시 uid가 0인 소유자로
설정되어 있어야 정상적으로 작동합니다.

바꾸어 말하면 /bin/su 파일은 화면에 출력되는 user.group 에는
상관없이 해당 user의 uid를 반드시 0 으로 바꾸어
줘야 합니다.

uid를 0으로 바꾸어주기 위해서는 /etc/passwd 파일을 편집해야
하는데
현재 /etc/passwd 파일의 소유자인 san2와 uid가 0인 유저만
편집가능합니다.

현재 /etc/passwd 파일의 소유자가 san2이므로 san2 유저로
로그인되어 있는 상태이어야 합니다.

/etc/passwd 파일을 편집하기 전에 반드시 숙지해야할 사항이
있습니다.

즉 /etc/passwd 파일을 편집한 후에 해당 유저로 다시 로그인하여
새로운 uid gid 값을 얻어야 하는데 편집후 해당 유저로
로그인 안되는 경우가 있을 수 있습니다.

예를들어 터미널을 이용하여 원격에서 ssh로 접근하면
기본적으로
uid가 0인 유저는 로그인하지 못하도록 되어 있습니다.

다시바꾸어 말하면
ssh 나 telnet 등을 이용하여 원격에서 작업할 경우는 상당한
제약이 많이 따릅니다. 이 제약을 풀어주기 위해서 sshd나 telnet
데몬
의 설정을 바꾸어줘야하는데
 이것 역시 현재 로그인되어있는

uid가 0이 아니기 때문에 어렵습니다.

만약 현재 로그인 되어 있는 유저의 권한으로 sshd 나 telnet
데몬의
설정(uid가 0인 유저로 로그인 가능하도록)을 바꿀 수 있다면
그렇게 해줘야 합니다.

반면
위의 방법(원격으로 uid가 0인 유저로 접근가능)으로
로그인되지
않으면 직접 모니터앞에서 작업이 가능한 콘솔에서 접근해야
합니다.

정리하면
/etc/passwd 파일의 uid가 0인 유저(일반적으로
 root)로
어떠한 방법으로든지 로그인이 가능하도록 설정해줘야
합니다.
만약 /etc/passwd 파일을 수정하지 않고 곧바로 root 로 로그인할
수
있는 상황이라면 아주 쉽습니다.


....

[콘솔모드에서 작업할 경우]

곧바로 root로 로그인하여
/bin/su 파일의 소유자와 그룹, 그외 다른 파일의
소유자와 그룹을 변경하면 됩니다.


[터미널모드에서
 작업할 경우]

/etc/passwd 파일에서
기존의 root를 root0로 uid와 gid를 1000 정도록 각각
수정하고(root ID는 헷갈리므로 root0 정도로 수정함)

현재 로그인되어 있는 유저(san2)에 대해서
유저 ID는 그대로 두고 uid와 gid를 0 으로 각각 수정하고
저장함

san2 유저가 새로운 uid 인 0의 값을 값도록 다시 로그인해야
하는데
원격에서 접속이 되지 않는다면 콘솔에서 작업해야 합니다.





 
이전글 : etc 디렉토리를 몽땅 일반계정자로 바뀌었을때...
다음글 : 답변감사합니다.^^  
 from 61.254.75.40
JS(Redhands)Board 0.4 +@

etc 디렉토리를 몽땅 일반계정자로 바뀌었을때... 답변감사합니다.^^
인쇄용 


apache lighttpd linuxchannel.net 
Copyright 1997-2026. linuxchannel.net. All rights reserved.

Page loading: 0.01(server) + (network) + (browser) seconds