일을 하다 보면 여러 종류의 운영체제를 사용해야 하는 경우가 많이 있다. 특히 특정 환경 하에서만 일을 해야 하는 경우가 많은 회사와 달리 대학 연구실이나 중소 규모 단체 등에서는 사람들의 취향에 따라 여러 종류의 운영체제를 사용하는 것이 결코 낯선 일이 아니다.
내가 지금 일하고 있는 곳에서도 모두 여섯 가지의 운영체제를 사용하고 있다. 윈도우 XP, 윈도우 7, 데비안, 레드햇 엔터프라이즈 리눅스 5, 맥오에스 레퍼드, 그리고 맥오에스 스노레퍼드. 크게 보면 윈도우, 리눅스, 맥인 셈인데, 이 안에서도 상당한 차이들이 존재하기 때문에 그냥 세 종류라고 말하기는 좀 어렵다.
최근 몇 달 동안 Ruby를 이용해서 여러 종류의 프로그램들을 개발해 왔다. 주로 내 개인 맥북에서 일을 하는 관계로 첫번째 테스트는 주로 스노레퍼드에서 이루어진다. 그러나 실제 서버는 레퍼드에서 돌아가고 있으므로 레퍼드와 스노레퍼드의 미묘한 차이를 무시할 수는 없는 상황이다. 특히 레퍼드가 설치된 iMac에는 Fink나 port가 깔려 있지 않기 때문에, 소스 컴파일 방식의 소프트웨어 설치가 꺼려지는 부분이 있다. 실제로 소스에서 ImageMagick의 기능을 이용하기 위해 rmagick gem을 사용하는데, 레퍼드에서 port를 사용하지 않고 ImageMagick을 설치하는 것이 그렇게 간단하지만은 않다.
이런 이유로, ImageMagick 관련 일과 (기타 다른 작업들)을 위해 버려진 PC에 데비안을 설치했다. 내 노트북에서 실행하기에는 버거운 작업들은 모두 이 리눅스 박스에서 실행을 한다.
팀의 모든 사람들이 윈도우용 MS 오피스와 ChemOffice를 쓰고 있는데다가 윈도우에서만 사용할 수 있는 좋은 프로그램들도 꽤 있기 때문에 윈도우 머신을 쓰지 않을 수 없다. 최근에는 윈도우 XP 재설치로도 해결되지 않는 문제가 좀 있어서 윈도우 7을 쓰려고 생각하는 중.
이 모든 운영체제를 사용하면서도 동일한 데이터를 쓸 수 있는 것은 온전히 Dropbox 서비스 덕분이다. 이 세 운영체제에서 동일한 데이터를 사용할 수 있도록 해 주는 이 서비스의 가장 큰 장점은 한 계정 당 붙어있는 컴퓨터의 대수에 제한이 없다는 점이다. 리눅스용은 우분투와 페도라만 패키지로 지원하기 때문에 다른 종류의 배포판에서는 소스 설치를 해야 한다는 점이 있기는 하지만, 소스 설치가 지원된다는 것만 해도 감사할 따름. 2기가의 용량이 무료인데, 이 정도면 보통은 넉넉한 수준이고, 굳이 더 많은 용량이 필요하다면 리퍼럴을 통해 무료 용량을 늘리거나 다른 계정을 하나 더 만들어서 두 개의 드랍박스 프로그램을 돌리는 방법을 사용해도 좋다.
이번에 팀을 떠난 전임자로부터 리눅스 컴퓨터 한 대를 이어받게 되었는데, 이게 바로 RHEL5를 사용하고 있는 컴퓨터이다. 동일한 환경을 만들어보려고 체크를 해 보니 우선 Ruby 버전이 2006년에 나온 1.8.5 버전. 지금 다른 컴퓨터들에서 쓰고 있는 1.8.7과 숫자 차이는 크게 나지 않지만, 그 동안 변경된 부분이 생각보다 매우 많다. 그냥 쓸 수는 없는 상황이고, 잘 돌아가고 있는 서버에 굳이 다른 repository를 첨가하는 것도 내키는 상황은 아니었는데, Ruby Enterprise Edition이라는 것을 발견해서 그냥 개인 디렉토리 안에 설치하고 환경을 만드는데까지는 성공. 모든 내용을 개인 디렉토리 안에 넣어둬서 시스템을 건드리지 않는다는 점이 큰 장점이다. 다만 ImageMagick은 깔려 있는데 관련 개발 모듈이 깔려있지 않은 관계로 rmagick 설치는 좀더 뒤로 미룰 수 밖에 없게 되었다.
여러 운영체제에서 동일한 데이터를 사용하여 작업을 하는 것은 실질적으로는 쉽지 않은 일이다. 그리고 운영체제들 간의 사소해 보이는 작은 차이점들이 실제로는 풀기에 꽤 난감한 상황이 되는 일이 심심치 않게 벌어진다. 그럼에도 불구하고 상황에 따라 다양한 운영체제를 사용하는 것은 피하기 힘든 일이다. 앞으로 많은 어플리케이션들이 웹 기반으로 바뀌게 된다면 좀더 쉬운 상황이 되겠지만 연구를 하는 입장에서 연구용 소프트웨어들이 웹 기반으로 나오는 것을 기대하기는 어렵다는 점을 감안하면, 앞으로도 이런 환경에서 다양한 운영체제를 다루는 일은 항상 필요하게 될 것 같다. 그리고 그에 따라 귀찮음도 계속 따라다니겠지…