-
서버 기술 기초 요약 - 리눅스 쉘 사용법 이해 1CS지식/운영체제 2022. 4. 30. 19:48
리눅스 파일시스템 및 사용자 관리
리눅스와 파일
- 모든 것은 파일이라는 철학을 따름
- 모든 인터렉션은 파일을 읽고 쓰는 것처럼 이루어져 있음
- 마우스, 키보드와 같은 모든 디바이스 관련된 기술도 파일과 같이 다루어짐
- 파일 네임스페이스
- A드라이브(A:/), C드라이브(C:window) X
- 전역 네임스페이스 사용
- /media/floofy/dave.jpg
- root 디렉토리부터 / 폴더 / 폴더 / 파일명
- 전테 파일이 root 폴더 하위에 놓여지게 된다.
리눅스 에서는 하드웨어 같은 것도 모두 파일과 같이 처리를 한다. 즉, 파일을 다루는 인터페이스로 모든 하드웨어를
다룬다. => 파일의 특징 : 뭔가를 읽고 쓸 수가 있다.
쉘 종류
- 쉘(shell) : 사용자와 컴퓨터 하드웨어 또는 운영체제간 인터페이스
- 사용자의 명령을 해석해서, 커널에 명령을 요청해주는 역할
- 관련된 시스템콜을 사용해서 프로그래밍이 작성되어 있다.
참고
https://dodote10.tistory.com/66?category=995235
운영체제라는 것은 하드웨어를 제어하는 프로그램이다. 운영체제는 사용자에게 명령을 받는다. 이 과정을 원활이 수행하기 위해서 인터페이스 프로그램으로 만들어 진 것이(보통 운영체제에서 제공을 한다.) shell이다.
보통 CLI shell은 이름이 있다. 여러가지 프로그램이 많다는 의미이다.
쉘 종류
- Bourne - Again Shell (bash) : GNU 프로젝트의 일환으로 개발됨, 리눅스 거의 디폴트임
- Bourne Shell (sh)
- C Shell (csh)
- Korn Shell (ksh) : 유닉스에서 가장 많이 사용됨
리눅스 기본 명령어 정리
- 리눅스 명령어는 결국 쉘이 제공하는 명령어
- 리눅스 기본 쉘이 bash 이르로, bash에서 제공하는 기본 명령어를 배우는 것
whoami : 로그인한 사용자 ID를 알려줌
# whoami
rootclear : 앞서 사용한 명령어가 지워진다.
리눅스나 유닉스 계열은 컴퓨터를 한 대 놓고, 여러명이 로그인을 해서 동시에 작업하는 것에 특화된 운영체제이기도 하다. => 다중 사용 운영체제
그래서 login을 해서 들어가면 자신의 id가 있다. 원래는 [ip주소]만을 가지고 접속을 한다. 하지만 실습은 ssh라는 특별한 기능을 사용해서 (ubuntu@[ip주소]) ubuntu라는 id로 접속을 하는 것이다. ssh 접속은 key 파일을 가지고 접속을 하는 것 이므로, 별도의 password가 필요하지는 않다.
윈도우 같은 경우는 슈퍼 관리자가 존재한다. 따라서, 관리자 권한으로 실행시키기 같은 것이 존재한다. 윈도우는 보통은 개인 PC이기 때문에 자신이 로그인하는 계정이 슈퍼 관리자 이다. 그러면 유니스/리눅스 계열에는 슈퍼 관리자가 따로 있을까? O
root가 기본적인 id로 제공이 되고, 이 root가 바로 슈퍼관리자 id이다. 윈도우와 달리 유닉스/리눅스 계열에서는 root로 로그인 해서 뭔가 작업을 하지는 않는다. 왜냐하면 아무래도 다중 다용자가 사용하는 시스템이고, 사실을 안정성이 굉장히 높아야 하는 시스템인데 root는 모든 권한을 다 가지고 있으므로, 어떤 명령을 하더라도 바로 실행이되고 복구가 안될 가능성이 높다.
sudo 명령어 : root (관리자)권한으로 실행하기
- root 계정으로 로그인 하지 않은 상태에서 root 권한이 필요한 명령을 실행할 수 있도록 하는 프로그램
- 기본 사용법
- sudo 명령어
- 사용 예) sudo apt-get update
리눅스에는 패키지가 있고 그 중에서 실습에서는 ubuntu라는 패키지를 사용하는 것이다. package는 여러 프로그램의 조합이라고 보는 것이 적당하다. 근데 그 package속의 각각의 프로그램들은 수시로 update가 된다. 그리고 그 각가의 update된 프로그램을 어딘가에 저장해 둔다.
sudo apt-get update 명령은 각각의 패키지가 저장되어 있는 서버에서 package들의 최신정보를 update하는 명령이다.
이 update에서 update된 정보를 기반으로 해서 새로 프로그램을 설치한다 던지 아니면 update된 최신 버전을 설치한다 던지 할때, sudo apt-get update 명령으로 저장된 정보를 활용을 한다.
pwd : 현재 디렉토리 위치
# pwd
/ls : 파일 목록 출력
# ls -al
-al : 숨김 파일도 보여준다.리눅스와 권한
- 운영체제는 사용자/리소스 권한을 관리
- 리눅스는 사용자/그룹으로 권한을 관리
- root는 슈퍼관리자
- 파일마다 소유자, 소유자 그룹, 모든 사용자에 대해
- 읽고,쓰고, 실행하는 권한을 관리
참고
https://dodote10.tistory.com/147
cat : 파일 보기
# cat mysql.cnf
mysql.cnf 파일 내용이 출력됨해당 파일에 어떤 내용이 들어 있는지 확인 할려면 윈도우 에서는 editer를 사용한다. 리눅스 계열에서는 editer가 굉장히 복잡하다.
rm : 파일 및 폴더 삭제
- 주로 사용하는 명령어 형태 : rm -rf디렉토리명
- r옵션 : 하위 디렉토리를 포함한 모든 파일 삭제
- f옵션 : 강제로 파일이나 디렉토리 삭제
# rm mysql.cnf
기본적으로 리눅스에는 휴지통이 없다.
'CS지식 > 운영체제' 카테고리의 다른 글
서버 기술 기초 요약 - 리눅스 쉘 사용법 이해 3 (0) 2022.05.01 서버 기술 기초 요약 - 리눅스 쉘 사용법 이해 2 (0) 2022.05.01 리눅스5-쉘과 프롬프트 (0) 2022.01.12 리눅스4-우분투 설치(서버 버전) (0) 2022.01.12 리눅스3-Virtual Box 설치하기 (0) 2022.01.11 - 모든 것은 파일이라는 철학을 따름