출처 - Sakai Project : Documentation

Developing for Sakai, Part I: Getting Started (Z. Thomas, Aeroplane Software)

Get Sakai up and running quickly as you follow this step-by-step guide. Technologies covered include Java, Subversion (source control), Maven (compilation, build and deployment) and Tomcat (servlet container).

Developing for Sakai, Part II, Setting Up Eclipse (Z. Thomas, Aeroplane Software)

Zach Thomas provides another step-by-step introduction to Sakai development, this time focusing on the open-source Eclipse IDE, the development platform of choice for Sakai developers.

Developing for Sakai part III: App Builder Plugin (Z. Thomas, Aeroplane Software)

Zach discusses how to install and utilize Aaron Zeckoski's Sakai App Builder plugin for Eclipse.

Eclipse 101 - Basics, Tips & Tricks (L. Speelmon, Indiana University)

Builds on Zach Thomas' introductory screencasts by providing additional best practices when using the Eclipse IDE for Sakai development.

여기에 있는 Screencast들은 Sakai Project를 시작할때 어떻게 개발환경을 셋팅하는지를 보여준다.

JAVA SE, Maven, Tomcat, Eclipse등의 개발환경 셋팅이 정말 중요하다는 것을 느껴줍니다.

맥에서 셋팅하던데, 맥을 쓰고 싶은 욕구가 증가하는 단점도 있다.

Buy me a coffeeBuy me a coffee

네이버에서 pe.kr 도메인을 선착순 50,000명에게 무료로 준다는 판촉행사를 하는군요.


네이버에서 pe.kr 도메인을 무료로 드린다고 하네요.[링크]

한국인터넷진흥원의 도움을 받아 pe.kr도메인을 선착순 50,000분에게 2년간 무료로 사용할 수 있는 기회를 준비하였습니다.

지금 바로 신청해서 블로그나 카페, 홈페이지 등의 주소를 내가 정한 도메인으로 연결해 보세요.

신청기간 | 2008년 12월 11일 ~ 12월 31일

참고로 네이버 ID가 있어야 신청가능합니다. 그러나 신청한 도메인은 네이버 블로그나 카페등에 사용하지 않아도 된다고 하더군요.

저는 studioego.pe.kr를 샀습니다. 이 도메인은 어디에 쓸까 고민중 ㅎㅎ (Google Apps로 studioego.info가 연결되었기 때문에 MS사의 Windows Live 관리 센터에 연결할 생각을 함)

ps. Google Chrome으로 네이버 도메인 판촉행사 홈페이지로 들어가면 화면이 약간 미묘하게 깨집니다. -_-;;

ps2. NHN에서 이제는 Firefox사용자도 고려하여 Firefox에서는 화면이 안깨집니다.


ps3. 네이버 웬일이니? 위기의식을 느낀건가?

Buy me a coffeeBuy me a coffee

2008년 12월 9일자 부로 SK컴즈에서 엠파스가 내년 3월에 사라진다는 발표를 하였다.

SK커뮤니케이션즈(이하 SK컴즈)는 9일 엠파스와 네이트닷컴을 통합시켜 미래 인터넷 시장을 공략할 컨버전스포털을 오픈할 예정이라고 밝혔다.

내년 3월 오픈 예정인 신규 포털의 브랜드는 '네이트'가 될 예정으로, 기존 네이트닷컴의 '닷컴'을 브랜드명에서 제외함으로써 유무선 경계없는 서비스를 강조했다.

통합된 네이트는 엠파스의 기존 서비스를 토대로 다양한 새로운 검색 서비스를 선보일 계획이다.

한 시대를 풍미한 국내의 검색엔진이 사라지는 것이 아쉽습니다.

중학교때 "야후!에서 못찾으면 엠파스"라는 모토로 야후대신에 엠파스를 쓴지 얼마되지도 않았는데 그 엠파스가 2009년 3월에 사라진다니 아쉽기만 합니다.
국내 최초 자연어 검색이라고 해서 중학교때 과제를 하다 야후!에서 자료 못찾다가 엠파스에서 문장으로 검색하여 찾았을때의 기쁨도 이제는 사라지겠군요.

2006년도에 SK커뮤니케이션스에 인수될때 설마 사라질 것인가라고 생각도 했었는데, 내년 3월달인 2009년 3월에 사라진다니 너무나 아쉽습니다.

라이코스코리아를 사라지게한 SK컴즈가 이제는 엠파스도 사라지게 하니 뭔가 씁씁하다 할까요?

SK커뮤니케이션스는 이러모로 많은 기록이 있는 것 같습니다.
예전에는 넷츠고, 라이코스, 이제는 엠파스 ......
잘 나가던 서비스들이 SK컴즈에 인수되더니 모두들 흔적도 없이 사라지는 것 같아서요 ㅠㅠ
이러다 이글루스도 넷츠고, 라이코스, 엠파스의 전철을 밟을까봐 걱정되더군요.


굿바이, 엠파스~(Good bye, empas)
아래는 2008년 12월 10일에 캡쳐한 엠파스 초기화면입니다.
이 초기화면을 볼날이 얼마 남지 않았더군요.


Buy me a coffeeBuy me a coffee

정말 오랜만에 JAVA를 만지게 되었다.

학과에서는 커리큘럼을 시스템쪽으로 공부하도록 맞춰져있기 때문에 항상 C아님 OOP를 쓴다면 꼭 C++를 사용하도록 해서 프로그래밍 하는데 재미가 하나도 없었다.

그러나 한 줄기 빛이 있었나니. 재수강하는 기초데이터베이스 과목 조교님께서 JAVA로 DB응용프로그램을 짜라고 하셨다.

얼씨구나 좋구나. 내가 왜 좋아 하는 이유는 한가지, JAVA를 사용하기 때문이다.

대학교 1학년 여름방학때, 회사서 아르바이트를 하면서 처음 JAVA를 접하면서 인터넷, 웹에 대해 관심을 많이 가지게 되었고, JAVA로 DB프로그램을 짜 본경험이 있었기 때문이다.

작년 기초데이터베이스 과목 들었을때에는 교수님께서 이상하게 과제를 내셔서 웹서버도 만들고 CGI형식으로 직접하게 하고 임베디드 SQL인 ORACLE PRO*C와 C++을 사용하면서 과제를 내주셨기때문에 과제 하는데 온갖 갖은 노력을 해도, 시간이 부족해서 대충 내고 말았던 기억이 있었다. (팀프로젝트였고 두사람이 해야했지만 한 사람이 C++코딩을 전혀 못하는 젬병이라 내 혼자 하다가 제풀에 넘어갔음. OS과제하느라 DB과제 신경 못쓴것도 있지만.)

(임베디드 SQL로 C++과 연동해서 프로그램 짜라면 쉽게 짤수 있다. 그러나 과제 낼때 웹으로 해야한다고 해서 C++에 CGI를 직접 그때 알아서 구현하라고 해서 임베디드 SQL내용은 별로 없었고 CGI를 직접 구현하는 실제로 쓸모없는 코드양들이 많다는 단점이 있다.)

JAVA로 하면 임베디드 SQL 없이 그냥 JAVA에서 제공하는 SQL관련 메소드를 이용해서 과제를 하면 되니 속이 엄청나게 편하다. 거기에 인터넷관련 메소드 사용 없이 콘솔로 보여주기만 하면 끝이니, 이번학기 과제는 날로 먹는 것 같은 느낌까지 난다. (3일만에 놀면서 다 짰다.)

JAVA에는 Eclipse가 궁합이라는 것을 과제를 해보면서 뼈져리게 느낀다. Eclipse가 아니였다면 몇일 삽일 할 내용을 빨리 제거도 해주니 IDE의 덕도 많이 보고 있구나.

JAVA 코딩에는 Eclipse로 코딩해야지 편하다는 사실. (Sakai Project도 Eclipse를 써야지 이해 되는 것들이 많다.)

ps1. 오랜만에 Eclipse로 JAVA코딩하는 것이 편하다는 사실을 다시 깨닫고 있습니다. IDE는 좋은 것 써야한다는 결론! 이클립스가 좋아요라는 뻘글을 쓰려고 이런 글 올리나 *-_-*
ps2. 학과에선 C/C++만 강조하지만, 지도교수님이 시키는 일로 요즘 JAVA코딩을 하고 있습니다.

Buy me a coffeeBuy me a coffee

이 글은 제 9회 삼성 소프트웨어 멤버십 공개 세미나에서 보았던 것에서 떠올린 생각들을 끄적 거렸습니다.

홍익대학교에서 설명회를 하였던 11월 25일 화요일 제 9회 삼성 소프트웨어 멤버십 공개 세미나


여기서 멀티미디어 정보검색기술에 대한 세미나를 듣게 되었습니다. 도대체 어떤 내용인지를 알고 싶어서 들어보았는데, 저에게 충격을 준 동영상을 틀어주더군요.

위의 동영상은 midomi에서 아이폰에서 음악 검색을 정확하게 해주는 것을 홍보하는 동영상인데 멀티미디어 정보검색기술을 설명하기 위해서 이 동영상을 세미나 도중에 틀어주게 되었습니다.

음성인식기술이 이렇게 발전했다는 것이 대단하게 느껴졌습니다. 흥얼흥얼 거리는 노래가 내가 모른다면 아이폰으로 검색하면 다 나오는 시대가 되었다는 것입니다.

Midomi.com 에 보시면 자세한 내용을 보실 수 있답니다.

Midomi mobile : the ultimate music search and discovery 

With midomi, you can search for music in FOUR different ways. 

- SING: just sing or hum a few seconds of a song, and midomi will find it!

- GRAB: hold your phone to a speaker playing original music for a few seconds, and midomi will identify what's playing!

- SAY: it's easier than typing. Just say the song or artist name you're looking for, and midomi will find it!

- TYPE: The old fashioned way to search, but no need to spell it right. Just type a song or artist name the way it sounds, and midomi will find it! 

Once you find a song, see the YouTube video, or buy it from iTunes. You can also see artist photos, albums, and biographies, even browse midomi.com user profiles, see their pictures, listen to their recordings, and lots of other cool things.

인터넷의 발전으로 누가(Who), 언제(When), 어디서(Where), 무엇을(What), 어떻게(How), 왜(Why) 정보를 만들었는지 알기 위해서 검색이 필요하게 되었습니다.
인터넷에서 폭발적으로 늘어나는 정보들을 찾기위하여 정보를 검색하기에 이릅니다.
이를 테면 Yahoo!Google과 같은 정보검색엔진들이 나타났다는 것이죠.

이런 인터넷에 있는 정보들을 찾으려면 정보검색(Information Retrieval)을 해야 하지요.
정보검색에 대해서는 아래의 Database Management System 3rd Edition Chapter 27: Information Retrieval and XML Data Management 를 참고해보시기 바랍니다.
책을 보기 힘드신 분께서는 아래의 Slide를 참고해보시기 바랍니다.

위의 Slide나 책을 보면 DBMS와 Information Retrieval의 비교가 나온다. 

 IR(Information Retrieval)

DBMS 

 주관적인 의미검색 (Imprecise Semantics)  정확한 의미검색 (Precise Semantics)
 단어 검색 (Keyword Search) SQL Query문에 의한 검색 
 비구조화 데이터 포맷으로 구성됨 (Unstructured Data Format) 구조화된 데이터 (Structured Data)
 대개 읽기를 함. 때때로 문서들을 추가함.(Read-Mostly. Add docs occasionally) 많은 수의 문서들이 수정,삭제, 추가등의 작업을 함. (Expect reasonable number of updates)
 결과중 최고 몇개만을 보여줌. (Page through top k results)  SQL Query문의 결과를 모두 보여줌 (Generate full answer)


DBMS가 단순히 정보를 저장하고 쿼리(Query)문을 주면 쿼리문에 만족하는 정보를 모두 알려주지만, IR은 keyword를 주면 그 keyword들이 어디있는지를 저장한 Inverted File(역파일)에 있는 내용을 찾아내어 어디 있는지를 저장한 곳을 알려주는 차이점이 있습니다. IR는 참고로 정보를 추출하는데에 주관적으로 검색하기 때문에 정확한 검색이라는 것을 하긴 어렵습니다.

문서를 검색하는데에 Inverted File을 만들어서 관리하는 IR의 개념만 알고 있던 저에게 삼성소프트웨어멤버십 공개세미나에서 보여준 멀티미디어 정보검색은 저에게 충격자체였습니다.

멀티미디어인 소리, 사진을 검색하는 것을 웹문서에 그림과 같이 붙어있는 글자로 검색하여 찾는 것만 아니라 실제로 소리, 사진을 비교하여 검색 결과를 보여주는 것을 눈으로 보여줬기 때문입니다.

소리를 들려주고 검색하여 음악의 정보를 알려주는 midomi의 검색이나 삼성소프트웨어멤버십분이 보여준 음악검색을 보니 정말 신기하기 그지 없습니다.

멀티미디어 정보를 검색하려면 그 멀티미디어 파일을 알고 파일 접근하여 파일안의 내용을 인식하는 기술이 필요하지요. 그런데 멀티미디어 정보를 검색하는 것은 단순히 문자를 검색하는 것과 달라서 이런 위의 컴퓨터공학에서 처리하는 단어처리, 문서처리, DBMS, IR(Information Retrieval)내용뿐만 아니라 전자공학에서 배우는 신호처리, 이미지처리등을 알아야 검색을 할수 있더군요.

현재에도 웹의 발전으로 인하여 멀티미디어 정보들이 쏟아지는데, 미래에는 멀티미디어 정보검색이 필요할 것으로 예상됩니다. 현재의 정보검색이 Text기반으로 하여 이미지, 음악, 동영상 검색도 Text기반이라 Text에 달려 있는 것만 검색되어 검색 품질이 생각보다 낮습니다. 이런 Text기반의 검색은 원하는 결과를 찾기는 힘들 수 있습니다. 미래에는 멀티미디어파일을 직접 찾아서 검색하여 원하는 결과를 보여주는 검색엔진이 나올까 이런 생각도 해봅니다.

Text 문서를 찾는 정보검색은 이미 Google의 Page Rank 알고리즘으로 대개 원하는 검색 품질을 얻게 되었지만, 지금까지는 멀티미디어 정보검색은 완성단계에 오진 않았습니다. 그렇다만 미래에는 멀티미디어 정보검색을 하면 어떤 알고리즘, 어떤 신호처리, 이미지처리프로세스를 거쳐서 원하는 검색품질이 나오게 될 것 같은 생각을 해봅니다.

현재, Google의 Google Audio Indexing (GAudi)에서는 동영상에서 말하는 단어를 찾는 검색을 보여주고, 네이버얼굴사진검색, Midomi에서 보여주는 흥얼거리면 음악검색을 해주는 것에서 멀티미디어 정보검색을 시도하려는 노력을 하고 있습니다. 미래에는 나열한 것보다 훨씬 진일보적인 멀티미디어검색들이 많이 나오겠죠?

멀티미디어 정보검색에 대해 많은 생각을 해보게 되었습니다. 단순히 컴퓨터공학만 아니라 전자공학의 내용도 알아야 접근할 수 있는 내용들이 너무너무나 많더군요. 

임베디드, 모바일쪽만 아니라 인터넷에서 컴퓨터공학과 전자공학이 이렇게 만날수 있다는 것을 알게 되었습니다.

대학 4년동안 컴퓨터공학을 전공하였어도 컴퓨터공학 내용을 전부 이해하지도 못하고 졸업하는 사람에게 전자공학적인 내용까지 알려준 멀티미디어 정보검색 세미나를 들으면서 아직도 공부할 것이 많다는 것을 느끼게 하였습니다.

Buy me a coffeeBuy me a coffee
Planet Sakai

Over one-third of the top 100 universities in the world participate in Sakai, providing a system now in use at over 160 other universities, colleges, and schools.


이번 대학원에 들어가기 전에 지도교수님께서 한번 연구해보라고 던져주신 Open Source Project인 Sakai Project에 대해 뚫어지게 공부를 하고 있다.

국내에서 Sakai project에 대해 관심을 가진 동네는 배재대학교 밖에 없더군요. 석사 졸업하기 전까지 Sakai Project쪽에 많은 기여를 할 예정입니다.

Sakai Project라는 것은 2월달에 처음 알게 된 오픈소스 프로그램인데, JAVA기반의 교육 환경 프로그램이라고 생각하면 된다.

'컴퓨터 > Sakaiproject' 카테고리의 다른 글

Sakai Overview: Michael Korcuska  (0) 2009.01.04
JAVA개발에 관련 서적들  (0) 2008.12.25
Sakai Developer screencasts  (0) 2008.12.12
Buy me a coffeeBuy me a coffee
오래간만에 Uniccard에서 유니크카드를 주문을 하려고 홈페이지에 들어갔다.
이 것이 바로 유니크카드

여기서 Ruby on Rails(RoR)을 처음 접하게 되었던 유니크카드 홈페이지에서 주문을 하려고 로그인을 하였다.
그런데 뭥미?

로그인이 안된다. -_-;;
여기는 오픈아이디(OpenID)로만 로그인 할수 있는데 로그인이 안되니 황당.
로그인을 하는데에 IDtail.com 사이트까지 잘 도착을 하여 로그인 패스워드를 치면 넘어가면서 유니크 카드에 들어가야 하는데 안들어가지더군요.
Ruby on Rails로 만들어진 유니크카드에서 로그인이 안된다는 것은 엄청나게 치명적인 것인데, 로그인이 안되니깐 거의 머리가 미칠정도였습니다. (유니크카드를 모두 소비해서 100장 주문하려고 했더니 이게 로그인 불가?)
RoR에서 사용하는 OpenID library 소개에서 문제가 있는지도 궁금하였음.
하지만 어찌어찌 하다 로그인은 하게 되었습니다.
아래 화면에 있는 사이트에 들어가야만 로그인이 됩니다.

제가 보았을때에는 RoR OpenID library에 뭔가 이상이 있는 것 같습니다.


제가 다른 아이디로 사용해보았는데 다른 아이디는 다 되더군요. 근데 특정 아이디가 로그인 안되는 문제점이 -_-;;

Ruby on Rails소스코드 내부의 문제 같은데 이거 구글링하니깐 이런 문제에 대한 글이 없더군요 ㅠㅠ

Buy me a coffeeBuy me a coffee
혹시나 Windows 원격 접속을 해 보신 적이 있나요?

MicroSoft사의 WindowsXP에서는 Windows 원격 데스크탑 접속을 할 수 있습니다. 서버로 사용하는 컴퓨터에 원격 접속 설정을 하면 학교 연구실에 있는 컴퓨터를 계속 켜고 퇴근한 후에 집에서 노트북으로 학교 연구실 컴퓨터에 접속해서 원격으로 작업을 할 수 있는 장점이 있습니다.
원격 데스크톱 연결

Window에서는 원격으로 Windows를 연결하여 원격 작업을 할 수 있습니다.


그렇다만 Linux 컴퓨터는 Xwindow가 설치되어 있는데 Windows에서 Linux컴퓨터의 Xwindow를 원격으로 실행 시킬까요?

여러가지 방법 중에서 VNC를 사용하는 방법이 있지만, VNC demon을 실행시키지 않으면 Windows에서 Linux컴퓨터의 Xwindow 실행시킬수 없습니다.
여기서는 Windows에서 Xming을 설치한 다음 Xming을 이용하여 쉽게 Linux컴퓨터의 Xwindow를 원격으로 실행하는 방법을 알려드리겠습니다.

※ Xming이란?
Wikipedia : Xming
배포사이트 : http://www.straightrunning.com/XmingNotes/
Xming는 Windows용 X Server입니다.
Microsoft사의 Windows에서 Xwindow용 프로그램을 출력할 수 있도록 해주는 화면 출력 서버입니다.
Microsoft사의 Windows에서 Linux 컴퓨터안의 X Window 프로그램을 화면에 출력할 수 있는 서버인 Xming을 설치하면 리눅스 프로그램도 Microsoft사의 Windows에서 실행 할 수 있습니다.
Windows에서 리눅스 프로그램을 실행하는 것처럼 보이지만, 실제 실행은 리눅스 컴퓨터에서 하고, 다만 X Server는 프로그램에서 전송하는 화면을 출력하고, 사용자의 키보드나 마우스와 같은 입력을 프로그램 쪽으로 전송해 주는 역할을 합니다.

Xming 설치 및 실행

  1. http://sourceforge.net/projects/xming
  2. Xming 설치.
  3. Xming-fonts 설치.
여기서 Test한 환경은
Windows XP와 CentOS 5입니다.

1. 우선 XLaunch를 띄웁니다.
2. Display settings에서 One window without titlebar를 선택합니다.

3. 데스크탑에서 Xwindow를 실행시킬려면 Start a program을 선택합니다.

4. 여기서 Xwindow환경을 실행할때에 Gnome를 실행하려면 Start Program에서 gnome-session을 넣고 KDE를 실행하려면 startkde를 넣으시면 됩니다.
원격접속할때에는 Run Remote에서 Using Putty를 선택하여 IP와 ID, Password를 넣으시면 됩니다.

5. Clipboard를 원격접속하는 곳에서 쓸려면 선택합니다.

6. 이제 셋팅이 끝났습니다.

결과 화면


ps1. Xmanager같은 비싼 프로그램이 한글지원도 편하게 되어서 사용하기에 좋긴 하지만, 학생이고 오픈소스로 공개된 Xming을 오픈소스 프로그램인 iPutty에 연결해 씁니다. 있을 것은 다 있는 오픈소스 프로그램들이라서 굳이 불법으로 쓸 필요는 없으니깐요.
ps2. Xming때문에 학교 안나오고 집에서 작업 한 후에 교수님에게 작업한 결과물을 보여주면서 학교는 나왔습니다 하면서 땡땡이 칠 수 있는 장점도 있습니다!
Buy me a coffeeBuy me a coffee
Windows에서는 Google Desktop을 설치를 하면 Gadget도 사용할 수 있지만, Linux에서는 Google Desktop을 설치하면 Google Desktop만 설치됩니다. Gadget은 설치가 안되죠.

이번에 연구실에 있는 CentOS에서 Google Gadget을 설치하기로 결심했습니다. Windows에 사용하는 것 처럼 Linux에서도 사용해보고 싶어서였죠.
그래서 Google에서 Beta로 제공하는 googld-gadgets-for-linux를 설치하게 되었습니다!!!
웹사이트 : http://code.google.com/p/google-gadgets-for-linux/
Google Gadget for linux Homepage

Google Gadget for linux Homepage (http://code.google.com/p/google-gadgets-for-linux/)


저도 Windows에서 쓰는 것 같이 Google Desktop Gadget을 사용하려고 삽질을 이룩하게 되었습니다.

우선 다운로드 받은 다음 /usr/local 폴더에 가서 압축을 풀고 컴파일을 하려고 했습니다.
컴파일 하기 전에 어떻게 빌드할 것인가를 참고해보고 빌드를 합니다.
(HOW TO BUILD http://code.google.com/p/google-gadgets-for-linux/wiki/HowToBuild )
위의 링크대로 설치하려고할때에는 CentOS에서 없는 것들이 나옵니다. ㅠㅠ
선수로 설치해야하는 패키지 중에서
Pre-requirements
You need install following packages in order to prepare and build the source code.
    * autoconf >= 2.50
    * automake >= 1.9
    * libtool >= 1.5.20

This project also depends on the following libraries:
    * SpiderMonkey >= 1.60
    * libcurl >= 7.15.0, openssl backend is required
    * libxml2 >= 2.6.0
    * zlib >= 1.2.0
    * xulrunner-dev >= 1.8
    * D-Bus >= 1.0.2
    * gstreamer and gstreamer-plugin-base >= 0.10.0

You can choose from the two toolkits: GTK or QT. If you choose GTK, this project also depends on the following libraries:
    * cairo >= 1.0.0, 1.2.0 or above is better.
    * gtk >= 2.8.0, 2.10.0 or above is better.

If you choose QT, the project also depends on the following libraries:
    * Qt and QtWebKit >= 4.3, (it's optional, and 4.4 is better).

These packages are included in most modern Linux distributions, you can install them using software management application provided by the distribution.

CentOS에서는 SpiderMonkey가 없습니다 ㅡ,.ㅡ
우선 설치한다고 configure를 실행시켰더니 아래의 메시지가 나오면서 설치를 하기에 껄끄러운 상황까지 옵니다.
[root@localhost google-gadgets-for-linux-0.10.2]# ./configure --prefix=/usr --disable-qt-host --enable-debug
Build options:
  Version                       "0.10.2"
  Install prefix                /usr
  Install included libltdl      yes
  Build shared libs             yes
  Build static libs             yes
  Enable debug                  no
  Host type                     linux
  OEM brand

 Libraries:
  GTK SVG Support               no
  Build libggadget-gtk          yes
  Build libggadget-qt           no
  Build libggadget-dbus         yes

 Extensions:
  Build dbus-script-class       yes
  Build gtk-edit-element        yes
  Build gtkmoz-browser-element  no
  Build qtwebkit-browser        no
  Build gst-audio-framework     yes
  Build gst-video-element       yes
  Build gtk-system-framework    yes
  Build qt-system-framework     no
  Build linux-system-framework  yes
  Build smjs-script-runtime     no
  Build qt-script-runtime       no
  Build curl-xml-http-request   yes
  Build qt-xml-http-request     no
  Build libxml2-xml-parser      yes

 Hosts:
  Build gtk host                no
  Build qt host                 no

configure: WARNING: Neither gtk host nor qt host will be built !!!
              Nothing can be used to run Google Gadgets for Linux.
어쩌라고? -_-;;

Hosts가 설정안되는 위 문제는 js, js-devel, nspr, nspr-devel패키지를 설치하면 됩니다.
설치를 하면 문제없이 컴파일을 할 수 있는 상태가 됩니다.
[root@localhost google-gadgets-for-linux-0.10.2]# ./configure --prefix=/usr --disable-qt-host --enable-debug
Build options:
  Version                       "0.10.2"
  Install prefix                /usr/local
  Install included libltdl      yes
  Build shared libs             yes
  Build static libs             yes
  Enable debug                  no
  Host type                     linux
  OEM brand

 Libraries:
  GTK SVG Support               no
  Build libggadget-gtk          yes
  Build libggadget-qt           no
  Build libggadget-dbus         yes

 Extensions:
  Build dbus-script-class       yes
  Build gtk-edit-element        yes
  Build gtkmoz-browser-element  no
  Build qtwebkit-browser        no
  Build gst-audio-framework     yes
  Build gst-video-element       yes
  Build gtk-system-framework    yes
  Build qt-system-framework     no
  Build linux-system-framework  yes
  Build smjs-script-runtime     yes
  Build qt-script-runtime       no
  Build curl-xml-http-request   yes
  Build qt-xml-http-request     no
  Build libxml2-xml-parser      yes

 Hosts:
  Build gtk host                yes
  Build qt host                 no

[root@localhost google-gadgets-for-linux-0.10.2]#

그리고 나서 아래와 같은 명령어를 치고 나서 컴파일을 합니다.
[root@localhost google-gadgets-for-linux-0.10.2]# make
[root@localhost google-gadgets-for-linux-0.10.2]# make install
컴파일하는 지루한 시간에는 딴 짓을 해도 좋습니다 ^^

그리고 나서 ggl-gtk를 실행시킵니다.
드디어 띄운 결과 화면!!
Google Gadget for linux setting

CentOS에서 드디어 설치한 Google Gadget실행화면입니다.


컴파일에러나오는 것 수정하느라 미치는 줄 알았죠.
Ubuntu에서 apt-get으로 패키지 설치하다, 오랜만에 컴파일 해서 설치하니깐 재미는 있는데 삽질을 해버렸습니다.

드디어 연구실에 설치한 CentOS로 Google Gadget을 맛보게 되어서 기쁩니다.
Buy me a coffeeBuy me a coffee
예전, 2006년 5월경. 2006년 1월초부터 모 조직의 Linux서버를 갑자기 맡고나서 안정적으로 운영을 한답시고 공부를 하다가, 갑자기 서버에 이상이 생길듯한 징후들이 보였습니다.

어떤 징후였나면파일이 갑작스럽게 접근이 안되는 것도 있었고, 시스템이 갑자기 느려지고 등의 문제가 있었습니다.
그 당시에는 혼자만 쓰던 Linux가 아니라 여러 사람들이 쓰는 Linux서버를 처음 맡게 되어서 어떻게 해결할지도 걱정되었지요. 그때에 하드디스크 부족해서 N모사 다니시는 90학번 선배님이신 클랴님 친구분께 하드디스크를 얻어서 공간 확보하느라 정신 없을 시기였습니다.

그러다 2006년 8월달. 모 조직의 Linux서버가 있는 학교 컴퓨터실에 공사를 한다고 정전이 되어버렸습니다.

정전이 난 후에 다시 컴퓨터를 켜보니 뭥미? 컴퓨터 부팅이 안되는 것이였습니다. 
아래와 같은 메시지가 뜨고나서 좌절을 했지요.

*** An error occurred during the file system check.
*** Dropping your to a shell : the system whill reboot
*** when you leave the shell.
Give root passwd for maintenance
(or type Control-D for normal startup) :
이걸 알아보니, 갑작스런 정전 또는 비정상적인 시스템 종료등으로 인해 마운트되어 있던 파일 시스템이 정상적으로 언마운트 되지 않아 파일 시스템에 이상이 생기게 되면 부팅시 자동으로 파일 시스템을 복구하는 유틸리티에 의해서 복구가 되는데 파일시스템 손상정도가 심해서 자동으로 복구가 되지 않아서 이런 메시지가 나오는 것임.
파일 접근이 안되고, 파일이 안읽혀지는 등의 문제였죠.

그래서 부랴부랴 하드디스크 복구 시도를 했다만...
exec of init(/sbin/init) failed!!! : No such file or directory
Kernel panic - not syncing : Attemped to kill init!
이것때문에 하드디스크 새로 구해서 다시 설치하는 삽질을 했습니다.

이후로도 하드디스크문제때문에 2006년 내내 골치를 썩혔죠.
모 조직 Linux서버의 문제점은 하드디스크의 내구연한을 충분히 넘겼는데도 그대로 사용하여, 후임인 저에게 골탕먹이는 짓을 했다죠. 하드디스크가 3개 있었는데 다들 4년을 넘게 쓰던 것이라서 자료의 안전성이 걱정이 되었죠.

2007년도에 제 돈 쓰고 자료들을 옮겨서 자료 손실은 없는 것이 다행.

2006~2007년도에 Linux에서 하드디스크 문제로 나오는 Error들을 너무나 많이 보아서 눈 감고도 문제를 풀 정도가 되었습니다.

2007년 10월달이였나? 이때에는 Linux서버가 해킹되는 문제가 생겼습니다.
KT에서 전화가 와서 
그래서 여기서는 문제를 발견 못했다 irc데몬이 돌아간다는 것에 경악하여 서버 다시 설치 -_-;; 여기서는 서버 에러를 못알아먹을 수 있구나와 해킹이 쉽게 되는 것을 알게 되었죠.

2008년 7월 방학때.
연구실에 들어가서 2008년 2월부터 Linux서버 두대를 운영하게 되었습니다. 하나는 연구실 연구용 서버, 또 다른 하나는 교수님이 연구및강의용으로 사용하는 서버였죠. 둘다 Fedora Core 7 (x86_64)를 쓰게 되었습니다.
어느날 Linux(Fedora Core 8 x86_64)에 Sakai Project를 돌리면서 yum으로 update를 하였습니다. 
(※ 참고로 Fedora Core 7에서 8로는 5월달에 업그레이드 하였습니다.

제가 쓰고 있는 연구용 컴퓨터의 램이 1Gb라서  Sakai Project와 동시에 yum으로 update를 하다가 메모리를 다 쓰고 스왑까지 다써서 접속 자체도 안되고등의 메모리 부족 에러가 생겼다.
Sakai Project는 메인 메모리를 1G가까이 사용되는 대규모 Project이라서 tomcat를 쓰는데에 메모리 할당을 엄청 많이 해버렸지.
yum으로 업그레이드 하는데에도 실행을 해야하니 메모리를 많이 사용해야하니 컴퓨터에 메모리 부족에러 뜨면서 제대로 작동이 되지 않는 문제가 생겼 ㅠㅠ
Cannot allocate memory
Out of Memory: Kill process 
위 문제때문에 Fedora Core를 버리고 CentOS로 전향하게 되었고, 교수님과 쇼부를 쳐서 램 1G더 마련해서 위의 문제가 없게 만들었습니다.

그리고 그래픽카드 문제도 생겨서 용산서 수리까지 하였음. -_-;; 그래픽 카드는 Kernel Error는 안나왔지만 모니터 출력이 안되어서 -_-;;

(위의 문제때문에 한달내내 연구를 진행하지 못하고 서버문제만 매달리다 짤릴듯 하였다 ㄷㄷㄷ)

Linux에서 하드디스크 에러만 줄창 보다 프로세스 너무 많이 굴리면 메모리 부족하여 실행못하는 에러까지 다 봤으니 서버를 빡세게 굴리는 것은 확실한 것이다 ㅎㅎ

그리고 2008년 10월 10일
지도교수님 서버에 접속이 갑자기 안되자, 뭔가 원인이 뭔지 모르다가 아래의 메시지가 나와 당황 ;ㅁ;
Give root passwd for maintenance
(or type Control-D for normal startup) :
다른 문제는 없었고 갑자기 잘 돌아가다 멈춰버리는 것이였다.

하드디스크쪽에는 전혀 문제가 없었고(산지 얼마되지 않는 컴퓨터에 fsck로 검사해보아도 아무런 문제 없었음) 잘 돌아가다 갑자기 멈추는 에러가 생겨서 재부팅을 시도를 해보았더니......
계속 이런 메시지가 뜬다.
Kernel panic not syncing: Aiee, killing interrupt handler!
아님
RIP blah~ blah~
REP blah~ blah~
Kernel panic - not syncing: Attempted to kill init!
그러다 갑자기 부팅이 안된다. 부팅이 안되고 삐익 소리만 계속 난다. 이건 메인보드쪽 문제임을 알게 되었음.
부팅이 되었다 그러나 아래의 메세지가 나온다. ㅠㅠ
Call Trace
_atomic_dec_and_lock+0x39/0x58
dput +0x37/0xfb
path_release+0xc/0x27
vfs_stat_fd+0x3c/0x4a
autoremove_wafe_function+0x0/0x2e
kmsg_read+0x3a/0x44
sys_newstat+0x19/0x31
tracesys+0xd5/0xda
메인보드같은 하드웨어쪽의 문제를 알고 나서 용산가야겠다는 생각이 들면서..... 이건 내 책임이 아니라 컴퓨터가 부끄럼을 타서를 주장해야겠다.
(메인보드같은 하드웨어 문제이니 만큼 수리비는 교수님이 주시겠지?)

2006년도부터 조직 서버를 관리 했었고 2008년도에 연구실에 들어가면서 Linux서버에서 나오는 에러는 다 보는 것 같은 생각을 해보았다.
(위의 내용 말고도 더 많은 에러 메세지를 보았지요. 그러나 Kernel에서 에러나는 것은 아니니 기록은 제외)

ps. 이 글은 지도교수님 서버가 메인보드 에러가 나와 부팅 안되는 것을 한탄을 하며 쓴 글입니다.
Buy me a coffeeBuy me a coffee

+ Recent posts