라즈베리 파이 php 삭제 - lajeubeli pai php sagje

yarksokPosts: 18Joined: 2009/03/30 Mon 8:31 pm

apm 삭제 후 재설치 하는법 좀 알려주세요!

  • Quote

Post by yarksok » 2009/04/04 Sat 9:10 am

APM설치를 아래와 같이 했습니다. mysql 문제가 있는거 같아 다시 재설치 하려고 하는데 초보라 뭐부터 삭제하고 재설치 해야 하는지 모르겠습니다. 삭제 방법 좀 알려주세요 역순으로 무작정 삭제해도 될까요?

apt-gat remove 패키지 ===>이렇게 하면 되는지요


1. Apache
$sudo apt-get install apache2

2. mysql 인증 모듈
$sudo apt-get install libapache2-mod-auth-mysql

3. MySQL
$sudo apt-get install mysql-server mysql-client
설치가 완료되면 MySQL서버가 자동으로 시작

4. PHP5
$sudo apt-get install php5-common php5 libapache2-mod-php5

5. MySQL과 연동하기 위한 모듈
$sudo apt-get install php5-mysql

6.아파치 웹서버를 재시작
$sudo /etc/init.d/apache2 restart

7. MySQL서버 정상 작동 확인
$sudo netstat -tap | grep mysql
명령 후
tcp 0 0 localhost.localdomain:mysql *:* LISTEN -
면 정상 아니면 재시작
$sudo /etc/init.d/mysql restart

Top

강분도Posts: 6059Joined: 2008/03/31 Mon 5:47 pmContact:

Contact 강분도

Website

Re: apm 삭제 후 재설치 하는법 좀 알려주세요!

  • Quote

Post by 강분도 » 2009/04/04 Sat 1:30 pm

apt-get 의
재설치 옵션은 --reinstall 입니다.
apt-get --reinstall install 패키지
그러나
설정 파일도 지워주는 --purge 옵션을 사용해 완전 삭제후 다시 설치해보시기 바랍니다.
apt-get --purge remove 패키지

또한 설치된 패키지를 확인 하는데 dpkg 와 grep 를 활용해보시기 바랍니다.
dpkg -l | grep apache
dpkg -l | grep php
dpkg -l | grep mysql

Top

강분도Posts: 6059Joined: 2008/03/31 Mon 5:47 pmContact:

Contact 강분도

Website

Re: apm 삭제 후 재설치 하는법 좀 알려주세요!

  • Quote

Post by 강분도 » 2009/04/07 Tue 9:48 am

[quote="강분도":s5n5949r]동일 문제로 고생하는 분이 좀 있는거 같은데
제가 동일하게 해보니 우선
sudo apt-get install mysql-server mysql-client 로 처음 설치시 관련 의존 패키지와 mysql 비번을 물어 봅니다
그리고 설치 및 mysql 서비스가 자동 시작 되는 군요
그리고 나서 바로 sudo apt-get remove mysql-server mysql-client 로 제거 하니
서비스가 종료 되지 않습니다.
따라서 제거 전 또는 후에 sudo /etc/init.d/mysql stop 를 해주어야 합니다. (서비스 정지)
또는 sudo apt-get --purge autoremove 로 함께 설치된 의존 패키지를 제거 하시기 바랍니다. <--추천

그리고 재설치 하시면 됩니다.
sudo apt-get install mysql-server mysql-client[/quote:s5n5949r]

즉 APM 쪽에 무언가 지웠을 때는 서비스를 중지하고 하던가
또는 sudo apt-get --purge autoremove 로 함께 설치된 의존 패키지를 제거 하시기 바랍니다.

Top

일단 우선 라즈베리파이 최신 프로그램으로 업데이트

sudo apt update && sudo apt upgrade

[ 아파치 웹서버 설치 ]
sudo apt install apache2

웹주소 로컬로 접속해본다.

//ip주소/

//localhost/

기본 웹페이지 위치확인

cd /var/www/html 내에 index.html 파일 확인

sudo nano /var/www/html/index.html

www 폴더소유자 및 권한변경

sudo chown -R pi /var/www

sudo chmod -R 755 /var/www

아파치 가동 / 중지
sudo systemctl start apache2.service
sudo systemctl stop apache2.service

sudo service apache2 stop
sudo service apache2 start

아파치 환경설정 파일

sudo nano /etc/apache2/apache2.conf

[ PHP 설치 ]

sudo apt install php php-mysql

php 버전확인
php --version

php 환경설정파일

sudo nano /etc/php/7.3/apache2/php.ini

아래처럼 옵션내용 변경

short_open_tag = On display_errors = On upload_max_filesize = 10M

sudo reboot 나 아파치를 재가동한다.
sudo service apache2 start

[ Maria DB 설치 ]

mariadb 패키지 관련 검색해본다.
sudo apt-cache search mariadb

mariadb 설치
sudo sudo apt-get install mariadb-server

mysql버전확인
sudo mysql --version

mysql 접속해본다. 최초에는 root 비번이 없으므로 그냥 엔터키친다.
sudo mysql -u root -p

mysql 나오기
mysql>quit

mariadb 재가동
sudo systemctl restart mariadb.service

앞으로 웹서버, PHP, DB(데이터베이스)을 이용하는 프로젝트를 위해 기본적인 프로그램인 APM(Apache, PHP, MariaDB)를 설치하기 위한 글입니다. (update 2022.06.29)

라즈베리파이에 라즈비안에서 raspios로 변경되었으며, 업데이트 날짜의 최신 버전은 2022-04-04 bullseye arm64 버전으로 설치함

2. 라즈비안 APM 설치

2.1 패키지 업그레이드

기존에 설치된 패키지들을 업그레이드해줍니다.

pi@raspberrypi:~ sudo apt update ... pi@raspberrypi:~ sudo apt upgrade

2.2 Apache 웹서버

최종 확인날짜 : 2022.6.29

클라우드 서비스, 워드프레스 웹사이트 등을 운영하기 위해서는 웹서버가 필요하며 웹서버는 크롬, 파이어폭스, 익스플로러 같은 웹브라우저 클라이언트에서 요청을 받으면 그에 따라 웹페이지, 파일 전송 등의 역할을 해줍니다.

이 글에서는 Apache2를 설치합니다.

2.2.1 Apache2 설치

pi@raspberrypi:~ sudo apt install apache2

2.2.2 Apache2 설치 확인

웹브라우저 검색창에 "//라즈베리파이 IP주소"를 입력하여 웹서버가 정상적으로 설치되었는지 확인할 수 있습니다.

2.3 PHP

최종 확인날짜 : 2022.6.29

PHP(Hypertext Preprocessor)는 서버 측에서 실행되는 스크립트 언어(Server-side scripting)이며 정적인 HTML 언어로만 구성된 초기 WEB을 동적으로 사용하기 위해 만들어졌습니다.

2.3.1 PHP 설치

PHP를 사용할 때는 보통 php 만을 사용하는 것이 아닌 php 언어로 다른 기능과 연동하는 데 사용되며 다음 리스트는 자주 사용되는 확장 모듈들로 원하는 확장 모듈을 설치해주면 됩니다.

php-curl : CURL 모듈
php-fpm : 서버사이드, HTML 기반 스크립트 언어(FPM-CGI)
php-gd : GD 모듈
php-intl : Internationalisation 모듈
php-mbstring : MBSTRING 모듈
php-mysql : MySQL 연동 모듈
php-soap : SOAP 모듈
php-xml : DOM, SimpleXML, XML, XSL 확장 모듈
php-xmlrpc : XMLRPC-EPI 모듈
php-zip : zip 모듈
libapache2-mod-php : apache 와 PHP 연결 모듈

한 번에 다 설치하기

pi@raspberrypi:~ sudo apt install php php-fpm php-curl php-gd php-intl php-mbstring php-mysql php-soap php-xml php-xmlrpc php-zip libapache2-mod-php

2.3.2 PHP 설치 확인

PHP가 정상적으로 동작하는지 확인하기 위해서는 .php 파일을 만들어야 합니다. /var/www/html (웹서버 경로)에 phpinfo.php 파일을 생성하여 설치된 php 정보를 출력시켜 확인할 수 있습니다. nano 텍스트 편집기로 /var/www/html/ 에 phpinfo.php 파일을 열어줍니다. (phpinfo.php 파일은 존재하지 않으므로 빈 파일이 생성됩니다.)

pi@raspberrypi:~ sudo nano /var/www/html/phpinfo.php

phpinfo.php 파일에 아래 코드를 입력해줍니다.
phpinfo() 함수는 설치된 PHP 정보를 보여주는 함수입니다.

<?php phpinfo(); ?>

"Ctrl + X", "Y", "Enter"를 순서대로 눌러줘서 저장해줍니다.

웹브라우저 검색창에 "//라즈베리파이 IP주소/phpinfo.php"를 입력하면 설치된 php 정보를 볼 수 있습니다.

2.4 MariaDB

최종 확인날짜 : 2020.6.29

MariaDB는 관계형 데이터베이스 관리 시스템(RDBMS, Relational DataBase Management System)입니다. 데이터베이스란 구조화된 데이터의 집합을 의미하며 이러한 데이터 집합의 관리를 위해서 MySQL, MariaDB 같은 데이터베이스 관리 시스템을 이용해야 합니다.

2.4.1 MariaDB 설치

pi@raspberrypi:~ sudo apt install mariadb-server ... mariadb-server (1:10.5.15-0+deb11u1) 설정하는 중입니다 ... libcgi-fast-perl (1:2.15-1) 설정하는 중입니다 ... Processing triggers for man-db (2.9.4-2) ... Processing triggers for libc-bin (2.31-13+rpt2+rpi1+deb11u2) ... gndb@raspberrypi:~ $

MariaDB 패키지를 설치하는 명령어입니다.

2.4.2 MariaDB 초기 설정

MariaDB 를 처음 설치하면 초기 암호가 없어 보안에 취약하기에 다음 명령어로 초기 보안 설정을 해줍니다.

pi@raspberrypi:~ $ sudo mysql_secure_installation ... mariadb-server (1:10.5.15-0+deb11u1) 설정하는 중입니다 ... libcgi-fast-perl (1:2.15-1) 설정하는 중입니다 ... Processing triggers for man-db (2.9.4-2) ... Processing triggers for libc-bin (2.31-13+rpt2+rpi1+deb11u2) ... pi@raspberrypi:~ $

아래는 간단한 설명을 달아놓은 초기 설정 내용입니다.

# MariaDB 인증 방식(MariaDB 10.4 이후) pi@raspberrypi:~ $ sudo mysql_secure_installation NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and haven't set the root password yet, you should just press enter here. # 기본적으로 root는 보호하고 있다. 최초 설정이므로 엔터를 눌러 넘어갑니다 Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password or using the unix_socket ensures that nobody can log into the MariaDB root user without the proper authorisation. You already have your root account protected, so you can safely answer 'n'. # unix_socket 인증 :간단히 설명하자면 유닉스 계열 운영체제의 사용자 계정과 MariaDB의 사용자 계정을 일치시키는 인증 방식 Switch to unix_socket authentication [Y/n] y Enabled successfully! Reloading privilege tables.. ... Success! You already have your root account protected, so you can safely answer 'n'. Change the root password? [Y/n] y New password: # 새로운 비번 입력 Re-enter new password: # 새로운 비번 한번 더 입력 Password updated successfully! Reloading privilege tables.. ... Success! # anonymous users 삭제여부(삭제하는것이 좋다고 함) By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. # root를 원격으로 접속할수 있는지 여부(안하는게 좋음) Disallow root login remotely? [Y/n] n ... skipping. By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. # test database and access 여부 (삭제가 좋음) Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. // privilege tables 를 불러와서 위 설정사항을 즉시 적용시킬 것인가? Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB! pi@raspberrypi:~ $

 

2.4.3 MariaDB 접속

아래 명령어를 친 후 위에서 설정한 암호를 치고 접속합니다.

아래와 같은 창이 뜨면 접속이 정상적으로 된 상태입니다.

2

 

2.4.4 새로운 데이터 베이스 생성하기

위 방법으로 MariaDB 에 접속한 뒤 다음 명령어를 쳐줍니다.

3

utf8 인코딩, testDB라는 이름으로 새로운 데이터 베이스를 생성하는 의미이며 testDB 이름은 원하는 이름으로 변경하면 됩니다.

2.4.5 새로운 유저 추가 및 권한 부여(옵션)

MySQL에서는 관리자 계정인 root는 모든 권한을 가지고 있어 중요한 자료를 삭제하는 등의 작업을 쉽게 할 수 있기 때문에 root 계정으로 작업하는 것을 권하지 않습니다.

다음 명령어로 새로운 유저를 추가할 수 있습니다.

4

다음 명령어는 '새로운 유저 ID' 에게 testDB 데이터베이스 권한을 부여하는 명령어입니다. 위에서 testDB 대신 다른 이름으로 생성하였다면 그 데이터베이스 이름으로 입력해야 합니다.

5

2.4.6 종료

MariaDB 에서 빠져나오는 명령어입니다.

6

2.5 phpMyAdmin(옵션)

phpMyAdmin 은 데이터베이스 관리를 시각적으로 편리하게 관리할 수 있는 웹 인터페이스이다.

2.5.1 phpMyAdmin설치

phpmyadmin 패키지를 설치하는 명령어입니다.

7

phpMyAdmin를 자동적으로 구성하기 위한 웹 서버를 선택해줍니다. 이 글 기준 apache2를 선택하면 됩니다.

데이터베이스를 사전에 자동적으로 구성되게 할 것인지 선택해줍니다. 직접 설정할 것이라면 <No>를 선택해주면 되지만 웬만해서 직접 설정하는 일은 없습니다. 이 글 기준 <Yes>를 선택하면 됩니다.


phpMyAdmin 관리자 계정의 비밀번호를 입력해줍니다. 바로 "Enter"를 누르면 자동적으로 생성되지만 추후 변경 가능하니 걱정하지 않아도 됩니다. 굳이 나중에 변경할 필요 없이 여기서 입력하는 것을 추천합니다.


비밀번호를 재입력해줍니다.

2.5.2 phpMyAdmin설치 확인

윈도우나 우분투 계열에서는 보통 "//서버 IP주소/phpmyadmin" 주소를 치면 바로 접속이 되지만 라즈비안 apache2 웹서버의 경로는 "/var/www/html"이며 phpMyAdmin의 설치 경로는 "/usr/share/phpmyadmin"으로 경로가 달라 바로 접속할 수 없습니다.

Toplist

최신 우편물

태그