School/리눅스 시스템
리눅스 기본 명령어
코딩천재홍
2021. 4. 5. 22:28
Login Prompt
- 컴퓨터 부팅 후 리눅스가 처음 로드되는 경우 화면 표시
- 다른 사용자가 로그 아웃 한 후
- 사용자 계정 및 암호 입력 필요
- 그래픽, 텍스트 방식 등 다양한 화면으로 표시
- password 입력 받을 수 있는 창 : user prompt
Shell
- 운영체제의 커널과 사용자 사이의 다리 역할
- 사용자로부터 무언가 명령 받으면, 그 명령을 해석하고 프로그램을 실행해 줌
- 사용자는 로그인하면 쉘을 부여 받고, 명령어를 실행할 수 있다.
- prompt는 $, %, > 기호가 끝에 붙어 있다.
command syntax
- 명령에는 매개변수 (인수)가 필요
- 명령어들은 대소문자 구별
- echo : 뒤에 주어지는 인수를 그대로 출력하는 역할
logging out
- 셀 종료 명령 : exit, ctrl + D
- 로그 아웃 하기
- 텍스트 전용 단일 셀 환경 : 셀을 종료하는 것으로 충분 (로그아웃하게 되는 효과)
- 창 환경 : 로그아웃 명령
- 로그 아웃 후 새 로그인 프롬프트가 표시되어야 한다.
User and Groups
- 리눅스는 유닉스와 유사한 시스템
- 유닉스는 여러 사용자가 여러 개 프로그램을 작동할 수 있도록 도와주는 시스템
- 리눅스도 여러 명의 사용자가 존재할 수 있다.
- 여러 명의 사용자가 프로그램, 하드웨어 자원을 이용하는지 tracking 하게 하고, 서로 다른 사용자에게 서로 다른 권한을 주어서 시스템 자원을 접근할 수 있도록 해준다.
- 여러 명의 사용자가 비슷한 권한을 가지고 시스템을 운영하는 경우 → group 으로 관리
root
- 모든 파일에 엑세스할 수 있는 사용자
- 소프트웨어 설치와 같은 시스템 관리에 사용
- root 쉘은 #으로 끝난다.
/etc/passwd
- 유저 정보를 저장하는 명령어
- account : password : UID : GID :GECOS : home directory : login shell 로 이루어짐
- account : 로그인 id or username
- password : x로 표현됨
- uid : user id, 리눅스는 이 아이디로 계정 구분
- gid : group id , 이 계정의 default group
- gecos : 사용자에 대한 여러가지 정보 (사용자 상세정보, 성과 이름, 전화번호 등)
- home directory : 계정의 절대 경로
- login shell : 계정의 default shell
/etc/shadow
- 사용자 password 관련 된 정보
- account : password : lastchanged : min : max : warning : inactive : exprire :
- account : login name
- password : 암호화 됨
- last changed : 마지막으로 비밀번호 언제 바뀌 었는지
- min : 변경 후 최소 이시간동안 유지
- max : 해당 시간 지난 후 password 변경 필요
- warning : 비밀번호 만료되기 전 까지 일 수 - ex) 30일 이후 만료
- inactive : 비밀번호 만료된 이후 잠시동안 접속이 가능한 일수, 그러나 그 이후 접속 불가능 - ex) 만료 이후 7일동안 접속 가능
- expire : 언제 이 pw가 만료되는지
/etc/group
- group name : x : GID : Group member
- group name : group 이름
- x : group 비밀번호, 보여지지 않음
- gid : group id
- group member : 그룹의 멤버
uid
- 컴퓨터는 number oriented machine
- 동일한 UID 를 가진 서로 다른 계정은 동일한 Linux 사용자로 인식
- 일반 사용자 UID는 보통 1000부터 시작
- 0~999 와 65534 는 리눅스에 할당
- 0 : ROOT ID
- 1 : daemon
- 65534 : nobody
group and gid
- 사용자를 그룹으로 그룹화 가능
- 모든 그룹이 /etc/group 파일에 나열
- passwd file 의 gid → 계정의 default group
su command
- 다른 사용자로 유저를 전환 (switch user)
- - 를 사용하지 않은 경우 : 현재 내가 로그인되어 있는 shell 환경을 그대로 사용 (/home/donggeon) - 디렉터리 name 보임
- - 를 사용 한 경우 : 변환할 사용자에 shell 환경을 불러오게 된다. (~ 로 표시)
- ~는 현재 로그인되어 있는 홈 디렉토리 표현
who and whoami
- who
- 현재 시스템에 누가 로그인해 있는지 확인
- who am i
- 현재 user가 누구인지 보는 것
last
- 최근 시스템 접속 기록
- display account , login, logout, terminal or ip address
sudo command
- 일시적으로 user에게 root 권한 부여
sudoer
- sudo 명령어를 수행할 수 있는 사용자들
- /etc/sudoers
- 계정정보
- 그룹정보
- 어떤 호스트에서 어떤 명령을 sudo를 통해 할 수 있는지 기술
- sudo 그룹에 계정을 추가하면 sudo가 동작한다.
- sudo usermod -a -G sudo tester1
- 제거 : sudo gpasswd -d tester1 sudo
- %admin ALL = NOPASSWD : ALL
- admin 그룹 어느곳에서 비번없이 모든 명령 가능하다.