WindowsXP 등의 윈도우즈 계열이 Guest인 경우,
공유폴더를 설정하게 되면 별다른 작업 없이 네트워크 환경으로 접근하여 사용할 수가 있다.

그런데, Ubuntu와 같은 리눅스가 Guest인 경우,
VirtualBox의 공유 폴더에 대해서 검색을 하게 되면 매뉴얼하게 mount를 해줘야 한다고 나온다.

환경 설정으로 걸어놓고 상시로 mount 되도록 해도 되고,
아니면 스크립트로 하나 만들어 놓고 사용해도 되고, 뭐 다양하고 편하게 알아서 하면 되지만,
공유폴더를 사용하겠다라고 하면 자동으로 등록이 되도록 하는 것에 대해서 알아보자!

   - https://www.virtualbox.org/manual/ch04.html#sf_mount_auto



   - [장치] → [공유 폴더] 선택


   - 'Guest'와 공유하고 싶은 폴더를 고르고,
   - 공유할 때 어떤 이름으로 할 것인지 정해주고,
   - "자동 마운트"를 선택해주고,
   - "항상 사용하기"를 선택하여주면 된다.


   - 별도의 mount 작업 없이 자동으로 설정이 되기를 바라는 것이
      이번 포스팅의 목적이므로 "자동 마운트"를 선택해야 한다.

   - 이번에만 잠깐 공유를 하고 싶은 경우에는 "자동 마운트"를 포기해야 한다.
      본래에는 임시로 사용하는 경우에도 '자동 마운트'를 지원되어야 하는 것이 맞는 것 같은데,
      실제로 테스트를 계속 해보는데 안된다. 즉, 그래서 "항상 사용하기"를 선택해주어야만 한다.

   - 설정을 했으면 Guest에서 공유 폴더가 접근이 가능한지 확인을 해야하는데...

 $ cd /media
 $ ls -al


   - 그냥 바로 확인을 하면, 위와 같이 보이지 않을 것이다. 즉, 아무것도 없을 것이다.
   - 재부팅을 해주어야 '자동 마운트' 기능을 제공해준다.

   - 설정을 할 때에 '폴더 이름'에 기재된 이름으로 공유가 되어야 하는데, "자동 마운트"를 사용할 경우에
      그 이름 앞에 "sf_"가 붙는다.


뭐 여하튼, Guest 안에서 "mount -F vboxsf 블라 블라"와 같은 명령어를 입력하지 않아도
자동으로 마운트 되어서 그냥 바로 사용할 수 있도록 VirtualBox가 기능을 제공해주고 있다.


공유 폴더도 쉽게 사용을 해보자~!!

반응형

Git Branch에 대해서 계속 살펴보자.


1. git checkout -b


 $ git checkout -b hotfix

   - 브랜치를 만들고 새로 만든 브랜치로 작업 영역을 변경하기 위해서는 2단계의 과정을 거쳐야 한다.
      . [ git branch 블라블라 ] + [ git checkout 블라블라 ]

   - 이걸 한 묶음으로 처리하기 위해서는 아래와 같이 하면 된다.
      . [ git checkout -b 블라블라 ]


2. commit


   - 현재 어느 브랜치에서 작업을 하고 있는지 확인을 하고... [ git branch ]
   - 파일을 하나 수정 후 commit을 하자. [ git commit -a -m "블라블라" ]

   - 지금 긴급히 수정할 꺼리가 있어서 hotfix를 한다고 가정을 해보는 것이다.


3. merge


 $ git branch
 $ git checkout master
 $ git merge hotfix

   - 변경 사항을 가지고 올 브랜치로 checkout을 먼저 하고선, [ git checkout master ]
   - 어느 브랜치의 것을 가지고 와서 merge를 할지 명령을 하면 된다. [ git merge hotfix ]

   - 여기서 궁금한 것은 merge를 한 것은 알겠는데, 파일만 합친 것인지...?!


   - merge를 한 이후 [ git log ]를 해보면, 본래 없던 commit이 추가되어 있는 것이 보일 것이다.
   - 즉, 위의 경우는 "hotfix" 브랜치의 마지막 commit을 "master" 브랜치로 복사해버린 것이다.



4. delete


 $ git branch -d hotfix

   - 용도가 없는 branch를 지울 때엔 '-d' 옵션을 이용하면 된다.




브랜치에 대해서 공부를 하려면 꼭 나타나는 '머지 (merge)'다.
일단 가볍게 맛만 보는 정도에서 마무리 짓겠다.


앞으로도 몇 번 더 포스팅하면서 더 알아보도록 하겠다.

반응형

최근(?) 형상관리 도구에서 가장 중요한 기능 중의 하나가 바로 "브랜치 (branch)"이다.

개발 과정에서 '브랜치'를 활용하여 다양한 프로세스를 적용하게 되는데,
상당수의 형상관리 도구에서 '브랜치'를 사용하기 위해서는 많은 비용이 소요되곤 한다.

반면, Git의 특징 또는 장점으로 종종 언급되는 것이 바로 비교적 쉽고, 가볍게 '브랜치'를 사용할 수 있다는 것이다.

그러면, 이제 그 '브랜치'에 대해서 알아보아야 하는데,
많은 참고 자료들을 보면 좀 어렵게 설명이 되어 있어서 그 본질을 꽤뚫어보기가 쉽지는 않다.

하지만, 우리 사랑하는 "Git"에 대해서 알기 위해서는 꼭 넘어가야만 하는 산이기에,
차근차근 하나씩 알아나가보자.


1. branch 만들기, 현황 확인하기


 $ git branch
 $ git branch anotherbr

현재 repository의 branch 현황을 확인 하기 위해서는 [ git branch ]라고만 하면 된다.

repository를 생성하고 사용하게 되면, 기본적으로 git이 만들어주는 branch가 바로 "master"이다.
즉, branch 관련한 아무런 작업을 하지 않았다면, 그냥 'master' 브랜치에서 작업을 하고 있는 것이다.

그리고 위 스크린샷에서 보는 바와 같이, 현재 작업하고 있는 branch를 알려주는 표시는 "*"이다.


그러면, 새로 branch는 어떻게 만들까? [ git branch 블라블라 ]와 같이 하면 된다!

생성한 이후 [ git branch ]를 통해서 현황을 보면 위와 같이 나타날 것이다.



2. 일단 나는 master


 $ git branch

 $ nano ./readme.txt
 $ git add ./readme.txt
 $ git commit -m "modify readme.txt"
 $ git push

repository에 있는 파일 하나를 수정하여 커밋하고, push를 해보자.
위 스크린샷을 보면 현재 어떤 branch에서 작업을 한 것인지 보일 것이다.



3. 나는 지금 어디에?


 $ git branch
 $ git checkout anotherbr

현재 작업하고 있는 branch를 변경하는 명령어는 [ git checkout 블라블라 ]이다.

위 스크린샷에서 보는 바와 같이 변경 후 [ git branch ]를 해보면 "*"가 변경되어 있는 것이 보일 것이다.

더불어서 좀 전에 'master branch'에서 작업한 파일을 확인해 보면... 뭔가 다른 것을 확인할 수 있을 것이다.



4. HEAD

현재 작업하고 있는 branch를 가리키는 포인터의 이름은 "HEAD"이다.

위의 작업들을 한 번 다시 곱씹어보자.


아무런 작업도 하지 않은 현재의 상태를 보면, C까지 작업을 한 상황에서 현재 사용중은 branch는 'master'다.
물론 당연히 'HEAD'는 'master'를 가리키고 있다.


[ git branch anotherbr ]를 이용해서 branch를 새로 만들었을 경우는 위와 같다.
똑같은 곳을 'master'와 'anotherbr'이 가리키고 있지만, 'HEAD'는 여전히 'master'를 가리키고 있다.


파일 수정작업을 하고 commit을 하였다면, 'master'는 추가로 작업한 모습을 새로 가리키고 되고
현재 작업하고 있는 branch를 가리키는 HEAD는 'master'를 가리키고 있다.

좀 전에 만든 'anotherbr' 브랜치는 여전히 좀 전과 같은 곳을 가리키고 있다.


[ git checkout anotherbr ] 명령어를 쳐서 작업 브랜치를 변경하겠다라고 하면,
'HEAD'는 이제 'anotherbr' 브랜치를 가리키게 된다.

직전에 변경한 파일 내역은 'master' 브랜치에서 이루어진 작업이므로 'anotherbr' 브랜치는 모르는 일이다.





오늘은 일단 여기까지 하고,
branch에 대해서 한 동안 계속 알아나가 보도록 하자~!!

반응형

'SCM > Git-GitHub' 카테고리의 다른 글

Git Branch (브랜치) - Local Ⅲ (Merge Log)  (0) 2012.04.23
Git Branch (브랜치) - Local Ⅱ (Merge, Delete)  (0) 2012.04.15
Pro Git 번역본  (0) 2012.03.22
Remote - remote, fetch, pull  (0) 2012.03.19
업데이트 - git pull, 중간 정리  (0) 2012.03.17

IMAX 3D로 꼭 보고 싶었던 영화였지만, 그냥 2D로 감상해버린... 좀 아쉬운 영화~~~



LED 띠를 두른 타이즈를 입고 있는 모습이 아주 강렬한 영화 포스터다!
대체 저 둥그런 놈은 뭘까? 아주 궁금했는데... "디스크"란다.


흥행 성적은 의외로 더블 장사를 넘게 했다~!!


많은 영화 감상평이
"CG는 훌륭하지만, 스토리는 심플"
하다는 의견이 많아서, 흥행성적이 안좋을줄 알았다.


1982년 작품의 리메이크라고 한다.
원작을 보면 캐드 또는 3DMAX 실습작품 수준의
그래픽이 조금 우스워보이긴 하지만,
1982년이라는 것을 고려하면,
정말 놀라운 수준의 작품이라고 한다.
기회가 되면 찾아서 봐야겠다.


원작도 그렇고, 리메이크작도 그렇고 '월트 디즈니'의 작품이다보니,
그 특성이 그대로 나타난다.
권선징악!
심플!



감독인 '조셉 코신스키 (Joseph Kosinski)'는 1974년 아저씨인데,
이번 영화가 데뷔 작품이라고 한다!
미국 CF 등의 작업을 했었는데, 뛰어난 CG로 유명했다고 한다.

'조셉 코신스키'는 이 '트론'이라는 영화로 유명세는 충분히 탔고,
'톰 크루즈'가 주연을 하기로 한 '오블리비언'이 2013년도에 나올 예정이라고
또 계속 유명세를 이어가고 있다.

2005년도에 쓰여진 그래픽 노블 '오블리비언'이 그 원작인데,
애초 월트 디즈니에서 그 판권을 샀지만,
아가들도 볼 수 있는 가족 영화를 추구하는 방침과 맞지 않는
등급 판정으로 인해 디즈니에서 판권을 넘겼고,
'유니버설 픽쳐스'에서 넘겨받아 진행중이라고 한다.
2013년 4월 중으로 나올 예정이라니...
1년 남았다.

그런데, 그 오블리비언이 그 유명한 게임 오블리비언과 관련이 있나....?
궁금했는데, 스토리가 전혀 틀리다 ^^


머 여하튼, 아직 초짜 감독 아저씨다!

개인 홈페이지도 있다.
http://josephkosinski.com/

이력의 99%는 'TRON: Legacy' ^^





주연인 '제프 브리지스 (Jeff Bridges)'는 1인 2역을 맡았다.
그냥 아빠, 그리고 아빠 클론!

재미있는 것은 1982년 원작에서도 나왔던 배우라는...^^

'제프 브리지스'는 아버지도, 형도 배우인 배우가족이다.
생후 4개월 때부터 출연을 했던 뼛속까지 배우이고...
주연으로 나왔던 영화가 부지기수이다.

개인적으로 가장 기억에 남는 영화는
'아이언맨', '와일드 빌', '베니싱', '터커', '킹콩'
정도가 되겠다.





여자 주인공은 있지만, 뭐 별다른 비중도 없어보이고...
일명 '사이렌 #2, #3, #4' 역할을 하는 여인네들이 더 예쁘다.
주인공이 처음에 '사이버 월드(?)'에 들어왔을 때
장비 챙겨주는... 하연 옷이 찰싹 붙어서... ^^



스토리는 어떻게 보면 정말 심플한데,
IT로 밥 먹고 사는 입장에서는
조금 참신하게 느껴진 부분이 꽤 많다.
그렇다고는 해도
메인이 되는 갈등 구조가 정말 너무 식상하다는...


TRON의 트레이드 마크인 대결씬...
특히 오토바이 타고 달리면서 지나간 자취로 상대방을 무찌르는... 뛰어난 영상미!!

2인용 스네이크 게임이라고 생각하면 딱 맞을 것 같다.
지나간 자취의 옆에 부딪치면 죽는...


복잡한 화면이 아닌,
'사이버 일렉트릭'
이라는 단어가 딱 떠오르는 그런 영상,
그리고 그 배경 음악!




킬링타임용으로는 넘칠 정도의 영화!
하지만, 뭔가 진지하고 뭔가 배우길 원한다면 비추!
IT 관련인이라면 한 번 보길 권하는 영화!




IMDb   평점 : 6.90
네이버 평점 : 7.14
나만의 평점 : 6.78


Naver
http://movie.naver.com/movie/bi/mi/basic.nhn?code=72357
Wikipedia
http://en.wikipedia.org/wiki/Tron:_Legacy
IMDb - Internet Movie Database
http://www.imdb.com/title/tt1104001/

[출처]
* 포스터 및 스크린샷은 위키피디아에서 퍼왔음을 밝힙니다.
(영화 관련 저작권 괴담은 무서워요~)
[ 주의 사항 ]
어디까지나 개인적인 영화평을 적는 공간이니만큼,
개인의 취향은 존중해주시면 감사하겠습니다.
건전한 비판이나 조언은 언제든 환영입니다!!!

반응형

예전에 포스팅 하다가 중간에 그만둔 것이 있어서 부활시킨다~~~

-------------------------------------------------------------------------------------------

가상PC를 위해서 사용하는 SW 중에서 가장 유명한 것은 누구나 알듯이 VMWare이다.
하지만, 알다시피 VMWare는 상용 SW 이다.

물론 VMWare Player를 이용하여 사용하면 되기는 하지만,
이미지 생성 등이 아닌 말 그대로 이미 있는 이미지를 실행만을 할 수 있는 제한된 제품이다.


VirtualBox의 경우에는 회사에서 사용을 할 수 있는 라이선스이다.

   - https://www.virtualbox.org/wiki/Licensing_FAQ

위 사이트를 보다보면 아래와 같은 문구가 있다.

   "if you install it on your work PC at some large company, this is still personal use."

즉, 회사에서 사용을 하더라도 개인적인 용도로 사용을 하면 문제가 없단다!
제가 잘못 이해를 했다면 댓글 남겨주세요~!!!


뭐, 여하튼 최근에는 개인적으로
성능상으로 큰 문제도 없고, 사용하는데 라이선스 문제도 없는 VirtualBox를 좋아한다.




가상PC를 사용하면서 자주 이슈가 되는 것 중 하나가 "포트 포워딩"이다.

VirtualBox에서 포트포워딩을 하는 방법을 검색해보면,
과거의 옛날 방법만 나와 있어서 최근 버전에서의 비교적 편한 포트 포워딩 방법을 소개하고자 한다.



게스트PC의 설정에서 '네트워크' 부분을 그냥은 위와 같은 화면이 보이지 않을 것이다.
중간에 보이는 "고급"을 누르면 짠~


위의 설정에서 호스트PC의 몇 번 포트로 들어오는 것을 게스트PC의 몇 번 포트로 매핑할 것인지를 적어주면 된다.


오른쪽의 [+] 마크를 눌러주고 주르륵 적어주면 되는데, 샘플로 "HTTP" 포트를 포워딩 해줘보자.

 


"호스트 IP"를 적어주어야 하는데, 일반적인 경우 꼭 적어주지 않아도 된다.
"게스트 IP" 역시 마찬가지로 적지 않아도 된다.

위와 같이만 적어주고 확인을 누른 다음에 "게스트 OS" 전원을 켜보자.


'포트 포워딩'으로 인해서 방화벽 경고가 뜨기도 한다.
그냥 차단 해제 해주면 된다.


포트포워딩이 잘 되는지 확인해보기 위해서 일단 호스트 IP를 확인해보자.


내 경우에는 호스트가 WinXP 이므로 실행에서 'cmd'를 치고 "ipconfig"를 치면 확인할 수 있다.
위 스크린샷을 보면, 공유기를 사용하고 있다보니 IP가 "192.168.1.2"이다.


호스트에서 위와 같이 접근을 하면, 게스트로 포워딩이 되어 결과가 나오는 것을 확인할 수 있다.


다시한번 정리를 해보면,
VirtualBox의 게스트 설정에서 포트포워딩 값을 기재해주면 포트포워딩이 잘 된다!

즉, 위의 경우 호스트 IP의 80번 포트를 요청했는데,
게스트 OS의 80번 포트에서 제공해주고 있는 Redmine을 접근하게 해주고 있다!!!

반응형

3월에 4.1.10 버전이 나왔는데,
비교적 짧은 일정으로 업그레이드 버전이 나왔다.

이전 버전에서의 문제들과 SMP 환경에서의 에러들때문에 조금 급히 나온 것 아닌가 추정한다.

ChangeLog는 아래와 같다.

VirtualBox 4.1.12 (released 2012-04-02)

This is a maintenance release. The following items were fixed and/or added:

•VMM: fixed VERR_NOT_SUPPORTED and VERR_RAW_MODE_INVALID_SMP guru meditation due to an invalid reschedule to raw mode (bug #10370)
•VMM: fixed PDMCritSectLeave guru meditation under rare circumstances with SMP guests
•VMM: proper Math Fault handling with certain legacy guests (bug #9042)
•NAT: fixed a socket leak under certain conditions
•Storage: better sanity check against reading beyond end-of-file
Audio: fixed a crash in the NUL audio backend (bug #10374; 4.1.10 regression)
•HGCM: fixed a crash during savestate under rare circumstances
•VBoxSVC: several locking fixes
•VBoxManage: return the correct error code if controlvm savestate failed (bug #10134)
Guest Additions: VBoxService should not crash on exit (bug #10326; 4.1.10 regression)
•Windows Additions: set the correct time stamp when a file is closed (bug #6473)
•Windows Additions: better help if the DirectX backups are not properly installed
•Linux Additions: Linux 3.4-rc1 compile fixes


그런데, 뭐 사실 개인적인 관심사항은 별로 없다.

그냥 많은 충돌을 해결했다니, 바로 업그레이드나 해야겠다~

반응형

요즘 분위기를 계속 이어가서..... ^^


이번에는 Redmine에서 작성중인 내용이 없어지는 것을 막기 위한 plugin을 설치해보자.

   - https://github.com/jbbarth/redmine_drafts


1. plugin download

   - 우선은 plugins 디렉토리로 이동 후 git을 이용해서 다운로드 받도록 하자.


 $ cd /srv/www/redmine.whatwant.com/redmine/vendor/plugins
 $ sudo git clone https://github.com/jbbarth/redmine_drafts.git



2. DB migrate

   - 해당 플러그인은 테이블 생성이 필요하다.


 $ cd /srv/www/redmine.whatwant.com/redmine/
 $ sudo RAILS_ENV=production rake db:migrate_plugins

   - redmine이 설치된 root 디렉토리에 위치한 다음 위와 같은 명령어를 실행하면 된다.


3. 결과 확인

   - redmine에 접속한 다음 일감 만들기 화면을 보면 아래와 같이 임시 저장되었다고 나오는 것을 확인할 수 있다.





일감에 대해서만 해당하는 것은 조금 아쉽지만,
그래도 일감에 대해서 임시 저장을 해주는 좋은 plugin 이다!

반응형

요즘 계속 꽂혀 있는 Redmine 살펴보기~!!

Redmine과 같은 ALM (혹은 Project Management ?) 도구들에게서 가장 중요한 기능 중의 하나가
바로, 바로 E-mail 기능이다 !!!

여러분들이, 특히 제가 주로 사용하고 있는 Gmail을 활용하는 방법에 대해서 알아보고자 한다!



1. TLS plugin

   - Gmail에서 권장으로 사용되어지는 TLS를 지원하기 위해서는 추가로 plugin을 설치해야 한다.


 $ cd /redmine이 설치된 경로
 $ sudo ruby script/plugin install git://github.com/collectiveidea/action_mailer_optional_tls.git



2. configuration.yml

   - 환경 설정을 해야한다.


 $ cd /redmine이 설치된 경로
 $ sudo cp ./config/configuration.yml.example ./config/configuration.yml
 $ sudo nano ./config/configuration.yml


production:
  delivery_method: :smtp
  smtp_settings:
    tls: true
    address: "smtp.gmail.com"
    port: '587'
    domain: "smtp.gmail.com"
    authentication: :plain
    user_name: "whatwant@whatwant.com"
    password: "passwd"


   - 위 내용을 참조하여 각 상황에 맞게 작성하면 된다.
   - (gmail에서 제공해주는 서비스를 이용하여 @whatwant.com 도메인 서비스 이용중이다 ^^)



3. 테스트 메일 보내기

   - 위 설정이 제대로 되었는지 테스트 메일을 보내보자.

   - redmine에 새로 접속하여 관리자 계정(admin)으로 로그인 하자.


   - [관리]→[설정]→[메일 알림] 들어온 후 오른쪽 제일 밑의 "테스트 메일 보내기"를 클릭하자.


   - 관리자 계정의 이메일 주소로 메일을 보낸 것을 확인할 수 있다.




이메일을 제대로 사용하기 위한 설정 등에 대해서는 나중에 기회가 되면....^^
(귀찮은 것은 전부 나중에 기회가 되면이라는 핑계대기 신공~!!!^^)

반응형

+ Recent posts