01-01) 리눅스 운영체제

slow_starter·2025년 4월 14일
0

모두의연구소-DS4기

목록 보기
1/30
post-thumbnail

재취업 준비를 하면서 마냥 시간을 보낼 수는 없어서 '모두의 연구소' 데이터 사이언티스트 4기 국비지원 과정에 지원해서, 감사하게도 교육받을 수 있는 기회를 얻을 수 있었다.

첫 3일은 오리엔테이션으로 출결 및 행정적 사항을 전달 받았고, 그루(교육생)간의 ice-breaking 시간도 있었으며, 협업 툴(제플린,Notion, Discord)등에 익숙해 질 기회도 얻게 되었다.

4일차부터 LMS를 통해 온라인 강의, 교육 자료 등을 공부하고 조원들과 서로 의문점이 생기면 서로 도와가면서 학습을 시작하게 되었다.

01. 리눅스 기초 명령어 요약

명령어 / 옵션설명
pwd현재 디렉토리 경로 출력 (print working directory)
ls현재 디렉토리 목록 출력 (list)
ls -l목록을 상세 정보(long format)로 출력
ls -a숨김 파일 포함(all) 목록 출력
ls -h파일 크기를 사람이 읽기 쉬운 형식으로 표시(human-readable)
ls -t수정 시간 순 정렬(time 기준)
ls -r역순(reverse order) 정렬
cd디렉토리 이동(change directory)
cd ~홈 디렉토리로 이동
cd ..상위 디렉토리로 이동
mkdir디렉토리 생성(make directory)
rmdir빈 디렉토리 삭제(remove directory)
rm파일 삭제(remove)
rm -r디렉토리와 그 안의 파일까지 삭제 (recursive)
cp파일 복사(copy)
cp -r디렉토리 복사 (recursive)
mv파일 이동 또는 이름 변경(move)
touch빈 파일 생성 또는 파일의 수정 시간 갱신
cat파일 내용 출력 (concatenate)
more, less긴 파일을 페이지 단위로 출력 (less가 더 유연함)
head -n N앞 N줄 출력
tail -n N마지막 N줄 출력

02. 운영체제란?

  • 운영체제(OS)
    사용자의 하드웨어, 시스템 리소스를 제어하고 프로그램에 대한 일반적
    서비스를 지원하는 시스템 소프트웨어
  • 운영체제/구성
    운영체제는 알맹이에 해당하는 커널(Kernel)과 껍데기인 셸(Shell)로
    구성되어 있음(현 교육자료는 우분투 20.04 기준)
  • GUI/CLI구분
    셸은 그래픽 기반의 GUI와 텍스트 기반의 CLI로 나뉘어짐
    예) watch df -h (디스크 용량 확인 시 CLI에 치는 명령어)
  • 운영체제/프로그램
    프로그램은 컴퓨터가 작업할 것을 기록해 둔 것을 지칭하며, 운영체제는
    프로그램을 프로세스(process)라는 단위로 관리
  • 알아두면 좋은 용어
    스레드(thread), 멀티프로세싱(Multiprocessing), 멀티스레딩(Multithreading)

03. 환경 변수 관련 명령어

명령어설명
printenv현재 셸에 설정된 환경 변수 전체 출력 (or 특정 변수만 확인 가능)
env환경 변수 목록 출력 (또는 환경 변수 설정한 채 명령어 실행)
echo $변수명해당 환경 변수의 값 출력 (예: echo $PATH)
set셸 변수 및 함수 등 모든 설정 정보 출력 (bash 내장, 로컬 변수 포함)
export VAR=값새 환경 변수 설정 또는 기존 변수 내보내기 (다른 프로세스에게 전달됨)
unset VAR환경 변수 삭제
alias명령어 단축어 설정 (예: alias ll='ls -alF')
unalias설정된 alias 해제
source 파일명환경 변수 등 설정이 담긴 파일을 현재 셸에서 적용 (.bashrc, .profile 등 재적용)
. 파일명source와 동일한 기능 (예: . ~/.bashrc)

4. 클라우드 가상화 소개

  • 가상화(virtualization)
    하나의 거대한 컴퓨팅 자원을 분할해서 여러 대의 컴퓨터가 있는 것처럼 사용하는 기술(회사가 물리적으로 서버를 보유하는 온-프레미스와 상반된 개념)
  • 호스트/게스트
    물리적인 서버 자체를 호스트(host), 물리적인 서버를 빌려 쓰는 가상 서버를 게스트(guest)로 지칭
  • 가상머신(Virtual Machine)가상화
    게스트 자체에 운영체제가 돌아가는 경우
  • 컨테이너(Container)가상화
    게스트들이 호스트의 운영체제 커널의 기능을 공유(단, 게스트 간에 프로세스와 자원 등은 서로 격리되어 있음, LMS 실습환경이 대표 예시)
  • 도커(Docker)
    도커는 소프트웨어를 어디서든 똑같이 실행할 수 있게 해주는
    '가상화된 컨테이너 기술'
  • 온프레미스 vs 클라우드 특징 요약(참고)
항목On-Premise (온프레미스)Cloud Computing (클라우드 컴퓨팅)
서버 위치기업 내부에 자체 보유외부 클라우드 제공자 서버
초기 비용고비용 (서버, 인프라 구매 등)초기 비용 낮음 (사용량 기반 요금)
유지보수내부 인력 직접 관리클라우드 제공자가 관리
확장성물리적 한계 있음, 시간 소요손쉬운 확장, 자동화 가능
접근성사내 네트워크 중심인터넷 연결 시 어디서든 접근 가능
보안기업 직접 통제 (보안팀 필요)보안은 제공자에 의존, 설정 필요
유연성환경 변경/이전 어려움다양한 서비스와 손쉬운 통합 가능
예시자체 IDC, 기업 사내 서버AWS, GCP, Azure 등
profile
2025화이팅!

0개의 댓글