Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

Linux - 윈도우의 "Run as different user" 기능을 shell에서 실행하는 방법

역시 회사 있어 동료가 좋군요. 이런 문제를 얘기했더니 바로 방법을 찾아주었습니다. ^^




Public Key 방식으로 로그인한 SSH 환경에서,

tester@192.168.100.50:~$

다른 사용자(예를 들어, user1) 권한으로 실행할 명령어가 필요했는데요, 그렇다고 그 사용자에 대한 개인키를 달라고 할 수도 없고, 혹은 한 사용자에 대해 다중으로 공개키를 서버에 등록해 달라고 하기도 애매합니다.

그럴 때 "Run as different user"와 같은 기능을 shell에서 할 수 있는 명령어가 su(substitute user)입니다. (물론 비밀번호는 알고 있어야 합니다.)

tester@192.168.100.50:~$ su - user1
Password: 
user1@192.168.100.50:~$ 

이외에도 종종 다른 사용자 계정으로 전환해야 하는 경우가 있습니다. 예를 들어, "tester" 계정은 "sudoers" 그룹에 등록되어 있지 않아 "sudo -s"와 같은 명령어를 수행할 수 없을 때,

tester@192.168.100.50:~$ sudo -s
[sudo] password for tester: 
tester is not in the sudoers file.  This incident will be reported.

sudoers로 등록해 달라고 하는 것도 방법이지만, 이미 sudoers 그룹에 등록되어 있는 다른 계정(예를 들어 user1)으로 로그인을 한 후, "su - user1"과 같이 전환하는 방법이 있습니다.

user1@192.168.100.50:~$ sudo su -
[sudo] password for user1: 
root@192.168.100.50:~# 

그 외에 su 명령 관련해 다음의 옵션들이 존재합니다.
[일반 사용자가 super user(root)로 전환, 환경은 현재 사용자 환경]
$ su

[일반 사용자가 super user(root)로 전환, 환경도 root 사용자 환경, 즉 root 사용자로 로그인한 것과 동일]
$ su -

[super user(root)가 일반 사용자로 전환, 환경은 root 사용자 환경]
$ su [사용자ID]

[super user(root)가 일반 사용자로 전환, 환경도 전환된 사용자 환경, 즉 일반 사용자로 로그인한 것과 동일]
$ su - [사용자ID]

다음의 Q&A도 참고하시고. ^^

Changing from user to superuser [duplicate]
; https://askubuntu.com/questions/617850/changing-from-user-to-superuser




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/4/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12666정성태6/10/202115624.NET Framework: 1067. 별도 DLL에 포함된 타입을 STAThread Main 메서드에서 사용하는 경우 CoInitializeSecurity 자동 호출파일 다운로드1
12665정성태6/9/202117691.NET Framework: 1066. Wslhub.Sdk 사용으로 알아보는 CoInitializeSecurity 사용 제약파일 다운로드1
12664정성태6/9/202115551오류 유형: 723. COM+ PIA 참조 시 "This operation failed because the QueryInterface call on the COM component" 오류
12663정성태6/9/202117932.NET Framework: 1065. Windows Forms - 속성 창의 디자인 설정 지원: 문자열 목록 내에서 항목을 선택하는 TypeConverter 제작파일 다운로드1
12662정성태6/8/202115523.NET Framework: 1064. C# COM 개체를 PIA(Primary Interop Assembly)로써 "Embed Interop Types" 참조하는 방법파일 다운로드1
12661정성태6/4/202127567.NET Framework: 1063. C# - MQTT를 이용한 클라이언트/서버(Broker) 통신 예제 [4]파일 다운로드1
12660정성태6/3/202118274.NET Framework: 1062. Windows Forms - 폼 내에서 발생하는 마우스 이벤트를 자식 컨트롤 영역에 상관없이 수신하는 방법 [1]파일 다운로드1
12659정성태6/2/202119197Linux: 40. 우분투 설치 후 MBR 디스크 드라이브 여유 공간이 인식되지 않은 경우 - Logical Volume Management
12658정성태6/2/202117044Windows: 194. Microsoft Store에 있는 구글의 공식 Youtube App
12657정성태6/2/202117788Windows: 193. 윈도우 패키지 관리자 - winget 설치
12656정성태6/1/202116137.NET Framework: 1061. 서버 유형의 COM+에 적용할 수 없는 Server GC
12655정성태6/1/202114700오류 유형: 722. windbg/sos - savemodule - Fail to read memory
12654정성태5/31/202115463오류 유형: 721. Hyper-V - Saved 상태의 VM을 시작 시 오류 발생
12653정성태5/31/202118691.NET Framework: 1060. 닷넷 GC에 새롭게 구현되는 DPAD(Dynamic Promotion And Demotion for GC)
12652정성태5/31/202116171VS.NET IDE: 164. Visual Studio - Web Deploy로 Publish 시 암호창이 매번 뜨는 문제
12651정성태5/31/202116363오류 유형: 720. PostgreSQL - ERROR: 22P02: malformed array literal: "..."
12650정성태5/17/202115709기타: 82. OpenTabletDriver의 버튼에 더블 클릭을 매핑 및 게임에서의 지원 방법
12649정성태5/16/202117883.NET Framework: 1059. 세대 별 GC(Garbage Collection) 방식에서 Card table의 사용 의미 [1]
12648정성태5/16/202116705사물인터넷: 66. PC -> FTDI -> NodeMCU v1 ESP8266 기기를 UART 핀을 연결해 직렬 통신하는 방법파일 다운로드1
12647정성태5/15/202116864.NET Framework: 1058. C# - C++과의 연동을 위한 구조체의 fixed 배열 필드 사용파일 다운로드1
12646정성태5/15/202115674사물인터넷: 65. C# - Arduino IDE의 Serial Monitor 기능 구현파일 다운로드1
12645정성태5/14/202115742사물인터넷: 64. NodeMCU v1 ESP8266 - LittleFS를 이용한 와이파이 접속 정보 업데이트파일 다운로드1
12644정성태5/14/202117076오류 유형: 719. 윈도우 - 제어판의 "프로그램 및 기능" / "Windows 기능 켜기/끄기" 오류 0x800736B3
12643정성태5/14/202117187오류 유형: 718. 서버 유형의 COM+ 사용 시 0x80080005(Server execution failed) 오류 발생
12642정성태5/14/202118682오류 유형: 717. The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine.
12641정성태5/13/202117490디버깅 기술: 179. 윈도우용 .NET Core 3 이상에서 Windbg의 sos 사용법
... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...