워드프레스 설치-3


지금까지 NGINX와 MySQL을 설치했습니다.

이제부터 실제 wordpress를 설치해보도록 하겠습니다.


Site(http://ko.wordpress.org/)를 들어가서 다운 받아도 되지만,

라즈베리파이에 SSH접속한 경우이기 때문에,

관련 명령어로 해보도록 하겠습니다.



이전 NGINX 설치 Post에서, 아래 명령어 통해서 root 항목을 볼 수 있는데요,

nano /etc/nginx/sites-enabled/default

해당 root에 wordpress를 설치해 보겠습니다.

외부에서 접근하기 쉬운 주소로 설치하기 위함입니다.

(예를들어, 192.*.*.*/wordpress 이런 주소로 말이죠.)


저는 기본 세팅을 변경하지 않아서, /var/www/html 로 되어있습니다.


root@raspberrypi:~# cd /var/www/html
root@raspberrypi:/var/www/html# wget http://wordpress.org/latest.tar.gz
root@raspberrypi:/var/www/html# tar -xzvf latest.tar.gz

위 명령어를 순차적으로 입력하면, 

압축이 풀리게 되고, /var/www/html에 wordpress 폴더가 생기게 됩니다.


그렇다면 한번 접속해보시죠.

아래와 같은 페이지를 볼 수 있습니다.



그렇다면, 이 페이지를 통해 설치하는 법은 

다음 포스팅에서 적도록 하겠습니다.

워드프레스 설치 - 2


이번엔 MySQL 설치에 대해서 포스팅 하도록 하겠습니다.


이전 Post에서, mySQL은 설치를 했었습니다.(apt-get install mysql-server)


설치시, 비밀번호를 설정할 수 있는데, root의 비밀번호이므로 


반드시 기억해 두도록 합니다.


설치가 완료 되었다면,


MySQL을 setup 으로 진입하겠습니다. 아이디는 root라고 접속합니다.

root@raspberrypi:~# mysql -u root -p


정상적으로 진입한다면, 아래와 같은 화면이 나옵니다.




그럼, 셋업하기 전에 help를 한번 입력해볼까요?

사용하는 command 를 볼 수 있습니다.



워드프레스를 위한 데이터베이스 만들어 보겠습니다.

아래 명령어로 wordpress라는 데이터베이스를 만듭니다.

mysql> CREATE DATABASE wordpress; 


데이터베이스는 만들어 졌으니, USER와 권한을 부여하도록 하겠습니다.

mysql> CREATE USER wordpressuser@localhost;
mysql> SET PASSWORD FOR wordpressuser@localhost = PASSWORD("password");
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'password';
mysql> FLUSH PRIVILEGES;
exit


해당내용과 관련해서 워드프레스 홈페이지에 나온 내용은 아래와 같습니다.

$ mysql -u adminusername -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5340 to server version: 3.23.54
 
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 
mysql> CREATE DATABASE databasename;
Query OK, 1 row affected (0.00 sec)
 
mysql> GRANT ALL PRIVILEGES ON databasename.* TO "wordpressusername"@"hostname"
    -> IDENTIFIED BY "password";
Query OK, 0 rows affected (0.00 sec)
  
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
 
mysql> EXIT
Bye


라즈베리파이에 워드프레스 설치-1



이번엔 라즈베리파이에 워드프레스를 설치해 보겠습니다.

현재 제PC는 NGINX가 설치 되어있습니다.

일반적으로 APM 설치과정으로 많이 블로깅 되어있네요.


Apach대신 NGINX가 설치되어있다고 보면 되겠네요.


첫번째로, SSH 접속을 합니다.

그리고 apt-get update로 설치된 패키지들을 update 합니다.



두번째로, 설치형 블로그이기 때문에, mysql과 php5를 설치합니다.


sudo apt-get install mysql-server mysql-client php5 php5-mysql


세번째로, pi에 /var/www 의 권한을 부여 합니다.


sudo chown -R pi /var/www


네번째로, vsftpd 를 설치합니다.

(vsftpd : 리눅스에서 사용하는 FTP서버용 솔루션)

sudo apt-get install vsftpd


다섯번째, vsftpd.conf를 수정합니다.


sudo nano /etc/vsftpd.conf

[수정내용] 주석처리 // anonymous_enable=YES 추가 anonymous_enable=NO local_enable=YES write_enable=YES force_dot_files=YES


여섯번째, vsftpd 를 restart 합니다.


sudo service vsftpd restart





NGINX 설치


NGINX 란 경량 웹 서버 어플리케이션으로 Raspberry Pi에 설치하여 

웹 페이지를 표시 할 수 있습니다.


1. NGINX 설치


아래 명령어로 nginx를 설치합니다.

 $ sudo apt-get install nginx 


아래 명령어로 서버를 시작합니다.

 $ sudo /etc/init.d/nginx start 


2. 기본 Web 서버 테스트


NGINX를 설치하면, 기본적으로 index.html 있고, 이 페이지는 


해당 PC에서는 http://localhost/ , 다른 PC에서는 http://192.168.0.3 과 같은

IP주소로 접속 가능합니다.(Raspberry IP로 접속합니다.)


접속하면,  "Welcome to nginx!" 라는 환영메세지가 표시 됩니다.


접속되지 않는다면, 설치가 되지 않았거나, 설정이 잘못된 것입니다.


설정에 대해서 살펴 보겠습니다.


 $ sudo nano /etc/nginx/sites-available/default 


아래에 참고할만한 내용을 line by line으로 말씀드리겠습니다.


root     /var/www/html;     // 초기 index.html 있는 위치, 즉 default 페이지가 있는 곳입니다.


3. PHP 설치하기


설치하기


 $ sudo apt-get install php5-fpm 


NGINX 에서 PHP 활성화 시키기


$ cd /etc/nginx
$ sudo nano sites-enabled/default  


2가지를 수정해야 합니다.


1. index.php 추가하기


Before


index index.html index.htm;


After


index index.php index.html index.htm;


2. fastcgi 세팅


"location ~\.php$ {" 로 시작하는 부분을 아래와 같이 변경합니다.

"#" 주석처리를 없애면 됩니다.


        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
        #       # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
        #
        #       # With php5-cgi alone:
        #       fastcgi_pass 127.0.0.1:9000;
                # With php5-fpm:
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_index index.php;
                include fastcgi.conf;
        }

 

설정의 마지막으로 설정파일 재적재 합니다.


 $ sudo /etc/init.d/nginx reload 


4. PHP 테스트 하기

index.html을 index.php로 이름을 바꿉니다.

cd /var/www/html/
sudo mv index.html index.php

텍스트 편집기에서 index.php를 엽니다.

sudo nano index.php

PHP 구문을 하나 타이핑 합니다.

<?php echo phpinfo(); ?>

그러면 아래 페이지가 보이게 됩니다.


그럼 NGINX 설치 완료되었습니다!



삼바(SMB) 접속하기



1. 삼바 설치하기


$ sudo apt-get install samba samba-common-bin


2. 삼바 유저 추가 및 패스워드 설정


$ sudo smbpasswd -a pi


3. 삼바 설정


$ sudo nano /etc/samba/smb.conf


문서의 가장 마지막에 아래 내용을 직접 입력합니다.

[pi]
comment = rpi samba server
path = /home/pi
valid user = pi
writable = yes
browseable = yes

comment : 서버설정 comment. 맘대로 작성

path : 공유폴더 지정

valid user : 사용 가능한 user 지정

writable : 쓰기가능 여부

browseable : 공유폴더의 목록



4. 삼바 재시작


$ sudo service samba restart


에서 Fail to start samba.service: Unit samba.service is masked. 라는 메세지가 뜬다면?


$ sudo service samba reload


$ sudo service samba stop
$ sudo service nmbd start
$ sudo service smbd start
$ sudo service samba-ad-dc start



5. 삼바 접속


\\192.168.0.3


아래와 같이 뜬다면 OK!!




큰 용량 SD카드를 사용하는 경우?


라즈베리파이를 64G로 사용하는데, 실제 용량이 얼마나 잡히는지 보겠습니다.


>>df



4G정도에 100% 사용중이라고 표시되네요.


SD카드 용량을 다 쓰지 못하고 있는거죠.


아래 명령어를 통해 config에 들어갑니다.


>>sudo raspi-config 





"1. Expand Filesystem"을 선택합니다.



재부팅을 합니다.




다시 "df" 명령어로 용량을 확인합니다.

사용량이 6%로 변경되고, 64G를 인식하고 있습니다.




이제 SD카드를 모두 활용할 수 있게 되었습니다.


원격 데스크탑 연결


개발환경 : 윈도우10



1. 라즈베리파이에 원격 데스크탑을 위한 설치

   라즈베리파이에서 원격 데스크탑을 하기 위해서는 xrdp를 설치해야 합니다.


$ sudo apt-get update
$ sudo apt-get install xrdp



2. 원격 데스크탑 실행

   원격 데스크탑에서 라즈베리파이 IP를 입력합니다.




3. 라즈베리 파이 원격 데스크탑 접속

   ID와 Password 입력하면, 라즈베리파이 윈도우가 뜹니다.







SSH를 root로 접속하기


참고로 이전 post인 root 계정 활성화가 되어있어야 합니다.


일단 바로 접속하거나, putty같은 프로그램으로 pi로 접속합니다.

아래 명령어로 설정을 변경할 것입니다.


# vi /etc/ssh/sshd_config


아래와 같이 PermitRootLogin without-password 를 #으로 주석처리하고, PermitRootLogin yes 를 입력합니다.

# Authentication:
LoginGraceTime 120
#PermitRootLogin without-password
PermitRootLogin yes
StrictModes yes


새롭게 접속하거나, 아래 명령어로 재시작 합니다.


# service sshd restart


+ Recent posts