태그 보관물: 리눅스

20100427 :: 플래시 플레이어 10.1로 업그레이드 하기

Flash on Linux

리눅스에서 가장 신경이 많이 쓰이는 부분 중 하나는 바로 플래시가 사용된 웹사이트를 이용하는 순간입니다. 윈도 플랫폼에서는 비교적 성능도 나쁘지 않고 많이 안정된 상태이지만 리눅스 버전의 플래시 플레이어가 돌기 시작하면 대부분의 웹사이트에서는 CPU 사용률이 VirtualBox를 통해 윈도를 실행했을 때 보다도 더욱 미친 듯이 뛰어 오르기 시작합니다. 그러다 뻗어버리기도 하지요. 다행히 파이어폭스 3.6.3(4?)에서부터는 플러그인을 독립적인 프로세스로 실행하여 플래시가 죽더라도 웹 브라우저를 다시 시작해야 하는 불상사는 발생하지 않습니다만, 여전히 불안정하지요.

최신 버전 플래시로 업그레이드하기

게다가 요즘은 많은 웹사이트에서 파일 업로드 기능을 플래시로 제공하는 곳이 많습니다. 비교적 대용량의 파일을 업로드 하도록 한다거나, 혹은 여러 개의 파일을 동시에 업로드하는데는 기존의 웹 브라우저의 기능으로는 어려움이 많기 때문입니다.[1. HTML5에서는 멀티 파일 업로드가 지원되며, 파일 탐색기에서 끌어다 놓는 것도 지원됩니다. 이미 구글 크롬과 파이어폭스 3.6 이상을 사용하면 Gmail에서 이 기능을 사용할 수 있습니다.] 그런데 아무래도 불안정하다보니 파일을 업로드 하는 중간에 플러그인이 죽어버리거나, 파일 업로드가 완료되지 못하고 계속 멈추거나 하는 증상이 발생하곤 합니다.

그래서 한 번 모험을 시도해보기로 했습니다. 플래시를 최신 버전으로 업그레이드 해보는 것입니다. * 주의 : 이 방법으로 제 경우에는 비교적 안정적인 동작을 보입니다만, 시스템의 상태에 따라서는 저와 반대되는 결과가 나타날 수 있습니다.

설치된 플래시 버전 확인

먼저 시스템에 설치된 플래시의 버전을 확인해 봅니다. 아마 패키지 형태로 설치가 되었을 것입니다. 제 기억이 맞다면 파이어폭스 설치 후 플래시 플러그인 설치 화면에서 더나은 버전이 저장소에 있다고 하여 apt-get 명령으로 설치했던 것 같습니다. [2. 플래시 플러그인 패키지의 이름은 adobe-flashplugin입니다. 따라서 sudo apt-get install adobe-flashplugin이라는 명령으로 터미널에서 설치가 가능합니다.] 패키지 상의 버전을 확인하기 위해서는 dpkg 명령을 사용합니다.

dpkg -l | grep flash

그럼 결과가 아래와 비슷하게 보입니다.

ii        adobe-flashplugin                                        10.0.45.2-1karmic1

현재 플래시 플레이어의 최신 버전은 10.1 입니다. 지금 설치되어 있는 버전보다는 최신 버전이군요. 최신 버전이긴하지만 아직 공식적으로 배포된 버전은 아닙니다.  다운로드는 adobe labs 사이트에서 내려 받을 수 있습니다. 리눅스용 파일은 tar.gz 포맷으로 압축되어 있는 파일입니다. 해당 파일을 다운로드 받아 압축을 풀어 놓습니다. (여기서는 홈 폴더 아래에 downloads 라는 폴더에 압축을 풀어 두었다고 가정합니다.) 압축을 푸니 눈에 익은 .deb 파일이 아니라 .so 파일입니다. 예전에 아파치 서버 같은 거 보면 .so 라는 확장자를 가진 파일을 종종 본 듯도 합니다만, 이거 어떻게 설치해야 하는지 난감합니다. 어쩌면 그냥 파일만 교체하면 될 듯도 합니다. 그래서 한 번 찾아보기로 합니다.

find / -name “libflashplayer.so” (/ 슬래시를 빼먹지 않도록 주의. 빼 먹으면 현재 디렉토리에서부터 찾게 됩니다.)

이렇게 찾으면 결과 중에 ‘/usr/lib/adobe-flashplugin/libflashplayer.so‘라는 항목이 보입니다. 이 곳이 플래시 플레이어 플러그인 파일이 존재하는 곳입니다. 해당 디렉터리로 이동하여, 혹시 모르니 기존 파일을 백업해 놓습니다.

cd /usr/lib/adobe-flashplugin

sudo mv libflashplayer.so libflashplayer.so.backup [3. 팁: 파일 이름이 긴 경우에는 앞에 몇 글자만 입력하고 tab 키를 누르면 자동 완성 됩니다.]

그리고 아까 압축을 풀어놓은 파일을 이 곳으로 가져옵니다.

sudo cp ~/downloads/libflashplayer.so ./

이렇게 파일 이름이 길 때는 탭 신공이 큰 위력을 발휘합니다. 이제 브라우저를 재시작하면 됩니다.

복구방법

문제가 발생한 경우에는 아래와 같이 원상 복구하면 됩니다.

cd /usr/lib/adobe-flashplugin

sudo rm libflashplayer.so

sudo mv libflashplayer.so.backup libflashplayer.so

혹은 다음과 같이 apt-get 명령을 통해서 삭제 후 재설치 하는 방법도 있겠네요

sudo apt-get remove adobe-flashplugin; sudo apt-get install adobe-flashplugin[4. 팁2 : 패키지 이름의 경우에도 자동완성이 됩니다. 그리고 세미 콜론은 두 줄로 나눠쓸 명령어를 한 줄로 합쳐주는 기능입니다]

20100419 :: 궁극의 폴더 동기화 유틸리티 – DirSync Pro

리눅스에서도 쓸만한 폴더 동기화 유틸리티

딱 작년 이 맘 때 쯤 매우 유용한 폴더 동기화 유틸리티인 Allways Sync에 대한 글을 쓴 적이 있습니다. 리눅스로 넘어온 이후에 가장 아쉽고 미련이 남던 프로그램 중 하나였는데요, 물론 리눅스에도 rsync와 같은 간편한 프로그램이 있긴 합니다만 삼바를 통한 공유폴더로의 설정이 안된다든지 하는 문제점이 있습니다. (생각해보니 안될 것도 없다는 생각도 드네요)

지금의 사용환경

지금의 사용환경은 처음 Allways를 쓸 때 보다는 조금 더 변했습니다. 그때는 노트북, 데스크톱이 모두 윈도 시스템이었는데 지금은 노트북, 데스크톱이 모두 리눅스 (데스크톱은 가끔 윈도)이며, 각종 자료들은 PC에 저장하지 않고 별도의 외부 파일 공유 서버에 차곡차곡 저장하고 있습니다.

따라서 다음과 같은 기능을 지원해야 하는 유틸리티가 필요했습니다.

  1. 윈도, 리눅스에서 모두 돌아간다. 윈도는 Allways가 있으니 최소 리눅스에서는 돌아가야 한다.
  2. 양방향 동기화를 지원하고 가능하면 Allways 수준의 설정을 지원한다.
  3. GUI가 있으면 좋다. (rsync는 별도의 front-end가 있습니다만, 사실 명령줄 프로그램입니다.)
  4. 네트워크 드라이브를 지원해야한다. 특히 삼바 공유를 지원해줘야 한다.

DirSync Pro

그래서 뭐 괜찮은 프로그램 없나하고 여기 저기 뒤져보던 중에 DirSync Pro라는 프로그램을 발견했습니다. Pro라는 단어가 들어있긴 합니다만 상용 소프트웨어가 아니라 오픈소스 프로젝트입니다. 일단 사용기능이나 사용기한 등에 제약이 없고, 회사에서 써도 괜찮습니다! 게다가 제가 찾던 기능들은 모두 망라되어 있군요. 아래는 이 프로그램이 자랑하는 feature입니다.

  • 파워풀한 싱크 알고리듬(?)
  • 양방향 동기화와 단방향 동기화를 모두 지원함
  • 양방향 동기화에 대한 다양한 세부 옵션 지원
  • 동기화 할 수 있는 폴더 수에 제한이 없음
  • 하위 디렉터리를 포함하여 재귀적인 (recursively) 동기화가 가능함
  • 거의 제한이 없는 파일 시스템 지원 (FAT, FAT16, FAT32, NTFS, WinFS, UDF, EXT2, EXT3, EXT4 …)
  • 네트워크 드라이브 지원 (올레!)
  • 마운트된 외부 장치 지원 (외장하드, USB 등)
  • 싱크 기능을 통한 차등 백업 가능
  • 동기화 하기 전 최대 50개 까지의 백업 생성 가능
  • 리눅스 파일 시스템의 심볼릭 링크 처리 지원
  • 동기화한 파일의 타임 스탬프 변경 지원 (원본을 동기화한 후 동기화 시점으로 최종 수정 시간을 변경하여 최신 버전임을 명시)
  • 깔끔하고 쉬운 인터페이스 (논란의 소지가 있지만, 동기화유틸을 써본 사람은 쉽게 사용이 가능합니다)
  • 거의 대부분의 OS 지원 (윈도 계열, 맥OS, 리눅스)
  • 별도의 설치가 필요없음. 태생이 포터블 버전임
  • 오픈소스. 무료. 사용기간, 사용량에 제한이 없음 (올레!)
  • 별도의 로컬 데이터베이스를 필요로하지 않음.
  • 기록되는 로그 레벨을 설정을 통해 변경할 수 있음

하나 하나 써내려가면서 마음이 뿌듯해지는 기능들이 아닐 수 없습니다. 그럼 한 번 설치를 해 보겠습니다.

설치

사용환경 :

  • Ubuntu 10.04 b2
  • & Windows XP SP3
  • 파일 공유 서버는 삼바. (윈도, 리눅스에서 접근하는데 별도의 설정이나 제한은 없음)

설치전 요구 사항 : 이 프로그램은 자바로 만들어져 있습니다. 그래서 실행에는 Java Runtime Environment가 필요합니다. 우분투에는 기본적으로 OpenJava가 설치되어 있으니 별도로 설치할 필요는 없습니다.(제 경우엔 윈도에서도 freemind를 사용하느라 이미 설치했음. ㅋ) 설치를 위해서는 다운로드 페이지에서 플랫폼에 맞는 파일을 내려받은 다음, 원하는 폴더에 압축을 풀어 놓으면 됩니다. 리눅스 버전의 경우 실행파일의 이름은 dirsyncpro.sh입니다. 이 파일을 실행가능하도록 권한을 변경해 줄 필요는 있지요.

$ chmod +x dirsyncpro.sh

이제 파일 탐색기에서 해당 파일을 더블 클릭하면 프로그램이 실행됩니다. 최초 실행시에는 라이센스에 동의하겠느냐는 대화 상자가 한 번 표시됩니다. 동의해주고 바로 넘어가면 다음과 같은 화면을 볼 수 있습니다. (이하 스크린샷은 윈도 버전에서 찍었습니다. 리눅스는 이게 불편해서…)

설정을 위해서는 세 번째 탭인 ‘Dir Settins’를 선택합니다. (위 스샷의 마우스 포인터가 있는 부분)  디렉터리 세팅에서는 동기화 프로필을 생성할 수 있고, 프로필마다 각각 다른 폴더를 지정하여 동기화를 할 수 있습니다. 프로필 설정 방법을 간략히 살펴보면 다음과 같습니다.

  1. 프로필 이름을 지정합니다. (뭐 기본이죠)
  2. 폴더 A, 폴더 B를 선택합니다. (원본과 사본이 될 곳들입니다.)
  3. 동기화 방향을 지정합니다. A>B,  A<B의 일방 동기화 및 A<>B의 양방향 동기화가 가능합니다.
  4. 동기화 옵션은 디폴트로 사용해도 무방합니다만, 별도의 세팅이 필요한 경우 동기화 옵션을 변경합니다. (동기화 옵션 변경에 대한 내용은 뒤에서 다시 다루겠습니다.)

이 때, 리눅스에서는 삼바 공유가 디렉터리 선택 목록에서 표시되지 않습니다. 노틸러스를 통해 마운트한 삼바 공유 폴더는 숨김 속성을 가지므로 목록에서 표시가 되지 않더군요. 이 경우에 저는 아래와 같이 해당 폴더에 대한 심볼릭 링크를 만들어 해결 했습니다.

  • 노틸러스를 통해 삼바 공유 폴더를 마운트 합니다. (smb://아이디@서버주소/공유폴더이름) 이 때 패스워드가 걸린 경우에는 패스워드를 입력해 줍니다.
  • 이렇게 공유한 폴더는 홈 디렉터리 아래에 ./gvfs/공유이름으로 마운트 됩니다.
  • 그래서 $ ln -s ~/.gvfs/공유이름 심볼릭링크이름 과 같이 명령을 주어 홈 디렉터리에 해당 폴더로의 심볼릭 링크를 생성해서, 디렉터리 란에 심볼릭 링크의 경로를 적어주었습니다. (혹은 아이콘을 눌러 선택해도 됨)
    * 생각해보니 이 방법이면 rsync도 삼바 공유를 지원하지 않을까 싶긴 합니다.

윈도에서는 공유폴더에 \\공유.서버.아이피.주소\공유폴더\경로명 과 같은 형태로 접근하므로, 원격 폴더의 이름을 그대로 사용했습니다. 그리고 동기화 버튼은 양방향을 선택했지요. 그리고 특정 폴더는 동기화에서 제외하기 위해 ‘방송’ 폴더는 제외 폴더에 등록하였습니다. (이렇게 하면 ‘방송’이라는 폴더와 그 하위 폴더, 파일이 모두 동기화에서 제외됩니다.)

그런 후 Analyze 버튼을 클릭하면 아래 스크린 샷처럼 분석 결과가 표시됩니다.

이제 play 모양처럼 생긴 Sync 버튼을 클릭해 주면 왔다 갔다 파일의 복사가 진행됩니다. 만약 같은 이름의 파일이 위치한다면 설정에 따라 가장 최근에 변경된 파일이 살아 남도록 합니다. (설정에 따라서는 용량이 가장 큰 파일을 남겨두거나 이름을 바꾸어 두 개의 파일을 모두 남겨둘 수도 있습니다.)

그리하여 저는 노트북 — 공유서버 — 데스크톱의 순으로 연결하여 그간 수동으로 동기화 할 엄두를 못 내던 폴더들을 지금 동기화하고 있습니다. 근 몇 달에 걸친 사항들이 백업되는 과정을 지켜보노라니, 흐뭇하기 그지 없네요.