그런데 위 방법을 수행하니 sudo를 사용하지 않아도 되는 반면,
다음과 같은 현상이 발생하였습니다.
(사용자 계정명은 임의로 clowk 라고 합니다)
◆ 부팅시 기존에는 [clowk] [기타] 두가지 선택지가 존재했었으나,
이것이 모두 사라지고 [로그인] 버튼 하나만 남아있습니다.
(로그인 버튼을 누르고 clowk을 입력하면 로그인 됩니다)
◆ 터미널 등에서 다음와 같이 표기됩니다
기존 : clowk@clowk-desktop $
적용후 : root@clowk-desktop #
다시 말해, 루트 계정으로 로그인 한 상태와 같이 출력됩니다.
◆ 위 현상을 뒷받침하듯이, root 계정으로 로그인했을때 발생하는 문제점들이 생겼습니다.
부팅하면 항상 기본 소리크기가 0 으로 잡혀있습니다.
장치 작동은 되는 반면에, 장치가 잡히지는 않습니다.
(예를 들어, 소리는 나오는데 [시스템] - [기본 설정] - [사운드]로 가면
"사운드 시스템이 응답하기를 기다립니다" 메시지만 계속 출력됩니다)
여러 가지 바뀐 점들이 있는데, 종합해서 말씀드리자면
[color=#FF4000:1ld418ru]기존 계정 clowk에 root 권한을 부여한 효과가 아니라
로그인 때 입력하는 계정명만 clowk일 뿐, root로 로그인 한 것과 동일한 상태가 되버립니다.[/color:1ld418ru]
(clowk에서 지정한 사용자 환경설정, OS 옵션설정 등이 날아가버리고, root 설정이 되버립니다)
… 다른 해결책은 없을까요? ㅠ
[quote="yemharc":1ld418ru]/etc/passwd
파일을 열고 자신의 사용자 계정명을 찾으신 다음에
ex)
yemharc1000:1000:yemharc…
라고 되어 있는 부분의 숫자를 모두 0으로 바꿔주세요
yemharc0:0:yemharc…
같은 형태가 되면 됩니다.
P.S.
그러고 보니 아래쪽에 root계정 설정연동(?) 물어보셨었군요.
…왜 이 생각을 못했을까요 (…)[/quote:1ld418ru]
일단 제가 쓰는 방법이 정확한 건지는 잘 모르겠습니다.(전 컴퓨터 관련 일을 하지 않으므로 권한문제도 잘 모릅니다.)
하지만 셋유아이디, 셋지아이디란 방법 (아마 유저권한세팅이나 그룹권한 세팅 같습니다.)을 써서 현재 사용하고 있습니다.
mpd 를 시동하거나 설정 변경할 때 루트권한이 필요한데 이게 귀찮아서 찾아본 방법이고 현재 아무 문제없이 쓰고 있습니다.
즉, chmod 755 라고 하면 -rwxr-xr-x 란 권한이 생기고, chmod +w 라고 하면 쓰기권한이 생기는 것처럼…
마찬가지로 chmod +s 라고 하면 소유자나 그룹이 루트권한인 것처럼 실행됩니다.
chmod 4xxx 형식 (= chmod u+s) 이 유저에게 권한을 주는 것이고, chmod 2xxx 꼴(= chmod g+s )이 그룹에 권한을 주는 것입니다.
이외에도 chmod 10xxx 꼴로 스틱키비트를 설정하고 공유폴더로 사용한다는데 이건 정확히 무슨 뜻인지를 몰라서 해 본 적이 없습니다.
아무튼 결론은
[code:1nrja25l] sudo chmod +s /path/filename.bin [/code:1nrja25l]
처럼 해 보시라는 겁니다. 이렇게 파일에 권한변경을 한 이후에 그 파일을 유저가 실행시키면 바로 동작합니다.
사용자 유저가 abcd 라면 filename.bin 을 실행할 동안은 abcd 가 root 처럼 동작하며 실행시 암호도 물어보지 않을 겁니다. 제 경험상 그렇더군요.
ls -l /path/filename.bin 처럼 확인해 보면 파일 권한이 -rwsr-s-r-x 처럼 x 자리에 s가 대신한 걸 확인할 수 있습니다.
chmod를 이용한 방법은 이미 사용해 보았지만,
원체 명령어가 아니라 장치 접근 권한(?) 쪽이 문제가 있는터라 별다른 효력을 보이지 못하였습니다.
파일 실행이나 명령어 수행 자체는 아무런 문제가 없는데,
프로그램 내의 함수가 특정 장치(인터페이스)에 접근할 때,
개인사용자인지 root인지에 따라 접근 권한이 다르기 때문에 결과값이 다르게 나오거든요…
위에서 들은 예처럼, eth0를 반환하는 함수가 있다면
sudo ./filename으로 할 경우 정상적으로 eth0을 반환하지만
단순히 ./filename 만을 해준다면, NULL을 반환하거나, eth0가 아닌 다른 장치(순차접근 함수라서)를 반환합니다.
약간 편법이지만 bash 였나 sh 였나를 수정해서 간단히 root 권한을 따내는 방법이 있었던 걸로 기억하는데
영 기억이 안나네요 ㅠ_ㅠ 검색해도 못찾겠고… 누구 아시는분 안계시는지요…
[quote="pamisu1":33fxyv82]일단 제가 쓰는 방법이 정확한 건지는 잘 모르겠습니다.(전 컴퓨터 관련 일을 하지 않으므로 권한문제도 잘 모릅니다.)
하지만 셋유아이디, 셋지아이디란 방법 (아마 유저권한세팅이나 그룹권한 세팅 같습니다.)을 써서 현재 사용하고 있습니다.
mpd 를 시동하거나 설정 변경할 때 루트권한이 필요한데 이게 귀찮아서 찾아본 방법이고 현재 아무 문제없이 쓰고 있습니다.
즉, chmod 755 라고 하면 -rwxr-xr-x 란 권한이 생기고, chmod +w 라고 하면 쓰기권한이 생기는 것처럼…
마찬가지로 chmod +s 라고 하면 소유자나 그룹이 루트권한인 것처럼 실행됩니다.
chmod 4xxx 형식 (= chmod u+s) 이 유저에게 권한을 주는 것이고, chmod 2xxx 꼴(= chmod g+s )이 그룹에 권한을 주는 것입니다.
이외에도 chmod 10xxx 꼴로 스틱키비트를 설정하고 공유폴더로 사용한다는데 이건 정확히 무슨 뜻인지를 몰라서 해 본 적이 없습니다.
아무튼 결론은
[code:33fxyv82] sudo chmod +s /path/filename.bin [/code:33fxyv82]
처럼 해 보시라는 겁니다. 이렇게 파일에 권한변경을 한 이후에 그 파일을 유저가 실행시키면 바로 동작합니다.
사용자 유저가 abcd 라면 filename.bin 을 실행할 동안은 abcd 가 root 처럼 동작하며 실행시 암호도 물어보지 않을 겁니다. 제 경험상 그렇더군요.
ls -l /path/filename.bin 처럼 확인해 보면 파일 권한이 -rwsr-s-r-x 처럼 x 자리에 s가 대신한 걸 확인할 수 있습니다.[/quote:33fxyv82]
p.s.
리눅스의 수퍼유저의 권한은 막강합니다. 그리고 리눅스는 특성상 [사용중인 파일도 삭제가 가능]합니다.
sudo명령어와 패스워드 입력이 귀찮은 것은 사실입니다만, 이것은 다르게 생각하면 최후의 안전장치같은 녀석입니다.
정말 개인적인, 손상되서 날아가도 아무 상관이 없는 경우라면 모르겠지만 그 외의 경우에는 절대 이런 방법을 권장하지 않습니다.
하다못해 개인적으로 사용하는 데스크탑 시스템이라도 말이지요.
p.s.
리눅스의 수퍼유저의 권한은 막강합니다. 그리고 리눅스는 특성상 [사용중인 파일도 삭제가 가능]합니다.
sudo명령어와 패스워드 입력이 귀찮은 것은 사실입니다만, 이것은 다르게 생각하면 최후의 안전장치같은 녀석입니다.
정말 개인적인, 손상되서 날아가도 아무 상관이 없는 경우라면 모르겠지만 그 외의 경우에는 절대 이런 방법을 권장하지 않습니다.
하다못해 개인적으로 사용하는 데스크탑 시스템이라도 말이지요.[/quote:234gg0cj]