반응형


라즈베리파이를 Linux, Apache, MySQL, PHP 를 설치하여 웹서버로 응용사용해 봅니다.


1. 라즈비안 이미지를 다운받습니다. Raspbian https://www.raspberrypi.org/downloads/

2. 이미지를 만들고 SD 카드를 준비합니다. Win32 Disk Imager 프로그램을 이용 합니다.

3. 준비된 SD 카드를 라즈베리파이에 끼운 후, 모니터, 키보드 그리고 인터넷 케이블을 연결 한 뒤 전원을 켭니다.

4. 제일 먼저 초기 설정이나오는데, 초기설정에서 

- 1. Expand Filesystem 을 설정하고

- 3. Enable Boot To Desktop 을 Disable 합니다.

- 4. 필요에 따라 Internationalisation Options 를 설정해줍니다.

- 7. Overclock 을 Modest 로 해줍니다.

- 8. Advanced Options 에 들어가서 SSH Server 설정을 Enable 해줍니다.

- 8. Advanced Options 에서 update Raspberry Pi 를 해줍니다.


5. 설정이 끝난 후 라즈베리파이를 리부팅 해줍니다.

sudo reboot


6. 리부팅이 끝난 후 라즈베리파이의 ip 주소를 확인합니다.

ifconfig


7. OS 업데이트를 해줍니다. 시간이 꽤 걸립니다.

sudo apt-get update

sudo apt-get upgrade


8. Apache 설치를 합니다.

sudo apt-get install apache2 php5 libapache2-mod-php5


질문이 나오면 y 를 눌러 진행을 계속합니다. 시간이 꽤 걸리는 작업입니다.

혹시 오류가 난다면, 아래 명령어 2개를 시도해봅니다. 오류가 나지 않고 설치가 끝나면 아파치 서버를 재시작 합니다.

sudo groupadd www-data

sudo usermod -g www-data www-data


아파치 서버를 재시작 합니다.

sudo service apache2 restart


이제 다른 컴퓨터에서 웹브라우저를 열고 라즈베리파이의 IP 주소를 적어봅니다. "It works!" 라는 화면이 보이면 성공.


9, MySQL 을 설치합니다.

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


질문이 나오면 y 를 눌러 진행을 계속합니다. 설치중에 MySQL 의 root 계정 암호를 설정하라고 나오는데, 원하는 암호로 설정한뒤 설치를 완료합니다.


10. FTP 설치

파일을 전송하기 위한 FTP 설치를 합니다. 먼저 web root 의 권한을 설정합니다.

sudo chown -R pi /var/www


vsftpd 를 설치합니다.

sudo apt-get install vsftpd


설치가 끝난 후 vsftpd 의 설정을 해줍니다.

sudo nano /etc/vsftpd.conf


- 1. anonymous_enable=YES 를 찾아 anonymous_enable=NO 로 설정

- 2. local_enable=YES 앞에 # 지워주기

- 3. write_enable=YES 앞에 # 지워주기

- 4. 맨아래에 내려가 force_dot_files=YES 적어주기

- 5. ctrl+X 를 누른 후 y 를 눌러 저장하며 나옵니다.


설정이 끝난 후 FTP 서비스를 재시작 해줍니다.

sudo service vsftpd restart


11. 마무리

암호 설정으로 마무리 해줍니다. ssh 연결이 가능한 상태이기 때문에 라우터에서 dmz 설정이 되어 있거나 하면 바로 라즈베리파이에 ssh 로 연결이 가능하므로, 누구나 다 알고 있는 라즈베리파이의 암호를 바꿔줍니다.


sudo passwd pi


그리고 root 의 암호도 바꿔줍니다. 두번째 명령어는 root 유저의 모드 변경 명령어입니다.


sudo passwd root

sudo usermod -L root


FTP 설정이 끝났습니다. FTP 클라이언트 프로그램으로 라즈베리파이에 연결하여 파일을 주고 받을 수 있게 되었습니다.


라즈베리파이에 LAMP 설정이 끝났습니다.





반응형
반응형

LAMP 설치후, 메버릭스에서 요세미티로 업그레이드 한 후 아파치 세팅을 다시 활성화 해야 합니다.

참고 싸이트 (http://jason.pureconcepts.net/2012/10/install-apache-php-mysql-mac-os-x/)


컨픽 파일을 백업 합니다.

cd /etc/apache2/
cp httpd.conf httpd.conf.bak 


좋아하는 텍스트 에디터로, 컨픽 파일을 열어줍니다.

vi httpd.conf 


다음 라인을 찾은 후 # 를 앞에서 지워줍니다.

LoadModule php5_module libexec/apache2/libphp5.so


개인적으로 #를 지우지 않고, 다음 라인을 추가했습니다. 이후 바로 Apache 를 리스타트 해줍니다.

170 LoadModule php5_module /usr/local/opt/php54/libexec/apache2/libphp5.so
apachectl restart



반응형
반응형


집에서 사용하는 라우터에 usb 하드디스크를 물려 망내 쉐어디스크로 사용중이며 samba 로 연결하여, 편리한게 아이패드나, 아이폰 그리고 xbmc 에서 미디어 파일들을 접근하여 사용하고 있습니다.


요즘 유닉스/리눅스 공부한다고, 좀 사양 떨어진 넷북에 주분투를 설치하였고 메인 컴퓨터는 맥북이 있지요. 둘다 유닉스 계열 OS 라 많이 편하네요. 여하튼  양쪽 컴퓨터에서 미디어 파일들을 usb 하드디스크에 올리고 싶은데요.. 직접 분리해서 usb 로 연결하는게 가장 좋은 방법이긴 합니다만.. 그래도 라우터에 물려 있으니 일종의 공유폴더로 연결하여 넷북에서 네트워크를 이용한 파일 업/다운로드 를 하고 싶더라구요.

그래서 알아보니, 의외로 간단했습니다.


1. 홈디렉토리에 media/share 폴더를 만든다

2. etc/fstab 파일을 열어 아래 내용을 적어준다

3. 마운트 한다.



1. 홈디렉토리에 media/share 폴더를 만든다


mkdir /media/share


2. etc/fstab 파일을 열어 아래 내용을 적어준다


중요한 부분은 삼바 서버의 공유파일 경로입니다.

확인하려면 아래 명령어로 확인 할 수 있습니다.

서버이름 혹은 아이피를 사용하여도 되며, -U 뒤에 있는 admin 은 사용자 이름입니다.


sambaclient -L 192.168.1.1 -U admin


공유된 폴더가 usb0_1 인것을 확인 할 수 있습니다. 자 그럼 /etc/fstab 의 내용을 변경해 봅니다.

읽기 전용파일 이라서 관리자 모드로 sudo 를 넣어줘야 변경이 가능합니다.


명령어 내용은

[//경로/공유폴더] [내컴퓨터마운드폴더] [파일타입] [사용자,패드워드] [0,0]


파일타입은 오래된 자료의 경우 smbfs 파일타입을 사용하라고 하는데요, 이미 사용하지 않는 오래된 타입이라서 cifs 를 사용해야 하더군요. 패키지가 없으면 다운받을 수 있습니다. 


sudo apt-get install cifs-utils


파일을 열어 서버공유폴더 내용을 작성 해 줍니다. 참고로 fstab 은 시스템 컨픽 파일로, 유닉스/리눅스 시스템에서 볼 수있습니다. uilt-linux 패키지중 하나며, 사용가능한 디스크 현황 그리고 파티션 현황 그리고 이 디스크와 파티션들이 시스템에서 어떻게 사용되는지의 정보를 가지고 있는 파일입니다.


sudo vim /etc/fstab

//192.168.1.1/usb0_1 media/share cifs user=admin,passwd=admin 0 0



내용을 저장하고 나옵니다. :qw


3. 마운트 한다.

smb 서버 공유폴더를 마운트 해줍니다. 마운트 하면 폴더 형태로 보이게 됩니다.


sudo mount media/share



짜쟌~

이렇게 파일 메니저에서 손쉽게 samba/공유 폴더 에 접근 가능케 되었습니다. 다운로드는 물론 업로드도 가능합니다. 하지만 제 라우터의 경우엔 너무 느리네요. usb 로 직접 꽂아서 파일 옮기는게 10000배 정도 빠른듯 합니다.



반응형
반응형
사용자 삽입 이미지
asp 페이지에서 Request 객체의  ServerVariables (서버변수)를 불러들여 접속한 사용자 정보를 
읽어드릴수 있다는걸 오늘 알게 되었다 나만 몰랐네 ㅡ,.ㅡ
사용자 삽입 이미지


W3School 싸이트에서 아래와 같은 사용자 정보들을 볼 수 있다.




사용자 브라우저: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506; InfoPath.2) <%Response.Write(Request.ServerVariables("http_user_agent"))%> 사용자 IP address : 58.230.133.8 IP address DNS Look Up: 58.230.133.8 페이지 여는 방식: GET 서버의 도메인 이름: www.w3schools.com 서버 포트 번호: 80 서버측 소프트웨어: Microsoft-IIS/6.0
코드는 다음과 같다.
반응형

+ Recent posts