리눅스 공부하기
공부 목표
CLI 기본 명령어
리눅스 터미널 실행하기.
리눅스 터미널에서 다양한 명령어를 사용해보기
명령어 사용시 키워드에 대해 이해하기
절대 경로, 상대경로의 차이를 이해하기
텍스트 에디터를 이용해 파일수정, 저장 하기
패키지와 패키지 매니저
각 운영체제에 맞는 패키지 매니저를 사용하기
사용 권한
파일의 소유자와 파일에 적용된 사용 권한을 확인하고 이해하기
파일에 적용된 사용 권한을 변경해 보기
환경변수
환경변수가 무엇인지, 왜 사용하는지 이해하기
전역, 지역 환경변수의 차이를 이해하기
환경변수 임시적으로, 영구적으로 적용하기
환경변수의 개별값을 확인해보기
환경변수들의 목록을 확인해보기
시작하기
리눅스란? 운영체제이다.
운영체제 란 사용자의 요청을 받아 -> 여러가지 응용프로그램을 실행시키는 것
도대체 왜 리눅스를 써야할까?
우리가 큰 프로젝트후 서버코드를 24시간 돌려야할때 아마존 서버 빌려 돌리게 되는데 이때
AWS에서 리눅스를 기본 서버로 쓰기 때문이다.
이건 아주 작은 예시에 불과하다.
사실 리눅스는 IT 산업 전반에서 쓰이는 운영체제 이기 때문에 백엔드 개발자라면 사용할줄 알아야한다.
CLI 기본명령어를 사용해 보려고 터미널을 실행시키니 터미널과 쉘의 차이점이 궁금해졌다.
터미널: 텍스트를 입력한다 => CIL(Command Line Interface) 명령을 입력하고 결과를 출력 할수 있는 환경을 제공한다,
쉘과 상호작용을 한다.
쉘: 터미널과 비슷해 보이지만 실제로 명령을 처리하고 결과를 출력(프로그램 실행)한다
오늘 배운 명령어 들은 pwd, mkdir, cat, cd, ls, ls -l, ls -a, touch, rm, mv, cp, open(mac os), > 이었고
이중 touch, mv 는 금방 까먹을 것 같았다.
또 위도우에선 explorer.exe. 이 open 과 같은 역할을 한다는것도 알게되었다.
ls -l과 ls -a의 차이점은 -a는 모든 숨어있는 파일까지 다 보여주고 -l 은 폴더나 파일의 포맷을 전부 보여준다.
> 은 내용을 파일에 저장할수 있다 ex) hello > hello.txt or echo hello > hello.txt
rm -> 파일 삭제 , rm -rf -> 폴더 삭제
파일또는 파일의 이름에 공백이나 특수 문자를 사용하고 싶으면 \ 백슬래시를 사용해 준다.
절대경로 / 상대경로
절대경로는 기준점(루트)에서 어떤 폴더로 진입하는지 알수있다.
상대경로는 특정폴더 or 파일 위치가 현재 위치를 기준점으로 나타낸다.
패키지와 패키지 매니저
패키지 -> 여러가지가 담겨있는 하나의 상자
패키지 매니저 -> 설치, 변경등을 편리하게 관리해주는 도구
NeoFetch -> CLI 환경에서 시스템 정보를 유연하게 보여주는 패키지
사용자 권한
chmod 000 -> 모든 사용자가 읽고 쓰고 실행할수 없다
chmod 777 -> 모든 사용자가 읽고 쓰고 실행할수 있다.
chmod 755 -> 소유자는 모든 권한, 사용자는 읽기와 실행.
chmod 440 -> 소유자 그룹은 읽기 가능, 그외 사용자는 사용 불가.
환경 변수란?
환경에 따라 프로그램의 동작에 영향을 줄수 있는 값.
환경 변수 등록 방법
전역-> 모두 (ex. export urclass = "") 공백이 있으면 "" 사용필요
지역 -> 특정 (ex. hello = codestates)
환경 변수 삭제 방법 (ex unset $hello)
등록된 환경변수 보는법 (printev)
전역& 지역 환경 변수 확인하는 법 (ex. echo $hello)
공부가 부족했던 부분
상대경로와 절대경로의 차이점을 정확히 설명하기 어려웠다, 명령어 중 몇가지가 기억하기가 쉽지 않았다
터미널과 쉘의 차이가 궁금했다.