DAY_10 그누보드 사용해보기

2021. 1. 7. 18:16
반응형

체크리스트

 ftp는 무엇인가 ?

- File Transfer Protocol 로 파일 전송 프로토콜이다. 암호화 되어 있지 않다.
 ftps는 무엇인가 ?

- ftp에 인증서를 달아서 암호화 통신을 가능하게 해준다.
 sftp는 무엇인가 ?

- 공개키 기반의 ssh에서 제공하는 암호화 통신을 가능하게 하는 프로토콜이다.

- ftp + 암호화 통신이라고 생각하면 된다. 
 winscp 프로그램의 역할은 무엇인가 ?

- 서버에 파일을 전송하는 프로그램이다. ftp, sftp, ftps를 지원한다.
 xampp 프로그램의 역할은 무엇인가 ?

- APM 연동하는 프로그램이로 외국에서 제작되었으며 최신 php가 연동되어 있는게 특징이다.

- 리눅스, 윈도우, 맥에서도 동작이 되는게 장점이다.

 systemctl 명령어는 무엇인가 ?

- 서비스의 시작/중지/재시작/상태를 알 수 있는 명령어이다.
 service 명령어는 무엇인가 ?

- 서비스의 시작/중지/재시작/상태를 알 수 있는 명령어이다.

- 쉘 스크립트로 되어있다.

 systemctl 프로그램을 이용해서 웹서버를 시작/중지/재시작 하는 방법은 무엇인가 ?

- systemctl start/stop/restart/status httpd 
 service 프로그램을 이용해서 웹서버를 시작/중지/재시작 하는 방법은 무엇인가 ?

- service httpd start/stop/restart/status  
 프로세스를 확인하는 명령어는 무엇인가 ?

- ps
 시스템에서 동작중인 전체 프로세스를 확인하는 명령어는 무엇인가 ?

- ps aux

- ps -ef

 일반 유저의 홈디렉터리 위치는 어디인가 ?

- 기본값은 /home/일반 유저 이고 하지만 얼마든지 다른 디렉터리로 변경할 수 있다.

# useradd -d /home2/user1000 user1000

# tail -1 /etc/passwd

# su - user100 $ pwd /home2/user1000

$ exit

# userdel -r user1000

 슈퍼유저(관리자)의 홈디렉터리 위치는 어디인가 ?

- /root 
 CentOS7 에서 일반 유저가 파일을 저장할 수 있는 디렉터리를 적으시오.

- 자신의 홈 디렉터리, /tmp ,,,등등 (sticky bit가 설정된 디렉터리)

 /tmp 디렉터리에 대해서 설명하시오.

- 임시 디렉터리로 sticky bit 가 설정된 공용 디렉터리이다.
 /bin 디렉터리에 대해서 설명하시오.

- 일반 명령어가 디렉터리이다. /usr/bin에 심볼릭 링크가 걸려있다.

- 일반 사용자들이 실행할 수 있는 파일이 저장되어 있는 파일이다.
 /usr/bin 디렉터리에 대해서 설명하시오.

- 일반 사용자들이 실행할 수 있는 파일이 저장되어 있는 파일이다.
 /sbin 디렉터리에 대해서 설명하시오.

- 관리자 명령어가 있는 디렉터리이다. /usr/sbin 디렉터리에 링크 되어있는 디렉터리이다.
 /usr/sbin 디렉터리에 대해서 설명하시오.

- 주로 관리자가 실행할 수 있는 파일이 있는 디렉터리이다. 일반 사용자도 사용하는 파일도 있다. 
 로그가 저장되는 디렉터리 위치는 어디인가 ?

- /var/log
 웹서버로 접속하는 클라이언트의 웹로그가 저장되는 디렉터리는 어디인가 ?

- /var/log/httpd
 웹서버의 문서가 저장되는 웹 디렉터리는 어디인가 ?

- /var/www/html 기본 디렉터리이며 관리자에 의해서 변경이 가능하다. 
 파일에서 특정 단어를 찾을 때 사용하는 명령어는 무엇인가 ?

- grep, egrep, fgrep
 /etc/passwd 파일에서 root 만 검색해서 화면에 출력하는 명령어는 무엇인가 ?

- grep root /etc/passwd
 APM이란 무엇인가 ?

- Apache(웹서버) + PHP(웹프로그래밍) + Mysql(DBMS)
 Apache란 무엇인가 ?

- http 웹서버로 웹 문서를 제공하는 서버 프로그램(데몬)이다. 
 PHP란 무엇인가 ?

- 웹 프로그래밍 언어로 정적인 html을 동적으로 바꿀 수 있다.
 MariaDB란 무엇인가 ?

- 오픈 소스 기반의 DBMS이다.


DAY_9에 이어서,,,,

 

아파치 웹 서버를 설치하고 재부팅 시 웹 서버를 자동으로 시작하는 방법

- systemctl enable httpd

 

MariaDB DBMS 패키지를 설치하고 재부팅 시 MariaDB를 자동으로 시작하는 방법

- systemctl enable mariadb

 

8. 웹 서버 시작

/usr/sbin/httpd : 웹 서버 실행파일

 

#systemctl start httpd

#systemctl status httpd  그리고 mariadb 확인하기 --> enable 되어 있어야한다

 

9. 웹 페이지 생성

테스트 파일을 생성한다.

phpinfo() 함수 : APM 연동 정보를 출력하는 함수

phpinfo() 를 실행시켜서 나오는 정보를 확인한다.

APM + 프로그램 연동이 잘 되었는지 확인하는 방법은 phpinfo 함수를 적용해 보는 것이다.

 

# cd /var/www/html

# vi p.html

 <?

   phpinfo();

?>

이 정보를 콘솔로도 확인할 수 있다 php -i

 

APM

A : /usr/sbin/httpd

P : /usr/bin/php

M : /usr/libexec/mysqld

 

연동 확인 후 삭제한다.

#rm -f p.html

 

10. 그누보드 다운로드

그누보드 : 공개형 무료 게시판

 

# cd /var/www/html

# mkdir bbs

# cd bbs

# yum -y install git

# git clone https://github.com/gnuboard/gnuboard5.git .

 

실제 운영 서버에서 git을 설치하지 말고 winscp로 업로드한다. --> 지금은 연습 중이기 때문에 사용하는 중

# rm -rf .git .gitattributes .gitignore

 

data 디렉터리를 777권한으로 생성한다.

웹 사용자가 DB접속 파일들을 data 디렉터리에 저장하기 때문에

이 디렉터리는 일반유저가 write 할 수 있어야 한다.

이 디렉터리는 

 

11. 그누보드 설치

 

자신의 localhost 주소 + bbs를 사용

바로 다운로드 화면이 나오지 않는다면

#setenforce 0

 

mariadb를 시작한다.

#systemctl start mariadb

 

 

 


 

실습> CentOS 7 분할 설치 + APM + GNU Board

CentOS 7 : 파티션 분할

CentOS 7 : 네트워크 고정 IP주소 설정

 

고정 IP주소 : ip주소를 static으로 설정한 것이다.

유동 IP주소 : DHCP서버에서 ip주소를 dynamic하게 던져주면 받아서 설정한다.

 

LVM( Logical Volume Manager ) : HDD를 묶어서 사용하는 기술

CentOS 7을 설치하면 기본값으로 LVM을 이용해서 설치된다.

swap : HDD를 메모리처럼 사용하는 기술

리눅스 설치할 때 반드시 swap 파티션을 나눠줘야 한다.

swap 파티션 용량은 주로 메모리의 2배의 크기로 설정한다.

 

 

/      : 나머지 

/boot : 300M

/home : 200M

/var :  4G

/usr : 4G

swap : 2G

/tmp : 3G

 

 

HDD 사용량을 보여주는 df명령어 옵션을 이용하여 잘 나누어졌는지 확인하기

# df -i (아이노드) / df -h / df

 

이전(DAY_9)과 똑같은 방식으로 APM + GUNBoard 설치

우선 시작하기 전에 설정
1. vim 설치
2. vi ='vim' 하기
3. alias vi='vim' 을 해서 vi .bashrc 에 저장하기
4. vi .vimrc 만들어 :set nu, :set bg = dark 설정하기

PHP : 웹 프로그래밍 언어로 웹에서 사용한다. (스크립트 언어이다. --> 실행파일이 아니라 한줄한줄 해석)

웹 프로그래밍 : JSP, PHP, ASP

 

php설정파일 : /etc/php.ini

 

short_open_tag = Off

<?php

코드

?>

 

short_open_tag = On

<?

코드

?>

 

DocumentRoot : /var/www/html (웹 페이지가 저장되는 디렉터리)

**주의**

- 설정이 바뀐다면 꼭 systemctl restart httpd 해주기

 

php는 웹 뿐만 아니라 명령행에서도 직접 실행이 가능하다.


명령행에서 php스크립트를 실행하는 방법 

 

실습 > 명령행에서 실행하는 방법

 

첫 번째 # php 스크립트명

두 번째 실행방법으로 만들어서 실행

 

 

# chmod 755 hello.php

# ./hello.php   ---> 왜 ./를 붙이는가? unix 계열은 path를 알려줘야한다.

안녕하세요

반응형

BELATED ARTICLES

more