2011-01-31 3 views
0

이것은 새로운 질문 일 수 있습니다. 사용자간에 자동으로 전환하고 싶습니다. 우리가 "기대하는"프로그래밍을 사용할 수 있다는 것을 알고 있습니다. 다른 방법이 있습니까?유닉스 사용자 자동 전환

+1

조금 더 신경을 써주세요. 어떤 방식으로 사용자간에 전환하고 싶습니다. 터미널에서 데스크톱 세션, 데스크탑/서버를 제거 하시겠습니까? – mhitza

+0

@mhitza, "su"또는 가능한 다른 대체 방법을 사용하여 콘솔/터미널에서 사용자를 전환하고 싶습니다. –

+0

'su - foobar'는'foobar' 사용자로 전환합니다 (여러분의 마지막 코멘트를 기반으로 이미 알고 있듯이) –

답변

5

은 이미 언급되었다 : 다른 사용자 계정에

su - <username> 

하지만 더 제한된 액세스는 sudo를을 사용하여 부여 할 수 있습니다 : 스 도우는 많은 옵션을 지원

sudo -u <username> <command> 

./etc/sudoers 및 man sudoers를 참조하십시오. 예를 들어

chown <username> <executable> 
chmod u+s <executable> 
./<executable> 

:

사용, setuid를 모드를 항상 스와 또는 sudo를 원하는 도구를 사용하지 않고 실행하거나 다른 사용자로 스크립트를 실행하려면, 또는 현재의 목적을 위해 자신의 도구를 구축 :

$ id -un 
atnnn 
$ cp /usr/bin/id . 
$ sudo chown nobody id  
$ sudo chmod u+s id 
$ ./id -un 
nobody 
0

정말 원하는 항목과 컴퓨터에 액세스하는 방법에 따라 다릅니다. 창 (xterms 또는 기타)을 작성하고 적어도 다른 사용자가 작성한 후에는 다른 사용자로 실행되도록 다른 터미널을 준비하는 것만 큼 쉽습니다. 'su'또는 (더 나은) 'sudo'를 사용하여 다른 사용자가 될 수 있습니다. (나는 당신이 다른 사용자가 될 수있는 권한이 있다고 가정하고 있습니다. 이것은 동료의 ID는 아니지만 실험 할 필요가있는 일부 테스트 사용자의 것입니다.)

터미널 세션간에 전환하려면 하나의 창에서 다른 사용자로서, 당신은 조금 더 열심히 일해야합니다. 그것을 할 프로그램이 있습니다 : 그것은 shl (껍질 층)이었고 저는 현대의 동등 물이 GNU Screen이라고 생각합니다. 저는 GNU Screen을 사용하지 않았습니다. 1990 년 이후로 shl을 사용하지 않았습니다. 여러 사용자로 작업해야 할 때 여러 사용자가 서로 다른 터미널에 연결되거나 서로 다른 사용자로 실행됩니다. SU를 사용