CLI, GUI
CLI(Command Line Interface, 명령 줄 인터페이스)
: 문자열로 명령을 내리고 출력 역시 문자열 형태로 주어지는 환경
GUI(Graphic User Interface, 그래픽 사용자 인터페이스)
: 사용자가 컴퓨터와 정보를 교환할 때 그래픽을 이용할 수 있는 환경
- 예시로는 우리가 보는 운영체제(Window, Mac OS)의 화면, 애플리케이션 화면이 있음
CLI 명령어
* 터미널 실행하기 : 단축키 Ctrl + Alt + t
* whoami : 현재 로그인된 사용자 확인
* prompt : 명령줄 대기 모드. 터미널 화면에 글자가 입력되는 한 줄 공간.
* pwd : 현재 위치 확인하기
- print working directory. 여기서 말하는 디렉토리는 폴더라고 함.
- 현재 작업 중인 폴더 위치 출력
* mkdir : 새로운 폴더 생성하기
- make directories.
- 명령어와 폴더 이름은 스페이스 키로 구분
* ls : 특정 폴더에 포함된 폴더나 파일 확인하기
- list.
- [옵션] a : 'all' 의미. 숨어 있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력.
- [옵션] l : 파일의 모맷을 모두 표시.
· 하나의 폴더 혹은 하나의 파일은 한 줄에 출력.
drwxr-xr-x # 생략
-rw-r--r-- # 생략
· 가장 첫 글자로 출력되는 글자는 d 혹은 - 로 고정.
· d 로 출력된 경우는 폴더를, - 로 출력된 경우는 파일을 나타냄
· 폴더는 명령어 cd를 통해 접근 할 수 있지만 파일은 불가능
* nautilus : 현재 위치 GUI로 실행
* cd : 폴더에 진입하기
- change directory.
- 프롬프트로 상호작용하는 폴더를 다른 폴더로 변경
* touch : 파일 생성하기
- 전자기기에서 문서 형태로 작성된 모든 것을 파일이라고 함
- touch 파일명.확장자 로 파일 생성
* cat : 파일 내용을 터미널에 출력하기
* rm : 폴더나 파일 삭제하기
- remove.
- 파일을 삭제할 경우, rm 파일명.확장자 를 입력하면 단일 삭제 가능
- 폴더의 경우 단일 삭제 불가!
· [옵션] rf : 'recursive', 'force'을 의미. 질문 받지 않고 삭제시 사용
* mv : 폴더나 파일의 이름을 변경 혹은 위치 옮기기
- move.
① 위치 옮기기
//mv [이동할 파일 혹은 폴더명] [도착 폴더명]
mv bye.txt bye/
② 이름 변경하기
//mv [기존 파일명] [바뀔 파일명]
mv bye.txt hello.txt
* cp :파일이나 폴더 복사하기
- copy.
- cp [원본파일명] [복사할 파일명]
- 폴더의 경우 복사 시 옵션 필요! / cp [원본 폴더명] [복사할 폴더명]
· [옵션] rf : 'recursive', 'force'을 의미. 질문 받지 않고 복사 시 사용
* sudo : 관리자 권한을 획득
- 관리자 권한을 일시적으로 획득
사용자와 관리자 권한
* pc가 항상 관리자 권한 일 때 일반 사용자가 정보를 탈취 당하는 해킹 피해가 있었음.
- 공격자가 좋지 않은 의도로 작성한 코드를 프로그램에 삽입
- 사용자가 해당 프로그램을 설치
- 악성 코드가 사용자 정보를 공격자에게 전달
* 위의 같은 경우와 하나의 OS안에서 두 가지 시스템이 충돌하게 되는 경우 등을 방지하기 위해 접근 권한을 분리함
* 우분투의 경우 사용자가 관리자의 권한에 접근할 수 없도록 함. 오직 특정 명령어를 입력하는 것으로 관리자 권한을 빌리도록 함
컴퓨터가 파일을 이동, 복사하는 방법
이동하는 방법
- 1 파일의 내용을 잠시 저장한다
- 2 원래 위치의 파일을 삭제한다
- 3 도착 폴더에 1에서 저장한 내용으로 새로운 파일을 생성한다
복사하는 방법
- 1 파일의 내용을 잠시 저장한다
- 2 도착 폴더에 1에서 저장한 내용으로 새로운 파일을 생성한다
절대경로
: 기준점인 루트 폴더(/)로 부터의 절대적인 위치.
특정 폴더나 파일이 루트폴더로 부터 어떤 경로로 진입해야 만날 수 있는지를 말함
상대경로
: 특정 폴더나 파일의 위치를 현재 위치를 기준점으로 나타냄
- 현재 위치한 폴더는 점(.)으로 표현하고, 상위 폴더은 두개의 점(..)으로 표현
관리자(root) 권한
- 리눅스의 루트 폴더(/)는 관리자 영역이다
- 리눅스 관리자는 일반인 사용자에게 관리자 권한을 완전하게 넘기지 않는다