인프런 '생활코딩-리눅스' 강의를 함께 듣고 공부했다.
섹션 0에서는 리눅스 환경설정, 섹션 1에서는 리눅스 기초에 대해 공부했다.
섹션 0. 상황별 준비 및 환경설정
- codeonweb, cloud9 을 통해 설치 없이 리눅스를 사용할 수 있다.
섹션 1. 리눅스 기초
1. 리눅스
- 컴퓨터 운영체제의 한 종류, 커널 자체
- 명령어 통해 제어한다. (명령어는 사용자가 머물고 있는 디렉토리를 대상으로 내려지기 때문에 사용자의 위치를 확인하고 명령을 내려야 한다.)
- CLI(Command User Interface) : 가상 터미널/ 터미널을 통해 사용자와 컴퓨터가 상호작용한다.
2. 기초 명령어
- pwd : 현재 작업 중인 디렉토리 정보 출력
- ls : 디렉토리 목록 확인
-a / --all : 모든 파일 보여줌(숨겨진 파일/ 디렉토리까지)
(*** -a(단축어) --all(풀네임) )
-l : 파일, 디렉토리 리스트, 파일 종류/ 권한, 링크 수, 사용자, 그룹, 파일크기, 수정시간 등 자세한 파일 리스트 보여줌
-al : 감춰진 파일, 파일 모두 자세히 보기
-S : 파일 크기 순으로 보여줌
- mkdir (디렉토리 이름) : 디렉토리 생성 (make directory)
- -p / --parents(디렉토리 이름) : 부모 디렉토리 생성하고 자식 디렉토리 만듦 (부모 디렉토리 없으면 에러)(mkdir은 보통 디렉토리 하나만 만듦)
- cd : 디렉토리 이동
cd /home(가고자 하는 위치) | - 차상위 디렉토리부터 가고자 하는 곳으로 이동 - 어디에 있는냐에 따라 고정된 디렉토리로 감 - 절대경로 |
cd .. | - 머물고 있는 부모(상위) 디렉토리로 이동 - 현재 어디에 있느냐에 따라 달라짐 - 상대경로 |
- rm (파일명) : 파일 삭제 (디렉토리는 삭제 X)
-r (디렉토리명) : 디렉토리 삭제 (재귀적(순차적)으로 삭제)
- cp (복사하고 싶은 파일) (새롭게 생성할 파일이름) : 파일/ 디렉토리 복사
** help vs man
help | man |
명령어 도움말 | |
간단 메뉴얼 | 상세 메뉴얼 |
원래 페이지 내부에서 작동 | 전용 페이지 있음 |
*man 페이지에서
/sort + (enter) : sort 단어 포함된 메뉴얼 나옴, N키 누를 때마다 내려가면서 sort 찾아줌
Q : 페이지 빠져나가기
3. sudo
- super user do
- 권한이 필요할 때 경우에 따라 sudo 사용
4. 파일 정보 저장(nano)
- nano, vi (명령어 기반 파일 편집기) 이용
- 대부분의 리눅스/ 유닉스 환경에서 사용
- nano (파일이름).html => html 편집 페이지 불러오기
- ^O : (Write Out) 쓰기, 저장
- ^C : (Cancel) 취소
- ^X : (Exit) 페이지 밖으로 빠져나가기
- ^U : (Uncut Text) 붙여넣기
- ^K : (Cut Text) 자르기
- ^U(Uncut text), ^K(Cut text) 조합해서 복사하기
- ^G : (Get Help)메뉴얼
- ^W : (Where is) 텍스트 검색
5. package manager
- 앱스토어같은 개념. 기본적으로만 갖고 있지 않은 프로그램 설치할 때 사용
- apt와 yum이 있음
- sudo apt-get update; : apt 기능을 사용하고 싶을 때 먼저 목록 최신상태로 업데이트함 (업그레이드와 다름), (sudo 이용해 권한 부여 )
- sudo apt-cache search (이름) : 설치할 프로그램 찾기
- sudo apt-get install (이름) : 프로그램 설치하기
- sudo apt-get upgrade (이름) : 프로그램 업그레이드
- sudo apt-get remove (이름) : 삭제하기
6. 리눅스 명령어 기반 파일다운 - wget
- wget (링크) => 파일 다운로드
- wget -O (저장할 파일 이름)
7. 리눅스 명령어 기반 파일다운 - git
- 버전 관리 시스템
- 프로그램 개발 시 개선/ 변경사항 기록해서 과거 상태 분석
- 과거 상태를 현 상태로 돌리거나 소스코드 백업, 개발 협업할 때 사용
'3. Pwnable (포너블) > 2) 개념 정리' 카테고리의 다른 글
[24.03.30] 3주차 활동 - 리눅스 기초 (0) | 2024.04.02 |
---|---|
[2024.03.23] 2주차 활동 - 리눅스 기초 (2) | 2024.03.23 |
[2023.05.20] '드림핵-시스템 해킹' 강의 수강 (0) | 2023.05.26 |
[2023.05.06] ‘생활코딩-Linux’ 강의 수강 (0) | 2023.05.10 |
[2023.04.08] '생활코딩 - Linux' 강의 수강 및 달고나 문서 ~p.27 (0) | 2023.04.10 |