전체 글 326

[openwrt] wget https 주소 안됩니다!!

openwrt 에서 wget-ssl 패키지를 opkg 를 통해 설치하면 wget 도 https 주소를 처리할 수 있다고 안내하고는 있습니다. 하지만 이 wget-ssl 패키지가 64bit 라이브러리를 의존하는 것 같습니다. 32bit 배포판에서 https 주소를 wget 으로 받아보겠다고 괜히 설치하시면 멀쩡한 wget 자체도 symbol not found 오류를 뿜으며 실행되지 않습니다.. 저장소가 http 주소도 지원하면 주소에서 https 만 http 로 바꿔서 쓰면 깔끔한데 그렇지 않은 경우는 wget 이 아닌 다른 방안을 찾아야 합니다.

IT/System Digging 2023.09.27

[python3] asyncssh + nohup command

원격으로 작업을 할 일이 생겼습니다. 시간이 좀 걸리는 파이썬 패키지 설치 작업이었습니다. 이를 여러 장비에다 설치하려고 하는데 기존 코드는 장비 하나하나 일일이 접속해서 패키지도 하나하나 다 설치 완료 해야 다음 항목으로 넘어갈 수 있었습니다. 각 장비에서 소요되는 시간은 3분이 채 안되는데 전체 장비가 400여대 가까이 되니 1200분... 즉 20시간이 소요되는 겁니다... 이를 줄여보고자 며칠 째 집에도 제 때 못들어가고 작업하다가 대충 동작하는 코드를 완성해서 그 일부를 공유합니다. connect 인자는 대충 아실겁니다. known_hosts=None 은 등록되지 않은 장비에 접속할 때 known_hosts 에 등록할 것인지 물어보게 되는데 (ssh 명령으로는 -o StrictHostKeyChe..

IT/python 2023.09.22

[raspberrypi 4b] wifi 비번 설정 및 활성화 하기

기존에 wifi 를 사용하지 않을 목적으로 rfkill 활성화 했다면 다음 명령으로 wifi 를 활성화 할 수 있습니다. 당연히 아래 명령에서 접속할공유기의ssid 는 본인 공유기의 ssid 로 바꿔야 합니다. 예를 들면 iptime 같은거요. sudo rfkill unblock all sudo bash -c 'wpa_passphrase "접속할공유기의ssid" >> /etc/wpa_supplicant/wpa_supplicant.conf' wpa-cli -i wlan0 reconfigure 아래는 위 내용과 같은 데 한줄로 붙여넣어 실행하기 쉽게 만든 명령입니다. sudo rfkill unblock all; sudo bash -c 'wpa_passphrase "접속할공유기의ssid" >> /etc/wpa..

IT/RaspberryPi 2023.09.06

[Raspberry Pi 4B] Python으로 시리얼 번호 깔끔하게 얻는 법 (feat. vcgencmd)

Raspberry Pi 4B에서 장치 고유 식별자인 시리얼 번호를 얻는 방법을 정리했습니다.Python을 사용하면 ssh에서도 훨씬 깔끔하고 명확하게 처리할 수 있습니다.라즈베리파이에서 시리얼 번호를 얻는 대표적인 방법은 /sys, /proc, 그리고 vcgencmd를 활용하는 세 가지가 있습니다.1. /sys 경로 접근 방법 (추천)cat /sys/firmware/devicetree/base/serial-number | tr -d '\0'null 문자 제거 안 하면 다음과 같은 경고가 뜰 수 있습니다:-bash: warning: command substitution: ignored null byte in inputtr -d '\0'을 뒤에 붙이면 깔끔하게 출력됩니다.2. /proc/cpuinfo 활용 ..

IT/RaspberryPi 2023.07.25

[Jetson Orin Nano] sd 카드 복제하기

기록용으로 남깁니다. ※ 참고로 아래 작업은 사용하는 리눅스 시스템을 완전히 망가뜨리거나 복원 불가능한 덮어씌움을 발생시킬 수 있습니다. 리눅스 장치명(/dev/sd?), mount, dd 등의 동작과 위험성을 명확히 알지 않고 실행해서 생기는 손해는 제가 보상해드리거나 도와드릴 수 없습니다!! 잘 모르시면 이미지 백업만 진행하시고 sd 카드에 이미지 복원하는 것은 GUI 도구를 찾아서 진행하시길 강력 추천합니다. 또한, 원본 sd 카드와 복원할 대상 sd 카드는 반드시 동일한 용량, 이왕이면 동일 회사 제품으로 진행하시기 바랍니다. 용량이 다른 경우 문제가 생기거나 복원할 대상 sd 카드 준비물 백업할 외장 하드(jetson orin nano 에서 직접 복제할 경우) 아래에서는 jetson 에서 직접 ..

IT/System Digging 2023.07.19

[ssh] 기존에 잘 쓰던 공개키 파일 윈도우에다 두고 WSL 에서 이 파일로 접속 시 public_key 접속 거부 당할 때

기록용으로 남깁니다. aws 에 업무용 vm 이 생성되어 있습니다. 초반에 접속에 애를 먹고 나서.. putty 용으로 키를 변환(ppk)해서 남겨둔 뒤로 putty 에서 해당 키 지정해서 접속하면 접속이 잘 됩니다. 당연히 잘 되겠거니 하면서 cmd.exe 열어서 bash 명령으로 WSL 진입한 상태에서 원본(이라 쓰고 착각했던이라고 읽는...) pem 키 파일을 다음과 같이 지정해서 접속을 시도했는데 거절당하더군요 ssh -i "original_key.pem" user@abcd.compute.amazonaws.com Warning: Identity file skp-arhis-server-key.pem not accessible: No such file or directory. user@abcd.com..

IT/System Digging 2023.07.14

grep 검색 패턴 앞 뒤로 출력하기

grep 으로 여러 줄 검색할 일 있을 때 해당 덩어리 전체가 정확히 맞아야 되는 경우도 있지만 그냥 앞 뒤 정보만 확인하고 싶은 때가 있습니다. 전자는 zop 등의 옵션으로 사용할 수 있지만 손이 좀 갑니다. -B -A -C 옵션을 사용하면 원하는 패턴이 있는 줄 뿐만 아니라 앞 뒤 줄을 더 확인할 수 있습니다. -B 는 before 이전 몇 줄, -A 는 after 이후 몇 줄, -C 는 context 로 동일한 크기로 앞뒤 줄 포함(-B, -A 동시 사용한 효과와 동일) grep -B 1 -A 2 session /var/log/syslog 위와 같이 명령 내리면 session 이 발견된 줄의 윗 1줄, 아래 2줄을 포함해서 보여줍니다. grep -C 1 session /var/log/syslog 위..

IT/System Digging 2023.07.11

[puzzle][slither-link] 문제 푸는 공식(작성중)

소개slither link 는 Fences 또는 Loop the Loop 라고도 알려져 있는 퍼즐 게임입니다. 먼저 루프(loop) 라는게 고리 모양을 뜻하고 이 고리를 따라가면 길을 반복해서 가기 때문에 반복의 의미도 갖게 되었습니다.위와 같은 모양은 무한 반복문(infinite loop) 의 상징처럼 사용되죠.이 퍼즐에서는 다음과 같은 상태를 만드는게 목표입니다. 위의 무한 반복과 비교하면 교차되지 않는 단 한 개의 이어진 선의 모임입니다.보통 위와 같이 격자 형태의 평면이 주어지고 점 4개로 둘러쌓인 칸에 숫자가 들어가 있기도 합니다.문제를 다 풀면 위와 같이 그려지게 됩니다.기본 규칙1. 숫자 주위에는 숫자 만큼의 선분(점1개와 인접한 점1개를 이은 직선, 대각선은 인정 안됨)이 반드시 이어져 있..

재미 2023.06.30

[github] 로컬 저장소를 새 github 저장소로 쉽게 만들기

일단 github 에서 새로운 저장소를 만듭니다. 만들어진 저장소의 필요한 주소(https 또는 git@..git)를 복사해서 로컬 저장소에서 다음 명령을 내립니다. git remote set-url origin git@github.com:저장소주소.git git push 참 쉽죠? 더보기 다만, 요즘의 github 기본 저장소는 main 이고 기존의 많은 git 저장소는 기본 저장소가 master 인 점이 다를 수 있습니다. github 해당 프로젝트 페이지에 보면 Settings 가 있습니다. General 항목에 Default branch 가 있고 이게 main 으로 되어 있는데 연필 모양 아이콘을 눌러서 직접 수정하거나 좌우 화살표 아이콘을 눌러 새로 push 한 master 를 선택해서 간편히 ..

IT/VCS 2023.06.21