Author: byun1114

  • Synology, SSH, reboot

    지난 번 화재 경보 이후로 모든 시스템을 원격으로 끄는 방법을 찾고 있다. 테스트 과정 중에서 꺼지면 다시 켜로 내려가야 하므로 우선 재부팅으로 시도한다.

    TrueNAS는 root로 로그인이 된다. 그래서 reboot를 명령어로 입력할 수 있다.

    Synology는 root 로그인이 되지 않는다. sudoers 편집도 안된다. 하지만 사용자 계정이 관리자 그룹에 속해 있다면 reboot를 시킬 수 있다. 한 번에 끄는 것을 목표로 하고 있기 때문에 비빌번호를 총 2번 입력해야 한다. 첫 번째는 ssh 접속하면서, 두 번째는 reboot 명령어를 입력하는 과정에서. 이 명령어를 입력하면 비밀번호를 입력하라는 화면이 계속 나온다. 하지만, 그래도 재부팅은 실행이 되고 있다.

    요약하면 echo 와 | 그리고 sudo -S 옵션을 이용하는 것이다.

    sshpass -p 123456 ssh -p 30000 byun1114@synology.work "echo '123456' | sudo -iS reboot"
  • 특전 U보트

    • 최고의 잠수함 영화
    • 견고한 독일제
    • 조금 아쉬운 자막 번역
  • Vicky and Her Mystery

    아내가 추천해 준 프랑스 영화.

    새끼 늑대를 입양(?)해서 키우는 과정에서 일어난 일들에 대한 것이다. 비키의 아빠는 아내와 사별하고 딸과 함께 예전에 지냈던 시골(캉탈, Cantal)로 이사를 했다. 이사일 수도 있지만, 안식년을 보낸 것일 수도 있다. 이 지역은 예전에 아내와 함께 주말에 지냈던 곳이라고 한다. 말기 암으로 아내를 떠나 보낸 이후 딸은 말을 하지 않는다. 잠도 엄마가 듣던 노래를 듣고 난 이후에만 잠을 잔다고 한다.

    첫 산책에서 길을 잃었는데 길을 찾는 중에 발견한 집에서 새끼 늑대를 발견한다. 그 집주인은 산이 주는 선물이라고 하면서 새끼 늑대를 비키에게 선물한다. 비키는 이 늑대를 몰래 집으로 데려온다. 집에서 늑대를 돌보면서 비키는 말을 하게 된다.

    문제는 이 지역이다. 양을 방목해서 키우는 동네이다. 늑대 복원 사업 같은 것으로 늑대 개체 수가 늘어나고 있다. 이 늑대들에 의해서 피해가 발생하면 국가가 보상을 해주는 것 같다. 하지만 그 보상으로 지역 주민들의 불만을 잠재울 수가 없다. 이러한 상황에서 농민들은 늑대를 발견하면 사살한다. 지역 주민들은 늑대에 대하여 매우 적대적이다. 이방인을 경계하던 주민에 의하여 집안에 잘 숨겨둔 늑대가 발각되게 되고 늑대는 강제적으로 보호구역으로 이동한다.

    그러나 미스테리는 보호 구역을 탈출해서 다시 비키에게 돌아온다. 비키는 미스테리를 안전한 구역으로 이동시키려고 산으로 간다. 때마침 눈이 내리고 비키는 저체온으로 쓰러진다. 딸이 학교에서 밖으로 나가서 돌아오지 않는 다는 내용과 딸이 큰 개와 함께 산으로 간 것으로 보았다는 내용의 소식을 아빠가 듣게 된다. 아빠는 산으로 가서 딸을 찾으려고 하지만 뛰어서는 찾을 수 없는 거대한 자연이다. 그런데 미스테리가 아빠를 비키가 있는 곳으로 인도한다.

    비키는 미스테티를 보호 구역으로 풀어주어야 한다는 것을 받아들인다.

  • PIP update all packages

    R에서는 비교적 쉽게 모든 패키지를 업데이트 할 수 있다. 나는 파이썬에서 PIP를 이용해서 패키지를 관리한다. PIP 자체로 모든 패키지를 업데이트 하는 방법은 아직 없는 것 같다. 나는 데비안의 도커의 컨테이너 환경에서 파이썬을 이용한다. 다음의 방법이 내가 적용하기 쉬운 방법이었다.

    적당한 디렉토리에서 다음과 같은 명령어로 현재 설치된 패키지를 확인한다.

    pip freeze > requirements.txt

    sed를 이용해서 ‘==’를 ‘>=’로 변경한다.

    sed -i 's/==/>=/' requirements.txt

    PyTorch 패키지는 이 방법으로 업그레이드 할 수 없다. 그러므로 torch 와 nvidia 이름이 포함된 패키지는 제외하도록 파일에서 삭제한다.

    sed -i '/torch/d' requirements.txt
    sed -i '/nvidia/d' requirements.txt

    다음의 명령어를 실행하면 패키지들 중에서 버젼이 더 높은 것들이 있는 것이 있으면, 해당 패키지가 업데이트 된다.

    pip install -r requirements.txt --upgrade --break-system-packages