2016년 1월 28일 목요일

소장수 신씨와 뱃사공 황씨

신경림


영흥도에서 만난 소장수 신씨는
눈을 감고도 소를 몰고 백리를 간다

어디서 길이 굽고 어디에 도랑이 있는가
또 어디쯤 돌부리가 있는가
눈을 감고도 그는 다 안다

하지만 그는 잠시도 한눈을 안 판다
서른 해 걷던 길도 늘 첫길로 조심하고

천 번 뛰어넘던 도랑도
늘 첫번처럼 힘을다해 뛰어넘는다


남한강 청풍에 사는 뱃사공 황씨는
강길이 바로 그의 뜨락이자 텃밭이다

살여울 어디쯤 물살이 더 세고
어디쯤에 풀등이 있는가도 다 안다

물풀 하나하나 강돌 하나하나
바위서덜 그 하나하나 손금 보듯 다 알지만
노만 잡으면 그는 늘 긴장한다

장가가던 첫날밤처럼 긴장한다
쉰 해 물길이 그에게는 하루처럼 새롭다


잠이 오지 않는 밤 나는 서글퍼진다
창문을 때리는 빗소리를 들으면 서글퍼진다

이 길 걸은 지 서른 해에
단 하나 익은 골이 내게 없음이

눈 감고도 갈 수 있는 단 한 길이 내게 없음이
그러면서도 때로 턱없이 건방져지는 어리석음이

때로 분수없이 설치게 되는 뻔뻔스러움이
소장수 신씨와 뱃사공 황씨를 생각하며 서글퍼진다

2016년 1월 25일 월요일

ftp로 원격서버의 데이터 자동백업

ftp로 원격서버의 데이터 자동백업             
 
 
서버2에서 서버1의 데이터를 FTP로 가져와 백업하기
작업내용 : 서버2에서 매일(/etc/cron.daily/autoftp) 서버1로 ftp접속을 하여(/home/sspark/.autoftp.sh, /home/sspark/.ftpscript) 백업할 데이터들을 가져온후에 서버2에 날짜형식을 가진 디렉토리를 생성하여 저장하고, 서버1의 원본데이터는 삭제한다.
서버1에서는 매일매일 백업일 하기위해 /etc/cron.daily/NICE-daily-backup에서 /sbin/NICEBACKUP파일을 실행시켜 이 파일에 있는 내용대로 매일매일 백업이 되고 있다.
 
 
서버1에서 매일 백업되는 내용
다음과 같이 서버1의 /sbin/NICEBACKUP에는 백업해야할 내용에관한 명령어들이 들어있다.
[root@kebia_1 /root]# cat /sbin/NICEBACKUP
#!/bin/bash
#APACHE Server BACKUP
tar cvfpz /home/sspark/BACKUP/usr_local_apache.tar.gz /usr/local/apache
#Mysql DB Full BACKUP
tar cvfpz /home/sspark/BACKUP/usr_local_mysql.tar.gz /usr/local/mysql
#Filesystem BACKUP
tar cvfpz /home/sspark/BACKUP/etc.tar.gz /etc
tar cvfpz /home/sspark/BACKUP/var.tar.gz /var
tar cvfpz /home/sspark/BACKUP/home.tar.gz /home
#Mysql file BACKUP
/usr/local/mysql/bin/mysqldump -uroot -p11111 mysql > /home/sspark/BACKUP/mysql.sql
/usr/local/mysql/bin/mysqldump -uroot -p11111 kebia > /home/sspark/BACKUP/kebia.sql
chown -R sspark:sspark /home/sspark/BACKUP
아래와 같이 서버1에는 위의 백업을 매일 하기위해 /etc/cron.dailly에 NICE-daily-backup이란 파일이 존재한다.
[root@kebia_1 /root]# cat /etc/cron.daily/NICE-daily-backup
echo "NICE KOREA BACKUP"
echo `date`
/sbin/NICEBACKUP
echo "BACKUP is completed"
[root@kebia_1 /root]#
 
서버1에는 매일 아래 디렉토리에 다음과 같이 백업이 되고 있다.
[root@kebia_1 BACKUP]# pwd
/home/sspark/BACKUP
[root@kebia_1 BACKUP]# ll
-rw-r--r--    1 sspark   sspark    1514583 Apr  1 04:04 115.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark       9263 Apr  1 04:05 chapter.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark   12996153 Apr  1 04:05 e-gain.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark     556780 Apr  1 04:04 etc.tar.gz
-rw-r--r--    1 sspark   sspark    2007684 Apr  1 04:04 imt-2000.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark   11236021 Apr  1 04:04 nicekorea.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark      32128 Apr  1 04:04 owner.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark    2150591 Apr  1 04:04 picasso.co.kr.tar.gz
-rw-r--r--    1 sspark   sspark    3624831 Apr  1 04:04 sajik.com.tar.gz
-rw-r--r--    1 sspark   sspark   94379928 Apr  1 04:04 usr_local.tar.gz
-rw-r--r--    1 sspark   sspark    4471105 Apr  1 04:04 var.tar.gz
[root@kebia_1 BACKUP]#
 
 
서버2에는 서버1의 데이터를 매일 가져오기위해 /etc/cron.daily에서 매일실행하는 스크립트 autoftp가 아래와 같이 있다.
[root@kebia_2 /root]#
[root@kebia_2 /root]# cat /etc/cron.daily/autoftp
#!/bin/bash
/home/sspark/.autoftp.sh
[root@kebia_2 /root]#
 
서버2에 만들어져야할 파일2개
  autoftp.sh : ftp실행파일
  ftpscript : ftp명령어들
 
[root@kebia_2 sspark]# cat autoftp.sh
#!/bin/bash
ftp -n 211.220.193.181 < ./ftpscript
export backupdir=`date '+%y-%m-%d.%H-%M'`
mkdir /home/sspark/BACKUP/$backupdir
mv /home/sspark/tmp/* /home/sspark/BACKUP/$backupdir

[root@kebia_2 sspark]#
 
[root@kebia_2 sspark]# cat ftpscript
user sspark 11111
cd /home/sspark/BACKUP
lcd /home/sspark/tmp
bin
prompt
mget *.tar.gz
mdelete *.tar.gz
bye

[root@kebia_2 sspark]#
 
서버1에는 cron.daily에 /sbin/NICEBACKUP등으로 매일 또는 매주 또는 매월백업을 자동으로 되고 있어야한다.
서버1의 /home/sspark/BACKUP/200104010303 형식으로 디렉토리를 생성하게되어 저장된다.
그런후에는 서버1의 데이터를 삭제한다.
 
작업완료후에 서버2에는 서버1의 내용이 백업되어 있다.
 
[root@kebia_2 01-04-01.05-45]# pwd
/home/sspark/BACKUP/01-04-01.05-45
[root@kebia_2 01-04-01.05-45]# ll
-rw-r--r--    1 root     root      1514583 Apr  1 05:36 115.co.kr.tar.gz
-rw-r--r--    1 root     root         9263 Apr  1 05:36 chapter.co.kr.tar.gz
-rw-r--r--    1 root     root     12996153 Apr  1 05:37 e-gain.co.kr.tar.gz
-rw-r--r--    1 root     root       556780 Apr  1 05:37 etc.tar.gz
-rw-r--r--    1 root     root      2007684 Apr  1 05:37 imt-2000.co.kr.tar.gz
-rw-r--r--    1 root     root     11236021 Apr  1 05:38 nicekorea.co.kr.tar.gz
-rw-r--r--    1 root     root        32128 Apr  1 05:38 owner.co.kr.tar.gz
-rw-r--r--    1 root     root      2150591 Apr  1 05:38 picasso.co.kr.tar.gz
-rw-r--r--    1 root     root      3624831 Apr  1 05:38 sajik.com.tar.gz
-rw-r--r--    1 root     root     94379928 Apr  1 05:45 usr_local.tar.gz
-rw-r--r--    1 root     root      4471105 Apr  1 05:45 var.tar.gz
[root@kebia_2 01-04-01.05-45]#
 
서버2에서 ftp접속 및 작업이 끝난후 서버1의 내용(즉, 원본파일은 지워지게 된다.)
[root@kebia_1 BACKUP]# pwd
/home/sspark/BACKUP
[root@kebia_1 BACKUP]# ll
[root@kebia_1 BACKUP]# 
 
 

2016년 1월 18일 월요일

Raspberry Pi

준비물

라즈베리파이(pi2 B)

sdcard

라즈베리파이 이미지 https://www.raspberrypi.org/downloads/raspbian/

A tool for writing images to USB sticks or SD/CF cards  http://sourceforge.net/projects/win32diskimager/


Raspberry Pi Java Closs Compile

라즈베리파이 윈도 closs compile


putty 로 라즈베리파이에 접속
pi@rasberrypi $ cd .. -->home으로 이동
pi@rasberrypi $ cd pi -->pi로 이동

pi@rasberrypi $mkdir jre
pi@rasberrypi $chmod 777 jre



ms windows에서
ORACLE JAVA SE EMBEDDED DOWNLOADS에 접속
(http://www.oracle.com/technetwork/java/embedded/embedded-se/downloads/index.html)

ARM v6/v7 Linux - VFP, HardFP ABI, Little Endian 1 을 다운로드한다.
적당한 장소에 압축을 풀어놓고....



NetBeans IDE를 실행
도구-Java Platforms 를 클릭
Add Platforms를 클릭
Remote Java Standard Edition 선택후 다음 클릭

Platform Name : Raspberry Pi (적당한 이름으로....)
Host                  : 192.168.0.9  (라즈베리파이의 IP)
Username          : pi                 (라즈베리파이 ID)
Password           : **********(라즈베리파이 비밀번호)

Remote JRE Path:          Create... 클릭

Browse클릭 ---------------> 다운로드해서 압축을 풀어놓은 디렉토리 선택

Profile                : Compact3
Virtule Machine : Client

Extensions : 적당히 선택
(fx...를 체크하면 실패함. javaFX는 안되나? 나중에 시도해보겠습니다.)


Create 클릭
Configuration Name : HelloPiConfig(언제나 헬로파이...)OK 클릭


완료 클릭


이제 NetBeans에서 프로젝트생성하고
프로젝트 선택하고 오른쪽 마우스 클릭하여

Properties(등록정보: 괜히 한국어버전 선택했나?) 클릭
카테고리선택  Profile                   : Compact3 선택
실행 선택         Runtime Platform : Raspberry Pi 선택

컴파일하고 실행하면 라즈베리파이의

/NetBeansProjects/HelloPi 에 jar파일이 생성되어 있음.

java -jar helloPi.jar --> 헬로출력


끝.

출처:
https://www.youtube.com/watch?v=ebHbDlTnV-I
https://www.youtube.com/watch?v=-aC6nj4xAas

vsftpd FTP 서버 접속은 성공하였으나, "디렉토리 목록 조회 실패" 현상 발생시

FTP Passive 모드를 활성화 필요. 1. vsftpd 설정 변경 /etc/vsftpd/vsftpd.conf 상에 아래 내용 추가 기입 #passive modpasv_enable=YES pasv_min_port=5001 pasv...