글쓴이 보관물: litcoder

Dell XPS 13에 Ubuntu 12.04.2 설치

Dell XPS13 (사양)

– 13 inch screen (1080p resolution)
– Intel i7
– 8GB RAM
– 256GB SDD
– No ODDs
– No ethernet adapters

고가(!)에 구매한 XPS 13이 2주간의 느릿느릿한 과정을 거처 드디어 도착했다. 2007년판 맥북 이후 이녀석을 택한 것은 업무상 linux를 사용한 필요가 있다보니 linux를 설치해서 사용하는데 문제가 없는 노트북을 찾아 다녔기 때문이다. Dell XSP는 ubuntu가 설치된 developer edition을 판매한 적도 있거니와 이 하드웨어에서 ububtu지원하기 위한 Sputunik project도 있어서 ubuntu와 잘 맞지 않을까 하고 추측했다.

원래 설치되어 있었던 Windows를 밀어 버리고 Sputunik이 아닌 공식 ubuntu 12.04.2를 설치해서 사용한지 2주 정도가 조금 넘었는데 특별한 문제 없이 잘 동작하고 있다. 특히 작은 크기에도 불구하고 구겨 넣은 1080p의 높은 해상도가 가장 마음에 든다. 가볍고 작고 잘보이고.. 🙂

ODD가 없어서 USB로 설치해야 하는데 USB를 설치 미디어로 만드는 것은 이 문서를 보고 따라 했지만 막상 꽂고 부팅을 시켜보니 설치 프로그램으로 진입하질 못하는 문제가 있었다.

여러곳을 돌아다닌 끝에 이녀석은 왼쪽에 있는 USB 포트를 써야 booting media로 인식된다는 점과 최근 컴퓨터들에 포함되는 UEFI 관련한 설정을 해주어야 한다는 사실을 알게 되었다.

처음 booting 화면에서 F2 key를 눌러서 나오는 BIOS setting  화면에 Boot menu가 있다. 여기에 Booting List를 Legacy로 표기할 것인지 UEFI로 표시할 것인지를 선택하는 곳이 있는데 UEFI를 선택하면 새로운 menu를 추가할 수 있다.

왼쪽에 USB stick을 연결하고 이 메뉴에 진입해서  다음과 같이 입력한다.

Name: USB Storage Device (또는 아무거나)
Device: /xxxxxx USB (USB stick을 연결할 상태에서 나오는 첫번째 메뉴)
File: /efi/boot/bootx64.efi

그리고 boot sequence를 조절해서 USB Storage를 가장 먼저 읽도록 순서를 변경하고 reboot 하면 grub 화면 같은게 뜨면서 설치 메뉴로 진입할 수 있다.

 

OpenGrok 설치 빨리 하기

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

2017년 12월 13일 : Ubuntu16.04 LTS를 기준으로 수정함.

설치환경

Ubuntu 16.04 LTS

필요한 package들

$ sudo apt-get install tomcat8 tomcat8-admin exuberant-ctags
$ sudo service tomcat8 start

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

$ wget http://3.1.85.226/wp-content/uploads/2013/04/opengrok-0.11.1.tar.gz
$ tar xvzf opengrok-0.11.1.tar.gz

 

OpenGrok 실행 환경 만들기

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

$ sudo mv ./opengrok-0.11.1 /var/opengrok

Source file 복사

분석하고자 하는 소스 파일을 /var/opengrok/src 아래로 복사한다.

Deploy 및 indexing

모든 설정이 끝났으니 deploy하고 indexing을 시작한다. Oepngrok-0.11.1은 tomcat6를 가정하므로 tomcat8의 위치를 가리키도록 OPENGROK_TOMCAT_BASE를 지정한다.

$ sudo OPENGROK_TOMCAT_BASE=/var/lib/tomcat8 /var/opengrok/bin/OpenGrok deploy
$ /var/opengrok/bin/OpenGrok index

 

Bare git으로 부터 source code 복사하기

Android에 기반한 project를 repo로 mirror로 만들때는 –mirror option을 주어서 bare git을 만든다(지난 posting 참조). 만약 이렇게 만들어진 bare repository로 부터 일반적인 형태의 source repository를 생성하려 한다면 어떻게 해야 할까? 이 posting에서는 git-daemon등을 설치 하지 않고 local에 있는 bare git으로 부터 source 구조를 만들어 내는 방법을 설명한다.

Repo Init

$ repo init help
Usage: repo init -u url [options]

repo init 명령을 수행할 때 -u 뒤에 url을 적어준다. 일반적으로 이 부분에 ‘git://’이나 ‘ssh://’ protocol로 시작하는 주소를 적지만 우리가 하려는 것은 file 복사 이므로 ‘file://’을 적어서 repo init을 수행한다.

$ repo init -u file://PATH_TO_MIRROR -b BRANCH -m MANIFEST_XML

놀랍게도(!) init이 수행되면서 .repo directory가 생성된다.

Fetch Address 수정

.repo/manifests에서 fetch address를 가지고 있는 xml file을 찾아서 접근 address를 file경로로 수정한다.

  <!-- 
  <remote name="REMOTE_NAME" fetch="ssh://SERVER_IP" review="REVIEW_ADDRESS:8080"/> 
  -->
  <remote name="REMOTE_NAME" fetch="file://<path_to_mirror>/" review="REVIEW_ADDRESS:8080"/>

init이 완료 되고 난 후에는 일반적인 것과 같이 repo sync 명령어를 수행하면 된다. file://로 수정한 xml file들을 원래 상태로 되돌리는 건 다들 아실테고 … 😉