본문 바로가기

개발

(131)
Sub-process /usr/bin/dpkg 에러 해결 방법 Linux 를 사용하다 보면 apt, dpkg 패키지 매니저로 다양한 패키지를 설치하곤 한다. 하지만! 패키지를 설치하다 가 문제가 발생하는 경우가 드물지 않게생기곤한다. 바로 아래와 같은 Sub-process dpk 에러가 발생하는 경우이다. E: Sub-process /usr/bin/dpkg returned an error code (2) 이런 경우는 대부분 아래와 같이 apt, dpkg 명령어로 해결이 가능하다. sudo apt install -f sudo dpkg — configure -a 하지만, 이런 방법으로도 해결이 되지 않는다면 어떻게 해야 할까? 답은 아주 쉽다. 아래의 명령어처럼 dpkg 패키지 정보가 있는 곳의 패키지명.perm 파일을 삭제하면된다. cd /var/lib/dpkg/in..
Linux Large File Copy(Linux 대량 파일 복사) Ubuntu 를 사용하다 보면 파일을 복사하가나 백업하는 등의 일을 자주 하게 된다. 이런 경우는 대부분 아래에 적은 cp 명령어를 주로 사용하곤 한다. 1. cp 사용 cp -rf [source] [target] 2. rsync 사용 cp 를 사용하는 경우 진행 % 를 볼수 없지만 rsync 는 progress 옵션을 이용해서 현재 복사되고 있는 파일의 진행 % 를 볼수 있다. rsync -anv --progress [sorce] [target] 하지만!!! 몇만개, 수백기가 단위의 파일을 복사 하는 경우 cp 명령어는 어느 순간부터 느려지는 문제가 발생하곤 한다. 이런 문제를 해결하기 위해서는 파일을 tar 로 압축하여 복사를 하는 방법으로 해결 하곤 했지만, 다시 압축을 풀어야 하는 불편함이 있었다..
Swagger-ui 설정(코드에서 addResourceHandler 이용) Swagger-ui 를 Spring Framework 에서 사용하는 경우는 두 가지 방법이 있다. 1. xml 설정에서 Resource 추가 2. 코드에서 addResourceHandler 추가 보통 xml 설정 파일에 Resource 를 추가하는 많이 이용하는데 아래와 같이 addResourceHadler 를 이용하여 설정하는 것도 좋은 방법이다. public void addResourceHandlers(final ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/swagger-ui.html"); registry...
Ubuntu Gradle4 install Spring Boot 를 이용하여 Rest Api 테스트 코드를 작성하는데, Build 시 Gradle 4 를 사용하라는 메세지가 나타났다. Gradle 4 를 설치하는 방법은 Gradle 프로젝트를 받아서 PATH 를 지정해도 되지만 Ubuntu 를 사용하는 경우는 PPA 를 추가하고 Gradle 을 아래와 같이 설치하는게 더 쉽다! sudo add-apt-repository ppa:cwchien/gradle sudo apt-get update sudo apt-get upgrade gradel
Sentence Tokenized English 영어로 된 문장은 아래와 같이 NLTK 라이브러리를 이용하면 Tokenize 할 수 있다. from nltk.tokenize import word_tokenize sentence = "this is my iphone(6s)" print("입력 :"+sentence) tokens = word_tokenize(sentence) print("배열로 나눈 결과 :" + str(tokens)) nltkTokenizedSentence = (' '.join(str(e) for e in tokens)) print("공백으로 합친 결과 :" +nltkTokenizedSentence) print("\n------------------------------------------------\n") from nltk.token..
Using RM Commands Safely in Ubuntu Ubuntu 를 이용하면서 rm 으로 파일이나 디렉토리를 삭제하고 후회한 적이 없다면... 아마 정말 정말 똑똑한 사람이거나, Ubuntu 를 많이 사용하지 않은 사람일 것이다. 이번 주말에 그동안 작업 했던 프로젝트 파일들을 정리한다고 파일을 지우고 옮기는 작업을 하다가 보니 아뿔싸..... 지우면 안되는 폴더를 “rm-rf” 로 지워버리고 말았다. 그래서 rm 명령어를 안전하게 사용할 수 있는 방법을 정리해 보았다. 1. rm -i 옵션 이용 rm 의 -i 옵션은 실행하기 전에 삭제 확인을 받는 옵션으로 가장 쉽게 생각하는 방법이다. alias rm='rm -i' 2. mv 명령어 이용 mv 의 -t 는 이동될 target 디렉토리를 지정하는 옵션으로 파일/디렉토리를 ubuntu 의 Trash 폴더(..
InfluxDB + Grafana Deep Learning Machine Monitoring Dashboard 보통 대시보드를 구성한다고 하면 Elasticsearch 와 Kibana를 이용 하는 경우가 많다. 나도 임성현 선배님이 알려주시지 않았다면 Grafana 를 이용할 생각을 하지 않았을 것 같다. 하지만 Grafana 와InfluxDB 를 사용해보니 정말 쉬운 사용방법, 가벼움, 그리고 어여쁨 모양에 다시 한번 놀라게 되었다 InfluxDB + Grafana 를 이용한 대시보드를 만들기는 아래와 같은 순서로 진행 하였다. Deep Learning장비의 CPU, MEMORY, GPU의 사용량, 온도 등 정보 확인 CPU, MEMORY, GPU의 정보를 Database에 저장 DataBase 에 저장된 정보를 대시보드(Grafana)로 보여주기 1) CPU, MEMORY, GPU의 사용량, 온도 등 정보 확..
Ubuntu Device Status Check : CPU, MEMORY, PROCESS 노트북에 Ubuntu 를 설치하고 Deep Learning 코드를 실행하다 보면 비행기가 이륙하는 소리가 나면서 노트북이 뜨거워지는 경우가 종종 발생한다. 이런 경우 CPU, MEMORY, GPU 는 얼마나 사용하고 있지? 온도는? 이런 정보가 궁금한 경우 아래와 같은 방법으로 CPU, MEMORY, GPU 정보를 쉽게 알 수 있다. 1. top : CPU, MEMORY, PROCESS 등 상태 확인 Ubuntu 의 대표적인 시스템 모니터링 도구로 기본으로 설치 되어 있다 CPU, MEMORY, PROCESS 정보들을 한번에 볼 수 있다 # TIP. CPU 사용량만 보는 Shell 명령어 top -n 1 | grep -i cpu\(s\)| awk ‘{print $2} 2. htop : cpu, memor..
Ubuntu 부팅시 발생하는 grub rescue 메세지 며칠전 집에서 잘 사용하던 우분투가 갑자기 grub recue 메세지가 나타나면서 부팅이 되지 않았다….. ㅠㅠ 정말 당황스러웠지만…. 혹시나 하는 마음에 해결 방법을 찾아 보았더니!! 정말 쉽게 해결 가능한 방법이 있는게 아닌가!! 아래 내용대로 진행하니 정상 복구 완료! 혹시나 나처럼 고민한 사람들이 있을 것 같아 정리 해본다 (요기서 http://linuxmint.kr/System/4082 퍼옴) 리눅스를 설치하고 지우면서 boot하면 가끔 당하는 grub rescue> 은 항상 막막합니다. 그럴때 boot rescue나 Live CD를 쓰지 않고 간단히 해결하는 방법은 아래와 같습니다. 1. partition 을 조회합니다. grub rescue> ls 2. 조회된 partition 중 어떤 것일..
MAC(OSX)에서 PNG → JPG 일괄 변환하기 최근에 이미지 분석을 위해 여러 이미지를 캡쳐를 해서 만들고 분석하고 만들고 분석하는 한땀 한땀의 고급스러운 일을 하고 있다. 그러던 중 내가 캡쳐한 이미지 파일이 PNG 라 이미지 분석이 되지 않는다는 에러가 계속 발생하는게 아닌가? 다시 이미지를 한땀 한땀 만들어야 하는가? 하나씩 이미지를 변환해야 하나? 이런 경우 아래와 같은 Shell 로 해결해보자! 1. 이미지를 하나만 변환하고 싶다면 sips -s format jpeg -s formatOptions 80[이미지 압축율] IMG_1354.png[원본 이미지 파일 이름] --out IMG_1354.jpg[변환될 이미지 파일 이름] 2. 이미지를 한번에 여러개 변환하고 싶다면 for fileName in *.png;do sips -s format ..