연습장

05. Shell , /etc , history 본문

리눅스 마스터 2급

05. Shell , /etc , history

js0616 2024. 6. 5. 04:31

Shell 

사용자의 명령을 해석하여 커널에 전달. 

 

커널

하드웨어에 직접 명령

 


 

Shell 종류

 

bourne shell : Unix 기본 셸 , 유닉스 운영체제에서 최초로 개발된 CLI 셀 , /bin/sh
csh : 히스토리, alias , 작업제어 , 버클리 - 빌 조이, /bin/csh

bash : bourne shell 기능 확장, 폭스, 히스토리, 명령행 편집 , GNU 프로젝트 , /bin/bash
dash : 데비안 및 우분투 기본 셸


 

chsh : 사용자의 로그인 셀 변경


- l :  사용가능한 셸의 목록 표시 
- u : 도움말
- s : 사용자의 기본 셸을 변경 , 로그인 셸 변경
- c : comment : 추가적인 설명
- v : 버전 확인

 

# 셸 변경

chsh -s /bin/csh  

 

# chsh 
/usr/bin/chsh


 

/etc/shells  

- 시스템에서 사용가능한 쉘 목록

- chsh -l 와 같음

# cat /etc/shells 

 

/etc/profile

- 모든 사용자의 쉘 환경 제어

- 시스템 전체의 로그인 셸 세션을 위한 초기화 스크립트 파일

- 사용자가 로그인할 때 실행되는 전역 프로파일 스크립트 

 

/etc/shadow 

- 비밀번호의 다양한 속성을 저장

- 일반 사용자가 파일의 내용을 볼 수 없는 파일

 

/etc/passwd 

- 특정 사용자에게 포함된 로그인 셀

- 시스템에 등록된 각 사용자의 계정 정보를 저장, 사용자 id, 그룹 id , 홈 디렉토리, 로그인 셸 

 

/etc/bashrc

- alias와 bash 가 실행하는 함수를 지역적으로 제어 

- 시스템 전체 사용자에게 적용되는 alias 및 함수 설정 가능

- 시스템 전체의 기본 설정을 위한 bash 셸 스크립트 파일

 

 

~/.bashrc bash

- bash 쉘에서 사용되는 개별 사용자의 bash 설정파일

- 함수를 제어하는 지역적인 시스템

 

~/.bash_profile  

- bash 로그인 세션에 대한 사용자 정의 설정 파일 , 개별 사용자의 셸 환경 제어 지역설정파일

- 환경변수 PATH관리

 

 

~ihduser/.bash_history

- ihduser 사용자가 실행한 명령의 목록 정보를 확인

 

 



LOGIN : 로그인 세션을 나타내는 쉘 환경변수
USER : 현재 사용자 이름 
SHELL : 현재 사용중인 쉘 경로 
BASH : bash 쉘에 대한 정보 

 

# 현재사용자 출력
echo $USER  

 

# 사용자가 로그인 시에 부여받은 셸 정보가 출력

echo $SHELL

 

#  사용자의 현재 환경에서 설정된 언어 변수 출력      
echo $LANG  
ko_KR.UTE-8

 

# ihduser 사용자의 로그인 셸을 확인

grep ihduser /etc/passwd

 

 

set :  셀변수 ,   환경변수 등록 , 로컬 셀 변수 조회

unset : 변수 해제

 

env : 환경변수,   조회 및 등록 가능 , 글로벌 셀 변수 조회

printenv : 시스템에 등록된 환경변수 출력


history

 

HISTORY : 최근에 사용한 명령어를 보여준다. 

HISTSIZE : 히스토리(history) 크기 지정
HISTFILESIZE : 히스토리(history) 파일 크기

 

history : 처음 실행한 명령어 5개를 출력

history 5 : 최근에 실행한 명령어 5개를 화면에 출력

 

 

!100 : history 목록에서 100번째 실행

!! : 마지막 명령어 

!-5: 최근에 실행한 명령 목록 중에서 5만큼 거슬러 올라가서 해당 명령을 실행

!100:p  : 100번째 명령어 출력

 

history -d 100  # 해당 history 삭제

history -c # 모든 history 삭제 

 


 

/etc/hosts

- DNS에 쿼리를 보내기 전 해당 파일에서 먼저 도메인을 탐색할 수 있도록 함, ip 와 hostname 을 매핑 

 

/etc/resolv.conf

- DNS에 보낼 도메인 쿼리를 단축하여 지정할 수 있음

/etc/services

- 네트워크 서비스를 위한 포트의 용도 기록 , telnet 23 변경가능


 

 

 

 





https://webisfree.com/2021-06-08/%5B%EB%A6%AC%EB%88%85%EC%8A%A4%5D-linux-history-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%95%8C%EC%95%84%EB%B3%B4%EA%B8%B0

 

https://www.comcbt.com/

'리눅스 마스터 2급' 카테고리의 다른 글

07. 편집기 , vi, nano  (0) 2024.06.05
06. nice , kill  (0) 2024.06.05
04. ps , 시그널, 데몬,  (0) 2024.06.05
03. fdisk , 파티션, mount , mkfs , df, du  (0) 2024.06.05
02. 쿼터 (quota)  (0) 2024.06.05