임베디드

[리눅스 기초] 로그인 과정/etc/passwd /etc/shadow, Bash 제공 기능

취미가득 2022. 2. 14. 23:13
728x90
반응형

💪 1. 리눅스 시작

라즈비안(라즈베리 파이 환경에서 사용되는 OS, 데비안 리눅스를 기본으로 만들어진 배포판) 환경에서 실습하였음.


1. 로그인 과정의 이해

✔ 리눅스 시스템에서는 등록된 계정의 로그인만 혀용

✔ /etc 디렉토리의 passwd, shadow 두 파일에 사용자 계정에 관한 정보가 보관.

1) /etc/passwd : 계정명(pi), x(비밀번호 존재한다면), UID(user id), GID(group id), default 홈 디렉토리, 기본 쉘

 

 

 

* adduser등으로 sudo 계정을 만들면 /etc/passwd안에 저장된다. (현재 계정이름이 pi라서 pi행만 출력했을 뿐)

/home/pi --> 로그인시 기본 홈디렉토리

/bin/bash --> 로그인 쉘

 

 

2) /etc/shadow : 비밀번호 보관

 


2. bash가 제공하는 기능

1) 명령어 해석 기능

/bin(기본명령어),/usr/bin(사용자 명령어 포함), /sbin(root 계정 권한 명령어)

등에 포함된 리눅스 기본 명령어를 우리가 치면 쉘이 해석하여 리눅스 커널에 전달한다(실행 요청 및 결과 반환)

 

2) alias 기능

ex) alias c=clear / alias rm ='rm -i'

이렇게 할 경우 현재 터미널 창에서 가능 (저장하려면 .bashrc에 해야함)

 

3) history 기능

흔히 화살표로 이전 명령어 재사용할 수 있는 이유

history !작업번호 : 해당 명령어

이렇게 하면 아까 실행했던 명령어도 보임

 

4) 작업 제어 기능

*포그라운드 작업 : 일반적인 명령 수행. 하나가 완료 되기전에 다른거 X

 

*백그라운드 작업 : & 기호 붙여서 여러 명령 동시에 수행 가능

포그라운드. 슬립동안 명령 수행 X
백그라운드 작업. date 명령 후에도 sleep이 돌아가고 있음

 

5) 파이프와 리다이렉션

파이프 : 파이프 앞 명령어의 실행 결과가 파이프 뒤 명령어의 입력값이 됨 --> 즉, 앞의 명령어 실행 후 그 뒤에서 다음 명령어 적용 

 

명령 | 명령

 

리다이렉션 : 명령이나 프로그램 입출력을 파일로 재지정

 

ls 명령어 수행 결과가 새로운 파일로 저장됨 ( > )
date 명령어 수행 결과가 기존 파일에 추가하여 저장됨 ( >> )

 

6) 환경변수파일

printenv 해보면 bash 환경 변수들 출력 가능

export 변수명=값 으로 변수 변경 및 추가 가능

환경변수 기능
PATH 실행 파일의 검색 경로
PS1 터미널 창의 프롬프트
PWD 현재 명령을 수행하는 경로 위치
HISTFILE 히스토리 기능을 위한 명령어 저장 파일
HOME  사용자 계정의 기본적인 디렉토리
MAIL 사용자의 메일 보관함 파일
USERNAME 로그인 사용자 이름
HOSTNAME 호스트명

PATH : 운영체제가 어떤 프로세스를 실행시키려 할때 찾는 경로 (함부로 바꾸기 ㄴㄴ............)

 

 

 

*초기화 스크립트

 

bash 초기화 파일은 로그인 할때 자동으로 수행되는 파일

 

.profile(.bash_profile)

환경변수 명시, 쉘이 생성될 때 자동으로 수행해야 할 명령들 등록하는 파일

 

.bashrc

사용자가 alias들을 추가하는 파일

 

source 명령으로 쉘에 즉시 적용

728x90
반응형

'임베디드' 카테고리의 다른 글

TCP/IP 통신 프로토콜  (0) 2022.03.08
네트워크 프로토콜 개념 및 정의  (0) 2022.03.07