2021/10 11

Ubuntu 20.04) fctix입력기 설치해 intelliJ 한글입력 해결하기

iBus 입력기의 문제 지금까지 잘 ibus를 사용해왔는데 intelliJ에서 한글 입력시 이상하게 입력되는 현상이 있다는걸 알게 되었습니다. 띄어쓰기를 할 때 자꾸 해당 자리에서 하는 게 아니고 이전 자리에서 하게 되고, 방향키를 입력 할 때에도 마찬가지로 문제가 생겼습니다. 해결을 위해 더이상 iBus 입력기를 사용하지 않고 fctix 입력기로 변경 해 보겠습니다. ​ fcitx 한글 입력기 설치 sudo apt-get update sudo apt-get install fcitx-hangul 이후 재부팅을 해줍니다. ​ Language Support 실행 ​ Keyboard input method system을 fcitx로 변경 ​ Install / Remove Languages 를 눌러 Korean..

IT Computer/Linux 2021.10.20

JAVA로 알아보는 힙 (Heap) 자료구조

Heap Heap은 최소값 및 최대값을 최대한 빠르게 찾아내기 위해 특별히 고안된 자료 구조 입니다. 완전 이진트리(마지막 레벨을 제외하고 모든 레벨이 완전히 채워져 있는 트리의 형태)를 기본으로 하고 있으며, 그 목적에 걸맞게 두개의 타입으로 나뉩니다. Max-Heap Max-Heap 에서 root 노드의 key는 무조건 해당 노드의 자식 노드들의 key보다 크거나 같습니다. 또한 같은 속성이 모든 sub-tree 들에게도 재귀적으로 적용됩니다. 간단히 말해 Max-Heap 트리에서 자식 노드에 딸린 트리 하나 하나가 모두 Max-Heap의 조건을 만족합니다. Min-heap Min-Heap 에서는 반대로 root 노드의 키값이 모든 자식들의 키 보다 작거나 같습니다. 또한 재귀적으로 자식 트리들 하나..

Java) POI 활용해 DB데이터 엑셀 파일로 저장하기

사용자에게 요구 데이터를 보여 주는 방법은 여러가지가 있습니다. 보통은 웹 페이지를 통해 화면을 보여주는데요, 사용자가 해당 내용을 확인하기 위해서는 항상 해당 웹 페이지에 방문 해야만 하며, 인터넷에 연결되어있어야만 한다는 제약이 생깁니다. 그래서 파일로 조회 데이터를 저장하고자 하는 수요는 반드시 생기고, 그 수요를 충족시키기 위한 여러가지 라이브러리들이 나와 있습니다. 그 대표적으로 Apache POI가 있습니다. ​ Apache POI (Poor Obfuscation Implementation) https://poi.apache.org Apache POI는 아파치 소프트웨어 재단에 의해 운영되는 오픈소스 프로젝트 입니다. 순수 자바 라이브러리로서 Microsoft Office의 Word, Powe..

Programming/Java 2021.10.15

Linux) 특정 port 사용중인 프로세서 찾아 죽이기

Tomcat을 사용하다 보면 어플리케이션이 정상적으로 종료가 되지 않아서 포트가 충돌 나는 경우가 있습니다. 비단 Tomcat 만의 문제가 아니고 어떤 프로세스를 사용하던 특정 port를 점유 하고 종료되지 않은 경우가 종종 있는데요, 이럴 때 쉽게 해결하는 방법입니다. ​ 아래는 이클립스에서 톰캣을 실행 하려 할 때, 8080 port가 이미 점유중이라는 에러 메시지 입니다. The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured. ​ port 번호로 pid 찾기 ​ 8080 port를 점유하고 있는 프로세스..

IT Computer/Linux 2021.10.14

MacOS) Monterey Public Beta 설치하기

Monterey Monterey는 Apple이 WWDC21에서 발표한 macOS Big Sur의 차기 버전입니다. 동명의 미국 California 주의 해변가에 있는 아름다운 도시의 이름을 따왔는데요, San Francisco Bay Area에서 차로 약 2시간 거리에 있는 대표 휴양지 입니다. Bir Sur 에서도 굉장히 가깝습니다. ​ https://en.wikipedia.org/wiki/MacOS_Monterey#Release_history 사실 Monterey의 첫번째 베타버전이 출시된지는 꽤나 시간이 지났습니다. 6월 7일이니 무려 4개월 전 인데요. 첫번째 베타부터 참여하기에는 불편함이 많을 것 같아 많이 기다렸는데, 이제 출시가 꽤나 임박했다는 생각이 들어 사용하기에 크게 불편함이 없을 거라..

IT Computer/Mac 2021.10.09

Ubuntu) 터치패드 및 트랙패드 활용하기 Fusuma

https://github.com/iberianpig/fusuma Fusuma를 사용하면 멀티 터치 제스처를 사용할 수 있습니다. 이 숨은 보석같은 어플리케이션만 설치하면 트랙패드 제스처를 활용해서, 뭔가를 줄이고 늘릴 수 있고, 쓸어 넘기기 등의 명령을 설정 하고 사용 할 수 있습니다. Fusuma(襖) 는 일본에서의 미닫이 문을 칭하는 말 입니다. 한국어로 발음하면 "후스마" 정도가 되겠네요. ​ 특징 RubyGems를 이용한 손쉬운 설치 YAML 포맷으로 제스처와 액션 설정 threshold 및 interval을 이용한 다양한 세부 설정 Threadhold는 임계점을 의미하는데요. 터치 감도를 설정한다고 생각하면 되겠습니다. 외부 터치패드 연결시 자동 인식 플러그인 시스템을 통한 제스처 확장 ​ 설..

IT Computer/Linux 2021.10.09

PostgreSQL) 모든 테이블에서 특정 값 찾기

How to search a specific value in all tables (PostgreSQL)? https://stackoverflow.com/questions/5350088/how-to-search-a-specific-value-in-all-tables-postgresql ​ 모든 테이블 찾기 특정 값을 검색 할 때, 모든 테이블에서 찾아봐야 할 경우가 종종 있습니다. 이번에 특정 데이터의 완전 삭제 기능을 구현하고 있었는데 모든 테이블을 FK로 연결한 건 아니라서 관련된 데이터들이 모두 삭제 되었는지가 확실하지 않았습니다. FK 와 cascade 를 활용해서 싹 다 지워버리면 편하기야 하겠지만 의도치 않은 사이드이펙트가 나올 수도 있습니다. 특정 데이터를 삭제 할 경우 관련된 데이터를 무작정..

Database/PostgreSQL 2021.10.08

Linux) SSH 비밀번호 로그인 차단하기

한창 작업을 하다가 문득 제가 집에서 돌리고 있는 컴퓨터에 얼마나 자주 접속을 하고 있는지 궁금해졌습니다. 혼자 사용하는 서버인데도 종종 너무 느려지는것도 이상하고 해서 별 생각 없이 처음으로 로그를 한번 확인 해 보았습니다. cat /var/log/auth.log 세상에나 무수히 많은 Connection 시도와 Failed password 가 수북하게 쌓여 있습니다. 루마니아 부터 시작해서 온갖 국가의 아이피로부터 시도가 되었고 아이디도 뭐 David, ftpuser, user, uknown 등등 다 넣어봤더라고요. port 번호가 다 이상한게 써있어서 저희집 공유기 port forwarding을 다 확인 해 보았는데 저런 포트는 모두 잘 닫혀 있었습니다. 그래서 다시 알아보니 잘 저기에 표시된 por..

IT Computer/Linux 2021.10.06

Linux) docker 컨테이너 자동 실행 설정 및 스케줄 등록

메모리 관리의 어려움 집에서 간단한 서버로 사용하고 있는 컴퓨터가 꼭 부팅후 3일정도만 지나면 급격하게 메모리 사용량이 늘어나고 반응속도가 굉장히 저하되고 있습니다. 특히 ssh로 접속 했을 때 타이핑도 바로바로 되지 않을 정도로 심각해서 여러가지 해결책을 모색 하고 있는데요. 일단 사양이 좋지 않은 컴퓨터인데 불구하고 Elastic Search 를 Docker로 돌리다 보니 어느 정도 감안 해야 하는 면도 있나 싶습니다. 지금까지는 3일 마다 컴퓨터를 재 부팅 해 주고 켜야 하는 도커 컨테이너들을 하나씩 일일히 켜주는 방식으로 대응 하고 있었는데요, 아무래도 번거로워서 자동화를 계획 중에 있습니다. 제 생각으로는 트래픽이 발생할 확률이 거의 없는 새벽 4시 쯔음에 해서 스케줄링에 따라 하루 한번 정도 ..

IT Computer/Linux 2021.10.03

우분투에서 아이폰 / 아이패드 미러링 하기

사실은 양방향 미러링을 하는 방법을 시도 해 보고 있었는데, 스크린 캐스트를 통해 단방향 미러링을 먼저 성공 하게 되었습니다. 반응이 굉장히 빠르기 때문에 분명 여러가지 유용하게 사용 될 것 같아 포스팅을 정리해 두려 합니다. https://rodrigoribeiro.site/2020/08/09/mirroring-ipad-iphone-screen-on-linux/ 어느 교수님이 학생들에게 좀 더 좋은 원격 강의를 제공하려고 시도하다 성공하였다고 포스팅을 해주셨고 저도 도움을 받았습니다. ​ 필요한 패키지 받기 sudo apt-get install cmake sudo apt-get install libssl-dev libavahi-compat-libdnssd-dev libgstreamer1.0-dev li..

IT Computer/Linux 2021.10.01

[Ubuntu 20.04 Git GUI 추천] 우분투 Github Desktop 설치

해당 사진은 우분투에 MacOS 테마를 설치 해 두어서 Mac 처럼 보이긴 하지만 Ubuntu 가 맞습니다. 해당 테마에 관심이 있으신 분은 Ubuntu MacOS 처럼 만들기 GTK Themes 포스팅을 참고해주세요. ​ ​ Windows나 MacOS에서는 소스트리가 Git GUI로 흔하게 사용됩니다. 아쉽게도 Linux에서는 사용 할 수 없는데요, 최근에는 m1 맥북이 나왔지만 소스트리가 적절히 대응을 해주지 못하고 있어 많이 아쉽기도 합니다. 심지어 Github Desktop의 치고나오는 속도가 상당해서 조만간 소스트리를 앞질러 줄 수 있지 않을까 기대하고 있습니다. Git Kraken, Smartgit 등은 다 유료인게 부담스러워서 쓸 수 없었고 Git-cola가 그나마 무료길래 한동안 사용했었는..

IT Computer/Linux 2021.10.01
반응형