라즈비안에서 간단하게 VNC 서버를 설정한 경험을 생각하며 우분투에서도 간단하게 되겠지 했는데 쉽지 않다. 우분투 서버를 사용하는 경우에는 대부분 콘솔모드에서 해결할 수 있으니 별 문제가 없었는데 원격 컴퓨터를 데스크톱 모드로 운영하면서 비주얼스튜디오와 같은 GUI를 사용하려니 VNC 서버를 설정하려 했는데 연속된 삽질 가운데서도 하나가 해결되면 또 다른 것이 막혀서 생각을 바꾸어 보기로 했다. 업무용으로 사용하는 컴퓨터는 윈도우를 사용하고 있으므로 굳이 VNC 뷰어를 통해서 접속하지 않고 윈도우에 내장되어 있는 원격 데스크톱을 사용하는 방법이 없을까? 했는데 역시 있었다. sudo apt install xrdp 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입..
우분투 데스크톱에서 형상 관리 도구인 서브버전(Subversion)을 설치하고 프로젝트 리포지토리를 만들고 서버를 가동해서 다른 컴퓨터에서도 해당 리포지토리를 통해서 형상관리하고 협업할 수 있는 환경을 만들고자 한다. 우선 "sudo apt install subversion"으로 서브버전은 간편하게 설치할 수 있다. 다음에 해야 할 작업은 리포지토리(저장소)를 만드는 작업인데 여러 프로젝트들의 형상 관리 정보가 모이는 곳이므로 용량이 넉넉한 적절한 공간을 저장소의 루트로 삼는다. 필자의 경우에는 홈 디렉터리에 svnrepo라는 폴더를 만들어 저장소 루트로 사용하기로 했다. 새로운 프로젝트의 형상관리를 시작하려면 저장소 루트로 이동하여 위의 그림과 같이 프로젝트 폴더를 만들고 "svnadmin create..
봉호산 자락의 고개를 넘어 강계마을로 내려온 길은 죽림마을을 지나면 다시 오르막길을 오르기 시작한다. 옛 서해랑길은 해변을 돌아 탑립마을을 거쳐갔지만 지금은 진도대로 도로와 도로 인근의 길을 따라 여귀산 자락을 걷는다. 강품미재 고개에서 도로를 벗어나 보덕산 임도로 들어서고 산을 내려와 귀성마을을 지나서 귀성삼거리에서 여정을 마무리한다. 봉호산 자락에서 내려온 길은 강계마을 외곽을 지나 죽림마을로 향한다. 강계마을 앞바다는 접도라는 섬이 커다란 방파제 역할을 하는 모양새다. 접도는 다리로 의신면 금갑리와 연결되어 있다. 그런데, 이 길을 걷다가 그만 젖은 흙에 미끄러져 바지가 흙투성이가 되고 말았다. 다치지 않아 다행이지만, 전혀 생각하지 못한 곳에서 넘어지는 것은 추운 날씨에 몸이 굳은 까닭일까? 나이..
덕심산(399m) 자락의 고개를 넘어서 옥대리에 이른 서해랑길 8코스는 의신면 읍내와 들판을 가로질러 송정지 저수지에 이른다. 송정지를 벗어나면 계곡을 따라 봉호산(193m) 자락의 무지개 고개를 넘어서 해변에 있는 강계마을에 닿는다. 봉호산 자락의 고갯길이 조금 가파른 임도이기는 하지만 고도 140여 미터로 무난하게 걸을 수 있다. 이른 아침부터 흐리고 서늘했던 날씨는 좀처럼 개이지 않고 오히려 바람이 더 강해졌다. 옥대리 버스 정류장에서 잠시 바람을 피하며 휴식을 취했지만 손은 시리고 몸은 으슬으슬하다. 다음 겨울 걷기에서는 따뜻한 손난로를 준비해야겠다는 생각이 들었다. 옥대리를 떠나 의신면 읍내로 향하는 길, 시야에는 읍내와 함께 멀리 백구 모양의 의신백구 작은 도서관이 보이기 시작한다. 진도 대파..
한 겨울에 다시 찾아온 진도 서해랑길은 첨찰산 쌍계사 입구에서 시작한다. 운림예술촌과 운림삼별초공원을 거쳐서 덕심산 자락의 고개를 넘어 옥대저수지를 지나 옥대리에 이른다. 고도 2백여 미터의 고개를 임도로 넘는 무난한 길이다. 해남 걷기만 해도 광주를 중간 기착지로 했었는데, 진도 서해랑길 걷기를 위한 중간 기착지는 광주에서 목포로 바뀌었다. 목포역에서 내리니 역 바로 앞의 버스 정류장에서 목포터미널로 가는 시내버스가 바로 탈 수 있었다. 다른 번호의 버스에 목포터미널이 쓰여 있는 것을 보고 "터미널 가죠?" 하며 버스에 타려 했더니 가긴 가는데 돌아서 간다고 친절하게 안내해 주신다. 아니나 다를까 목포 터미널로 가는 1, 1A, 200 버스가 바로 이어서 도착한다고 버스정보시스템에 나온다. 목포에서 6..
길지 않은 파이썬 코드를 읽고 이해하는 것은 파이썬에 조금만 익숙한 프로그래머라면 그리 어려운 일이 아니다. 또한, 규모가 큰 프로그램이라도 통합 개발 도구를 사용하여 호출하는 곳들을 찾고, 정의된 곳을 따라 들어가면서 코드를 조금씩 이해하는 것이 프로그램 분석의 정석 일수 있다. 그렇지만, 빠르고 효과적인 분석을 위해서는 프로그램의 실제 동작 과정을 큰 그림으로 먼저 살펴보는 것이 중요하다. 비즈트레이서(VizTracer)는 도구의 이름처럼 프로그램의 실행 과정을 추적하여 그 결과를 도표를 통해서 쉽게 확인할 수 있도록 도와준다. 비주얼스튜디오 코드 익스텐션(VizTracer VS Code)을 사용하면 코드와 연동하여 분석 결과를 유용하게 활용할 수 있다. 전체 코드는 https://github.com..
이 글은 파이썬 언어로 작성한 프로그램을 C/C++ 언어로 변환할 수 있을까? 하는 물음에서 시작되었다. 파이썬 언어의 장점도 많지만 속도가 느리고 메모리 사용량이 많다는 단점, 그리고 소스코드 배포로 인한 보안성 취약 등을 언급하는 사람들이 있다. 물론 파이썬 소스 코드를 배포하지 않고 컴파일한 파이썬 바이트코드(*.pyc)로 배포하는 방법이 있지만, 이것 또한 바이트코드 디컴파일러(예, https://github.com/rocky/python-uncompyle6/)를 사용하면 주석을 제외한 대부분의 코드를 복원할 수 있다. 파이썬 소스 코드를 보호하는 다른 방법 중의 하나는 코드를 읽기 어렵게 만드는 난독화(obfuscation)를 수행하는 것으로 도구를 사용하여 함수 이름이나 변수명을 거의 읽기 어..
오랫동안 마음에 담아 왔던 그레이트 오션 워크 트레킹을 실행에 옮겨 볼까! 하며 막상 준비를 시작해 보니 일정이며 비용이며 검색하고 선택해야 할 사항이 한두 가지 아니다. 그래서, 일단 정보를 모아서 정리해 보기로 했다. 자료를 정리하다 보면 선택이 애매한 것도 가지치기가 되고 최종 선택에 이르기가 용이하다. 토픽별 순서는 따로 없다. ■ 여행시기의 선택 ○ 사람이 많이 없이 조용히 걷고 싶다면 피해야 할 시기 4월 초/중순 : 부활절 기간 및 가을방학 7월 초/중순 : 겨울방학 9월 말/10월 초순 : 봄방학 12월 중순~2월 초순 : 크리스마스 및 연말 여름방학 ○ 더위가 싫다면 피해야 할 시기 : 11월~2월 ○ 비가 싫다면 피해야 할 시기 : 5월~11월 ● 고래를 보고 싶다면 : 8월 말~10월..
임도를 따라 진도 기상대 앞을 지나는 길은 고개를 넘으면 이후로는 첨찰산 등산로를 통해서 하산길에 오르고 봉화골을 거쳐 운림산방 주차장에서 여정을 마무리한다. 첨찰산 등산로를 통한 하산길은 위의 그림처럼 임도를 통한 오르막보다는 내리막길이 경사가 있는 편이다. 낙엽에 가려 보이지 않는 돌부리에 걸려 넘어지지 않도록 조심해야 한다. 진도 기상대 표지판을 만나는 지점은 운림산방 쪽에서 올라온 임도와 만나는 지점이다. 이후로 기상대 입구로 이어지는 길은 정말 가파르다. 겨울에 이곳으로 자동차를 몰고 다닐 수 있을까? 하는 의문이 생길 정도다. 대신 급한 경사만큼 뒤로는 탁 트인 전망을 제공한다. 푸른 하늘과 흰구름 아래로 멀리 북동쪽으로 바다 건너 해남까지 시야에 들어온다. 진도 기상대로 가는 가파른 길을 따..
용장성을 떠나면 철천산과 상봉 사이의 성재 고개를 넘어 도평저수지에 닿는다. 이후로 군내면 송산리 농로를 가로질러 고군면 읍내로 들어간다 읍내 식당에서 백반으로 에너지를 보충한 다음에는 읍내를 빠져나와 고성 초등학교 인근에서 마을길을 거쳐 임도를 따라 죽제산과 첨찰산 사이의 계곡 안으로 들어간다. 6코스를 걷고 7코스를 이어서 걸어야 하므로 새벽 일찍 여정을 시작했지만 시간이 정오에 가까워지니 다음 여정이 계획한 대로 진행될지 조금은 조바심이 나기 시작한다. 두 개의 코스를 합쳐서 거리가 28Km에 육박하는 데다 발상태까지 좋지 않으니 갖가지 꾀가 기승을 부린다. 그렇지만, 앞날은 모르는 일이니 일단 7코스를 시작한다. 빨라도 12월 말에 등장할 동백꽃이 11월 말인 지금 벌써 붉은 자태를 뽐내기 시작했..
둔전방조제를 지난 길은 해안도로를 따라 이동하며 오류리를 지나 벽파리로 들어서고 작은 망금산 자락에 자리한 이충무공 벽파진전첩비에 닿는다. 벽파정을 지난 길은 해안을 따라 남쪽으로 이동하며 연동마을(11.8Km)을 지나고 이후로는 임도로 진입하여 서낭산 자락의 고개를 넘어 용장성에서 여정을 마무리한다. 둔전방조제를 지나면 명량대첩로 해안도로를 따라 오류리 곶 끝자락을 돌아간다. 언덕 위에서 바다 건너 북쪽을 바라보니 이제 진도 타워도 아득해졌다. 겨울 끝자락에서 전 국민의 입맛을 돌게 하는 봄동이 무럭무럭 자라고 있다. 얼었다 녹았다를 반복하며 당도가 높아지는 봄동의 고소한 맛을 상상하니 입안에 군침이 돈다. 이곳에서는 떡배추라고도 부른다고 한다. 진도는 전국 최대의 봄동 주산지이다. 언덕을 지나는 곳에..
진도로 들어온 서해랑길은 진도타워를 거쳐 해안선을 따라 진도 남동쪽으로 내려간다. 진도타워가 있는 산을 넘으면 둔전방조제까지 해안 도로를 따라서 이동한다. 민가는 조금 떨어져 있고 해안으로는 양식장이 많은 곳이다. 6코스 초반 진도타워가 있는 망금산을 넘어가야 하는데 높아야 고도 120미터이므로 큰 부담 없이 넘어갈 수 있다. 진도타워로 가는 가파른 언덕길을 오른다. 6코스와 7코스를 모두 걸어야 하는 날인 만큼 7시 전에 걷기를 시작했다. 이른 시간에 날씨까지 흐려서 더 어둑어둑하다. 날은 아직 어스름하지만 그 속에서도 페튜니아가 삭막한 계절을 밝힌다. 피튜니아(petunia)라고도 부르는 남아메리카 원산의 식물로 우리나라에서 월동은 못하지만 꽃이 오래 피기 때문에 가로변 장식으로 많이 심는 식물이다...
진도로 진입한 서해랑길로 가기 위해서 이번 여행부터는 목포를 중간 기점으로 삼는다. 남파랑길 후반부와 서해랑길 초반은 광주를 기점으로 하는 것이 적절했지만 진도에서 나오는 버스들이 광주를 향하더라도 대부분 목포를 들러서 가기 때문에 금요일 일과를 끝내고 내려가는 여행이니 목포에서 하룻밤 자고 첫차로 진도로 들어가 농어촌 버스로 서해랑길 8코스 시작점인 사천 쌍계사 입구로 이동하기로 했다. 목포로 내려가는 KTX와 목포 터미널 인근의 숙소 "목포 설레임"(목포시 비파로 125)으로 예약해 두었다. 목포역에서 목포터미널까지는 역 바로 앞에서 1, 1A, 1-2, 좌석 200 버스를 타면 된다. 목포 터미널 정류장에서 하차하여 숙소까지는 도보로 5백 미터이다. 다음날 아침 일찍 진도로 가는 버스들이 있어 다행..
해남군 문내면 학동마을 내려온 큰산과 학동 1, 2 저수지, 그리고 진도로 넘어가는 송전선이 지나가는 야산을 지나 우수영 관광지에 이른다. 이름은 큰산이지만 47미터짜리 야산이고 송전선이 지나는 야산도 높은 곳이 60여 미터이니 오르막 내리막이 있어도 큰 부담은 없는 길이다. 우수영 관광지에서 울돌목의 장엄함을 만난 이후에는 진도 대교를 통해 진도 울돌목을 건너 녹진국민관광단지에서 여정을 마무리한다. 학동마을을 빠져나온 길은 삼정마을 입구에서 마을로 들어가지 않고 마을 입구에서 우측 길로 내려간다. 지도에 있는 산의 이름은 해발 고도 47미터 큰산이지만 작은 언덕을 넘어가는 길이다. 큰산 언덕을 오르니 드디어 오늘 여정의 끝자락인 진도대교의 주탑이 송전선 너머로 보이기 시작한다. 저 송전선이 제주까지 가..
서해랑길 4코스를 끝내고 이어서 걷는 5코스는 원문마을에서 시작하여 혈도 간척지를 감싸고 서남쪽으로 돌아 내려가는 길이다. 오르락내리락 하기는 하지만 대부분 완만한 들길을 걷는다. 원문마을을 출발하면서 18번 국도 공룡대로를 가로질러 북서쪽으로 이동하며 송정마을회관과 원동리 마을길을 지나면 다시 18번 국도를 가로질러 남쪽으로 내려오고 장포마을을 지나 학동마을에 닿는다. 4코스를 끝낼 무렵 우리는 원문마을에 가면 식당이나 마트가 있을 것으로 기대했었다. 비를 주적주적 맞으며 흐린 들길을 걸었으니 따뜻한 국물에 맛있는 점심을 기대하는 것은 인지 상정이었다. 여행을 계획하면서 이곳이 읍내일 것이라고 생각한 필자의 착각이 이런 허망한 기대에 보탬이 되었다. 우수영 쪽으로 가는 버스가 지나는 곳이니 식당이나 편..