Ruby on rails 이클립스 윈도우 개발 환경 설치

윈도우 10 에서 루비 Ruby 와 Ruby on rails 를 설치한다. 개발 툴은 이클립스 Eclipse 를 사용하고, Aptana Studio 플러그인을 설치해서 루비와 Ruby on rails 개발 환경을 구축하는 방법을 설명한다.

주의: 이 글에서 설명하는 것은 루비나 Ruby on rails 를 전부 최신 버전으로 설치하는 경우이기 때문에 특정 버전으로 루비나 Ruby on rails 를 설치해야하는 경우에는 참고만 하기 바란다.

루비 설치

http://rubyinstaller.org/downloads/ 에서 윈도우용 루비 설치파일을 받아서 설치한다.
설치시에 루비 실행 파일 패스 추가하는 옵션에 꼭 체크하자. 안 그러면 수동으로 해 줘야 한다.
윈도우키 + X 키를 눌러서 나오는 메뉴에서 ‘명령 프롬프트’를 선택해서 프롬프트 화면 열고, 아래 명령으로 루비가 잘 설치되었는지(실행 파일 패스가 제대로 설정되었는지)를 확인한다.

루비 설치파일로 설치할 때 나오는 체크 옵션 중에 td/tk는 루비로 GUI 어플리케이션을 개발할 때 사용하는 것이니 관심 있으면 체크해서 같이 설치하자.

Development Kit 설치

이걸 설치하지 않으면 Ruby on rails 설치 후 프로젝트를 생성할 때 에러가 난다. 미리 설치하자.
http://rubyinstaller.org/downloads/ 로 들어가면 하단 부에 있다. 루비 2.0 이상 버전 중에서 쓰고 있는 환경에 맞춰서 32비트나 64비트 설치 파일을 받으면 된다. 파일을 받은 후에 실행하면 압축 해제 다이어로그가 나오는데 루비를 설치한 폴더 아래에 devkit 폴더에 압축을 풀자. 설치 방법은 프롬프트 화면에서 devkit 폴더로 이동한 다음 아래 커맨드를 실행하면 된다.

설치는 순식간에 끝난다.

gem 업데이트

프롬프트 화면에서 gem 업데이트를 한다.

Ruby on rails 설치

설치는 6분 정도로 좀 오래 걸렸다.

이클립스 플러그인 Aptana Studio 설치

Aptana Studio는 웹 개발 툴인데 html, css, javascript, php, python 그리고 루비와 Ruby on rails 개발에 여러 가지 편리함을 주는 툴이다.
이미 이클립스를 사용하고 있다면 플러그인 형식으로 이클립스에 설치하면 되고, 루비 개발에만 사용할 것이라면 Aptana Studio 자체를 다운로드 해서 설치하면 된다. 이클립스랑 거의 같은 UI 이기 때문에 별 다르지 않을 것이다.

여기서는 이클립스 플러그인으로 Aptana Studio 설치 방법을 설명한다.
우선 이클립스를 실행하고, 메뉴에서 Help -> Install New Software 를 선택한다.
팝업 화면에서 Add 버튼을 누르고 이름에 ‘Aptana Studio’ 를 넣고, 장소에 http://download.aptana.com/studio3/plugin/install 를 넣는다. 그다음부터는 적당히 Next Next 동의 체크하고 완료 정도로 플러그인을 설치하기 시작할 것이다.

설치가 끝나면 이클립스를 재기동 시키고, 프로젝트 익스플로러에서 오른쪽 클릭 -> 신규 -> Rails 프로젝트로 Ruby on rails 프로젝트를 생성할 수 있다.

따라 해보자
초보자를 위한 레일스 가이드북 – https://www.gitbook.com/book/rorlab/railsguidebook

CentOS 7.1 최소 설치 후 SSH 포트 번호 변경 방법. 방화벽 포트 열기

CentOS 7.1을 최소 설치 후, SSH 포트를 변경하는 방법을 설명한다. CentOS 7.1에서 바뀐 명령도 있는 것 같고, 최소로 설치하면 설치가 안된 툴들이 있어서 그런지 우분투에서 쓰던 여러 명령들이 작동하지 않는다. 애초에 우분투와 다른 명령들도 많고…

IP 주소 고정

CentOS 설치 과정에서 네트워크 설정으로 들어가서 IP 주소를 고정으로 할당 받도록 하면 일이 많이 편해진다. 설치 과정에서 설정하지 않았으면, 아래 파일을 편집 후 네트워크를 재시작해야 한다.

ifconfig 로 현재 IP 주소를 알아보려고 하면 command not found. 이럴때는 ifconfig 대신 ip 명령을 사용하면 된다.

ifconfig 커맨드를 쓰려면 net-tools 팩키지를 설치하면 된다.

SSH 포트 번호 변경

우분투와 다름없이 아래 명령으로 sshd_config 파일을 열어서 Port 부분의 주석을 해제하고 원하는 포트 번호를 써주고 파일을 저장한다.

로 되어 있는 걸

으로 고치고 저장한다.

그리고, SSH데몬 재기동

테라텀으로 서버 IP 주소에 바꾼 포트 번호로 접속을 해 봐도 접속이 안될 것이다. SSH 포트가 제대로 바뀌어 있나 확인 해 보자.

열려 있는 포트 중에 위에서 바꾼 새로운 SSH 포트 번호인 1022가 나오지 않는다.

이유는 CentOS 에 있는 SELinux가 SSH 포트를 기본 SSH 포트인 22번으로 고정하고 있기 때문이다. SELinux 의 SSH 포트 정의에 1022 번을 추가하기 위해서는 semanage 명령이 필요하다. 하지만, semanage 명령을 쳐보면 command not found. semanage 툴을 설치하자.

먼저 SSH 포트 정의 내용을 확인한다.

ssh_port_t 라는 이름으로 TCP 22번이 쓰여져 있다.

아래 명령으로 ssh_port_t 정의에 TCP 포트 1022번을 추가한다. 시간이 좀 걸린다. 기다리자.

다시 SSH데몬 재기동 후, 포트가 열려 있는지 다시 확인한다.

이번에는 1022번이 열려 있는걸 확인 할 수 있다.
다시 테라텀으로 접속해 보면 여전히 접속이 안될 것이다. 이번엔 방화벽이 문제다.

방화벽 포트 열기

CentOS 에서는 방화벽이 돌아가고 있고, 기본 SSH 포트인 22번 포트는 열려 있지만, SSH 포트를 임의의 포트 번호로 변경을 했을 때는 당연히 그 포트 번호는 방화벽으로 막혀 있는 상태이다.
방화벽에 새로 지정한 SSH 포트 번호를 추가해야 한다.

CentOS 7 에서는 기본 방화벽인 iptables 대신 firewall 을 사용한다.

현재 방화벽 상태는 아래 명령으로 확인한다.

명령 실행 결과

services 에 ssh 는 포트 22번이기 때문에, ports 에 TCP 1022번 포트를 추가해 줘야한다.

아래 명령을 실행해서 1022번 포트를 추가해 주고, 방화벽을 리로드 한다. 그리고, 확인.

ports 에 1022/tcp 라고 되어 있으면 포트 번호가 제대로 추가된 것이다.

이제 테라텀으로 접속하면 잘 접속 될 것이다.

우분투 서버 14.04 LTS 톰캣 웹서버 설치 후 war 파일 배치(디플로이) 방법

우분투 서버 14.04 LTS 에서 톰캣7 웹서버을 설치하고 war 파일로 된 웹어플리케이션을 배치(디플로이)해서 확인하기까지의 과정을 설명한다.

톰캣 설치

먼저 당연하게 톰캣을 설치해야 한다. 우분투 서버 14.04 LTS 에서 최신 버전인 7.0 버전을 설치한다.

설치를 하면 service tomcat7 으로 톰캣이 실행 된다.
브라우저에서 <톰캣을 설치한 서버의 IP 주소:8080> 로 접속해 본다.

톰캣7 설치 후 브라우저에서 접속한 화면
톰캣7 설치 후 브라우저에서 접속한 화면

apt-get 으로 톰캣을 설치하면 별 문제 없이 설치가 될 것이다.

war 파일=웹어플리케이션 배치(디플로이)

브라우저로 접속한 화면의 글을 잘 읽어 보면 CATALINA_HOME 은 /usr/share/tomcat7 이고, CATALINA_BASE 는 /var/lib/tomcat7 이라고 나와 있다.
이전 글 톰캣 CATALINA_HOME vs. CATALINA_BASE 에서도 이야기 했지만, 우분투 톰캣7에서는 기본적으로 웹어플리케이션 배치(디플로이)는 CATALINA_BASE 를 이용한다.

war 파일의 배치 장소는 CATALINA_BASE/webapps 이며, 경로로는 /var/lib/tomcat7/webapps 가 된다.
webapps 디렉토리는 tomcat7 유저 소유이므로 winSCP 등으로 war 파일을 업로드 할 때는 직접 webapps 디렉토리에 올릴 수가 없다. 먼저 현재 계정의 home 디렉토리에 war 파일을 업로드 하고 sudo 명령으로 webapps 디렉토리로 복사 하도록 하자.

구글에서 sample war 로 검색해서 나온 Calendar.war 파일을 배치 해 보았다.
파일을 복사 한 다음에 리스팅을 해 보면 이미 배치가 끝나서 Calendar 디렉토리로 전개 되어 있는 모습을 볼 수 있다.

아까 접속 했던 브라우저 주소 뒤에 전개 된 디렉토리 이름인 Calendar 를 아래와 같이 붙여서 브라우저로 접속해 본다.

배치 후 접속 화면
배치 후 접속 화면

별 내용이 없는 어플리케이션이라 화면이 횡하지만 어쨋든 잘 접속 된다.
디플로이는 이런 식으로 하면 된다.

Locale Emulator 한글 윈도우에서 일본 프로그램 실행시 글자 깨짐 해결

제목은 한글 윈도우에서 일본 프로그램 실행시 글자 깨짐 해결이라고 했지만, 일본 윈도우에서 한국 프로그램 실행시 글자 깨짐에도 대응된다.

쓰임새로는
·일본어 윈도우에서 테라텀으로 한글 우분투에 접속하면 터미널의 한글이 깨질 때 (지극히 나 개인적인 상황)
·스크린샷을 간단하게 찍어주는 유틸인 칼무리 등의 한글 어플리케이션 실행시 글자가 깨질 때
기타등등 아주 유용한 용도가 있을 것이다… 아마…

윈도우 10 이전에 윈도우 8 까지는 마이크로 소프트에서 만든 AppLocale 을 이런 용도로 썼었지만, 윈도우 10 에서는 더이상 AppLocale 이 작동하지 않아서 대체품을 찾다가 발견한 것이 Locale Emulator 다.

다운로드와 설치 방법 등은 여기에 쓰여 있다.
http://xupefei.github.io/Locale-Emulator/

Locale Emulator 설치 및 사용법

  1. 다운 받은 Locale.Emulator.2.0.1.0.zip 파일을 적당한 곳에 압축을 푼다. (압축을 푼 곳에 계속 둬야하니 제대로 된 장소에 풀자)
  2. 폴더 안에 LEInstaller.exe 를 실행한다.

그 후 전체적인 설정을 위해서
폴더 안에 LEGUI.exe 를 실행해서 장소와 시간대를 각각 한국어(한국), 서울로 맞추고 저장하면 된다. (저장해도 아무일 없지만 저장 된거다)

글자가 깨지는 프로그램의 실행 파일에서 마우스 오른쪽 클릭으로 메뉴를 열면 로케일 에뮬레이터 메뉴가 새로 생겨나 있다.
Run in Japanese 이라는 이름(LEGUI.exe에서 바꿀 수 있다)의 메뉴를 클릭하면 아까 설정한 장소의 언어로 프로그램이 실행 된다.

칼무리 in 일본어 윈도우즈 10. 원래 글자가 깨지지만 이제 제대로 한글로 표시 된다!
칼무리 in 일본어 윈도우즈 10.
원래 글자가 깨지지만 이제 제대로 한글로 표시 된다!

실행할 프로그램 위에서 일일이 오른쪽 클릭하기 상당히 귀찮은데 단축 아이콘을 만드는 방법이 있다.
프로그램 위에서 오른쪽 클릭해서 나오는 로케일 에뮬레이터 메뉴에서 ‘프로필로 실행’을 선택하고, 마찬가지로 장소와 시간대를 설정한다. 그 다음이 중요한데 화면 상단에 저장 버튼 옆에 숏컷 버튼을 누르면 바탕화면에 해당 프로그램의 단축 아이콘이 생성 된다. 이 단축 아이콘으로 프로그램을 실행하면 설정한 프로필의 장소와 시간대로 프로그램이 실행 된다.

우분투 서버 14.04 LTS 고정 IP 할당

보통은 집안에 공유기를 사용하고 있을텐데 공유기는 보통 DHCP 라는 동적으로 IP 주소를 할당하는 기능(?)으로 공유기에 물려있는 컴퓨터들에게 IP 주소를 할당해 주고 있다.
이렇게 할당 받은 IP는 컴퓨터가 재시작 되거나 공유기에서 설정된 시간이 지나면 바뀔 수가 있기 때문에, 서버의 IP 주소가 바뀌게 된다. 이 때 새로운 IP 주소를 할당 받게 되면 ssh, ftp, http 등으로 서버 외부에서 접속할 때마다 서버의 IP 주소를 알아내야한다.
하지만, 서버의 IP를 고정으로 할당 받게 되면 항상 같은 IP로 접속이 가능하기 때문에 편리하다.
그렇기에 보통 서버의 IP 주소는 고정으로 설정해 둔다. 이제부터 서버의 IP를 고정으로 설정하는 방법에 대해서 설명한다.

먼저 고정으로 할당 받을 IP 주소를 정해야 한다.
우분투 서버에서 아래 명령으로 현재 할당 받은 IP 주소를 확인한다.

eth0 이라는 것은 이더넷(ethernet) 0번이라는 것으로 랜카드0번을 뜻한다. 만약 서버에 랜카드가 두개 이상이라면 eth1, eth2도 보일 것이다. 이 eth0에 inet addr 뒤에 192.168로 시작되는 주소가 공유기에서 할당 받은 IP 주소이다.
주소 가장 마지막 .(점) 뒤의 숫자를 바꿔서 고정 IP로 정해야 되는데, 집안의 공유기로 접속하는 장치를 생각해서 여유를 두고 잡는게 좋다. 다른 장치, 예를 들어 스마트폰이 서버가 사용할 IP 주소를 선점해 버리게 되면 서버는 IP 주소 충돌로 인해서 인터넷 연결을 사용할 수 없게 된다.

이런 문제를 해결할 수 있는 공유기의 기능이 있는데 ‘DHCP 고정 할당 설정’ 이라던가, ‘수동 IP 할당 설정’ 이라던가 하는 이름으로 존재한다. 이 기능을 사용하면 특정 컴퓨터는 미리 정해둔 IP 주소만을 할당 받게 된다.

공유기에 그런 기능이 어디있는지 모르겠다거나 설정 방법이 너무 어렵다고 하면 그냥 IP 주소를 뒷번호에서 고르면 충돌할 일이 없다. 50번 정도?
위에서 확인한 할당받은 IP 주소가 192.168.1.xxx 라면 192.168.1.50 으로 하자.

우분투 서버 터미널에서 아래 명령으로 IP 주소를 포함한 네트워크 정보를 편집한다.

기본 설정은 아래와 같다.

DHCP 로 IP 주소를 설정 받는다는 내용이다.
고정으로 IP 주소를 설정하기 위해서는 아래와 같이 내용을 바꾼다.

address 에는 고정으로 설정할 IP 주소를 적는다.
gateway는 공유기의 IP 주소를 적는데 보통 해당 IP 주소의 마지막 번호가 1번이 공유기의 주소이다. 공유기 설정 화면을 띄울때 사용하는 IP 주소와 같은 IP 이다.
dns-nameservers도 공유기의 IP 주소를 적으면 된다.
저장하고 편집기를 닫자.

서버를 재기동 한다.

재기동 후에는 SSH 접속 IP 주소가 고정으로 정한 IP 주소로 바뀌어 있으니 주의 할것.

바뀐 IP 주소를 확인

이제 고정된 IP 주소로 SSH 접속이나 FTP, 웹서버 설정을 하면 된다.