Custom firmware upgrade 실패하다.

벽돌을 만들어 버렸다.

왜 했을까.

사무실에서도 OpenWRT 기반 u-boot 잘못건드려서 벽돌만들었는데, 집에서 굴러다니던 Buffalo 장비하나를 또 말아 먹었다.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

ctags -R


웬만하면 걍 grep으로 살아 왔던 시절을 뒤로하고 ctags 실행해보다. 10년쯤 된 거 같으다. "-R" 옵션이 기억 안나서 맨 페이지 찾아본 것은 비밀.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

반복되는 패턴이 있다면 그것을 어떻게 인식할까? 이 패턴과 저 패턴이 다르다는 것은 어떻게 인식할까?


말뭉치를 넣어 주었을 때, 여하한의 문법에 관한 사전 정보 없이 최소의 가이드만으로 반복되는 패턴을 알아 낼 수 있을까? 다른 말로하자면, 각 글자들의 집합에 해당하는 형태에서 형태소를 찾아 내고 형태소의 나열에서 문법을 찾아 낼 수 있을까하는 질문이다. 이것은 문법의 형태론과 통사론에 해당하는 기초적인 접근인데, 문법을 모른다고 할 때 최소의 가이드는 무엇일까?라는 질문과 연결되어 있고, 모든 언어에서 발견될 수 있는 보편 문법적인 가이드 정도만으로 개별언어의 문법을 구축하고 싶은 가능성을 보고 싶은 것이다.


여기서 말하는 언어란 문자로 씌어진 언어만을 의미하며, 발화되는 음성언어의 힌트를 받는 것은 수작업에 해당하는 것이라 하겠다. 예를 들어 'ㅏ'와 'ㅐ'는 연관 없는 문자 코드지만, 발화상 변모음화 되는 관계라는 것은 힌트로 주어 질 수 있다는 것이다. 마찬가지로 띄어쓰기도 그러하다. 띄어쓰기를 자주 틀리게 표현하는 언어나 띄어쓰지 않아도 되는 언어도 있을 때 띄어쓰기를 엄격한 규칙이 아닌 힌트로 봐야한다.


생각에 대한 정리는 여기까지.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

$ more tunnel.sh 

#!/bin/sh


exec ssh -f pynoos@mypriv.example.com -o "ServerAliveInterval=300" -R20000:localhost:22 sleep 3600000

mypriv.example.com 서버를 가지고 있고, 저 명령을 실행하는 장비는 파이어월 내부에 있을 때, 20000번 포트로 ssh를 포트포워딩하는 방법.

-f 는 명령을 실행하는 세션이 끊기더라도 백그라운드로 돌아가도록 설정하기 위함이고, ServerAliveInterval은 많은 방화벽 장비가 조용한 네트웍은 잘라버리므로 살아 있음을 알리기 위함이다.


늘 그렇지만, 이런 짧은 명령을 블로깅하는 것은 나중에 복/붙하기 위함이다. 구글로 검색해서 결과창에서 바로랄까.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

글로벌 서비스하다보니, 나라 이름이 길어서 ISO Country Code (ISO 3166)로만 보였더니 몇몇 추정안되는 이름들을 보았다.


MO

CL

KH

AR

PK


순서대로.. 마카오, 칠레, 캄보디아, 아르헨티나, 파키스탄이다.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

DTrace 기반 시스템 모니터링 툴 중에 이런 것들을 써보는 것이 좋다.


$ sudo iosnoop

$ sudo opensnoop


이 둘만 잘 실행해 놓고 올라가는 로그들만 보더라도 어떤 프로세스가 시스템을 힘들게 하는지 알 수 있고, 잘 족쳐보자.

내 경우, 구글 드라이브에서 문제가 있었는데, Readonly로 공유받은 파일들을 뭔가 싱크문제가 있었는지 계속 뒤지는 모양이 보여서 그냥 냅다 종료시키는 걸로 끝냈다. 문제를 더 파악하기에는 시간이 들어 갈 것 같아서 그냥 잊고 지내는 걸로.


저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
  1. 야호맨 2016.09.07 17:32 신고

    안녕하세요. 제가 회사에서 맥을 사용하는데..
    포토샵이 너무 느려서 서치를 해보니 opensnoop 로 뭘 보라는 외국 포럼으로
    이 포스팅을 보게 되었는데요.

    알려주신 사항으로 해보니
    어떤 파일들이 싱크가 문제가 있는지.. 확인이 되긴 하는데..

    그다음 스탭이 어떻게 되어야 할지 궁금합니다.
    혹시 아실까요.

    http://cafe.naver.com/inmacbook/1490430

    • Coolen 2016.10.09 10:51 신고

      제가 이 글을 너무늦게 봤는지 모르겠습니다.

      그러나 당시에 봤어도, 마땅한 해결책은 로그를 직접봐야지 알겠네요.

MacOS-X 내장명령어로 ip2cc 라는 귀여운(?) 명령이 있다. ip 를 country code로 변환해주는 유틸리티인데, 굳이 이런 신기한 펄 스크립트가 있다.


https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/ip2cc5.16.1.html



저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

대표적인 명령행 입력 라이브러리인 readline의 입력 모드를, 이제부터 vi mode로 바꿔 볼 생각.


$ cat ~/.inputrc

set input-meta on

set output-meta on

set convert-meta off

set editing-mode vi


2015년부턴 마지막 한 줄 더 추가하는 것으로...

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

AWS 콘솔에서 얻을 수 있는 정보를 EC2 장비에서도 얻으려면, 다음 주소의 결과를 이용하면 된다.


http://169.254.169.254/


169.254.x.x 는 원래 AutoIP 대역으로 네트워크 안에 DHCP 서버가 없어도 상호 협상에 의한 IP 설정 대역인데, 그중 특별한 IP 하나를 정보 제공 용도로 사용한다.


위의 결과에 따라 하위 디렉토리(?)를 따라가다보면 예를 들어 아래와 같은 정보들을 얻을 수 있다.


http://169.254.169.254/latest/dynamic/instance-identity/document

http://169.254.169.254/latest/meta-data/public-hostname

http://169.254.169.254/latest/meta-data/local-hostname



저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

부팅과정에서 실행되는 init script 들은 모두 터미널이 없이 실행된다. 그러나 sudo 명령은 terminal이 필요한 명령이므로, su 를 사용해서 사용자 전환을 해야한다. 


sudo를 쓰고 싶은 욕망은 사용자 전환 후 실행될 명령을 전달하는데 있다.


sudo -u <user> <command> ...

su <user> -c "<command> ..."


뭔가 깔끔하지 않을듯해 보이는 복수개의 인자를 모두 하나의 -c 옵션에 넣어야하는 불편함이 있는 것이다. 헹여 인자가 길어지기라도 하면 상상만하도 못생기지 않나.


그러나, 부팅과정에서는 일반 계정으로 전환한답시고 sudo 를 사용하면 안되는 것이다.


며칠전 삽질이 생각나서 끄적임.

저작자 표시 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

+ Recent posts