태그 보관물: Linux

Virtual Box에 ext4 partition을 직접 mount

Windows용 Virtual Box에서 vdi file이 아닌 HDD의 특정한 영역을 ext4로 직접 mount하는 방법에 대한 설명이다. 오래전에 해본거라 실제로 속도 향상이 있었는지는 기억이 나지 않는다.. 데헷

HDD를 format하지 않으면 windows의 탐색기에서는 표시되지 않지만 Disk Manager에서는 연결된 모든 HDD가 보인다. Virtual Box를 설치한 directory에 보면 vboxmanage.exe라는 실행 파일이 있는데 이것을 이용하면, vdmk file을 생성하고 물리적인 HDD를 virtual box에 mapping할 수 있다.

vboxmanage.exe은 VirtualBox 4.2.10 현재 admin 권한이 있는 CLI로만 동작하기 때문에, Admin 권한으로 명령창을 열고 Virtual Box의 설치 경로로 가서 vboxmanage.exe를 실행시킨다.

-rawdisk의 parameter인 ‘PhysicalDrive’뒤의 숫자는 windows Disk Manager에 나오는 Disk 0, Disk 1 …에 나오는 숫자와 일치한다.

이제 Virtual Box에서 설정을 열고 storage에 지금 생성한 vmdk file을 추가한다.

Booting을 하고 linux에서 fdisk -l 명령어로 확인해 보면 새로운 HDD가 인식된 것이 보인다. fdisk로 새로운 partition을 만들고 ext4 fs를 만든다음 fstab을 수정해서 linux에서 새로운 partition이 인식되도록 해주면 된다.

 

PlantUML war file 설치

그동안 UML을 그려야할 필요가 있을때 StarUML을 써왔는데, Windows만 지원하는 software라는 한계도 있고 해서 얼마 전 부터는 우연히 알게된 PlantUML을 사용하고 있다. 이 software는 마치 LaTex 처럼 text로 UML을 그리기 위한 description을 작성하면 이를 기반해서 UML을 그려준다. 문법도 그다지 어렵지 않고 직관적이어서 사용하기도 쉬운 편이다.

작성한 text를 UML로 그리기 위한 client program들은 여러가지 형태가 지원되는데 보다 자세한 목록은 여기에서  확인할 수 있다. 내가 그동안 사용하던 것은 Chrome extension이었는데 class diagram들이 조금씩 복잡해 지면서  여러개의 file로 쪼갤 필요가 있게 되니 ‘!include‘ directive를 사용할 수 없는 문제가 있었다. 아마도 Chrome이 보안 문제로 extension의 local file 간접 access하는 것을 막은게 아닐까 싶다. 그래서 servlet으로 설치하는 방법을 사용하기로 했다. 이전에 Opengrok을 설치한 적이 있으니 설치 환경은 ubuntu 12.04와 tomcat이 이미 설치된 상태 이다.

  • 필요한 package들의 설치
    : PlantUML servlet을 돌리려면 graphviz package가 필요한데 이것이 설치되어 있지 않으면 다음과 같은 오류가 발생한다. 그리고 war file을 쉽게 deploy하기 위해 tomcat-admin package를 설치했다.
    SC_plantuml_dot_file_not_exists_err

  • PlantUML war file을 download 받기
    : PlantUML download page에서 war file (Java J2EE WAR File)을 download 받는다.
  • Tomcat admin 설정
    : Tomcat admin으로 접속하려면 amdin 계정이 필요하니 만약 계정이 없다면 tomcat-users.xml file을 편집해서 계정을 추가해 준다. 이 파일에는 비밀번호를 평문으로 함께 기록해야 하기는 하지만, root와 tomcat외에는 read permission이 없으므로 다른 계정에 의해 이 파일이 읽히지는 않는다. 계정을 추가해준 이후에는 tomcat server를 재실행한다. 

    $> sudo vi /var/lib/tomcat6/conf/tomcat-users.xml

  • Tomcat admin page로 부터 deploy
    : 모든 준비가 되었으니 tomcat admin page (http://SERVER:8080/manager/html) 에서 war file을 선택하고 deploy한다.

SC_tomcat_admin_deploy_war

  • Service page 접속
    : Web browser에서 service page (http://SERVER:8080/plantuml)로 접속한다.

SC_plantuml_server_page

OpenGrok 설치 빨리 하기

지난번 OpenGrok 설치 관련 포스팅 이후 OpenGrok을 설치할 기회가 몇 번 더 있었는데, Source 경로를 제외한 나머지 설정들을 기본값으로 사용하니 훨씬 설치 하기가 간편했다. 여기에는 source를 제외한 나머지 설정을 기본으로 사용해서 약간의 수정으로 설치 하는 방법을 설명한다.

설치환경

Ubuntu 12.04

필요한 package들

Tomcat등의 필요한 package들을 설치하고 OpenGrok을 download 받아서 압축을 푼다.

OpenGrok 실행 환경 만들기

OpenGrok은 설치 환경이 /var/opengrok directory 아래에 구성되어 있다고 가정한다. 이를 위해 압축을 해제한 OpenGrok file들을 /var/opengrok 으로 옮긴다.

SRC_ROOT 변경하기

/var/opengrok/bin/OpenGrok file을 열어서 SRC_ROOT를 source 들이 있는 곳으로 변경한다. 기본 설정대로 /var/opengrok/src 아래에 source file을 두려면 이 설정은 건너 뛰고 src directory만 만들어 주면 된다.

설치 및 indexing

모든 설정이 끝났으니 deploy하고 indexing을 시작한다.