본문 바로가기
SeSAC/네트워크 & 리눅스

[SeSAC 성동캠퍼스 1기] 네트워크&리눅스 1일차

by zivvon 2023. 11. 6.
목차 접기

1. 실습 환경 구축

 ✓ VMware pro 17 다운로드하기

 

[ 가상머신과 가상머신 소프트웨어의 개념 ]

- 컴퓨터에 설치된 운영체제(호스트 OS)안에 가상의 컴퓨터를 만들고, 그 안에 또 다른 운영체제(게스트 OS)를 설치/운영할 수 있도록 제작된 프로그램

- PC에 이미 설치되어 있는 Windows를 호스트 운영체제라 부르고, 가상머신에 설치할 그 외의 운영체제를 게스트 운영체제라고 부름

- 멀티부팅(Multi-Booting)과는 개념이 다름!

 

[ 명령어 ]

1. 부팅모드 변경

$ sudo systemctl set-default multi-user.target 
$ sudo reboot //재부팅

 

2. 업데이트

셧다운, 메모리 1기가(1024)로, 부팅, 로그인
$ sudo apt-get update

 

3. 원격 서버 설치

$ sudo apt-get install openssh-server

 

4. 스냅샷

$ sudo init 0
vmware -> 이미지 선택 -> 마우스 우클릭 -> 스냅샷 매니저 -> take snapshot

 

=> 자! 이제 언제든지 이미지 쓸 준비 완료 :)

 

5. ssh 원격 접속

콘솔에서 ip 확인
$ ip addr
인터페이스명 : ens33
윈도우에서, putty 실행 -> ip 입력 -> id, 비밀번호로 접속

 

✓ putty 설치?

 

[ 네트워크 환경 ]


 

2. 우분투 리눅스 소개

[ 리눅스의 개요 ]

- 리눅스 = 무료 유닉스

- 1991년 '리누스 토르발스'가 버전 0.01을 최초 작성

- 1992년 0.02 버전 공개하며 시작됨

- 리누스 토르발스는 커널(Kernel)만 개발

- 배포판의 구성

 

[ GNU 프로젝트 ]

- 1984년 리차드 스톨만에 의해 GNU 프로젝트 시작

- 목표 : '모두가 공유할 수 있는 소프트웨어'

- 1985년 리차드 스톨만의 자유 소프트웨어 재단(FSF) 설립 목표 : GNU 프로젝트에서 제작한 sw 지원함으로써 컴퓨터 프로그램의 복제, 변경, 소스 코드의 사용에 대한 제한을 철폐

- GPL 라이선스는 자유 소프트웨어의 수정과 공유의 자유를 보장

- 프리웨어(무료 소프트웨어)라는 개념을 뛰어넘어서 진정한 자유에 대한 개념

- 자유 소프트웨어는 심지어 무료로 얻은 소프트웨어를 유상으로 판매할 자유도 보장

 

[ 커널 ]

- 우분투 20.04는 커널 5.4를 포함함

- 배포판에 포함된 기본 커널을 사용자가 직접 최신의 커널로 업그레이드할 수 있음 (커널 업그레이드)

 

[ 데비안 리눅스와 우분투 리눅스 ]

- 우분투 리눅스는 데비안 리눅스를 기초로 유니티 데스크톱 환경을 사용하는 리눅스 배포판으로 최초 버전은 2004년 10월 우분투 4.10버전부터 시작. 현재는 그놈(Gnome) 데스크톱 환경으로 배포됨

- 우분투 배포판은 우분투 데스크톱과 우분투 서버 두 가지를 기본적으로 배포


 

3. 서버 구축 시 알아야 할 필수 개념과 명령어

[ 시작과 종료 ]

- 종료하는 방법
poweroff, shutdown -P now, halt -p, init 0​

- 시스템 재부팅
shutdown -r now, reboot, init 6​

- 로그아웃
logout, exit​

 

 

[ 런 레벨(RunLevel) ]

: 'init' 명령어 뒤에 붙는 숫자

     런레벨           영문 모드           설명           비고     
0 Power Off 종료 모드  
1 Rescue 시스템 복구 모드 단일 사용자 모드
2 Multi-User   사용하지 않음
3 Multi-User 텍스트 모드의 다중 사용자 모드  
4 Multi-User   사용하지 않음
5 Graphical 그래픽 모드의 다중 사용자 모드  
6 Reboot    

 

[ 자동 완성과 히스토리 ]

- 자동 완성 : 파일명의 일부만 입력한 후 Tab키를 눌러 나머지 파일명을 자동으로 완성하는 기능

- 도스 키 : 이전에 입력한 명령어를 위/아래 화살표 키를 이용해 다시 나타내는 기능

 

[ 리눅스 기본 명령어 ] ⭐⭐⭐

- ls : windows의 'dir'과 같은 역할로, 해당 디렉터리에 있는 파일의 목록을 나열

# ls /etc/systemd
# ls -al

 

- cd : 디렉터리 이동

# cd ../etc/systemd

 

- pwd : 현재 디렉터리의 전체 경로 출력

 

-rm : 파일이나 디렉터리 삭제

# rm -rf abc

 

- cp : 파일이나 디렉터리를 복사

# cp abc.txt cba.txt

 

- touch : 크기가 0인 새 파일을 생성, 이미 존재하는 경우 수정 시간 변경

# touch abc.txt

 

- mv : 파일과 디렉터리의 이름을 변경하거나 위치 이동 시 사용

mv abc.txt www.txt

 

- mkdir : 새로운 디렉터리 생성

# mkdir abc

 

⚠️ 리눅스에서는 파일명과 같은 디렉토리 만들 수 없음! 단, 대소문자 구분함

 

- rmdir : 디렉터리 삭제 

⚠️ 단, 비어 있어야 함!

# rmdir abc

 

- cat : 텍스트로 작성된 파일을 화면에 출력

⚠️ 수정 불가! 출력 전용

# cat a.txt b.txt

 

 

- head, tail : 텍스트로 작성된 파일의 앞 10행 또는 마지막 10행만 출력

# head /etc/systemd/bootchart.conf

 

+ 앞에서 15행을 보고 싶다면?!

ex)

# head -n 15 /etc/passwd

 

- more : 텍스트로 작성된 파일을 화면에 페이지 단위로 출력

# more /etc/systemd/system.conf

 

- less : more와 용도가 비슷하지만 기능이 더 확장된 명령

# less /etc/systemd/system.conf

 

- file : File이 어떤 종류의 파일인지를 표시

# file /etc/systemd/system.conf

 

- clear : 명령창을 깨끗하게 지워줌

# clear

 


 

오늘의 후기!

: 금요일에 학교 수업이 있어서 스마트훈련시스템을 통해 다시보기로 강의를 들었는데 오히려 좋은 부분들이 꽤 있는 것 같다! 리눅스 환경 구축에 난항을 겪을 줄 알았는데 생각보다 수월해서 괜찮았다. 리눅스는 처음 배워보는데 용어 같은 게 생소한 게 많아서 많은 시간을 들여서 체화해야겠다. 자주 써봐야 익숙해질 것 같다.. 파이팅 하하하