최근 서버가 자꾸 shutdown 되는 상황이 발생하여 로그를 살펴보았습니다.

사용중인 운영체제는 CentOS 7 64비트입니다.


cat /var/log/messages | grep 'System is powering down.'


불규칙적으로 서버가 꺼지는 현상이 발생했는데, 신기하게도 비정상 종료가 아니라 정상 종료(Shutdown)였습니다.

파워나 보드 등의 부품 문제로 인한 갑작스런 전원 종료는 아닌 것입니다.


누군가 리눅스를 일부러 끄고 있다는 생각이 들어 해킹을 의심했으나, 로그에서 다음과 같은 부분을 발견했습니다.


Jan 10 22:23:31 localhost systemd-logind: Power key pressed.

Jan 10 22:23:31 localhost systemd-logind: Powering Off...


놀랍게도 전원 버튼이 눌려 시스템이 꺼지고 있었습니다. 그런데 주변에 물어봐도 아무도 누른 사람이 없습니다.

이 상태로 한 2주 지나니까 이젠 시스템을 켜면 3초 안에 자동으로 꺼집니다. 그리고 다시 알아서 켜지고, 반복됩니다.


전원 버튼 고장으로 결론을 내릴 수밖에 없는 상황입니다.


그런데 이미 제 TS140은 구입 후 1년이 경과하여 무상 RMA 불가하고, 해외 수입 제품이므로 국내 유상 A/S도 불가능합니다.

TS140 Front Bezel을 구입하여 교체하면 되지만 일단 당장 서버를 살리고 봐야 하니 나중으로 미룹니다.



메인보드의 우측하단에 전면부 패널과의 연결 케이블이 있습니다.

이 케이블을 Plug-Out 하였더니 시스템이 꺼졌다 켜졌다 하는 일은 사라졌습니다.

아무래도 전원 버튼 고장이 확실해 보입니다.



그런데 전원 버튼 연결선을 뽑아버렸으니 컴퓨터를 켤 방법이 없어졌습니다.

전원 시그널 핀 2개를 드라이버로 쇼트 내면 켜지긴 합니다만, 이걸 매 번 옆커버 따서 할 수는 없는 일입니다.



그래서 꼼수를 써 봅니다. 부팅 시 F1을 눌러 CMOS를 들어가면 파워 설정이 있습니다.

이 중에서 '전원 케이블이 연결되면 자동으로 시스템이 켜지도록' 하는 옵션이 존재합니다.

이 옵션을 ON으로 하여, 전원선을 뽑았다 꽂으면 시스템이 켜지도록 하였습니다.



전원을 끄는 것은 문제가 없습니다. 리눅스에서 shutdown 명령어로 종료하도록 합니다.



일단 이렇게 조치하여, Front Bezel이 도착할 때까지는 운영이 가능하겠습니다.

맥(Mac OS X)에 Java 8 (JRE, JDK, jdk1.8) 설치하는 방법입니다.


기존에 Legacy Java 6(2015-001)을 설치했더라도 상관 없습니다.

두 Java는 서로 영향 없이 맥에 공존하게 됩니다.




1. 다운로드 및 설치

우선 말씀드릴 점은, 여러가지 사유로 인해 JRE보다 JDK를 설치하는게 일이 간단합니다.


어차피 Java 8 설치하시는 분들은 Eclipse 혹은 관련 개발을 위함이라 생각되기 때문에

JRE는 건너뛰고 JDK를 설치하도록 합니다. (JDK는 JRE를 포함하고 있습니다.)


http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html




2. 터미널 명령어 java를 jre1.8로 연결

현재 상태에서 터미널에 java -version 을 치면 두 가지 케이스로 나눠지는데

  첫째는, 아무런 Java를 설치하지 않아 설치 창이 튀어나오는 경우

  둘째는, java 1.6.0이 설치되어 있다고 나오는 경우


어쨌거나 두 케이스 다 Java 8과는 연결되지 않기 때문에 새로이 연결하도록 합시다.


본 작업은 /usr/bin 디렉토리 내의 파일을 변경하므로, rootless 기능을 꺼야 가능합니다.

끄는 방법은 구글링을 하시기 바랍니다.


ls /Library/Java/JavaVirtualMachines


위 명령어로 현재 설치된 jdk1.8의 폴더명을 알아냅니다.


sudo rm /usr/bin/java

sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/bin/java /usr/bin/java




3. 끝

연결이 끝났습니다.

java -version 을 쳐서 Java 1.8.0 버전을 확인하고 기분 좋아하도록 합니다.

StartSSL에서 인증서 발급 받는 방법은 해당 글에서 확인하시기 바랍니다.


- 본 글은 RedHat 계열 기준으로 작성되었습니다. Debian, Ubuntu는 내용이 다릅니다.

- 본 글은 CentOS 7 기준으로 작성되었으며, 아파치는 yum 기반 설치를 가정합니다.



1. 아파치 SSL 모듈 설치


yum -y install mod_ssl



2. 서버에 인증서 저장


mkdir /etc/httpd/conf/ssl


# /etc/httpd/conf/ssl 경로에 아래의 인증서 파일들을 저장합니다.

# 경로는 바뀌어도 상관 없습니다. 아래 4번 항목에서 해당 경로를 수정해 주면 됩니다.


# 넣어야 하는 인증서 관련 파일:

#     acu.pe.kr.crt (도메인 인증서) (StartSSL에서 제공하는 zip 파일에 동봉)

#     private.key (비밀키)


# 인증서 파일들에 대한 권한 설정

chown -R root.root /etc/httpd/conf/ssl

chmod -R 644 /etc/httpd/conf/ssl



3. 아파치 설정 파일(httpd.conf)에 SSL 모듈 로드, 옵션 파일 추가


vi /etc/httpd/conf/httpd.conf


# 아래 내용 추가 (빨간 부분을 서버에 맞게 수정)

LoadModule ssl_module modules/mod_ssl.so

Listen 443

<VirtualHost *:443>

    ServerName acu.pe.kr

    ServerAlias www.acu.pe.kr

    DocumentRoot /var/www/html

    SSLEngine on

    SSLCertificateFile /etc/httpd/conf/ssl/acu.pe.kr.crt

    SSLCertificateKeyFile /etc/httpd/conf/ssl/private.key

</VirtualHost>



4. 아파치 재시작


systemctl restart httpd


# 아파치 실행 시 비밀키(private.key)의 pass phrase를 물어봅니다.

# 비밀키를 생성할 때 입력했던 비밀번호를 입력하시면 됩니다.


# 아파치를 실행할 때마다 pass pharase를 입력하기가 귀찮으시면

# 인증서에 아예 비밀번호를 입력시킬 수 있습니다.

openssl rsa -in /etc/httpd/conf/ssl/private.key -out /etc/httpd/conf/ssl/private.key


# 단, 이렇게 되면 이제부터 개인키 파일이 외부로 노출되어서는 절대 안됩니다.

# 또한 작업하기 전의 원본 파일을 별도로 백업해 두시기 바랍니다. (갱신 시 필요)



5. SSL 적용 테스트


테스트 사이트: https://www.digicert.com/help/



*. 에러 발생 시


이런 메시지가 출력되면 실행에 실패한 것임:

Job for httpd.service failed because the control process exited with error code.


왜 실행이 실패했는 지 로그 확인:

systemctl status -l httpd


문제: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:443

이유: 다른 프로세스가 443 포트를 이미 사용중이므로, 해당 프로세스를 종료해야 함

해결: netstat -tunap | grep 443 명령어로 어떤 프로세스가 사용중인지 확인 후 종료

해결: 해결이 안되면 아파치 설정에 Listen 443이 중복 선언된 것, 따라서 주석 처리


문제: 홈페이지 접속 시 신뢰할 수 없는 인증서 메시지가 출력됨

증상: 서버의 인증서(crt)와 브라우저에 나타난 인증서의 지문(fingerprint)이 같지 않음

증상: Common Name(CA)에 이상한 랜덤 숫자가 표시됨

이유: 인증서가 아파치에 제대로 로드되지 않아 엉뚱한 인증서를 클라이언트에 제공함

해결: httpd.conf의 VirtualHost 443이 도메인을 잘 낚아채도록 수정


StartSSL 사이트에서 무료로 1년 사용 가능한 SSL 인증서를 발급받을 수 있습니다.



1. 사이트 접속 (https://www.startssl.com) 및 회원 가입


오른쪽 상단의 Sign-up을 눌러 회원 가입을 진행합니다.






StartSSL 사이트는 흔히 알던 아이디-비밀번호 방식이 아닌 이메일-인증서 방식입니다.


이메일을 입력하고 인증번호 단계를 거치면 브라우저에 인증서를 발급하여 저장해 줍니다.

인증서가 곧 ID와 같은 역할을 해 줍니다.



인증번호 입력 과정이 끝나면 브라우저에 인증서가 발급됩니다.

(주의: 포멧 등의 사유로 인증서가 브라우저에서 삭제되지 않도록 주의 바랍니다.)






Login Now 버튼을 눌러 로그인에 진입합니다.







2. 로그인


브라우저의 인증서를 통해 1차로 인증이 완료되면 OTP 단계에 진입합니다.


인증서를 선택하고 로그인을 시도하면, 이메일로 일회용 비밀번호가 발급됩니다.

이메일로 전송된 일회용 비밀번호를 입력하여 로그인합니다.







3. 도메인 인증 (소유권 주장)


SSL 인증서를 발급받기 전에, 먼저 해야 하는 단계가 있습니다.

인증서를 발급받고자 하는 도메인에 대한 소유권을 인증해야 해야 합니다.


도메인의 소유자만 해당 도메인에 대해 인증서를 발급할 수 있습니다.

제3자가 내 도메인 이름으로 인증서를 발급하고, 피싱 페이지를 만들 수도 있기 때문이죠.


Validations Wizard 버튼을 눌러 해당 메뉴로 진입합니다.






맨 위의 '도메인 인증'을 선택하고 진행합니다.







인증받고자 하는 도메인을 입력합니다.






해당 도메인을 소유하고 있는지를 도메인 메일 인증을 통해 처리합니다.


부득이하게 도메인 메일이 없거나, webmaster같은 이메일 계정이 없어서 인증이 어렵다면

또 다른 인증 방식인 website control validation을 통해 인증 가능합니다.


(주어지는 html 파일을 웹사이트 루트에 업로드하여 이를 검사하는 방식입니다.)







도메인에 대한 인증(소유권)이 완료되었습니다.

Order SSL 버튼을 통해 인증서 발급 단계로 진입합니다.







4. 인증서 발급


호스트네임을 입력합니다. 무료 인증서는 5개까지 입력 가능합니다.

첫 번째 줄에 입력된 호스트네임이 인증서의 common name이 됩니다.


일반적으로 www를 포함한 도메인과 포함하지 않은 도메인을 입력합니다. (총 2개)







SSL/TLS는 공개키 암호 방식을 사용하기 때문에 공개키비밀키를 생성해야 합니다.

더불어서 인증서에 추가 정보(회사명, 기관명, 회사 주소, 이메일 등)를 입력해야 합니다.


공개키와 추가 정보를 합친 파일을 Certificate Signing Request(CSR) 이라고 합니다.

이 파일은 우리가 손으로 직접 만들 수는 없고 Tool을 사용하여 생성해야 합니다.


비밀키를 먼저 만들고, 비밀키를 사용하여 공개키를 생성하게 됩니다.

일반적으로 비밀키는 랜덤한 값으로 만들기 때문에, 이 역시 Tool이 알아서 해 줄 것입니다.


리눅스에서는 빨간 글씨로 제공된 openssl 명령어를 통해,

윈도우 상에서는 제공되는 StartComTool.exe 프로그램을 통해 생성 가능합니다.


위 Tool을 사용한다면 비밀키(key) 파일과 공개키+추가 정보(csr) 파일이 생성됩니다.

비밀키 파일은 서버 내의 안전한 곳에 잘 보관하시고 유출되지 않도록 해야 합니다.


생성된 CSR 파일의 내용을 복사하여 홈페이지에 입력하고 다음 단계로 진행합니다.







인증서 발급이 성공적으로 완료되었습니다.







5. 인증서 다운로드


Tool Box 메뉴 최상단의 인증서 목록(Certificate List) 메뉴로 진입합니다.







목록에 2개의 인증서가 보일 것입니다 (Products 항목으로 구분하세요)

- 하나는 방금 만든 SSL 인증서입니다.

- 하나는 StartSSL 사이트에 로그인 할 때 사용하는 Client 인증서입니다.


SSL 인증서 우측의 Retrieve 버튼을 누르면 crt 인증서를 다운받을 수 있습니다.

작은 역삼각형 버튼을 누르면 pem 인증서를 다운받을 수 있습니다.




포고플러그의 벽돌에는 많은 이유가 있습니다.

이 글의 내용이 전부를 커버해 주지는 않는 점 유의해 주시기 바랍니다.


제 경우에는 optware를 설치한 후, 다시 돌려놓기 위해

/etc/init.d/211.sh와 /etc/init.d/rcS.sh를 삭제하는 바람에 벽돌이 되었습니다...


알고보니 rcS.sh는 optware 설치 이전에도 이미 존재하는 파일이었고

optware를 설치하면서 별다른 말도 없이 덮어씌우기 한 것이었죠 -_-;;

포고플러그 기본 시스템을 부팅하는 데 중요한 역할을 하는 파일이라고 합니다;;

그래서 증상은 전원 공급 후 초록 램프의 무한 깜빡임.






인터넷을 뒤져보니 Pogoplug의 부팅 순서는 SATA > 내부 메모리 > USB 라고 합니다.

Series 4의 경우 SATA 포트 대신에 상단에 2.5인치 하드를 장착할 수 있게 되어 있고

이게 내부 메모리보다 높은 우선순위로 부팅 순서가 잡혀있는 것을 확인하였습니다.


준비물은 내용을 전부 삭제해도 되는 2.5인치 하드 디스크와 리눅스입니다.

이 하드 디스크에 archlinux 이미지를 씌운 후, 강제로 부팅시키는 방법을 사용할 것입니다.


이미지 다운로드 (약 300MB)


이미지를 다운받고 zip 압축을 풀면 1.5GB의 고정된 이미지가 나옵니다.






2.5인치 하드를 리눅스에 연결합니다. 리눅스가 없다면 가상머신을 이용하시는게 좋겠죠.

저는 CentOS 6.4 32bit LiveCD 버전을 이용했습니다.


fdisk -l 로 하드의 위치를 파악합니다. 제 경우 /dev/sdb 입니다.

fdisk /dev/sdb 실행하고 o 입력 후 p 를 입력해 모든 파티션이 제거됨을 확인합니다.

q로 fdisk를 빠져나옵니다.


아까 받은 이미지를 하드에 복구합니다. 이미지 경로는 알아서 찾아가시기 바랍니다.

# dd if=pogo_recovery_1_5G.img of=/dev/sdb

입력하면 잠시 리눅스가 멈춘 것처럼 보이게 됩니다. 기다리시면 됩니다.


이제 모든 준비가 끝났습니다. 포고플러그 시리즈 4에 장착 후 부팅하시기 바랍니다.

복구는 인터넷에서 rcS를 받아 복붙해 주시면 되겠습니다.






자료 출처: http://oroispot.blogspot.kr/2013/06/pogoplug-sata.html

요즘들어 NearFA 기술이 달린 스피커가 계속 나오고 있습니다.


근데 인터넷을 뒤져봐도 관련된 정보가 자세히 안나오고 동작 원리도 모르겠고...

이 놈은 심지어 아이폰도 지원한다고 하죠? 대체 무슨 기술인지 알아보도록 합시다.





이름은 NFC를 따라했습니다.


NFC = Near Field Communication

NFA = Near Field Audio


비록 비슷한 이름이지만 NFA는 공식으로 표준화 된 기술은 아니고, 그냥 한 기업이 갖다붙인 것 같습니다.




기계적인 동작 원리를 알아보죠.

저 스피커를 뜯어보면 아래와 같은 부품이 나옵니다. (출처)




휴대폰의 자기장을 마그넷으로 낚아채서 소리를 증폭하는 원리입니다.

구조적인 한계로 인해 음질에 관해서는 손실이 많을 것 같은 기술입니다.




실제로 음질은 어떨까요?



위 그림은 현재 판매중인 어느 NearFA 스피커 홍보글에서 발췌한 이미지입니다.

보시면 원본 음색에서 저음과 고음이 빠진, 일명 깡통 소리를 들려주는 것을 알 수 있죠.


왜 중음만 이렇게 강조되고 저음/고음이 빠지게 된 것인지는 아래에서 설명드릴 수 있습니다.




그렇다면 휴대폰은 대체 왜 자기장을 방출하고 있을까요?

짚고 넘어가자면 휴대폰은 스피커가 아니라,별도의 부품으로 자기장을 방출하고 있습니다.


미국에는 Hearing aid compatibility Act(보청기 호환법)이라는 법률이 존재하는데

청각 장애인이 전자 기기를 무리 없이 사용할 수 있도록 하는 법률입니다.


보청기는 2가지 방식으로 동작하는데, 마이크를 통해 듣는 것과 자기장을 통해 듣는 것입니다.

마이크 방식은 주변 소리를 모두 들을 수 있는 대신에 잡음도 증폭되므로 귀가 피로하고 큰 소리에 취약합니다.

자기장 방식은 자기장을 방출하는 기기, 즉 보청기 호환성을 가진 기계의 소리만을 깔끔하게 들을 수 있습니다.


자기장 방식은 보청기 내부의 텔레코일을 이용해 자기장을 감지합니다.

휴대 기기에서도 소리를 담은 자기장을 계속 내보내 주어야 하죠... 보청기를 위해서요.


미국 내 휴대폰의 대부분은 보청기 호환성(HAC, Hearing Aid Compatible)을 만족하기 때문에

휴대폰이 자기장을 방출하고 있는 것입니다. (호환 목록: 애플 아이폰, AT&T)

아이폰 전 모델과 갤럭시 S시리즈, 갤럭시 노트 시리즈는 전부 HAC를 만족하는 것으로 확인됩니다.


NearFA 스피커들은 보청기를 위한 이 장치를 이용해서 스피커로 소리를 증폭하고 있는 것이죠.

그리고 사람의 목소리가 잘 들리도록 중음이 강조되어 방출되고 있습니다.




아이디어는 신선하지만 소리가 좋지 않기 때문에 별로 사고싶지는 않은 스피커입니다.

하지만 원래 저가 스피커들도 중음만을 강조하고 있기 때문에 그 가격대에서는 소리에 큰 차이가 없을 수 있습니다.

더불어 NearFA가 그리 대단한 기술도 아니기 때문에 비싼 가격일 필요가 없다고 생각됩니다.

그래도 편의성만큼은 인정할 수밖에 없기 때문에 잘 고려하셔서 구입하시면 되겠습니다.

# 본 문서는 4.0.4-1-ARCH 에서 마지막으로 테스트 되었습니다.


리눅스 버전 확인

uname -a



Swap

dd if=/dev/zero of=/swapfile bs=1M count=512

chmod 600 /swapfile

mkswap /swapfile

swapon /swapfile



웹서버(Nginx)

pacman -S nginx php-fpm

systemctl enable nginx

systemctl enable php-fpm


nginx 설정

nano /etc/nginx/nginx.conf


# location 부분에 index.php 추가

        location / {

            root   /usr/share/nginx/html;

            index  index.php index.html index.htm;

        }


# PHP 부분에 아래 내용 추가

        location ~ \.php$ {

            root           /usr/share/nginx/html;

            fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include        fastcgi.conf;

        }


# 아래 내용 주석 해제

        location ~ /\.ht {

            deny  all;

        }


PHP 설정

nano /etc/php/php.ini


# open_basedir에 nginx 루트 경로 추가

open_basedir = /usr/share/nginx/html:/srv/http/:/home/:/tmp/:/usr/share/pear/:/$


# Ctrl+W 로 mysql.so 찾은 뒤 주석(;)해제


systemctl start nginx

systemctl start php-fpm



MariaDB

pacman -S mariadb

systemctl enable mysqld


systemctl start mysqld



FTP 서버(vsftpd)

pacman -S vsftpd

systemctl enable vsftpd


설정

nano /etc/vsftpd.conf

# anonymous_enable=YES를 NO로

# local_enable=YES 주석 해제

# write_enable=YES 주석 해제

# local_umask=022 주석 해제

# chroot_local_user=YES 주석 해제

# allow_writeable_chroot=YES 추가


systemctl start vsftpd



Samba

pacman -S samba avahi

systemctl enable smbd


설정

cp /etc/samba/smb.conf.default /etc/samba/smb.conf

nano /etc/samba/smb.conf


# 찾아 바꾸기

workgroup = WORKGROUP

server string = ALARM


# 공유해 줄 디렉토리를 아래와 같은 형태로 추가 (예시)

[Acu]

path = /media/acu-hdd

read only = no

public = yes

writable = yes

guest ok = no


Windows 7 파일 갯수 제한 해제

nano /etc/security/limits.conf


# 맨 아랫줄에 다음 내용 추가

*               -       nofile          16384


# 계정을 추가하면서 동시에 비밀번호 설정

smbpasswd -a 계정이름


systemctl start smbd



Transmission

pacman -S transmission-cli


mkdir /home/transmission

chown transmission:transmission /home/transmission

usermod -d /home/transmission transmission

 

설정

nano /etc/conf.d/transmissiond

# 각줄의 앞의 #표시를 삭제

# TRANSMISSION_HOME="/home/transmission"

# TRANS_USER="transmission"

# TRANS_ARGS="-g $TRANSMISSION_HOME/.config/transmission-daemon"


systemctl start transmission

systemctl stop transmission


설정

nano /home/transmission/.config/transmission-daemon/settings.json

# 아래 정보를 수정

# "rpc-whitelist-enabled": false,

# "rpc-authentication-required": true,

# "rpc-password": "비밀번호",

# "rpc-username": "아이디",


systemctl start transmission

systemctl enable transmission


#Port: 9091



드라이브 자동 마운트

pacman -S udevil


mkdir /media


설정

nano /etc/udevil/udevil.conf

# default_options_ntfs 항목들 끝에 big_writes, 넣기 

# allowed_options 항목들 끝에 big_writes, 넣기


systemctl enable devmon@root

systemctl start devmon@root

 

# 마운트 경로는 /media/root



각종 파일시스템 마운트 가능하도록

pacman -S ntfs-3g

pacman -S fuse-exfat



최근 MP4 스트리밍을 위해 하드와 포고플러그를 구입했습니다.


사실 성능은 V2(E02)>V3(Video)>V4(Series 4) 순서이긴 한데...(CPU 클럭상)

일단 최신 제품을 쓰자!...라는 것도 있고 디자인도 많이 개선되어서

제일 성능이 낮은(...) 제품을 업어왔습니다.


우선 준비물은 인터넷에 연결된 포고플러그와 1GB 이상의 USB 메모리가 필요합니다.

설치 과정 원본 링크는 여기를 클릭하시면 보실 수 있습니다.




  • 이 과정은 Pogoplug Series 4(V3)에 한하며, 다른 제품에 대해서는 동작을 보증할 수 없습니다.
  • 이 과정은 보증 수리 규정에 위배되는 행위입니다. 이 과정을 따라하는 모든 행동과 그로 인한 결과물은 본인 책임이며 작성자는 책임지지 않습니다.
  • ArchLinux를 설치 및 가동하는 동안에는 my.pogoplug.com이나 모바일 어플리케이션, 그리고 데스크탑에서 사용할 수 있는 모든 Pogoplug의 기본 기능을 사용하실 수 없습니다. 추후에 복구하시면 다시 사용 가능합니다.
  • ArchLinux는 제품이 아니라 USB에 설치되며, 제품 상단의 USB 2.0 포트와 SATA 커넥터만 root 파일 시스템으로 사용이 가능합니다.
  1. 포고 플러그를 인터넷에 접속시킨 후 my.pogoplug.com에서 활성화 시킵니다. 이후 Settings > Security에서 체크박스를 모조리 체크하여 SSH를 활성화 시킵니다.
  2. 포고 플러그의 전원을 끕니다.
  3. 리눅스 설치를 위해서 준비된 1GB 이상의 플래시 메모리를 포고 플러그에 꽂고 전원을 켭니다.
  4. PuTTY등의 프로그램을 사용하여 SSH에 접속합니다. 포고 플러그의 아이피를 입력한 후 접속하면 됩니다.
  5. 포고 플러그의 기본 서비스들을 종료하기 위해 아래 커맨드를 입력합니다:killall hbwd
  6. USB 메모리의 파티션을 위해 fdisk 유틸리티를 실행합니다:
    /sbin/fdisk /dev/sda
  7. 기존 파티션을 삭제하고 새 파티션을 생성하기 위해 아래 동작을 따라합니다:

    1. o를 입력하여 USB 내의 모든 파티션을 삭제합니다.
    2. p를 입력하여 USB 내의 모든 파티션이 삭제되었음을 확인합니다.
    3. n을 입력하여 새 파티션 생성을 선택하고 p를 입력하여 해당 파티션을 Primary로 설정하고, 1을 입력하여 첫 번째 파티션으로 지정한 뒤 계속 ENTER를 눌러 설정값들을 기본값으로 입력합니다.
    4. w를 입력하여 빠져나갑니다.
  8. ext3 파일 시스템을 생성합니다:
    cd /tmp wget http://archlinuxarm.org/os/pogoplug/mke2fs chmod +x mke2fs ./mke2fs -j /dev/sda1 mkdir alarm mount /dev/sda1 alarm
  9. Arch Linux ARM을 다운받습니다. 200MB 용량을 해외 서버에서 받아오므로 멈춘 화면에서 약 30분 이상 소요될 수 있습니다:
    cd alarm wget http://archlinuxarm.org/os/pogoplug/bsdtar chmod +x bsdtar wget http://archlinuxarm.org/os/ArchLinuxARM-kirkwood-latest.tar.gz ./bsdtar -xpf ArchLinuxARM-kirkwood-latest.tar.gz -C . rm ArchLinuxARM-kirkwood-latest.tar.gz sync
  10. 드라이브를 언마운트 합니다:
    cd .. umount alarm
  11. U-Boot installer를 다운로드 받고 실행합니다:
    cd /tmp wget http://archlinuxarm.org/os/ppv4/ppv4-install.sh chmod +x ppv4-install.sh ./ppv4-install.sh
  12. 설치가 끝난 후 별 다른 에러메시지가 없다면 시스템을 재부팅합니다:/sbin/reboot
  13. ArchLinux 설치가 끝났습니다. ID:root, PW:root로 SSH 로그인이 가능합니다.

구글을 아무리 뒤져도 libmysqlclient.so.15까지만 나올 뿐 도저히 이게 안나온다.

MySQL을 thread-safe 옵션을 줘서 설치하면 이게 튀어나오는거로 얼핏 기억하는데

이 라이브러리 하나 얻자고 MySQL 재설치하는 개고생을-_-



libmysqlclient.so.18


# SNMP 설치
yum -y install net-snmp*

# MRTG 설치 (경로: /var/www/mrtg)
yum -y install mrtg*

# 각종 그래픽 라이브러리 설치
yum -y install freetype gd libjpeg libpng



# 각 설정 파일의 경로

net-snmp : /etc/snmpd/snmpd.conf

mrtg : /etc/mrtg/mrtg.cfg




# SNMP를 시작하여 네트워크 정보 수집
service snmp start



# cfgmaker를 통해 cfg 파일을 생성한다.
cfgmaker --global 'WorkDir: /var/www/mrtg/' --global 'Language: korean' --global 'Options[_]: bits,growright' -output /var/www/mrtg/mrtg.cfg public@서버아이피

# indexmaker를 통해 웹에 표시할 인덱스 파일을 생성한다.
# 여기서 사용할 cfg 파일은 바로 위에서 생성한 파일을 가리킨다.
indexmaker --title "페이지제목" --output /var/www/html/mrtg/index.htm /var/www/mrtg/mrtg.cfg

# MRTG 갱신을 crond에 추가한다.
crontab -e
*/5 * * * * root /usr/bin/mrtg /var/www/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok


+ Recent posts