nvidia- smi has failed because it couldn't communicate with the nvidia driver 오류 해결 방법 정리

이미지
우분투 서버에서 NVIDIA GPU 4060 설치하다 맞이한 오류입니다. 한동안 오류에서 벗어나 있었는데 지난 밤을 꼬박 세웠네요. 1.  설치된 라이브러리 지우고 다시 설치 $ sudo apt remove nvidia* $ sudo apt autoremove $ sudo reboot 재부팅 후 다시 접속 후 $ ubuntu-drivers devices 전 추천이 535로 나오더군요 $ sudo apt install nvidia-driver-535 역시나 안되더군요. 전 지우는 방법만 달리해서 한 15번 정도 반복했던거 같습니다. 2.  GCC 및 G++ 지우고 다시 설치 $ sudo apt remove gcc $ sudo apt remove g++ $ sudo apt autoremove $ sudo reboot 재부팅 후 다시 접속합니다. $ sudo apt install gcc $ sudo apt install g++ 3. CMOS 에서 SECURE BOOT 비활성화 전 이 방법으로 하니 되더군요. 전원을 끄고 다시 전원을 켠 후 바로 F1 과 Del 키를 눌렀어요. 어느 키가 CMOS 진입키 인지 모르니까요. 들어가서 부팅 쪽 메뉴에 있더라구요. 요즘은 기본으로 활성화 되어 있으니 그걸 찾아서 Disable 했어요. 이게 GPU 기기를 인증 안된걸로 인식하여 차단되어서 그렇다고 하더라구요. $ sudo apt remove nvidia* $ sudo apt autoremove $ sudo reboot 재부팅 후 다시 접속합니다. $ sudo apt install nvidia-driver-535 $ nvidia-smi 오랜만에 결과가 나왔네요.

가비아 도메인에 letsencrypt 인증서 적용 시키기

이미지
가비아 도메인을 가지고 있다. example.com 을 가지고 있다. 이를 서버에 SSL 적용하고자 한다. 무료인 Let's Encrypt 를 사용하고자 한다. 난 서버를 우분투를 사용한다. $ sudo certbot certonly --manual --preferred-challenges dns -d '*.example.com' 여기서 빨간색으로 나오는 문자열이 중요하다. 이 문자열을 가비아 페이지에 가서 텍스트로 등록하면 된다. 다시 터미널로 가서 엔터를 치면 인증서가 발급이 된다. 인증서는 파일이 다음과 같이 두개 파일이 발급된다.

외환통장 수수료 절감 팁

 안녕하세요, 여러분! 오늘은 해외 송금이나 외환 거래 시 부담이 될 수 있는 외환통장 수수료를 절감하는 방법에 대해 알아보겠습니다. 글로벌 시대에 맞춰 많은 분들이 외환통장을 이용하고 있는데요, 조금만 신경 쓰면 절감할 수 있는 수수료 절감 팁을 함께 알아보시죠. 1. 외환통장의 필요성 외환통장은 해외 송금, 외화 예금, 외화 환전 등을 쉽게 처리할 수 있는 통장입니다. 주로 해외 유학, 출장, 여행, 무역 등 다양한 목적으로 사용됩니다. 하지만, 외환통장을 이용하면서 발생하는 수수료는 무시할 수 없는 비용이므로 이를 줄이는 방법을 아는 것이 중요합니다. 2. 수수료 종류 이해하기 외환통장 이용 시 발생하는 주요 수수료는 다음과 같습니다. 가. 송금 수수료 해외로 돈을 송금할 때 발생하는 수수료입니다. 송금액에 따라 수수료가 달라지며, 송금하는 은행과 수취 은행의 정책에 따라 추가 비용이 발생할 수 있습니다. 나. 환전 수수료 통장에서 외화를 환전할 때 발생하는 수수료입니다. 환율 차이에 따른 비용이 포함됩니다. 다. 유지 수수료 외환통장을 유지하는 데 발생하는 월간 또는 연간 수수료입니다. 일부 은행에서는 일정 조건을 충족하면 면제해주기도 합니다. 3. 수수료 절감 방법 가. 온라인 뱅킹 활용 오프라인보다 온라인 뱅킹을 이용하면 수수료가 저렴한 경우가 많습니다. 은행마다 다르지만, 온라인 송금 및 환전 수수료가 오프라인 대비 최대 50%까지 저렴할 수 있습니다. 나. 특정 은행 및 카드 이용 일부 은행은 특정 조건을 충족하면 외환 거래 수수료를 할인해주거나 면제해줍니다. 예를 들어, 주거래 은행을 통해 외환통장을 개설하면 수수료 혜택을 받을 수 있습니다. 또한, 해외 사용 수수료가 저렴한 신용카드를 이용하는 것도 좋은 방법입니다. 다. 환율 우대 혜택 활용 환전 시 은행마다 환율 우대 혜택을 제공하는 경우가 많습니다. 특정 은행의 앱이나 홈페이지를 통해 환율 우대 쿠폰을 발급받아 사용할 수 있습니다. 라. 일정 금액 이상 거래 일부 은행에서는 일정 금액 이

부동산 청약 추첨 제도 안내

 안녕하세요, 여러분! 오늘은 대한민국 부동산 청약 제도 중에서도 많은 분들이 관심을 갖고 계신 '추첨'에 대해 알아보도록 하겠습니다. 청약을 준비하시는 분들께 유용한 정보가 되길 바랍니다. 1. 부동산 청약이란? 부동산 청약은 아파트와 같은 주택의 분양을 받을 수 있는 기회를 얻기 위해 신청하는 절차를 말합니다. 특히, 인기 있는 지역이나 단지의 경우 청약 경쟁률이 높아지기 때문에 추첨을 통해 당첨자를 선정하게 됩니다. 2. 청약 추첨의 종류 청약 추첨은 주로 다음과 같은 두 가지 방식으로 이루어집니다. 가. 일반 추첨 일반 추첨은 모든 청약 신청자들 사이에서 무작위로 당첨자를 선정하는 방식입니다. 청약 통장을 보유한 모든 사람이 참여할 수 있으며, 무주택 기간, 부양 가족 수 등에 따라 가점제를 적용하는 경우도 있습니다. 나. 특별 공급 추첨 특별 공급은 신혼부부, 다자녀 가구, 국가유공자 등 특정 계층을 위한 청약 물량을 별도로 배정하여 추첨하는 방식입니다. 이 경우 해당 자격 요건을 충족하는 신청자들 사이에서만 추첨이 이루어집니다. 3. 추첨 방식 추첨은 일반적으로 다음과 같은 절차를 거쳐 이루어집니다. 가. 청약 접수 먼저, 청약 신청자는 청약 접수 기간 내에 청약 신청을 완료해야 합니다. 이때, 청약 통장을 사용하여 신청할 수 있습니다. 나. 청약자 확인 및 검증 청약 접수가 완료되면, 주관 기관은 신청자의 자격 요건을 확인하고 검증합니다. 부적격자는 추첨 대상에서 제외됩니다. 다. 추첨 진행 자격 검증이 완료된 신청자들을 대상으로 무작위 전산 추첨이 이루어집니다. 추첨 결과는 보통 청약 접수 마감 후 며칠 내에 발표됩니다. 4. 추첨 결과 발표 및 후속 절차 추첨 결과는 해당 부동산 분양 웹사이트나 앱을 통해 확인할 수 있습니다. 당첨된 경우, 주어진 기간 내에 계약을 체결해야 하며, 그렇지 않으면 당첨이 취소될 수 있습니다. 5. 추첨에 당첨되지 않았을 경우 추첨에 당첨되지 않았더라도 낙담하지 마세요. 청약은 지속적으로 기회가 제공

local 에서 LLM 을 돌리는 방법

로컬에서 챗봇을 돌리는 방법입니다. 보통 LLM 이라고 하죠. 일단 한글을 알아먹는 LLM 이 필요하죠. 다들 한글 잘 알아먹는다고 하는데 제가 해보니 글쎄 입니다. 그나마 야놀자 EEVE 가 그나마 알아 먹더군요. 허깅페이스에서 야놀자 EEVE 의 GGUF 파일을 다운 받습니다. 저는 우분투 서버에 RTX 4070  한개를 사용했어요. 거기에 CUDA 환경을 구축했습니다. 그러면 OLLAMA 를 설치할 수 있습니다. 올라마를 설치하면 GGUF 형식의 LLM 을 구동할 수 있어요. 구동된 LLM 은 STREMLIT 을 활용하여 화면을 구성할 수 있어요. 조만간 서비스에 붙일 수 있을 정도의 품질이 나올 수도 있을꺼 같습니다.

python 과 node express 사이 이미지 주고 받기 구현

Client 는 Python 으로 작성 되었으며 Server 는 node express 로 된 시스템입니다. 양쪽 모두 웹소켓을 사용했습니다. 이미지를 서로 주고 받는데 한참을 헤메었네요. 일단 이미지를 base64 로 변환해서 json 으로 패키징 하여 서버에 전송하고 서버에서 받은 base64 데이터를 이미지로 변환하여 저장하는 로직입니다. python 에서 이미지를 data에 가져오는 방법입니다. data = io. BytesIO () picam2.capture_file(data, format = ' jpeg ' ) print (data. getbuffer ().nbytes) 가져온 이미지를 base64 로 변환한 후 다시 전송을 위한 데이터로 변환합니다. img_base64 = base64. b64encode (data. getbuffer ()). decode ( ' utf-8 ' ) 전송할 데이터로 패키징 합니다. responseData = { " type " : " camera " , " device_id " : device_id, " data " : img_base64 } 이제 웹소켓을 이용해서 전송합니다. responseStr = json. dumps (responseData) ws .send(responseStr) 이제 node express 에서 전송된 데이터를 받아서 이미지 처리하는 로직입니다. 받은 데이터로 이미지로 변환합니다. const image = Buffer. from (data, ' base64 ' ) 변환된 이미지를 저장합니다. writeFileSync ( ' image.jpg ' , image ) 정리해놓고 보니 간단하지만 로직을 이렇게도 해보고 저렇게도 해보고 한참을 헤메었습니다. 나중에 다시 참고할 때 편하도록....

라즈베리 파이에서 인터넷 연결 후 자동실행 설정하기

라즈베리 파이에서 인터넷 연결 후 자동실행하는 방법입니다. 파이썬으로 프로그램을 만들었습니다. 웹소켓으로 서버와 연결하여 메시지를 받아서 처리하는 모듈입니다. /home/pi/PythonProjects/websocketClient.py 이 파일을 라즈베리 파이가 구동된 후 인터넷이 연결된 후에 실행하고 싶어서 시도한 결과를 정리한 내용입니다. 결론부터 말하자면 다음과 같은 방법이 최고입니다. 1. 모듈을 실행할 스크립트를 작성합니다. & vi /home/pi/run_websocket.sh #!/bin/bash python /home/pi/PythonProjects/websocketClient.py 2. 생성한 모듈의 실행권한을 준다 $ chmod +x /home/pi/run_websocket.sh 3. 자동 구동할 desktop 파일을 생성한다. $ sudo vi /etc/xdg/autostart/websocket.desktop [Desktop Entry] Name=WebsocketClient Exec=/home/pi/run_websocket.sh 4. 재부팅한다 $ sudo reboot 저는 이와 같이 하니 자동실행되었습니다.