일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 명령어
- go make new project
- ssh-keygen
- CODE128
- 리눅스 멀티미디어
- linux go new project
- barcode
- go multifile manage
- TEE
- 사회적거리두기
- MAN
- ssh-copy-id
- 리눅스
- carla
- tldr
- 자율주행
- 파이프 와이어
- html5
- 예제
- 자택근무
- WebCam
- 코로나바이러스
- awk
- Go
- 유닉스
- go new project
- UNIX
- sudo
- linux
- grep
- Today
- Total
힘내라 일처리
SU, SUDO 약자가 뭐지? su의 숨겨진 비밀 super user, substitute user, 리눅스 본문
카톡방에서 채팅을 하다가 나온 주제입니다.
sudo와 su 리눅스를 하다보면 자주쓰기도 하고 su는 언젠가는 써보게 되는 그런 명령어 들입니다.
그런데 sudo의 어원은 여러곳에서 다 다르게 이야기가 나옵니다.
https://endjin.com/blog/2013/07/what-does-sudo-mean
이 링크에서는 sudo <- Super User DO 의 약자로 소개가 되었구요,
Switch User DO 로 소개가 된곳도 있습니다.
약자도 얼추 맞는거 같고, 어느게 정말 맞는걸까요?
저는 우선 sudo의 앞의 su는 su와 서로 동일하다고 가정하고 su의 의미를 알아보기로 했습니다.
SU(1) User Commands SU(1)
NAME
su - run a command with substitute user and group ID
SYNOPSIS
su [options] [-] [user [argument...]]
DESCRIPTION
su allows to run commands with a substitute user and group ID.
man su 를 입력하면 나오는 내용입니다. 여기서는 substitute user 라고 되어 있네요 저는 우분투 배포판에서 실행한 명령이기 때문에 혹시 최초 개발된 UNIX에서는 다른 의미가 아닐까 의문이 들었습니다.
http://web.cuzuco.com/~cuzuco/v7/v7vol1.pdf
위의 pdf파일에서 UNIX시절의 su 의 의미를 찾아 보았을때는 동일하게 substitute user의 약자였습니다.
1979년의 UNIX문서에서도 su가 substitute user의 약자 인듯 하네요 이쯤되면 sudo 는 Substitute User DO 의 약자가 맞다고 생각해도 될 것 같습니다.
하지만.....
너무 섣부른 결론이 었던거 같습니다. 애런 토폰스의 2009년도 글인 "The meaning of su" 의 글을 읽어보면 다음과 같은 내용이 있습니다.
I found some old Unix source code, where su.c was available.
오래된 유닉스의 su.c 소스코드에는 su 에 대한 주석이 한줄 적혀 있는데 su -- become super-user 라는 내용입니다.
즉, su를 처음 개발 시 데니스 리치와 캔 톰슨은 su를 super user 계정으로 변경하는 기능을 목적으로 한듯합니다.
해당 소스코드에서 setuid의 id 값이 0으로 하드코딩 되어 있는 것도 이때문 이겠지요.
하지만 unix의 기능의 개발이 진행이 되면서, su 의 기능은 단순히 super user로의 전환이 아니라, 다양한 유저로의 전환으로 바뀌게 되며 의미를 바꾸게 되었다고 생각합니다.
결론은 su 의 최초 개발 시에는 Super User 이었다가, 개발이 진행이 되면서 기능이 확장이 되고 그 의미를 표현하기 위해 Substitute User 로 바뀌게 된것입니다.
공식적으로는 Substitute User가 맞을 수도 있지만 원래의 의도를 고려한다면 Super User도 틀린것은 아닙니다.
솔직히 저는 Substitute User 보다는 Super User를 지지하고 싶습니다. 서브스티튜트 발음보다는 슈퍼가 더 낫죠...
뜻만 통하면 되죠...
'알아보기' 카테고리의 다른 글
더 나은 man : tldr 알아보기 (0) | 2020.07.23 |
---|---|
unix/linux motd : message of the day - 로그인 메세지 추가하기 (0) | 2020.07.04 |
자율주행 연구용 오픈소스 시뮬레이터 CARLA (칼라?) (0) | 2020.04.05 |
SSH 원격 접속 시 비밀번호 없이 간편하게 접속하기 / ssh-keygen / ssh-copy-id / ssh without password (0) | 2020.03.31 |
PIPEWIRE 프로젝트 (0) | 2020.03.29 |