본문 바로가기
App/리눅스

[리눅스] 04 리눅스 기본 명령어와 네트워크 명령어

by 건망망고 2024. 4. 23.

- 리눅스의 기본 명령어를 익힌다

- 네트워크 정보를 확인하는 방법을 이해한다

- 리눅스의 네트워크 관련 개념을 이해하고 중요 명령어를 익힌다

- 파일 압축 및 묶기 명령어를 익힌다

- 리눅스의 시스템 설정 명령어를 익힌다


리눅스의 기본 명령어를 익힌다

 

ls : 해당 디렉터리에 있는 파일의 목록을 나열
cd : 디렉터리 이동
pwd : 현재 디텍터리의 전체 경로를 화면에 보여줌
touch : 크기가 0인 새파일을 생성, 이미 파일이 존재한다면 최종 수정 시간을 변경
mkdir : 새로운 디렉터리 생성
rmdir : 디렉터리 삭제
cp : 파일이나 디렉터리 복사
rm : 파일이나 디렉터리 삭제
mv : 파일이나 디렉터리의 이름을 변경하거나 다른 디렉터리로 이동
cat : 파일의 내용을 화면에 보여줌 = 파일 내용을 화면에 출력
head, tail : 텍스트 형식으로 작성된 파일의 앞 10행 또는 마지막 20행만 화면에 출력한다
more, less : 텍스트 형식으로 작성된 파일을 페이지 단위로 화면에 출력한다
file : 해당 파일이 어떤 종류의 파일인지 보여준다
clear : 현재 사용중인 터미널 화면을 깨끗히 지워준다

네트워크 정보를 확인하는 방법을 이해한다

 

server, serverB,client에 할당된 IP 주소 확인하기

네트워크 정보 파악 : ipconfig 명령 실행한후 VMnet8 부분을 확인, 보이지 않는다면 ipconfig/all 명령 실행

 

ip addr : client의 IP주소 파악

 

게이트웨이 정보 확인하기

ip route : server에 설정된 게이트웨이 정보 확인
systemd-resolve -- status ens32 : 현재 설정된 DNS 서버 정보 확인

 

VMware는 DHCP 서버를 제공하는 데 DHCP 서버 IP 주소의 맨 뒷자리 254


리눅스의 네트워크 관련 개념을 이해하고 중요 명령어를 익힌다

 

TCP/IP : 네트워크 상에서 컴퓨터 간 의사소통에 관한 약속 - 프로토콜 -> TCP/IP는 가장 널리 사용되는 프로토콜 중 하나이다

=> TCP : 통신의 전송 및 수신을 다룸, IP : 데이터 통신을 다룸

 

호스트 이름과 도메인 이름 : 호스트 이름 - 각각의 컴퓨터에 지정된 이름, 도메인 이름 or 도메인 주소 => hanbit.co.kr

 

IP 주소 : 네트워크상에 연결된 컴퓨터를 유일하게 구분하는 번호 체계 , 000.000.000.000형식의 4바이트로 이루어짐

 

네트워크 주소 : 000.000.000.@@@ -> 앞의 세자리가 같고 뒤에 한자리만 다르다 = 같은 네트워크에 있다, 서브넷 마스크는 공통으로 (255.255.255.0)을 사용한다 

 

브로드캐스트 주소 : 내부 네트워크의 모든 컴퓨터가 수신하는 주소

 

게이트웨이 : 내부 네트워크를 외부와 연결하기 위한 컴퓨터 또는 장비. 인터넷을 사용하기 위해 외부 네트워크에 접속하려면 게이트웨이의 IP 주소를 알아야함 = 외부 네트워크로 나가기 위한 통로

 

넷마스크와 클래스 =  넷마스크로 네트워크의 규모가 결정된다

 

DNS 서버 주소 : 인터넷을 사용할 때 www.daum.net 같은 url을 해당 컴퓨터의 IP 주소로 변환해주는 서버 컴퓨터

 

=> VMware 사용하면 VMware가 게이트웨이, DHCP 서버, DNS 서버의 역할을 가상으로 제공 해줌

 

< 네트워크 관련 명령어>

nm-connection-editor : 네트워크 기본 정보가 설정된 파일
systemctl start/stop/restart/status networking : 네트워크에 설정을 변경한 후 변경된 내용을 시스템에 적용하는 명령어
ifconfig 장치명 : 해당 IP 주소와 관련 정보를 출력하는 명령어
nslookup : DNS 서버의 작동을 테스트 
ping IP 주소 또는 URL : 해당 컴퓨터가 네트워크 상에서 응답하는 지 테스트하는 간편한 명령어

 

nm-connection-editor : 네트워크와 관련된 작업은 대부분 이 명령어를 바탕으로 실행

- 자동 IP 주소 고정 또는 고정 IP 주소 사용 결정

- IP 주소, 서브넷마스크, 게이트웨이 정보 입력

- DNS 정보 입력

- 네트워크 카드 드라이버 설정

- 네트워크 장치 설정

 

<네트워크 설정 관련 파일>

/etc/resolv.conf : DNS 서버의 정보와 호스트 이름이 들어있는 파일
/etc/hosts : 현재 호스트 이름과 FQDN이 들어있는 파일

네트워크 관련 파일 /etc/netplan/ 폴더 안에 들어있음

 


파일 압축 및 묶기 명령어를 익힌다

 

<파일 압축>

xz : 확장명 xz로 압축하거나 푼다
bzip2 : 확장명 bzip2로 압축하거나 푼다
gzip : 확장명 gz로 압축하거나 푼다
zip/unzip : 윈도우와 호환되는 확장명 zip으로 압축하거나 푼다

 

<파일 묶기>

알집과 같은 윈도우 압축파일은 aaa,bbb라는 파일을 압축했을 때 ccc.zip이라는 하나의 압축파일이 생긴다. aaa과 bbb라는 두 파일이 ccc라는 파일로 묶인 후에 압축된 것이다. 이는 윈도우 압축 프로그램이 '파일압축'이나 ' 파일 묶기'를 한번에 하기 때문이다

tar :  묶음 파일을 만들거나 푼다
<동작>
c : 새로운 묶음 파일을 만든다
x : 묶음 파일을 푼다.
t : 묶음 파일을 풀기전에 묶인 경로를 보여준다
C : 지정된 디렉터리에 묶음 파일을 푼다
<옵션>
f(필수) : 묶음 파일명을 지정한다
v : visual을 의미하며 파일을 묶거나 푸는 과정을 보여준다
J : tar+xz
z : tar+gzip
j : tar + bzip2

 

<파일 위치 검색>

find 경로 옵션 조건 action : 특정 파일의 위치를 검색

which 실행파일 명 : PATH 에 설정된 디렉터리와 절대 경로를 포함한 위치를 검색한다

whereis 실행파일명 : 실행파일과 소스,man 페이지 파일까지 검색한다

locate 파일명 : updatedb 명령을 한번 실행해야 사용 가능하다.

find 경로 옵션 조건 action

<옵션> 
-name
-user(소유자)
-newer(전,후)
-perm(허가권)
-size(크기)
<action>
-print(기본값)
-exec(외부 명령 시행)


리눅스의 시스템 설정 명령어를 익힌다

<시스템 설정>

gnome-control-center : 시스템 설정
nm-connecton-editor : 네트워크 설정
gufw : 방화벽 설정
kcmshell5 kcm_systemd : 서비스(데몬) 설정

 

 

<파이프,필터,리디렉션>

| : 두 프로그램을 연결하는 연결통로
grep, tail, wc, sort, awk, sed : 필요한것만 걸러주는 명령
><>> : 리디렉션, 표준 입출력의 방향을 바꾸는 것

 


 

 

연습문제

 

1. 다음은 ls의 어떤 옵션에 대한 설명인지 각각 보기에서 고르시오

- 현재 디렉터리의 목록(숨김파일 포함)을 보여줌 : -a

- 현재 디렉터리의 목록을 자세히 보여줌 : - I

 

2. 다음은 어떤 명령어에 대한 설명인지 각각 보기에서 고르시오

- 현재 작업중인 디렉터리의 경로 출력 : pwd

- 빈 파일 생성 : touch

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

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

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

- 파일이나 디렉터리의 이름변경 : mv

- 파일 내용을 화면에 출력 : cat

- 파일의 앞 10행을 화면에 출력 : head

- 파일을 페이지 단위로 화면에 출력 : more

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

 

3. 윈도우의 ipcongfig/ all - IP 주소 / 넷마스크 / 게이트웨이 / DNS 서버 정보 표시  ????/

 

4. 리눅스의 IP 정보를 확인하는 명령어 - ifconfig ens32, ifconfig

 

5. systemd-resolve -- status ens32 명령으로 알 수 있는 것 : 현재 설정된 DNS 서버의 정보

 

6. VMware는 DHCP 서버를 제공하는 데 DHCP 서버 IP 주소의 맨 뒷자리 254

 

7. 각각의 컴퓨터에 지정된 이름 : 호스트 이름

가장 널리 사용되는 프로토콜 : TCP/IP

네트워크상에 연결된 컴퓨터를 유일하게 구분하는 번호체계 :  IP 주소

내부 네트워크를 외부와 연결하기 위한 컴퓨터 또는 장비 : 게이트웨이

네트워크의 규모를 결정하며 255.255.255.0등으로 사용됨 : 넷마스크

 

8. nm-connection-editor X = DHCP 주소변경은 불가능

 

9. 네트워크 설정을 변경한 후 변경 내용을 적용

해당 컴퓨터가 네트워크상에서 응답하는지 테스트

DNS서버의 작동 테스트

해당 장치의 IP 주소와 관련 정보 출력

 

10. /etc/resolv.conf : DNS 서버의 정보와 호스트 이름이 들어있는 파일이다. 임시로 사용되는 파일이며 네트워크를 재시작하면 초기화된다

 

11. 기능이 다른 명령어 : xz, bzip2, gzip, zip /// tar

 

12. tar 명령어의 각 동작에 해당하는 영문 한자를 쓰시오

- 묶인 파일을 풂 : x

- 새로운 묶음을 만듦 : c

- 묶음을 풀기 전에 묶인 경로를 보여줌 : t

 

13. tar 명령어에서 압축을 추가하는 옵션이 아닌것은 : v(파일을 묶거나 푸는 과정을 보여준다)

 

14. 파일 위치 검색과 관련 없는 명령어는 : file // find,which,whereis,locate

 

15. 우분투의 방화벽을 설정하는 명령어 : gufw

 

16. 각각 무엇에 대한 설명인지

- 표준 입출력의 방향을 바꾸는 것을 말한다. 표준 입력은 키보드이고 표준 출력은 화면이지만 이를 파일로 처리하고 싶을 때 주로 사용한다 : 리디렉션

- 필요한 것만 걸러주는 명령으로는 grep, tail, wc, sort, awk, sed 등이 있으며 주로 파이프와 같이 사용한다 : 필터

- 두 프로그램을 연결하는 연결통로를 의미하며 | 를 사용한다 : 파이프

 


[실습 4-1] 가상머신에 할당된 IP 주소 확인하기

  1. 가상머신 부팅하기
  2. 가상머신에 할당된 IP 주소 확인하기ip addr = client의 ip 주소 확인
  3. ifconfig ens32 or ifconfig = 서버의 ip 주소 확인
  4. 게이트웨이 정보 확인하기systemd-resolve - -status ens32 = 현재 설정된 dns 서버 명령
  5. ip route = 현재 서버에 설정된 게이트웨이 정보

[4-2] 고정 IP 주소 변경하기

  1. 터미널 열기
    1. IP 정보 확인하기
    2. nm-connection-editor
    3. 고정 IP 로 수동 변경
    4. 입력하고 reboot
    5. 고정 IP주소로 설정한 내용 확인하기netstat -m = 게이트웨이 확인
    6. systemd-resolve - -status ens32 = 설정된 dns 서버 정보 확인
    7. ifconfig = 변경내용 확인
    8. DNS 서버 작동 확인하기
    nm-connection-editor 명령 입력 (잘못된 dns주소 넣으면 서버 응답 안함)rm/etc/resolv.confcat /etc/resolv.conf = dns서버 설정되어있는 resolv.conf 삭제
    1. dns 서버 테스트server = 입력했을 때 나오는 결과가 현재 서버에 설정된 dns 서버 주소nm-connection-editor = dns 서버 영구적으로 설정(8.8.8.8)
    2. reboot
    3. server 새로운 DNS서버IP주소 명령 입력 = dns서버 주소 변경
    4. nslookup = 프롬프트가 > 로 바뀜
  2. reboot
  3. service network-manager restart
  4. systemctl disable systemd-resolved/ systemctl stop systemd-resolved = 관련 서비스 중지