하루도 빠짐없이 TIL을 작성하고 싶었지만 못했다 ㅜㅜ
앞으로는 꼭 더 열심히 작성해야지!
고작 4일이지만 많은 일이 있었다!!
갑자기 자기소개서 페이지가 과제였다는 걸 알아서 하루만에 만들어야 했다 ㅋㅋㅋ
토요일 강의여서 토요일에만 하면 될 줄 알았는데 한번도 해본적이 없는 나는 훨씬 더 많은 시간이 필요하다는 걸 몰랐다 ㅜㅜ 그래도 여차저차해서 완성은 했지만 많이 허접해서 벨로그에 공유는 못하겠다 ㅋㅋㅋㅋ
그래도 나름 뿌듯해서 다음에 더 제대로 만들어 볼 예정이다!
이번주부터 스터디가 시작됐고 나는 프론트엔드 복습 스터디와 프로그래밍 기초 스터디에 참여하기로 했다.
오늘 정리할 리눅스는 프로그래밍 기초 스터디에서 학습한 내용이다
리눅스란?
→ 리눅스는 리누스 토발즈(Linus Tovalds)에 의해 만들어진 컴퓨터 운영 체제
→ 자유 소프트웨어와 오픈 소스 개발의 가장 유명한 표본
- GNU 프로젝트 → Gnu is not Unix의 줄임말로 유닉스 운영체제를 여러 회사에서 각자 개발하며 소스 코드를 공유하지 않는 문화에 대한 반발로 생겼다. 리눅스는 GNU 프로젝트의 일환이다.
- 리눅스 구조 응용프로그램 > shell > kernel > 하드웨어
- kernel: 하드웨어를 제어하는 코드를 통해 소프트웨어와 커뮤니케이션을 하며 시스템의 모든 자원을 통제 관리하는 역할을 수행한다. 프로세스. 메모리/ 파일시스템/장치관리 등 컴퓨터의 모든 자원 초기화 및 제어 가능
- shell: 명령어 해석기라고 불리며 사용자가 입력한 명령어를 커널에게 전달하는 역할을 수행한다.
리눅스의 특징
-
유닉스 기반
-
멀티 유저와 멀티 태스킹 지원
-
CLI 및 GUI 모두 지원
-
다양하고 강력한 네트워킹 지원
-
리눅스의 종류
- 우분투
- 페도라
- 라즈비안
- 안드로이드
→ 종류에 따라 패키지 형식과 관리자가 다르다.
-
리눅스 활용 분야
- 네트워크 서버 장비
- 라즈베리 파이 (임베디드)
- 리눅스 관련 개발 서버
- 안드로이드
- 개인 pc
- 블랙박스
- 정밀 의료기기
- TV 셋톱박스
우분투
→ 데비안 GNU/Linux 를 기반으로 제작된 데스크탑 환경을 사용하는 리눅스 배포판
- 왜 우분투? → 개인용 pc 환경에 최적화, 간결하고 쉽고, 많은 사용자로 커뮤니티 활성화, 약 6개월 단위로 업데이트
- 우분투 버전 우분투는 일년에 두 차례 새로운 버전을 공개하고 나온 연도와 달로 번호를 지정한다. 우분투 LTS 버전은 long term support의 약어로 가장 안정적인 버전!
리눅스 기본 명령어
- shell: 커널과 사용자 사이를 이어주는 역할, 사용자의명령을 해석하여 커널에 명령을 요청
- shell의 종류
- bash: GNU 프로젝트의 일환으로 개발된 리눅의의 기본 shell bash와 관련된 명령어를 알면 다른 리눅스에서도 처리 가능
whoami
passwd
pwd
ls
ls -l
ls -a
ls =al
cd
--help
GUI vs CLI
- GUI Graphical User Interface의 약자로 사용자가 편리하게 사용할 수 있도록 기능을 아이콘, 이미지 등의 그래픽으로 나타낸 인터페이스 windows와 mac 운영체제 모두 GUI를 사용
- CLI command line interface의 약자로 문자로 사용자와 컴퓨터가 상호작용하여 동작하는 인터페이스 windows의 CMD, Mac의 terminal에서 사용가능
패키지 관리자 - apt
- apt : Advanced Packaging Tool의 약자로 데비안 리눅스 (.dev) 또는 파생된 배포판(우분투)에서 소프트웨러를 설치, 제거, 업데이트 할 때 사용
- 우분투에서 apt 명령을 하려고 하면 권한 거부가 뜨면서 사용이 불가능한데 이 때 sudo 라는 키워드를 통해 권환 획득이 가능하다.
root
- 리눅스에서 모든 권한을 가지고 있는 최고 관리자를 뜻함
- 운영체제에 모든 것을 제어할 권리를 가짐
- “sudo 사용할 명령어” 의 방식으로 권환 획득 가능