서버를 구축할 때 알아야 할 필수 개념과 명령어
리눅스 운영 할 때 알아야 할 개념과 명령어에 대해 정리
런레벨
- 런레벨은 총 7레벨로 구성
-
init 명령어 뒤에 붙는 숫자를 런레벨이라고 한다.
- 런레벨 모드를 확인
- cd /lib/systemd/system 디렉터리의 runlevel?.target 파일을 확인한다.
에디터 사용
- Windows의 메모장처럼 X 윈도에서 제공해주는 편리한 에디터로는 gedit이 있다. 터미널에 간다히 “gedit 파일이름” 명령을 입력하면 해당 파일을 편집할 수 있다.
리눅스 기본 명령어
최소한의 필수 명령어 위주로 정리
ls
- List 의 약자로 Windows의 dir 명령과 같은 역할을 한다. 즉, 해당 디렉터리에 있는 파일의 목록을 나열한다.
cd
- Change Directory의 약자로 디렉터리를 이동하는 명령어.
pwd
- Print Working Directory의 약자로 현재 디렉터리의 전체 경로를 화면에 보여준다.
rm
- 파일이나 디렉터리를 삭제한다.
cp
- 파일이나 디렉터리를 복사한다.
touch
- 크기가 0인 새 파일을 생성하거나, 이미 존재한 파일의 최종 수정 시간 변경
mv
- 파일이나 디렉터리의 이름을 변경하거나 다른 디렉터리로 옮길 때 사용
mkdir
- Make Directory의 약자로 새로운 디렉터리를 생성한다
rmdir
- Reomove Directory로 디렉터리를 삭제한다.
cat
- 파일의 내용을 화면에 보여준다.
more
- 텍스트 형식으로 작성된 파일을 페이지 단위로 화면에 출력한다.
clear
- 현재 사용 중인 터미널 화면을 깨끗하게 지워준다.
사용자 관리와 파일 속성
사용자와 그룹
- 리눅스는 다중 사용자 시스템이다.
- 기본적으로 root라는 슈퍼 유저가 있다.
- root 사용자는 시스템에 접속할 수 있는 사용자를 생성할 수 있는 권한이 있다.
- 이와 관련된 명령어를 알아보자
adduser
- 새로운 사용자를 추가한다.
- 이 명령을 실행하면, /etc/passwd, /etc/shadow, /etc/group 파일에 새로운 행이 추가한다.
passwd
- 사용자의 비밀번호를 변경한다.
usermod
- 사용자의 속성을 변경한다.
userdel
- 사용자를 삭제한다.
change
- 사용자의 암호를 주기적으로 변경하도록 설정
groups
- 사용자가 소속된 그룹을 보여준다.
groupadd
- 새로운 그룹을 생성한다.
groupmod
- 그룹의 속성을 변경한다.
groupdel
- 그룹을 삭제한다.
gpasswd
- 그룹의 암호를 설정
리눅스 관리자를 위한 명령어
리눅스 시스템을 관리하기 위해 관리자 측면에서 사용해야 할 명령어
dpkg
- 데비안 리눅스에서 프로그램을 설치한 후에 바로 실행할 수 있는 설치 파일을 제작
- 이러한 설치 파일의 확장명은 *.deb이며, 패키지라고 부른다.
- apt-get 이전에는 주로 dpkg가 사용되었다.
dpkg 명령어 옵션
설치
- dpkg -i 패키지파일이름.deb
삭제
- dpkg -r 패키지이름 : 기존에 설치된 패키지 삭제
- dpkg -p 패키지이름 : 기존에 설치된 패키지 삭제 및 설정파일까지 모두 제거
조회
- dpkg -l 패키지이름 -> 설치된 패키지에 대한 정보를 보여줌
dpkg 단점
예전 리눅스의 프로그램 설치보다는 획기적으로 편리해지긴 했지만, dpkg 명령어는 의존성의 문제가 있다. 예를 들어, 우분투의 기본 웹 브라우저인 Firfox는 X Window 상에서 가동된다. X Window가 설치되지 않은 상태에서 Firefox를 설치하면 Firefox는 X Window에 의존성이 있어, 설치가 되지 않는다.
apt-get
- apt-get 명령어는 dpkg 명령어의 패키지 의존성 문제를 완전히 해결해준다.
- apt-get 명령어는 특정 패키지를 설치할 때, 의존성이 있는 패키지를 자동으로 먼저 설치해준다.
apt-get 명령어
기본설치 방법
- apt-get -y install 패키지이름
패키지 목록의 업데이트
- apt-get update
삭제
- apt-get remove 패키지이름
apt-cache
패키지를 설치하기 전에 패키지에 대한 정보나 의존성 문제를 미리 확인 가능
패키지 정보 보기
- apt-cache show 패키지이름
패키지 의존성 확인
- apt-cache depends 패키지이름
네트워크 관련 설정 및 명령어
중요한 네트워크 개념 및 명령어 정리
네트워크 관련 필수 개념
TCP/IP
- 컴퓨터끼리 네트워크상으로 의사소통을 하는 약속을 프로토콜이 라고 부르는데, 그 중 가장 널리 시용 되는 프로토콜의 종류 중 하나다.
- 통신의 전송/수신을 다루는 TCP와 데이터 통신을 다루는 IP로 구성된다.
Host Name 과 Domain Name
- Host Name 은 각각의 컴퓨터에 지정된 이름을 의미한다.
- Domain Name 은 babo.co.kr 과 같은 이런식으로 표현하고, kr 은 국가를 co는 회사를 babo는 회사명/단체명을 의미한다.
IP 주소
- 네트워크에 연결된 모든 컴퓨터는 고유한 IP 가 있다.
- 특정한 컴퓨터의 IP 주소를 알면, 그 컴퓨터가 전 세계 어디에 있는지 상관없이 네트워크에 접속이 가능하다.
- 주의할 점은 사설 IP 주소는 이게 불가능하다는 것을 알아야 한다.
- Server IP 주소는 192.168.111.100 이고, 127.0.0.1은 모든 컴퓨터의 자기자신 (localhost) 를 의미한다.
브로드캐스트 주소
- 내부 네트워크의 모든 컴퓨터가 수신하는 주소를 말한다. C클래스인 경우라면 현재 주소의 제일 끝자리를 255로 바꾼 주소이다.
- 브로드캐스트 주소는 동일한 네트워크 주소를 가진 컴퓨터들이 다 들을 수 있는 스피커라고 생각하면 된다.
게이트웨이
- 네트워크 간 데이터를 전송하는 컴퓨터 또는 장비
- VMware의 게이트웨이 주소는 192.168.111.2로 고정
넷마스크 & 클래스
: 네트워크의 규모를 결정
DNS 서버주소
- URL 을 해당 컴퓨터의 IP 주소로 변환해 주는 서버
- 설정 파일은 /etc/resolv.conf
- VMware를 사용하면 VMware가 192.168.111.2번을 게이트웨이 및 DNS 서버로, 192.168.111.254를 DHCP 서버로 설정함
네트워크 관련 필수 명령어
nm-connection-editor
- 자동 IP 주소 또는 고정 IP 주소 사용 결정
- IP 주소, 서브넷 마스크, 게이트웨이 정보 입력
- DNS 정보 입력
- 네트워크 카드 드라이버 설정
- 네트워크 장치 설정
systemctl start/stop/restart/status networking
- 네트워크 설정을 변경한 후에 변경된 내용을 시스템에 적용시키는 명령어.
- nm-connection-editor 명령을 실행해서 내용을 변경한 후에는 꼭 systemctl restart networking 명령을 실행해야한다.
ifconfig 장치이름
- 해당 장치의 IP 주소와 관련 정보를 출력하는 명령어이다.
nslookup
- DNS 서버의 작동을 테스트하는 명령어
ping IP 주소 또는 URL
해당 컴퓨터가 네트워크상에서 응답하는지를 테스트하는 간편한 명령어
서브목차