본문 바로가기
CLASS/Server

CentOS-1

by hingu 2024. 7. 29.

https://www.virtualbox.org/wiki/Downloads  - 설치

https://vault.centos.org/7.7.1908/isos/x86_64/ -  CentOS-7-x86_64-DVD-1908.iso 다운

 

- 전부다 CUI( Command User Interface )형태 

 

 

[ OS - Linux ] - Docker 사용    

  • RedHat (유료)
    - Centos (무료)
    - Fedora (무료)
    => 셋 다 똑같은 디렉토리에 똑같은 명령어.. 다 똑같다고 생각하면 됨
  • Ubuntu (임베디드) - 무료(Git,Node.js)
  • Suse 

 

[ OS - Windows Server ] - 유료(비쌈) , Docker 사용 X-엄청비싸짐

  • OS,Mysql 각 라이센스 별도

 

[ OS - IBM,HP,Unix ]

  • Linux와 명령어가 같음

 

 

❓ net-mask

네트워크 주소를 32bit형태로 구성하는 연결 연산 주소

255.0.0.0 - A class (192.0.0.1 ~ 192.0.0.254)

255.255.0.0 - B class (192.192.0.1 ~ 192.254.0.1)

255.255.255.0 - C class (가장 많이 사용 - 세자리.세자리.세자리 라 폭이 제일 넓음)

255.255.255.255 - D class (권장X - 연습용)

( 255 : 1~254 사용 가능 )

 

❓ NAT

내부에서 사용하는 IP ( NAS랑 비슷 )

10.0.2.0/24 => 10.0.2.1 ~ 254 사용가능 

요 주소로 접속해야함 http://10.0.2.1:8080/~

 

👀 [ Oracle VM VirtualBox ]

 : ip 공유기 역할을 한다고 생각하면댐

 

window ip ==> virtualBox가 만들어준 ip ==> 원격으로 다른 서버 (지정port의 ip - 게스트 ip) 접속 가능 

: 포트포워딩

포트포워딩은 아주 중요 => ssh,tomcat,ftp...등 사욜할거 해당 포트번호에 맞는거 새로 만들어주면 됨

 

 

⚡ 운영체제 설치

서버 세팅 : 수동 세팅시 각 디렉토리별 용량 배분해야함

- 해당 서비스에 맞게 잘 배분해야함

- 서버마스터들이 해주는일.. 이지만~ 백엔드가 하기도함

[ 디렉토리 종류 ]

/ => 운영체제 관련 정보
/boot => booting할때 사용
/usr => mysql,oracle,mariadb,ftp,ssh..등 각종 프로그램( rinux에선 demon이라 부름 ) 세팅,설치시
/var => 메일 로그기록,각종 로그 기록이 저장되는 경로
/home => 웹서비스를 제공하는 경로 
/etc => 각종 데몬의 환경설정 (start,stop,status,conf)
/swap => 처리 메모리영역

서버는 넘모 어려운 영역 나중에 꼭 공부해보세용 ( https://product.kyobobook.co.kr/detail/S000001743765  요책 추천 )

우리는 자동세팅할거임 (Gnome 라디오, 개발자 도구 머시기 체크박스)

 

 

root : 최고관리자 (모든 프로세서를 관리)

Centos(기본 서버) => docker => 각 파티션으로 가상의 서버로분할 (기본 서버 안에 여러개의 서버가 있는것!)

 

docker의 기본 패턴

1. DB서버 - mysql,mariadb,oracle

2. WEB서버 - apache,nginx , tomcat 

3. CDN서버 - FTP(이미지 전용 서버)

=> 서버 안에 이 세개가 가상으로 돌아감  (비용 절약 가능) - 이게 docker고 클라우드

 


👀 Linux 명령어

 

$ : 일반 사용자일때 (master)

# : root (최고관리자) 일 때

 

su 

super user 의 약자로 root로 전환됨  (root로 바꾸기 필수 ! 어떤 사용자든! 명령어 안먹음)

-> exit : 일반 사용자로 전환됨

ifconfig

자신의 ip 주소를 확인하는 명령어

nslookup

외부 서버에 연결이 가능한지 확인하는 명령어

다시 linux 가동할때마다 자동으로 인터넷 연결 : 시스템도구-설정 - 네트워크 - 이더넷 켬 - 톱니바퀴 - 자동으로연결 체크

pwd

현재 자신이 위치한 경로

cd 

change directory의 약어이며 경로를 변경할때 사용

cd / : 최상위 디렉토리로 변경 

cd home : home 디렉토리로 입장

ls -al

해당 경로의 파일 리스트를 확인할때 사용하는 명령어

ls -al

 

ntsysv

데몬 관리 리스트 프로그램 실행 명령어

spacebar : checkbox 해제및 설정 , 확인버튼 : tab->enter

 

selinux

보안포트를 방화벽과 연계해서 사용되는 데몬

vi 편집기로 편집을 해서 설정 

vi /etc/selinux/config (i: 입력 , esc : 새로운 명령어, :wq 해당 내용 저장 후 종료)

여기에서 SELINUX=enforcing 을 SELINUX=disabled로 변경

 

[ sshd ]

외부에서 서버로 접속할 수 있는 프로토콜

service sshd stop  : 외부접속 차단

service sshd start : 외부접속 허용

service sshd restart : 재가동  

 

ssh - 환경설정(22 포트를 오픈시켜서 외부접속 허용

vi : 파일 편집 / cat : 해당 파일 보기

vi /etc/ssh/ssh_config => port,protocol의 # 제거 => esc => :wq (저장하고 파일 나가기) 외부접속 허용 

vi /etc/ssh/sshd_config => port의 # 제거 => esc => :wq (저장하고 파일 나가기) 내부접속 허용

==> putty로 접속 가능 / #은 rinux파일의 주석 (위에서 주석처리 해제한거임)

 

ssh 10.0.2.15 입력하면 접속 가능해짐!

 

vi편집기 사용법

:wq => 저장하고 파일 나가기

:q => 그냥 나가기

:q! => 저장 안하고 나가기)

 

mkdir 

디렉토리를 생성하는 명령어

mkdir upload : upload 라는 디렉토리를 생성하겠다

cd upload : upload라는 디렉토리 진입

 

wget

외부 url을 이용하여 파일 및 이미지,동영상..등 서버에 직접 다운로드 받을 수 있음

wget 다운받고싶은url(외부) => 해당 파일 다운됨

 

rm -drf 

삭제하는 명렁어 (파일,디렉토리 삭제 가능)

 

mv

파일명 변경하는 명령어

mv 변경전파일명 변경후파일명

 


useradd 사용자 아이디

passwd 사용자아이디

일반 사용자 추가 (root에서 해줘야함)

 

netstat -nap | grep LISTEN

현재 열려있는 포트번호 싹다 확인

 


앞에 엄청 긴.. 과정.. 메모안함 ㅋ

[base]
name=CentOS-$releasever - Base
baseurl=http://ftp.daum.net/centos/7/os/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-$releasever - Updates
baseurl=http://ftp.daum.net/centos/7/updates/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-$releasever - Extras
baseurl=http://ftp.daum.net/centos/7/extras/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-7

[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://ftp.daum.net/centos/7/centosplus/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-7

=> kakao로 업데이트할 centosrepo.txt 내용

 

외부 접속가능 열어주면 ftp로 접속가능....

ftp 접속시 파일 업로드하면 putty로 확인 가능

 

=> 

java update 해야함  (프로젝트에 맞는 버전)

추가

java,javac .. apache.. 등.. 

 

yum install httpd - 아파치 다운 

 

[퍼미션]

r : 읽기 (4)

w : 쓰기 (2)

x : 실행 (1)

 

rwx---rwx : 707

rwx-wx-r-- : 734

 

읽고 쓰고 실행할수 있게 권한 부여한거..?

chmod : change mode의 약자

 

drwx---rwx 가 없으면 읽고 쓰고 실행할수 없음...

 

vi /etc/httpd/conf/httpd.conf : 164번째줄 /로 접속시 연결 index.확장자 변경 (esc + set number 입력시 몇째줄인지 표시됨)

httpd -v : 아파치 버전 확인 

 

=> systemctl start httpd : 서버 가동 / systemctl stop httpd : 서버 가동 중지

 

 

넘모어렵다...

'CLASS > Server' 카테고리의 다른 글

docker-3  (0) 2024.08.09
docker-2  (0) 2024.08.08
docker-1  (0) 2024.08.05
CentOS-3 / tomcat 설치  (0) 2024.08.02
CentOS-2 / mysql 연결  (0) 2024.08.01