2017. 5. 13현재 starcraft용 wine을 이용해서 실행이 가능함이 확인 되었습니다. 버그가 있지만 이는 시간이 해결 할 것으로 보이며 이젠 걱정 하실 필요 없습니다.


링크 참조


http://moordev.tistory.com/158


아래 글은 그냥 그때 그랬구나 하고 넘어가 주시면 됩니다.(한 달도 안되서 해결 됐네요. 역시 대단합니다.)


======================================================



1998년 처음 발매되고 전설이 된 게임 Starcraft.


이 게임이 새로 리마스터되어 4k해상도로 구현된다는 소식에 많이 이들이 환호 했었습니다.


그리고 4k 리마스터 이전에 밸런스 패치라고 할 수 있는 1.18버전의 테스트 버전이 지난 3월 31일에 배포되었습니다.

https://kr.battle.net/forums/ko/starcraft/topic/4564449121

사실 스타크래프트는 Wine1.0버전부터 아무런 문제 없이 구동이 잘 되어 왔기 때문에 얼마나 달려졌는지 확인차 Wine의 최신버전인 2.4버전으로 구동을 했는데 무슨일인지 실행이 안 되더군요(!)


물론 이전 버전인 1.17pre나 1.16버전은 당연하다는 듯이 실행이 잘 됩니다.



위의 메시지를 보시면 1.18에서 새로 추가된 ClientSdk.dll 파일의 실행이 안 된다는 것을 알 수 있습니다. 해당 파일은 아마도 Blizzrad Clinet와 관련이 있는 것을 보이며 Battle.net과의 보안 문제를 해결하기 위해 추가된 기능으로 추정됩니다.


현재 이 문제는 Blizzard Forum에도 보고되어 있고 Wine에도 보고 되어 있습니다.


아무래도 이런 식이라면 리마스터된 고해상도 스타크래프트가 나온다고 해도 리눅스에서 플레이하려면 시간이 꽤 걸릴 것 같습니다. 그동안은 어쩔 수없이 구 버전인 1.16버전이나 (Wine에선 최신 윈도우에 있는 각종 문제가 없습니다.) 문제없이 돌아가는 스타크래프트2의 브루드워MOD를 할 수 밖에는 없을 것 같습니다.


사실 Visual Studio의 버전이 올라갈 수록 이러한 문제가 계속 발생되고 있는데요. Wine측의 새로운 API가 계속 나오고 있어서 대응이 늦는 것은 어쩔 수 없긴 하지만 이 부분에서는 조금 아쉽긴 하네요.


일단 Wine의 대응을 기다려봐야지요. 하지만 제일 좋은 것은 Blizzard가 리눅스 용을 직접 내놓는 것 이지만요.

,

우분투는 생각보다 오류가 좀 있는 편입니다. 게다가 PPA를 쓰기 시작하면 이런저런 충돌등으로 오류가 좀 나지요.


그렇다고 더 안정적인 데스크탑을 위해 오류없는 OS를 쓰겠다고 하신다면 데비안같이 상당히 구버전을 취급하는 배포판을 쓰셔야 할 겁니다.


그런데 우분투는 오류가 날 경우 이를 피드백하기 위해서 제보를 받는 시스템이 있는데 문제는 보통 오류를 피드백을 해도 오류를 보내달라는 메시지가 뜬다는겁니다.


"시스템 프로그램 오류를 발견했습니다."

"오류를 보고하시겠습니까?"



이미 보고했다니까!!!!


한번 오류가 발생하면 이런 메시지가 부팅할 때마다 발생한다. 보고를 했는데 왜 자꾸??


오류보고를 했음에도 계속 오류보고를 해달라는 상당히 의미없는 행동을 하는데 중복된 짓은 하기 귀찮으니 이를 해결해 보도록 하겠습니다.


사실 이 오류메시지는 그냥 특정 폴더에 로그가 남아있으면 띄우는 별거 아닌 부팅 스크립트입니다.


하지만 해당 스크립트를 삭제하는 것은 위험한 행동이니(심각한 오류가 났을 때 자동 재부팅을 한다던지 사용자에게 오류가 났으니 하던 작업 저장하라고 알리는 역할을 합니다.)


부팅시 뜨는 메시지를 없애는 것에 집중을 하도록 합시다.


해당 스크립트는 /var/crash 폴더안에 파일이 있으면 메시지를 띄우게끔 만들어져 있습니다. 그러면 /var/crash 폴더를 비우면 그만이겠네요.


sudo rm /var/crash/*


네 끝입니다.


대신 rm명령은 위험하니 조심히 다뤄주세요. -rf 옵션을 넣는 순간....재미있는 일이 일어나니까요.


만약 저 메시지가 지속적으로 나온다면 지금 사용하는 PPA를 삭제하고 공식 저장소 패키지로 돌리는 것도 방법입니다. 보통 PPA가 원인이거든요. 아니면 오류를 방치하고 쓰는 것도 방법입니다. Windows가 대표적인 그런 방식의 OS입니다. 크게 문제가 없으면 데스크탑은 오류를 달고 사니까요.

,

http://ohhara.sarang.net/omvp/bin/


Oh! Multi Video Player란 물건입니다.

IPTV의 주소를 따기만 하는 것이 아니라 그냥 스트리밍주소를 다 딸 수 있는 물건입니다.


다만 오태호란 분은 우분투 이용자이기도 해서 우분투용도 같이 제공하는데 이 쪽이 윈도용보다 쓰기가 더 편합니다.


위의 주소로 들어가면 OMVS를 다운로드 받으실 수 있습니다.


그리고

여기서 ubuntu 14.04용을 다운로드 받으시면 되는데 우분투 16.04도 문제가 없습니다.


그리고 압축을 풀면




그리고 터미널 열고 아래와 같이 명령을 줘서 필요한 라이브러리를 설치합니다.


sudo apt-get -y install libclutter-gst-2.0-0 libpcap0.8 libgstreamer1.0-0 gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav


이제 끝났습니다. omvs를 실행하고

https://nas.moe/archives/1433


여기를 참고하시면 주소 추출 어렵지 않습니다.(왠지 불안해서...링크로 대체합니다.)


omvs를 실행시킬 때는 관리자권한이 필요합니다.


sudo ./omvs

이렇게 명령을 내리면 되겠지요.

(WinPCAP같은 복잡한 라이브러리 필요없습니다. 우분투는 필요한 건 다 있습니다.)


대충 쓰면


sudo ./omvs -i 1 -j 4 IP/24


대충 이렇습니다.


-i 1은


ifconfig을 쳤을 때 나오는 인터페이스 번호이고 -j는 컴파일할 때 많이 봤던 스레드 갯수(멀티코어라면 그 코어 수 만큼 해주면 되겠지요.) IP대역은.... 검색 하세요.

,

http://moordev.tistory.com/140


예전에 제가 LiquidSky란 서비스를 소개한 적이 있었습니다. 클라우드 게이밍방식 중 제일 진보된 방식이라고 할 수 있는 서비스인데요. 하드웨어와 OS만 제공하고 나머지는 알아서 본인이 스팀서비스 등을 통해 채우는 클라우드 데스크탑에 가까운 서비스였습니다.


미국 동부 시간 기준 12시에 (그러니까...우리나라에는 3월 15일에나 가능할겁니다.) Liquidsky 2.0이 새롭게 시작된다고 합니다. 그동안은 비용 문제나 딜레이 문제로 liquidsky 서비스를 사용을 포기하신 분들이 있었는데 이번에는 무료플랜이 생긴다고 합니다.(무료 플랜에 관한 이야기는 이미 2월에 공지가 되어있었습니다.)


이전에 비해 훨씬 저렴해졌다. 물론 이전과 동일한 무제한 플랜도 준비되어있다고 한다.


광고를 보면 SkyCredit을 받게 되는데 이 SkyCredit을 이용해서 서비스를 받는 것입니다. 대신 2주이상 접속을 안 하면 데이터가 날아간다고 하네요.


그리고 기존에는 Windows 2012 Server기반이었지만 이번에는 Windows 2016 Server기반으로 Windows10 호환 체제를 갖춘다고 합니다. 동시에 Vulkan을 지원하게 된 것도 박수칠만한 일입니다.


사실 스팀박스보다 안드로이드 단말기+LiquidSky가 훨씬 더 게임하기에 좋다고 보고 있습니다. Monthly plan만 해도 XBOX Live계정 요금하고 비슷합니다. PC게임의 거실 점령은 엉뚱한 곳에서 이뤄지고 있다고나 할까요.


안드로이드 앱은 기존에도 지원하고 있었으니 당연히 2.0도 같이 나올 듯 한데 iOS나 Raspberry pi는 지원 될지 여부는 아직 불투명합니다. 개발중이라고는 했는데 이건 뭐 믿을 수가 있어야 말이지요. Raspberry pi가 지원되는 순간 거대한 플레이스테이션이나 Xbox가 위협을 받을지도 모릅니다. Raspberry Pi는 5만원에 케이스와 본체를 구입가능하고 USB포트가 달려있어서 확장성도 뛰어납니다.


일단 저는 이 서비스의 진화를 기대하고 있습니다. 그동안 말이 많았던 클라우드게이밍의 완성을 볼 수 있다고 생각하고 있거든요.


한국시간 3월 15일 기다리고 있겠습니다.

,

Pokémon GO




뭐 이젠 너무 유명한 게임입니다. Pokemon Go.


스마트폰을 쓰면서 밖으로 나가 게임을 하라는 바로 그 게임입니다.

누군가의 제보가 들리면 우르르 달려가 스마트폰을 붙잡고 덜덜 떨리는 손으로 화면을 지켜볼 때의 그 짜릿함. 이게 바로 이 게임의 재미의 일부입니다.


사실 저는 약간의 역마살? 비슷한 기질이 있어서 이 게임에 최적화된 인간(?)이라고 할 수 있는데요. 가까운 거리도 택시를 타는 일부 귀차니스트에게는 그냥 힘든 게임이라는 소리를 많이 들었습니다.


하지만 이 게임... 큰 문제가 생겼습니다. 바로 움직이지 않고도 게임을 한다는 지극히 귀차니즘스러운 문제 때문이었습니다.




GPS조작?


GPS조작이라는 것은 사실 이전에도 많이 연구 되어 왔습니다. 실제로 군사적인 목적이 강했습니다. GPS가 본래 군사용이었다는 것을 아는 사람이라면 그것을 방어하기위해 그러한 연구가 있었다는 것은 잘 알 수 있습니다.

다만 일반인들에게는 그것이 별로 와 닿지는 않았을 겁니다. 아니 알려고도 안 했을 겁니다. 하지만 GPS가 일반에 공개되고 그걸 활용하는 기기가 많아 지면서 이제는 현대사회의 필수품이 되었습니다. 이는 인터넷하고도 비슷하지요. (인터넷도 처음에는 군사용 네트워크인 AlphaNet이 원조입니다. 이후 CERN에 의해 WWW가 나오면서 전세계에서 사용하는 것이 되었습니다.)


무엇보다 군사적인 조작이라면...대규모 GPS교란이 있겠습니다. 만약 어떤 적성 국가가 특정 국가에 GPS교란이 일으키는 전파를 쐈다고 합시다. 그러면 그 나라의 GPS들은??? 일단 현재 내 위치와 네비게이션의 위치가 달라 엉뚱한 길을 안내할 것입니다. 그리고 스마트폰들은 위치기반 서비스들이 바보가 될 것이고 군사적으로는 정밀 유도 미사일이 이상한 방향으로 날아갈 겁니다.


Pokemon GO의 GPS조작은 이런 군사적 조작과는 거리가 멉니다. 단순히 수신된 GPS좌표를 임의의 좌표로 바꿔주는 지극히 기초적인 것이니까요. 안드로이드에서는 이를 개발자용 기능으로 임의 좌표로 넣을 수 있었기에 해킹 수준도 아닙니다. 사실 개발 중 테스트를 위해 만든 기능을 악용한 셈입니다. 


이런 것을 보다보면 답답해서 먼저 돌아가실 것 같다.



이런걸 왜 만들었냐부터해서 신고한다까지 참 말도 안 되는 헛소리하는 놈들이 있는데 이게 없으면 위치 기반 개발을 어떻게 하라고요. 직접 개발자가 차비들여서 가야합니까? 원래 플레이스토어 리뷰는 보는게 아니라고는 하지만 공부가 필요한 사람들이 너무 많습니다. 이런걸 해킹툴이라고 생각하는 사람은 대체 뭡니까?


뭐 요즘은 공대생도 헛소리를 하는 시대가 되어버려서 답답한 노릇이기는 하지만 일단 해킹의 영역까지는 되지 않습니다. 따라서 법적으로는 문제가 되지 않습니다. 다만 나이앤틱과의 약관 위반일 뿐이지요.


그런데 약관 위반도 계약 위반이니 잘못된 것은 잘못된 것입니다. 하지만 FlyGPS등의 앱들을 통해 위치를 조작하는 것이 잘 걸리지 않는 이유는 뭘까요? 일단 기술적인 이유가 있습니다. 사실 여러분들이 스마트폰을 통해 사용하는 GPS기능은 완전한 GPS가 아닙니다. 진짜 GPS는 지금 지구상에 떠있는 수많은 위성의 위치와 이를 기반으로 한 삼각함수를 통해 계산을 합니다. 위치추적을 위한 위성의 수는 어마어마해서 이들의 위치와 전파가 돌아오는 속도를 통해서 계산을 하면 꽤 정확한 위치가 나온다고 합니다. 그런데 이렇게 모든 위성을 이용했다가는 계산 속도 문제로 실시간 위치 파악이 불가능합니다.

지금 떠있는 GPS용 위성 갯수가 30개라면




즉, 경도와 위도라는 두 개의 출력이 나오는 함수에 입력 변수가 자그마치 60개인 미친 삼각함수를 풀어야 하는 겁니다. 그런데 이것이 고정된 것이면 문제가 안 될텐데 실시간으로 변한다는 것이 더 큰 문제입니다. 현재 스마트폰 기준으로 이런 식으로 계산하면 10분 정도 걸린다고 합니다. 이러면 실시간 서비스 자체가 불가능하겠지요. (말이 좋아 삼각함수지 지구는 둥글기 때문에 더 복잡합니다.)


그래서 현재 사용하는 위치서비스는 A-GPS(Assistanced GPS)라 해서 통신망기반 GPS서비스입니다. 피쳐폰 시절의 위치 추적을 기억하시나요? 경찰에서 주로 사용했는데 정확한 위치는 알 수 없지만 적당한 위치는 알 수 있는 수준이었습니다. 여기의 정확도를 위해 진짜 GPS를 동원하는 건데 모든 위성을 쓰는 것이 아닌 통신망을 통해 특정 위치를 찾고 여기에 제일 가까운 몇몇 위성의 정보 만을 사용해서 위치 추적 속도를 개선한 것이 A-GPS입니다.


즉, 스마트폰의 GPS정보란 정확한 것이 아닙니다. 실제로 Pokemon GO를 켜놓고 가만히 냅두더라도 혼자서 이리저리 왔다 갔다 하는 모습을 볼 수 있는데 사용되는 위성이 바뀌고 이에 따른 오차가 생기기 때문에 실제로는 움직이지 않았음에도 스마트폰의 좌표가 계속 변하는 거지요. 게다가 통신망이 불안정할 경우 기준이 되는 위치마저 변해버립니다. 그러니 몇 100M에서 심한 경우 몇 KM의 오차가 생기기도 하는데요. 그 상태에서 지하라도 내려가게 되면? 혼자서 발광하는 제 캐릭터의 모습을 볼 수 있을 겁니다.


사실 나이앤틱에서 대량으로 밴을 먹였을 때 사용한 것 중 하나가 전세계를 순간이동하거나 절대로 불가능한 위치 변화를 보인 사람을 통계적으로 확인해서 밴을 먹인 겁니다. 그런데 정상적인 플레이어도 몇 100M오차는 흔히 일어나고 저는 수원에서 평택으로 위치가 잡히는 오류도 겪은 적이 있습니다. 그런데 이런 사람들도 밴을 먹였다가는 선의의 피해자가 발생하고 말 겁니다.


아직은 GPS서비스란 녀석이 불안정한 탓에 네트워크 위치(통신망 위치)와 최종 GPS위치가 크게 차이가 나지 않으면 이게 Fake인지 True인지 알 수가 없는 것입니다. 물론 순간 이동을 숨쉬듯이 하면 이건 100% Fake라 걸고 넘어 갈 수 있지만 살짝 살짝 원래 위치에서 조정하는 수준이면 점점 더 알아낼 길이 없습니다.


실제로 이런 사람이 있다면 밴을 먹이는 것은 거의 불가능에 가까울 것이다.



Bot문제


GPS조작은 그렇다 치는데 이젠 더 큰 문제가 생겨버렸습니다. 그냥 켜놓고 자면 알아서 포켓몬을 잡고 알아서 체육관을 깨는 Bot들이 활개를 치기 시작했습니다. 사실 Bot문제는 Pokemon GO의 문제만은 아닙니다. 사실 대다수 MMORPG게임이라면 다들 한 번씩은 보셨을 오토들이 바로 그들이지요. 사실 저는 이런 Bot들을 볼때마다 한마디씩 합니다.


"그러면 게임이 재미있냐..?"


솔직히 GPS조작을 통해 게임을 하는 것도 재미가 없더군요. 저도 잠깐 해봤는데 집에서 하느니 나가는 것이 더 재미있습니다. 공원을 빙빙 돌면서 잡는 맛도 있고 저랑 똑같은 사람들이랑 같이 하는 맛도 있거든요. (사실 게임이란 것은 같이하는 것이 혼자하는 것보다 훨씬 더 재미있습니다. 이건 친구들끼리 PC방 가는 것과 비슷한 이유입니다.) 그런데 이건 제가 하는 게 아무것도 없습니다. 게임이 재미라는 것이 전혀 없는 것을 떠나 저는 게임을 하는 것이 아닙니다. 그런데 의외로 성황중이더군요. 이걸 돈받고 파는 놈들도 있습니다. 뭐하러..??


근데 이게 그냥 혼자 잡고 놀면 되는데 그게 문제가 아닙니다. Pokemon GO는 체육관이라는 대결 요소가 있습니다. 그런데 체육관을 기껏 먹어도 이런 Bot이 와서 깨고 나면 허탈합니다. 실제 아무도 없는데 누가 와서 내 체육관을 깨고 있더라는 것은 자주 보이는 이야기입니다. 이는 Pokemon GO뿐만 아니라 모든 MMO게임의 문제입니다. 보통 Bot은 게임을 업데이트함으로서 이를 막아버리는 방식을 쓰는데 문제는 창과 방패의 대결에서 방패가 이기는 것 봤습니까? 계속 문제가 생길 수밖에 없다는 겁니다. 그리고 그 피해는 정상적인 플레이를 하는 사람들이 당하고 있는 중입니다.


실제로 Bot에 대해서 나이앤틱이 사용 내역을 수집하고 있는 중입니다. 게임을 업데이트 하고 Bot사용이 걸리면 이를 DB에 넣었다가 특정 기간에 Ban Wave를 한다고 합니다. 그런데 게임을 업데이트하는 기간이 너무 길다는 것이 문제입니다. 즉 Bot을 잡는 기간 = 업데이트 후 잠깐 동안인 셈인데(어느정도 기간이 지나면 그걸 우회하는 Bot이 나오니까요) Pokemon GO의 업데이트 주기는 상당히 긴 편입니다. 그동안 Bot들에 의한 피해를 받을 수밖에 없는 셈입니다. 난감하지요. 일단 기술적인 문제로 잡으려면 잡을 수는 있는데 기간이 너무 긴 겁니다. 이쪽은 운영상의 문제가 있는 셈이지요.



그렇다고 이 글만 믿고 "야 밴 못 먹인다! 신난다!" 하지는 마세요. 기술은 계속 발전하고 있으니 어떻게 될지는 알 수 없거든요. 실제로 Ingress는 대량으로 잡아들인 전적이 있는 놈들이니 A-GPS의 문제나 Bot의 문제는 기상천외한 방법으로 잡을지도 모르거든요.


하지만 지금처럼 방치를 했다가는 Pokemon GO란 게임은 추억속의 게임으로 전락할지도 모릅니다. 그건 나이앤틱이 풀어야할 숙제이겠지요.

,




크랜치뱅이라 했던 배포판을 혹시 기억하시나요? 나름 꽤나 유명했던 배포판인데 저사양용으로 제작되서 상당히 가볍기로 유명했던 배포판입니다.


로고도 상당히 인상적이었는데

그냥

#!


이게 로고였습니다. 하지만 이 배포판은 결국 업데이트가 중단되고 말았고 아쉬움 속에 사라지고 말았지요.


하지만 2015년 6월 크런치뱅 제작자들이 다시 모여서 새로운 프로젝트를 시작했습니다. 일명 bunsenlabs란 배포판인데요. 그냥 크랜치뱅이 그대로 돌아왔다고 해도 과언은 아니더군요.


Openbox + tint2 + conky 그리고 몇몇 어플리케이션만을 넣고 배포되는 것으로 크런치뱅만큼 상당히 가볍습니다. 기본 상태로 메모리를 180MB를 먹고 있는 것이 확인 되었습니다. 여기서 더 가볍게 하려고 하면 더 가볍게도 가능할 지경입니다.


처음 설치는 Debian과 동일한데(Debian 기반이니까요.) OS설치후 이런 저런 것을 물어보는데 Backport저장소를 추가할 것인지 물어보는 때가 있는데 꼭 해주는 것을 추천합니다.


2017년 현재 Debian Jessie의 커널 버전은 3.1로 4.9가 넘어간 현재 버전에 비해 상당히 커널 버전이 낮습니다. 그리고 최신 하드웨어 지원도 별로입니다. 따라서 모든 OS의 설치와 설정이 끝난 다음 다음 명령어를 꼭 터미널에 넣어주시길 바랍니다.


sudo apt-get update

sudo apt-get install aptitude

sudo aptitude -t jessie-backports update

sudo aptitude -t jessie-backports upgrade


이렇게 해주시면 백포트 저장소를 통해 어느정도 패키지버전이 업그레이드 되는 것을 보실 수 있습니다.


그리고 깜빡했는데 기본적으로 한글폰트가 없으므로 꼭 한글 폰트를 설치해주시길 바랍니다.


sudo apt-get install fonts-nanum



더 가볍게 쓰고 싶으시다면 composite를 삭제하고 xfce4-power-manager삭제하고 수동으로 전원 관리를 해주시면 편리합니다.


sudo apt-get purge compton

sudo apt-get purge xfce4-power-manager


참고로 10년전 랩탑의 윈도7에서 버벅거리던 H.264 동영상 재생이 BunsenLabs를 쓰고 쌩쌩히 돌아가는 것이 확인 되었습니다. 뭔가 상당히 투박하지만 굉장히 가볍기 때문에 구형 하드웨어 재생용으로는 상당히 탁월한 것을 알 수 있습니다.



(스크린샷들을 날려먹었습니다.)

,

One drive는 Microsoft가 제공하는 클라우드 서비스입니다. 물론 윈도를 설치하면 기본적으로 설정 되어있기 때문에 아는 사람은 다 알고 있습니다.


사실 office365를 구독하면 1TB라는 꽤나 쓸만한 공간을 주기 때문에 저는 이 쪽을 애용하고 있던 편인데요. (물론 제가 구독한 것은 아니고 학교에서 구독을 하고 있어서...) 크롬의 웹 앱을 통해서 Microsoft가 직접 제공하는 웹오피스를 쓸 수도 있어서 상당히 편리하게 쓰고 있었습니다.


그런데 One drive에 파일을 올리려고 할 때마다 크롬이나 파이어폭스가 뻗는 증상이 자꾸 보이더군요. 처음에는 파이어폭스로 하는데 자꾸 뻗길래 파이어폭스 문제라고 생각했는데 크롬에서도 동일한 증상이 생겼습니다.


웃긴것은 클래식모드로 넘어가면 아무런 문제없이 잘 된다는 것이다. 즉 모던모드에서 알 수없는 문제가 있다는 것.


제 컴퓨터 문제인가 하고 검색해봤더니 저만 그런 것이 아니더군요. 전세계의 모든 리눅스PC에서 Onedrive사용에 문제가 있다고 합니다. 문제는 오로지 리눅스에서만 문제가 일어났고 Windows나 OSX에서는 전혀 문제가 없다고 합니다.


https://productforums.google.com/forum/#!msg/chrome/x-B5T7tnVuc/fTVGlzgfBgAJ



크롬 포럼에서는 Onedrive를 쓰면 CPU사용률이 100%로 치솟는 문제가 있다고 하면서 이를 해결하는 방법을 제시했는데요. 그 방법이라는 것이...



Edge나 IE11로 브라우저를 속이라는 것입니다.


아니...이건 뭐...???


코드상에서 Linux 혹은 Ubuntu라는 것이 나오면 특정 자바스크립트 코드가 바뀐다고 하더군요. 자세히는 모르겠지만 Prefetch형태로 자바스크립트를 구동하던 것이 Plain Text형태로 구동하면서 속도가 극악하게 느려진다는 것이 적당한 설명입니다.


근데 Prefetch라는 것이 리눅스에서도 잘 돌아가거든요. 그런데 리눅스는 어쩐일인지 Plain TEXT로 보여준다는 것이지요.


일부러 그랬다고 하기에는 애매한데 기분이 엄청 나빠지더군요. 일단 방법은 알려드리겠습니다.


크롬기준으로(파이어폭스는 웹오피스가 느려서 One drive 쓸 때에는 잘 안 씁니다.) 크롬 웹스토어에서 User agent Switcher나 비슷한 확장을 설치합니다.


https://chrome.google.com/webstore/detail/user-agent-switcher-for-g/ffhkkpnppgnfaobgihpdblnhmmbodake/reviews


그리고 오른쪽 위에 새로운 아이콘이 생기는데 이걸 누르고 Edge를 선택합니다. 그런다음 Onedrive에 접속하면 끝





실제로 기본 Agent일때와 Edge일 때의 시스템 성능을 살펴보면 화가 날 지경입니다.


기본 Agent(Chrome, Ubuntu)일 때 CPU사용률이 25%로 나오는데 이는 4코어짜리라 CPU0만 갈구고 있기 때문.


이쪽은 Edge Agent일 때 잠시 25%까지 올랐지만 금방 0%로 떨어졌다. 즉 이 쪽은 금방 일이 끝난다는 것.


실제로 Edge로 User Agent를 맞추고 웹오피스와 Onedrive 등 Microsoft 서비스를 써봤는데 굉장히 쾌적하게 굴러갔습니다. 이쯤되면 의도적으로 한 것 아니냐는 짜증도 올라오는데요. 그냥 단순한 실수라고 믿고 싶습니다.


개인적으로 좋아하지는 않았지만 싫지도 않았는데 정나미가 좀 떨어지네요. Micro$oft...

,

요즘은 IE같이 정신놓은 브라우저 사용자를 제외하면 스트리밍 동영상 주소 알아내는 것은 어렵지 않습니다. Firefox나 Chrome에는 아주 훌륭한 확장들이 존재하기 때문이지요.


하지만 IE만 지원하는 사이트에 들어가야 하거나 별도의 프로그램으로 동영상을 재생하는 경우가 있는데 이러한 방법으로 한동안 KBS 다시보기를 주소를 알아내거나 다른 실시간 동영상 사이트의 주소를 알아내는데 고생을 했던 적이 있습니다. (지금은 IPTV가 많이 발전해서 굳이 그럴 이유는 없긴 합니다.)


그동안 주로 쓰인 프로그램이 URL Snooper란 프로그램입니다.

정말 유용하게 사용했던 프로그램. 지금은 Ubuntu라 쓰이지 않는다. 출처 - https://www.donationcoder.com/Software/Mouser/urlsnooper/ 여기가 공식홈페이지

그냥 프로그램을 실행하고 스트리밍 사이트에 들어가면 짠하고 주소가 잡혔습니다. 그리고 해당 프로토콜을 지원하는 프로그램으로 다운로드 받으면 그만이었습니다.

다른 말로는 패킷납치감금(?)이라고도 하는데 일회용으로 날아온 패킷을 납치한 다음 디스크에 감금(?)하는 방식이라고 할 수 있습니다.


어쨌건 저 주소를 알아내는 것을 리눅스나 맥에서 못하란 법은 없지요. 사실 저런방식으로 패킷을 납치하는 곳에 주로 쓰였던 프로그램은 Wireshark란 프로그램이 있습니다.



그런데 이 Wireshark란 프로그램은 패킷 분석 프로그램으로 보안이나 네트워크 점검을 위해 사용되는 프로그램입니다. 그러니까 단순한 동영상 주소 알아내는 데에 이걸 쓰는 것은 닭잡는데 소잡는 칼 쓰는 거고 커피하나 마시는데 금 그릇 꺼내는 꼴입니다. 쉽게 말해 과한 겁니다. 이런 간단한 작업에는 간단한 프로그램이 딱입니다. 그런 프로그램을 찾아보니 역시 있습니다.


URL Snooper의 클론인 pyURL Snooper란 프로그램입니다. 파이썬으로 짜여져 있고 맥에서는 테스트가 되지 않았다고 하는데 GTK와 pcapy galde가 설치되어 있으면 그냥저냥 되는 것 같습니다.


개발자 말로는 Fedara하고 Windows에서만 시험해 봤다고 합니다. 그런데 Fedora가 되면 Ubuntu도 됩니다. 물론 Arch도 됩니다. 그냥 그렇다고 합시다.


한번 써 봅시다.


http://pyurlsnooper.sourceforge.net/

주소는 여기입니다.

1.4 버전을 다운로드 받도록 합시다. 사실 2010년 이후 업데이트가 끊기기는 했지만 아직도 잘 돌아갑니다.


tar.gz형태로 다운로드 받고 압축을 풀면 사용 준비는 끝입니다. 이제 필요한 라이브러리를 설치해 봅시다.


sudo apt-get install python2.7 python-pcapy python-glade2 python-gobject


이거 외에도 얼마나 있을지는 모르겠는데 아무튼 이 정도 설치해 봅시다.


실행 방법은 터미널을 열고 다음과 같이 실행하면 됩니다.


cd 압축 푼 곳

sudo python pyurlsnooper-gtk.py


역시 GTK스러운 UI디자인... 간단하다 못해 이게 다 인가 싶다.

네트워크 인터페이스에서 현재 자신이 사용하는 인터페이스를 선택 해주셔야 합니다. 우분투 16.04기준


enp4s = 유선랜입니다.

wlo = 무선랜입니다.

bluetooth = 블루투스입니다.


이외에도 여러가지가 있지만 그건 잘 쓰지 않습니다.


그리고 Filter 부분은 어떤 주소를 긁을 것인지 선택하는 곳입니다. MP4로 끝나는 주소 혹은 RTSP프로토콜 등등 어떤 주소인지 적당히 아신다면 필터를 써서 편하게 알아낼 수 있습니다. 만약 아니라고 하더라도 프로그램 실행 후 긁어지는 주소를 살펴보면 어떤 것이 원하는 주소인지 알 수 있습니다.


일단 Capture!를 누르시고 동영상을 재생하면...


짠!


이제 주소를 알아냈으니 긁어내기만 하면 됩니다. Mencoder나 VLC 등을 이용하면 됩니다. VLC로 재생까지만 하면 일단 끝입니다. VLC의 스트림 기능은 엄청 강력하거든요. VLC로 덤프하는 것은 나중에 알려드릴게요.


일단 여기까지 스트리밍 주소를 알아내는 것을 알아냈습니다. 이제 유용하게 쓰실일만 남았네요.


17년 7월


우분투 최신판과 호환성 문제가 생겼다는 제보가 들어왔습니다. 저도 다시 확인해보니 같은 문제가 있군요.


https://sourceforge.net/p/pyurlsnooper/discussion/1084448/thread/9bc091e0/?limit=25

2011년부터 있었던 문제인데 아직까지 수정이 안 된 것으로 보입니다.


해결 방법은 다음과 같습니다.

pyurlsnooper-gtk.glade

이 파일을 텍스트 에디터로 열어줍시다. Gedit도 좋고 Pluma나 Leafpad도 좋습니다. nano나 vi도 좋습니다.


그리고 86번째 줄에 가보시면 


  <property name="icon_name">stock_filter-data-by-criteria</property>


라고 쓰여있는 것을 보실 수 있을 겁니다.


이것을


  <property name="icon_name">stock_search</property>


요렇게 수정해 주시면 됩니다.



,

여러분들은 대용량 파일을 보내야 할 때 어떤 방법을 사용하나요?

클라우드? 대용량 이메일?


그런데 위 방법의 큰 문제는 모든 파일들이 어딘가의 서버를 거쳐서 나가야 한다는 문제가 있었습니다.


즉, 파일이 어딘가의 중앙서버에 저장 된 뒤 해당 파일을 다운로드 받아야 했었던 겁니다. 그런데 이왕이면 중앙 서버를 거치지 않고 보내는 사람과 받는 사람이 직접 연결하면 어떨까요? 이게 P2P 방식의 일종이라고 볼 수 있는데 당나귀나 비트토렌트처럼 불특정 다수에게 파일을 뿌리는 것이 아닌 특정 누군가에게 파일을 전송한다는 개념이 먼저였습니다.


그런 서비스 중에서 상당히 마음에 드는 곳이 있었는데 그 서비스가 바로

https://send-anywhere.com/


바로 여기입니다.


말그대로 어디서든 파일을 보내는 서비스인데요. 그동안 파일 전송 서비스가 꽤 있었지만 윈도우만 지원하거나 안드로이드만 지원하는 상당히 뭐 같은 서비스들 투성이었던 반면 이 서비스는 모든 OS를 다 지원합니다. 일단 크롬 앱이 있기 때문에 크롬만 깔리면 무조건 가능하고 해당 OS용 네이티브 앱도 다 있습니다.


당연히 액티브X같은 후줄근한 기술도 쓰지 않습니다. 그냥 보내는 측에서 프로그램을 설치하고 받는 측에서 웹페이지를 사용하거나 프로그램을 통해 받기만 하면 됩니다.


그럼 한번 보도록 하지요.


해당 사이트 오른쪽 위에 보시면 다운로드 버튼이 있습니다. 해당 버튼을 클릭하면 지금 사용하는 OS에 따라 알아서 프로그램이 다운로드 됩니다. 윈도우라면 exe형태로 우분투라면 deb 형태로 말이지요.


해당 프로그램을 설치하면 아래와 같이 프로그램을 사용할 수 있습니다. 받는 사람의 아이디나 아이피주소? 그런거 몰라도 됩니다. 오로지 받는 사람에게 알리는 것은 랜덤하게 만들어진 숫자만 알려주시면 됩니다.


그럼 자세히 보여드리도록 하지요.


제가 표시한 부분을 보시면 보내기와 받기 두 가지 버튼이 있습니다. 당연히 저것만 보시면 무엇인지 충분히 아실 겁니다.


일단 보내기 버튼을 눌러봅시다.


말그대로 파일을 끌어다 놓으라고 하시니 파일을 끌어다 놓으시면 편리하다. 이메일 파일 첨부하고 비슷하지 않은가

보내기 버튼을 누르시면 보낼 파일 혹은 폴더(!)를 끌어다 놓거나 클릭해서 선택 하라고 나옵니다. 말 그대로 파일들을 전부 다 끌어 놓으시면 됩니다. 한번에 싹 전송 되니 편리합니다.


그리고 보내기 버튼을 누르시면 6자리의 숫자 키를 알려줍니다. 저는 여기서 숫자키를 가렸는데 고작 6자리이므로 알려주기도 편하지요. 전화나 문자 카톡 기타 등등 연락할 수 있는 수단을 전부 이용할 수 있습니다.


그러면 보내는 측에서는 모든 준비가 끝납니다.



이제 파일을 받아야겠지요? 참고로 보내기 버튼을 누르고 10분동안 아무런 반응이 없으면 파일 전송은 취소됩니다. 하지만 10분이면 모든 것을 끝내기 충분한 시간입니다.


일단 받는 측에서도 Send Anywhere 프로그램을 사용한다는 가정하에 알려드리겠습니다. 만약 귀찮으면 그냥 웹에서 다운로드 받는 방법도 있는데 크롬을 제외한 다른 브라우저는 참 귀찮습니다.(폴더 전송 방식이 크롬만 됩니다.)


일단 받는 측에서는 프로그램에서 받기 버튼을 누르시면

이렇게 나오는 데 그냥 6자리 키를 입력하시면 됩니다. 끝입니다. 이제 기다리시면 됩니다.


기본 다운로드 폴더는 보통 크롬 브라우저의 기본 다운로드 폴더와 동일합니다. 그냥 다운로드 폴더라고 생각하면 됩니다. 이건 모든 OS공통이더군요.


속도는 P2P특성상 상당히 빠릅니다. 특히 인터넷 속도가 어마어마한 우리나라에서는 10기가를 10분 이내로 전송합니다.


그럼 프로그램을 쓰는 것은 그렇다 치고 받는 측이 너무 귀찮아서 그렇다면 어떻게 해야할까요?


https://send-anywhere.com/

접속한 후 위 그림에 빨갛게 동그라미를 친 부분에 6자리 숫자를 입력하면 됩니다.


뭐 다음은...똑같습니다. 다만 파일을 한꺼번에 받는 것이 아니라 따로따로 받아야 합니다. 웹 전송은 어쩔 수 없습니다.


어떤가요? 빠르고 편리한 서비스인 Send Anywhere 였습니다. 저는 Liquidsky에 파일을 보낼 때도 썼는데 상당히 편리했습니다. 모바일도 지원한다고 하니 유용하게 쓰실 수 있다면 좋겠습니다.

,

리눅스 커널은 이미 여기저기에서 쓰이고 있기 때문에 여러가지 수정이 되었습니다. 하지만 리누즈 토발즈 형님께서 어느정도 정리를 하고 있기 때문에 실제로 리눅스 커널의 소스트리에 포함되는 패치는 전체 메일링되는 패치에 비해 극히 적다고 합니다.


그러니까 여기에 등록되기 위해서는 정말 까다로운 심사를 거쳐야만 등록이 가능하다는 것이다!!


그 이유는 안정성 문제이기도 하고 기존 API와 충돌도 적어야 하고 또한 특정 기기를 위한 패치만을 추가할 수도 없는 노릇이기 때문입니다. 덕분에 안드로이드 커널은 기존 리눅스 커널과 상당히 소스가 달라져 있습니다. 안드로이드 커널은 아무래도 특정 기기를 위해 만들어지다보니 바닐라 커널(그러니까 리누즈 토발즈 형님의 순정 커널을 의미합니다.)에 이런 저런 수정이 많이 이루어져 있습니다. 멀리 갈 것도 없이 특정 스마트폰용 커널을 다른 스마트폰에 입히면 벽돌 되는 것과 같은 겁니다.


하지만 이런 극한의 안정성을 추구하는 것은 리눅스가 기본적으로 서버용으로 주로 쓰이기 때문이기도 합니다. 하지만 데스크탑 사용자들은 약간 불안정한 것 정도는 봐줄 수 있습니다. 왜냐하면 데스크탑은 하루종일 켜놓는 경우가 많이 없으니까요. 여차하면 그냥 껐다가 다시 켜면 그만인 것이 데스크탑입니다.

 그래서 데스크탑 사용자들은 대부분 빠른 업데이트를 요구합니다. 아무래도 더 많은 하드웨어 지원과 더 많은 기능을 주로 요구하기 때문인데요. 이는 커널쪽도 마찬가지입니다.


그래서 Vanilla커널을 대신하는 각종 최신 기술로 무장한(대신 그만큼 무슨일이 벌어질지 모르는)Xanmod커널이란 것을 소개할까 합니다.


Vanilla는 좀 심하게 패치가 들어가지 않아서인지 커스텀커널이라 할 수 있는 커널들이 있는데요. 제가 소개할 Xanmod나 Liquorix나 pf-Linux 등이 있습니다. 문제는 이 커널들은 대부분 소스 코드만을 제공하고 바이너리는 직접 컴파일을 해야만 했다는 것이 문제입니다. 게다가 제가 몇 가지를 써보기는 했는데 이쪽도 약간 보수적인 것인지 다음 버전 Vanilla와 차이가 그렇게 많이 나지는 않았습니다. 그에비해 Xanmod는 우분투만 지원하지만 바이너리도 제공하고 성능 차이가 눈에 보이더군요. Wine-Staging을 처음 써봤을 때의 그 느낌이라고 할 까요? 아무튼 상당히 마음에 드는 속도를 보였습니다.


역시 줄줄이 설명하는 것보다 써보는 것이 좋겠지요?

사실 xanmod커널은 우분투를 중점적으로 지원합니다. 데비안에서도 된다고 하는데 데비안은 안정성을 추구하는 배포판이다보니 굳이 커스텀 커널을 설치해서 그 안정성을 깨뜨리는 것은 좀 안 맞다고 생각합니다. 그리고 바이너리가 우분투에 맞춰져 있는 것도 한 몫합니다.


https://xanmod.org/


이곳에 접속해서 한번 Xanmod 커널을 설치해보도록 합시다.


http://deb.xanmod.org/xanmod-repository.deb


쉬운 방법으로는 위의 링크를 클릭해서 해당 Deb파일을 설치하고(xanmod저장소 추가패키지)


sudo apt-get update

sudo apt-get install linux-xanmod-버전


을 설치하는 방법이 있습니다. 이 경우 업데이트가 굉장히 편리하기 때문에 기존 우분투 커널 업데이트하듯이 할 수 있습니다 대신 커스텀 커널 특성상 특정 하드웨어에서 충돌이 있을 수 있고 테스트가 Vanilla만큼 충분히 이루어지지 못했기 때문에 무작정 업데이트 했다가 삽질을 경험할 수도 있습니다.


이럴걸 대비해서 기존 Kernel PPA처럼 커널 DEB을 직접 받아다가 dpkg로 설치하는 것이 더 편리할 것이라고 생각합니다. 아무래도 커널은 자주 업데이트하면 좀 곤란할 때가 많거든요. 그냥 가끔 생각날 때 업데이트하더라도 늦지는 않습니다.


그 방법은 다음과 같습니다.

저는 이 쪽을 더 추천합니다.


https://sourceforge.net/projects/xanmod/files/releases/


여기서 원하는 버전을 다운로드 받습니다.

난 여기서 4.9.9 버전을 다운로드 하겠다!

그러면 tar.xz 형태로 다운로드 받게 될텐데요.


압축을 풀면 세개의 deb파일이 들어있을 겁니다.



여기있는 deb파일을 전부 설치하면 된다. 현재는 컴퓨팅 환경상 amd64만 패키지를 제공한다.


그러면 그 deb파일을 전부 설치하면 됩니다.


만약 이전에 xanmod커널을 쓰고 계셨다면 커널을 업데이트 한다음 synaptic을 통해 이전 커널을 정리 하실 수 있습니다. 솔직히 귀찮으면 그냥 냅둬도 되지만 커널 정리가 필요하다면 나중에라도 한번 싹 정리를 해주시는 것이 정신 건강에 좋습니다.



만약 xanmod커널 설치 후 부팅이 안 된다면 Shift키를 누른 상태로 부팅을 해보시길 바랍니다. 이 때 보이지 않던 Grub메뉴가 뜰 텐데 이전 커널버전으로 부팅하시고 압축파일에 첨부된 purge-xanmod 어쩌고 스크립트를 실행해 주시면 깔끔하게 Vanilla커널로 쓸 수 있게 됩니다.



위의 내용을 잘 읽어보시고 한번 xanmod 커널을 경험해보세요. 정말 속도 하나는 상당히 개선됨을 알 수 있습니다.



참고. 커널 버전을 알 수 있는 방법:

터미널에서

uname -r


혹은


우분투 설정- 자세히보기


,