iTerm2

기본으로 내장되어 있는 Terminal은 간단한 작업을 하는데 큰 문제가 없습니다. 하지만, 라즈베리파이를 접속해서 사용하려고 하면 LANGUAGE 문제가 발생해 작업에 속도 저하와 같은 문제가 발생 합니다.
이를 피해서 다른 대체제를 한번 찾아봤습니다.

iTerm2 은 무료로 제공되는 뛰어난 터미널입니다. 커스터마이즈를 할 수 있고, 한글과 일본어도 잘 지원하고 있습니다.

특징

  • 자동완성
  • 마우스 없이 선택, 복사
  • 단축키
  • 붙여넣기 히스토리
  • 듀얼 터미널 세션, 화면 분할

세션

  • 화면 최대화
  • 단축키 설정
  • 커스터마이징 기능
  • 마우스를 이용한 커서, 하이라이트, 기능
  • Growl 지원
  • 다양한 언어 지원

Secure Shell (chrome)

이건 다로 어플이 아니고, chrome 에서 사용할 수 있는 쉘입니다. 어디 들어가서 설치할 필요없이 크롬을 통해서 작업 할 수 있는 점이 큰 장점입니다. 용량도 상당히 저렴합니다.

기본으로 제공되는 터미널과 다를게 없어보이지만, 윈도우에서도 사용할 수 있는 장점이 있습니다.

장점

  • 무료
  • chrome 을 통해서 어디서나.
  • 한글지원

window, mac, ubuntu 에서도 잘 돌아가서 일관되게 작업환경을 만들기 위해서 가끔 사용합니다.

반응형

하마사키 아유미 - flower
번역 - 떙찡


FLOWER

歌手:浜崎あゆみ
作詞:ayumi hamasaki
作曲:Tetsuya Yukumi

目を閉じて浮かんだのは
눈을 뜨면 떠오르는 것은
これまでの歩んだ道
지금까지 걸어왔던 길
もう直ぐで花咲く頃
벌써 꽃이 필 무렵
あの頃は楽しみだった
그 때는 즐거웠었다

優しく笑ってた君は
상냥하게 웃던 당신은
何処(どこ)へ消えたのでしょう
어디로 사라졌나요

花になって棘(とげ)をもって枯(か)れて散(ち)って朽(く)ち果(は)てたい
꽃이 되서 가시가 나고 시들어져 썩어 죽어싶어
拾(ひろ)わないで離(はな)れてって 忘れてって
줍지말고 떠나세요 잊어주세요

雨になって霧(きり)になってそのままで濡(ぬ)れていたい
비가 되어 안대가 되어 그대로 젖어 있고 싶어
横(横)になって眠(めむ)くなって 独りにして
가로누워 잠이 와 혼자이면서

指絡(から)め歩いたのは
손가락을 걸며 걸었던 것은
置(お)いてきたあの故郷(ふるさと)
놓고 온 그 고향
今思えば幸せだと
지금 생각하면 행복하다고
言える日も過ごしました
말할 수 있는 날도 보냈습니다

手を引いてくれた君の
손을 이끌어줬던 당신의
温もりが残ってる
온기가 남아있어

躊躇(ためら)わないでどうせならトドメ刺(さ)して終(お)わらせて
망설이지 말고 이왕이면 결정타로 끝내줘
笑わないで冷(つめ)たい目で 嘘(うそ)が下手(へた)ね
웃지않는 차가운 눈초리로 거짓말이 서투네요

鳥になって風に乗ってあの場所を目指(めざ)したい
새가 되어 바람을 타고 그 장소를 목표로 하고 싶어
痛みもない愛もない 向こう側へ
아픔도 없이 사랑도 없어 저편에는

優しく笑ってた君は
상냥하게 울는 당신은
何処へ消えたのでしょう
어디로 사라졌나요

花になって棘をもって枯れて散って朽ち果てたい
꽃이 되서 가시가 나고 시들어져 썩어 죽어싶어
拾わないで離れてって 忘れてって
줍지말고 떠나세요 잊어주세요

躊躇わないでどうせならトドメ刺して終わらせて
망설이지말고 기왕이면 결정타로 끝내줘
笑わないで冷たい目で 嘘が下手ね
웃지않는 차가운 눈초리로 거짓말이 서투네요.

반응형

웹상에서 계속 데이터를 받아와서 DB에 업로드를 하는데 중복된 값이 나오면 이를 무시하고 덮어씌울 수가 있습니다. 이를 이용하면 간단한 insert를 하기에 편합니다.

INSERT IGNORE

INSERT IGNORE into 테이블명 values ()

이렇게 하면 에러 없이 덮어씌여 버립니다.

ON DUPLICATE UPDATE

중복되는 값이 존재하면 UPDATE 하는 방법도 있다.

insert into DB명
    VALUES (?,?,?,?,?)
    ON DUPLICATE KEY
    UPDATE CATEGORY=?, HIT=?

만약에 중복값이 존재하면 CATEGORY, HIT 값을 업데이트하라는 명령어 입니다.

REPLACE INTO

REPLACE INTO DB명
    VALUES (?,?,?,?)

기존에 있던 키는 지워지고 새로운 키가 등록이 된다.
AUTO_INCREMENT 를 기본으로 등록하고 있다면, 기존에 있는 번호가 사라지고 새로운 번호로 등록되는 것을 확인 할 수 있다.

반응형

'개발' 카테고리의 다른 글

윈도우 live writer 설치하기  (0) 2016.11.29
일곱가지 모델  (0) 2016.11.19
android | adb를 이용해서 캡쳐하기  (0) 2016.09.28
어떻게 블로그 수익을 올릴까  (0) 2016.07.15
nosintgdmn 이란  (0) 2015.06.03

Raspberry pi 3 B+ 에 Raspbian-jessie 가 설치되어 있습니다.

armv6l 용으로 이미 만들어 진 것이 있기 때문에 아주 쉽게 할 수 있습니다.

다운로드

$ wget https://storage.googleapis.com/golang/go1.6.3.linux-armv6l.tar.gz

/usr/local 에 압축을 풀어줍니다.

$ sudo tar -C /usr/local -xzf go1.6.3.linux-armv6l.tar.gz

다음에는 설정을 등록합니다.

PATH”:/usr/local/go/bin:$GOPATH/bin”

참조

sudo apt-get install golang 으로 설치 설정파일


GOARCH="arm"
GOBIN=""
GOCHAR="5"
GOEXE=""
GOHOSTARCH="arm"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/pi/golang"
GORACE=""
GOROOT="/usr/lib/go"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_arm"
CC="gcc"
GOGCCFLAGS="-fPIC -marm -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
pi@raspleaf:~ $ whereis go
go: /usr/bin/go /usr/lib/go /usr/share/go /usr/share/man/man1/go.1.gz

apt-get purge golang 을 하고 난 후에 직접 다운받고 난 뒤의 설정 파일

GOARCH="arm"
GOBIN=""
GOEXE=""
GOHOSTARCH="arm"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/pi/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_arm"
GO15VENDOREXPERIMENT="1"
CC="gcc"
GOGCCFLAGS="-fPIC -marm -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
pi@raspleaf:~ $ whereis go
go: /usr/local/go /usr/local/go/bin/go

혹시 설정이 달라질지 몰라서 한번 백업을해 놨습니다. 딱히 바뀌점이 없는 거 보니 제대로 설치가 된 것 같습니다.

그런데, 이상하게 db.sql 을 사용하는데, 1.3 보다 느립니다. 일부러 1.6 버전을 설치했는데, 느려지다니, 좀 실망입니다.

반응형

개발환경은 다른 곳에 라즈베리파이를 놓고, 다시 다른 곳에서 golang을 통해서 접속을 하려고 합니다.

모든 초반 작업은 root 계정에서 합니다.

 $ mysql -u root -p

DB를 생성

MariaDB [(none)]> CREATE DATABASE test;
MariaDB [(none)]> flush privileges;

mysql 외부 접속을 위한 아이디 생성

를 통해 관리자 아이디로 mysql(mariaDB)에 접속을 하고, 계정을 생성합니다.

내부 접속용 아이디

MariaDB [(none)]> create user ‘이름’@‘localhost’ identified by ‘비밀번호’;
MariaDB [(none)]> flush privileges;

localhost 가 들어가 있으면 내부접속만 허용하는 옵션입니다.

외부 접속용 아이디

MariaDB [(none)]> create user '이름'@'%' identified by '비밀번호'
MariaDB [(none)]> flush privileges;

% 이 들어가면 모든 아이피의 접속을 허용한다는 뜻입니다.
특정 IP에 권한을 주려면 ‘123.123.123.123’ 과 같은 권한을 추가하면 됩니다.

DB 계정에 권한설정

grant all privileges on 디비명.* to 이름@'%' identified by ‘비밀번호';
MariaDB [(none)]> flush privileges;

mysql 설정하기

$sudo vi /etc/mysql/my.cnf

bind-address = 127.0.0.1설정의 맨 앞에 #을 넣어서 주석처리 합니다.

raspberry 에 mysql 포트 열기

mysql 기본포트는 3306를 사용하고 있습니다.
3306 포트를 열어줍니다.

$ iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
$ iptables -A OUTPUT -p tcp --dport 3306 -j ACCEPT
$ iptables-save

golang 소스

go get github.com/go-sql-driver/mysq;

를 통해서 소스 mysql 접속 소스를 다운받습니다. ($GOPATH) 폴더에 자동으로 설치가 됩니다.

import (
    "database/sql"
    "fmt"
    _ "github.com/go-sql-driver/mysql"
)

func main() {
    db, err := sql.Open("mysql", "아이디:비밀번호@tcp(접속주소:포트)/디비명")
    if err != nil {
        panic(err.Error())
    }
    defer db.Close()

    var version string
    db.QueryRow("SELECT VERSION()").Scan(&version)
    fmt.Println("Connected to:", version)
}

sql.Open(“mysql”, “아이디:비밀번호@tcp(접속주소:포트)/디비명”)
포트번호까지 전부 적어줘야 합니다.

반응형

'개발 > Golang' 카테고리의 다른 글

GO | golang 1.9 update  (0) 2017.09.06
Golang | 최신버전으로 업그레이드 할 때 주의점  (0) 2016.08.23
golang | strings 패키지  (0) 2016.08.12
Golang 에 유용한 IDE 에디터  (0) 2016.07.20
[golang] packtpub 무료책 받기  (0) 2016.07.01

PHP7 설치하기

소스 추가하기

$ sudo nano /etc/apt/source.list

아래와 같은 항목을 추가합니다.

deb http://repozytorium.mati75.eu/raspbian jessie-backports main contrib non-free
#deb-src http://repozytorium.mati75.eu/raspbian jessie-backports main contrib non-free

추가하고 난 뒤에 키를 등록합니다.

$ sudo gpg --keyserver pgpkeys.mit.edu --recv-key CCD91D6111A06851
$ sudo gpg --armor --export CCD91D6111A06851 | sudo apt-key add -

기존에 설치되어 있는 php5 삭제하기

$ sudo apt-get remove php5-common

php7 fpm 설치하기

$sudo apt-get install php7.0-fpm

fpm 을 설치하면 php7.0 기본파일들도 자동으로 설치가 됩니다.

php7-mysql

$ sudo apt-get install php7.0-mysql

Nginx 사이트의 소켓을 업데이트 해야 합니다.

PHP 5 PHP 7
/var/run/php5-fpm.sock /var/run/php/php7.0-fpm.sock

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

을 열어서 아래와 같이 unix 소켓 부분을 수정합니다.

설정이 끝났으면, nginx 서버를 재시작합니다.

$ sudo service nginx restart

설치 확인

설정이 잘 되었는지 한번 확인해 봅시다.

$ php -v
PHP 7.0.7-3~bpo8+1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
$ sudo nano /usr/share/nginx/html/info.php

를 입력해서

<?php
phpinfo()
?> 

내용을 추가한 후에 ctrl+o 저장을 한후 ctrl+x를 눌러 나옵니다.
이제 서버에 들어가봅시다

이제 서버에 들어가봅시다

https://서버주소/info.php

아래같이 화면이 나오면 제대로 설정이 된 것입니다.

반응형

owner, group 변경하기

매번 어려웠던 문제를 정리를 해서 기억해 두려고 합니다.
SFTP 에 접속을 해서 홈페이지 파일을 업로드 하려고 하는데, 권한이 없어서, filezilla 를 통해서 업로드 할 수 없었습니다.
시스템에 대한 지식이 부족하고, 필요할 때에만 구글신을 빌어서 이용했기 때문에 정리를 하지않으면 자신의 것이 되지 않는다고 생각해서 이렇게 정리합니다.

소유자, 그룹 확인

$ ls -l

명령을 통해서 간단히 소유자 그룹을 알 수 있습니다. 아래를 보면, -rw-r--r--과 같은 권한에 대한 정보 다음에 올라오는 것이 소유자, 그룹 에 대한 정보입니다.

권한 소유자 그룹 용량 작성시간
-rw-r–r– root root 343783 Sep 11 2012
pi@raspleaf:/usr/share/nginx/html $ ls -l
total 364
-rw-r--r-- 1 root     root 343783 Sep 11  2012 ddd.zip
-rw-r--r-- 1 www-data root   2971 Jul 26 15:51 index.php
-rw-r--r-- 1 www-data root     20 Jul 21 23:21 phpinfo.php
drwxr-xr-x 2 root     root   4096 Jul 26 12:36 sold
drwxr-xr-x 2 root     root   4096 Jul 25 23:40 stack+hight
-rw-r--r-- 1 root     root   4550 Jul 25 09:31 test.html
drwxr-xr-x 5 www-data pi     4096 Jul 23 01:57 wordpress

소유자 변경

$ sudo chown [변경할소유자명] [파일 or 디렉토리]

다음 sold 폴더의 소유자를 pi 로 변경 해 보겠습니다.

$ sudo chown pi sold

sudo 로 관리자(root) 권한으로 명령어를 실행해야 합니다.

drwxr-xr-x 2 pi       root   4096 Jul 26 12:36 sold

다른 과 같이 root 에서 pi 로 소유자가 변경된 것을 확인할 수 있다.

소유자, 관리자 변경

:(콜론)을 이용해서 “소유자:그룹” 을 지정하면 변경 할 수 있습니다.

$ sudo chown pi:pi sold

drwxr-xr-x 2 pi       pi     4096 Jul 26 12:36 sold

하위디렉토리 포함해서 변경하기

특정 디렉토리와 서브 디렉토리의 소유주 소유그룹을 한꺼번에 변경 방법

$ sudo chown -R [소유자:그룹] [폴더명]

이렇게 하면 지정한 폴더 뿐 아니라 하위 폴더까지 권한이 변경되어 있는 것을 알 수 있습니다.

반응형

'개발 > 리눅스' 카테고리의 다른 글

centos 7 yum 깨짐  (0) 2017.12.05
centos 7 커널 최신버전으로 설치하기  (0) 2017.09.18
리눅스 daemon 항목들 정리  (0) 2016.08.09
우분투에서 일본어 사용하기  (0) 2016.07.18
MongoDB 간단히 CRUD 사용하기  (0) 2016.07.12

맥북을 사용하는 블로거들을 위한 툴
————

ByWord, MarsEdit, Blogo, Mou, iA Write

맥북에서 글을 쓰는 다양한 도구들이 존재한다 개인적으로는 Macjournal 을 자주 사용합니다만, Text로만 글을 작성하는 기간동안 Markdown 이라는 문법이 나와 웹작성을 도와주는 방식이 생겼습니다. 어느사이엔가 구시대 인간이 되었습니다.

Ulysses, IA Writer, Blogo, ByWord, MarsEdit, Blogo, Mou, iA Write 등등 여러가지 어플들이 있습니다. 그중에 몇개를 소개하려고 합니다.

ByWord 11.99$

포르투칼 회사 MetaClassy 에서 만든 Byword 입니다. 오래된 마크다운 에디터 중에는 깔끔한 인터페이스와 마크다운(MarkDown)문법을 지원하는 전용 에디터입니다.

또, 위와 같은 블로거 사이트에 발행을 지원합니다. Blogger 는 마크다운이 지원이 안되는데, 발행이 되는 것을보니, Rich Text, Plain Text, HTML 로 컨버팅을 하는 방식으로 올라가는 것 같습니다.

Mou free/15$ sale

지금은 무료로 제공을 하고 있습니다. 1.0 version 으로 업그레이드 되면서 30에 paypal을 통해서 구매할 수 있습니다.
osx 에서 작업하는 개발자를 위한 마크다운 에디터. 프리뷰, 싱크 스크롤, 자동저장, 강력한 액션, 자동 공기화, 커스텀 테마와 CSS, HTML, PDF 발매, CJK 등을 지원합니다.
특이한 점은 Command Line을 지원을 합니다. open -a Mou 라고 오션을 주면 실행가능합니다. 자세한 내용은 모르겠습니다.

MarsEdit free ... 2019.4월 기준



맥북에서 블로그 하시는 분들 중에 모르는 분들이 없을 것 같습니다. 저는 그격이 비싸서 한번도 사용해 본적이 없습니다. OSX 에서 사용하는 최강의 블로그툴이라고 하는데, 다른 많은 툰들도 있는데 한번 경험해 보자고 50$를 사용하는 기에는 무리가 있네요.

30-Trial 버젼을 제공하고 있어서 사용해 볼 수 있습니다.

Blogo (무료, 유료)

iA Write 9.99$

Stackedit.io

웹에서 작성할 수 있기에 무료로 사용할 수 있습니다. 어느정도 html 언어를 지원하고 있습니다. youtube 영상도 frame 을 이용해서 올릴 수 있습니다. 단점은 다른 브라우져를 사용하면 새로 처음부터 작성해야 합니다. 아마도 브라우저별 cookie 로 글을 저장하기 때문에 그런것 같습니다.

작업방법

현재 저는 기본 시스템을 Macjournal을 기본으로 작업을 합니다. markdown 형식으로 작성을 합니다. 그리고, stackedit.io 에 들어가서 편집을 다시 합니다. 블로그에다 stackedit 로 설정이 되어있기 때문에 markdown 형식으로 작성을 합니다.

그리고, macjournal 에서는 사진을 자동으로 imgur.com 에 올리는 기능이 있습니다. 이게 상당히 유용합니다. 어디서든 파일을 불러올 수 있기 때문입니다.

macjournal 로 바고 share 를 통해 포스팅을 합니다. 그리고, 거기서 html 파일을 복사해서 stackedit.io 에서 편집합니다.

stackedit.io 에서 편집해서 편집하던 블로그에 올립니다.

반응형

라즈베리파이 minmidlna 1.1.5 설치하기

사전작업

이미 설치해 놓은 minidlna 를 삭제 합니다.

$ sudo apt-get purge minidlna -y && sudo apt-get remove minidlna && sudo apt-get autoremove -y

패키지형태로 제공이 되기 때문에 설치하기 위해서 라이브러리를 설치해줘야 합니다. 안 하면 ./configure작업에서 에러가 납니다.

$ sudo apt-get install autopoint debhelper dh-autoreconf gcc libavutil-dev libavcodec-dev libavformat-dev libjpeg-dev libsqlite3-dev libexif-dev libid3tag0-dev libogg-dev libvorbis-dev libflac-dev -y

설치하기

소스파일 다운로드

$ wget http://downloads.sourceforge.net/project/minidlna/minidlna/1.1.5/minidlna-1.1.5.tar.gz

압축풀기

$ tar -xvf minidlna-1.1.5.tar.gz

minidlna 디렉토리로 들어갑니다.

$ cd minidlna-1.1.5

configure, make, 그리고 minidlna 설치

$ ./configure && sudo make && sudo make install

기본 설정 파일 복사하기

$ sudo cp minidlna.conf /etc/

부팅시 자동으로 실행하게 스크립트를 등록해 줍니다.

$ sudo cp linux/minidilan.init.d.script /etc/init.d/minidlna

스크립트에 권한 설정

$ sudo chmod +x /etc/init.d/minidlna

minidlna 를 기본으로 사용할 수 있게 설정 해 줍니다.

$ sudo update-rc.d minidlna defaults

minidlna.conf 설정하기

$ sudo nano /etc/minidlna.conf

아래와 같은 부분만 설정해 주면 됩니다. #표시를 제거해서 주석처리를 제거해 주세요.

media_dir=/home/pi/torrent
friendly_name=Raspberry DLNA
inotify=yes

media_dir : 미디어 파일이 있는 곳 위치입니다.
inotify : 자동 갱신여부 설정

root_container=V:
- DLNA 에 접속하면 들어갈 목록입니다. V라고 설정해 주면 바로 비디오 목록으로 들어가집니다. 번거롭게 음악, 사진, 비디오 메뉴가 안 나옵니다.

B” - “디렉토리 브라우저”
M” - 음악”
V” - “비디오”
P” - “사진”

서비스를 시작 합니다.

$ sudo service minidlna start

실행이 되는 것을 확인 했으면, 이제 재부팅을 해 줍니다.

$ sudo reboot

부팅이 끝난 후에 DLNA에 접속 할 수있으면 성공적으로 설치가 된 것입니다.


반응형

출연진이 어마어마 합니다. 홍백가합전 보다 나는 이게 더 재미있는 거 같아요.

이번 기획자체가 옛노래들이 많이 나와서 참 좋았던 거 같습니다.





반응형

+ Recent posts