옛날 컴퓨팅 자원으로 일하기
on
작년 말에 RHEL 6의 지원이 끝났다며 사실상 retire되었다고 했는데, 지금도 잘들 쓰고 있다. 신기하게 OS를 한번 설치하면 업데라는 것을 모르고 쓰는 덕택에 모든 게 다 옛날 거다. 그래서 회사 네트워크는 철저하게 보안을 해야 되는 것이다. 보안에 취약한 정도가 아니라 보안이란 개념자체가 회사의 주력 전산 자원에 들어있지 않기 때문이다. 오직 업데라는 것은 돈을 주고 구입해서 사용하는 것만 (업체에서 업데해주니까) 업데할 뿐이다.
역시 회사라는 곳은 효율보단 안정성이 우선이라 비효율적이더라도 문제가 생기지 않는 방향으로 일을 한다라고 생각을 하겠지만, 그 구멍이 뻔히 보이는 입장에선, 저러다 한번 된통 걸리면 뼈도 못 추릴텐데 할 뿐이다. 어차피 주기적으로 백업해놓았으니 다 날아가더라도 다시 복구하면 된다 하겠지만, 그건 전부다 옛날 OS에서나 돌던 것이라 복구하더라도 OS도 예전에 보안 문제가 있던 것 그대로 올려야 아무 문제가 없다는 말도 된다. 어차피 보안 때문에 시스템을 전부 갈아엎게 되면 적어도 반 이상은 못 쓰게 되거나 전부 뭔가 갱신하는 작업이 요구되는 것이다.
그래서 시스템은 수고스럽더라도 자주 자주 업데해주고 그 때 생기는 문제들도 자주 자주 해결해주어야 나중에 일어날지 모르는 사태에 대한 대비가 되는 것이고 사고가 일어나도 피해가 최소화되는 것이다.
여기서 보안이라고 하는 것은 회사망이 외부로 뚫렸다거나 계정이 해킹 당했다 그런 것이 아니라 그냥 아주 쉬운 작업으로 리모트에서 누가 대놓고 회사망으로 들어와서 휘젓고 돌아다니는 것을 말한다. 낡은 OS인데 업데까지 하지 않았으면 시스템은 간단한 작업으로 root가 따이는 등의 그런 헛점 투성이라고 보면 된다. 또 전부 x86 위에서 돌아가는 단일 종류의 OS들이라 누군가 들어오면 그냥 회사 시스템 전체를 단번에 자기 것으로 만들 수가 있다. 무슨 짓을 하든 걸릴 일도 없고.
이렇게 보안정책도 ㅂㅅ이고 그렇다고 안정성을 주장하는 덕택에 OS는 거의 20년이 다 되가는 것이 떡하니 올라가 있는데다 업데까지 하지 않으니까 그런 머신 위에서 뭔가 할 수 있는 구석이라고는 조금도 찾아볼 수가 없다. 컴퓨터를 마치 냉장고나 세탁기 구입해서 사용하듯 하니까.
그래도 당장에 그거라도 없으면 아쉬운지라 활용도를 생각하면
- 옛날 compiler/library 밖에 쓸 수가 없다.
- 최근의 source를 가져와서 compile하면 문제가 나는 게 끝도 없다.
- 괜히 까불지 말고 옛날 식으로 프로그래밍해야 한다고 알려주어야 한다.
그래도 여전히 말을 못 알아먹기 때문에 찾아다니며 손수 다 고쳐줘야 한다. 그러면 그것을 다시 원래대로 되돌려 놓아서 문제를 일으키는 (그러나 문제를 일으켰다는 것도 인지못하는) ㅂㅅ들도 가끔 나타난다.
더 웃긴 것은 옛날 OS에 올라가 있으면 분석툴도 다 옛날 거라 그 위에서 일어나는 문제를 제대로 감지하지도 못한다. 그러니까 ㅂㅅ처럼 만들어 놓았더라도 분석툴이 돌게라도 해놓았다면 다행인 것이다. 문제는 어디서 구경하기도 힘든 구조로 만들어놓아서 tool 자체가 제대로 돌지도 못하게 만들어놓는 일도 흔히 볼 수 있다.
이를테면
- 별 기능이 없는 블락인데 여러 개의 파일로 되어있고 그것들이 서로가 서로를 Xrefer한다.
- 핵심기능을 외부 library를 가져다가 구현해놓는다. 진짜 ㅁㅊㄴ이다.
- 어떻게 하면 더 느리게 돌아가게 할까 궁리하지 않고서는 생각해 낼 수 없는 신기한 아이디어로 만들어놓은 것을 발견할 때가 한 두번이 아니다. 뚜껑 열고 머리속을 들여다보고 싶을 정도다.
- C++을 쓸 줄 안다고 깝죽대지만 그 스스로를 복제할 수가 없게 되어있다. ㅈㅉ ㅂㅅ인가봉가.
- 주석을 미친 듯이 달아놓는다. 이 ㅂㅅ 같은 comment 지우는 것도 일이다. (regex가 아니면 아마 내가 미쳐버렸을 듯 하다)
- global definition이 엄청나게 많아서 BSS를 미친 듯이 잡아놓게 만들어놨다. ㅁㅊㄴ이 아니면 이런 짓은 거의 불가능하다.
- 의미없는 header와 Xreference가 많아서 작은 군살 하나 떼어내는 데도 엄청난 수고를 유발시킨다.
결론적으로, 옛날 컴퓨팅 자원이라도 효율적으로 쓰는 것도 다 개념이 제대로 박힌 이들과 일할 때나 가능한 일이라고 하고 싶다. 그런 놈들은 다 어디갔는지. 아니면 내가 이상한 곳에서 고인물이 되어버린 것인지.