사내 개발환경이라면 유무선 네트워크를 동시 사용할 경우가 거의 없지만, 외근이나 출장 환경이라면 동시에 유무선 네트워크를 사용할 상황이 종종 발생한다. 간단히 말해, 인터넷 연결은 무선 이더넷으로 연결하고 디버깅을 위해 NFS 연결은 유선 이더넷을 사용해야 하는 환경을 말한다. 공유기를 사용한다면 공유기를 AP에 직접 연결하면 이런 번거로운 작업은 안해도 되는데, 공유기없이 외부 인터넷과 내부 네트워크를 동시에 사용해야 한다면 아래와 같이 유선 이더넷 속성을 '네트워크 리소스에 대해서만 사용'으로 변경하도록 한다. GUI 환경이 아니라면, 아래의 파일에서 'never-default=true' 항목을 추가하도록 한다. $ sudo vi /etc/NetworkManager/system-connections/..
우분투에서 리눅스 계열의 USB 부팅 디스크를 만들 때, 이미지 라이터 앱인 Etcher를 많이 사용하지만, 윈도우10 부팅 디스크를 만들려고 윈도우 이미지 파일을 선택하면 아래와 같은 이유로 윈도우 계열의 부팅 디스크를 만들 수 없다. 그래서, 우분투 환경에서 윈도우 부팅 디스크를 만들려면 WoeUSB 앱을 사용해야 한다. webupd8에서 PPA를 제공하고 있어 쉽게 설치가 가능하다. $ sudo add-apt-repository ppa:nilarimogard/webupd8 $ sudo apt install woeusb 우분투 20.04 버전은 라이브러리 의존성 문제가 발생하여 아래의 libwxgtk3.0-0v5 패키지를 설치해야 WoeUSB를 설치할 수 있다. WoeUSB의 GUI는 매우 심플하여 ..
우분투 데스크탑 환경의 터치패드 제스쳐는 스크롤과 같은 기본 기능만 제공한다. 윈도우 및 맥OS와 같이 다양한 제스쳐를 사용하려면 서드파티나 오픈소스 프로젝트의 앱을 설치해야 한다. iberianpig/fusuma Multitouch gestures with libinput driver on Linux. Contribute to iberianpig/fusuma development by creating an account on GitHub. github.com Fusuma는 제스쳐를 확장해주는 앱으로 ruby 및 input 관련 라이브러리를 사용하여 개발되었다. 따라서 아래의 패키지를 설치해야 하며, ruby gem을 이용하여 fusuma를 설치한다. $ sudo apt install libinput-t..
윈도우 환경에서 TS 스트림 분석 앱은 TS Reader, TSR 프로그램을 많이 사용하지만, 고용량의 TS 스트림 파일을 로딩하면 시스템에 부하가 발생하거나 메모리 부족으로 TS 스트림 분석 프로그램이 비정상 종료하는 경우를 많이 경험한다. 그래서 윈도우 환경에서 TS 스트림 분석을 거의 하지 않고 우분투 환경에서 한다. 우분투는 TS 스트림 분석 앱인 dvbsnoop을 기본 저장소에서 설치가 가능하며, CLI 환경이라 다소 불편한 점은 있지만 가볍고 빠르다는 장점이 있으며, 고용량의 TS 스트림을 로딩하여도 시스템에 부하를 주지 않는다. $ sudo apt install dvbsnoop dvbsnoop는 DVB SI 데이터를 분석하는데 가장 최적의 앱이며, PID별로 TS 스트림을 파싱하거나 디코딩이..
우분투 시스템 모니터링 도구로 gnome-system-monitor가 있지만, Indicator로 실시간 리소스 정보를 확인할 수 없어, 우분투 시스템 모니터링 도구인 SysPeek을 추천한다. SysPeek은 webupd8 PPA를 등록하여 쉽게 설치가 가능하다. webupd8 블로그는 최근 몇 년동안 업데이트가 되지 않고 있지만, 일부 PPA는 우분투 판올림되어도 관리되고 있으며, SysPeek도 우분투 20.04에서 사용 가능한 PPA중 하나이다. $ sudo add-apt-repository ppa:nilarimogard/webupd8 $ sudo apt install syspeek SysPeek 파이썬 2.7 버전으로 개발되었기 때문에 파이썬 2.7에 대한 심볼릭 링크를 생성하도록 한다. upd..
우분투 설치를 '최소 설치'로 하였다면, 우분투는 기본 패키지 및 라이브러리만 설치된다. 그래서 리브레오피스, 트랜스미션, 썬더버드 등과 같이 유틸리티 앱은 설치가 되지 않기 때문에 필요한 앱을 추가로 설치해야 한다. 우분투 부팅 디스크를 만드는 앱인 'USB Creator'도 설치가 되지 않으며, 따로 설치해야 하는데 우분투 부팅 디스크 만드는 앱이름을 몰라 헤맸던 기억이 있어, 블로그에 정리해둔다. $ sudo apt install usb-creator-gtk 많이 사용하지 않는 앱이지만, 우분투 판올림을 하거나 다른 PC에 우분투를 설치하기 위해 부팅 디스크를 만들때나 사용하기 때문에 앱이름을 항상 잊어버린다. 이미지 버닝 앱은 여러가지가 있지만, 우분투 부팅디스크를 만들때는 우분투 기본앱인 'US..
최근 관공서에서 배포하는 문서가 한글 뿐만 아니라 MS 워드, PDF 형식의 다양한 문서 형식으로 배포하지만, 여전히 예전에 배포한 문서는 한글로만 배포되어 한글 뷰어를 설치해야 하는 경우가 종종 있다. 다행인것은 한컴에서 우분투 및 페도라 버전의 한글뷰어를 배포하고 있어, 우분투에서 한글 문서를 보는데 문제는 없다. 아래의 한글과 컴퓨터 홈페이지에서 다양한 플랫폼의 한글 뷰어를 다운받을 수 있다. 글로벌 소프트웨어의 리더, 한글과컴퓨터 한컴오피스 2020 체험판 (Windows 용) (30일간 사용 가능) --> 한글, 한셀, 한쇼, 한PDF, 개인정보탐색기, 한컴 사전, 한컴 타자연습, 한컴 문서찾기, 한OCR로 구성된 체험판입니다. - PC : Windows 7 이상 / 모 www.hancom.co..
우분투 20.04에서 elfuilts를 빌드하면 아래와 같은 에러가 발생한다. | gcc -D_GNU_SOURCE -DHAVE_CONFIG_H -DLOCALEDIR='"/media/gon/proj/RDK/temp/build-raspberrypi-rdk-hybrid/tmp/sysroots/x86_64-linux/usr/share/locale"' -I. -I../../elfutils-0.166/libelf -I.. -I. -I../../elfutils-0.166/libelf -I../../elfutils-0.166/lib -I.. -isystem/media/gon/proj/RDK/temp/build-raspberrypi-rdk-hybrid/tmp/sysroots/x86_64-linux/usr/include ..
우분투를 처음 사용한 버전이 11.04 버전이었던 것 같다. 회사에서 IP STB을 개발하기 위해 Linux 사용하면서 졸업이후 5-6년만에 다시 리눅스를 설치하고 사용한 것 같다. 그 당시에만 해도, 캐노니컬이 기존 GNOME2 기반의 우분투 데스크탑 환경을 Unity로 변경하여 많은 반발이 있었던 것 같고, 그 즈음에 GNOME2 기반의 Linux Mint 배포판이 생겼던 것 같다. 나야 오랜만에 다시 설치한 리눅스인 우분투를 보고 엄청나게 놀라고 있었다. 리눅스는 개발할 때나 쓰는 용도이고 이런저런 서비스 올리려고 밤새 삽질한 기억이 있었는데... 리눅스를 이렇게 편하게 설치했었나...? apt-get 명령어 하나로 의존성 있는 패키지가 함께 다 설치되네...!!! 윈도우 대체할 수 있을 정도로 완..
배터리 문제로 로지텍 k810 키보드는 지금 사용하고 있지 않지만, 나중에 다시 사용할 때 참고하고자 블로그에 정리한다. 참고로 이글을 작성할 당시 테스트 환경은 우분투 16.04 버전까지 확인하였고, 우분투 18.04 이상 버전에서 정상 동작 하는지 확인이 필요하다. 로지텍 k810 키보드는 F1~F12 기능을 사용하려면, FN 키와 함께 입력을 해야 한다. 기본값이 F1 ~ F12 key 입력이 아닌 function key로 할당되어 있다. 윈도우와 맥OS 환경에서는 SetPoint 프로그램을 사용하여 쉽게 변경이 가능하나 우분투 버전의 SetPoint는 지원하지 않기 때문에 별도의 작업을 해야 한다. Logitech K810 Keyboard Configurator | trial-n-error Rec..
MIPS 계열 또는 임베디드 시스템 환경에서 개발을 한다면 Host PC 플랫폼과 상관없이 특별한 상황을 제외하고 대부분 32bit 라이브러리 기반으로 개발을 한다. 즉, Host PC 플랫폼과 상관없이 개발 보드는 32bit 라이브러리를 필요로 한다. 이것은 Host PC가 64bit 운영체제가 설치되어 있더라도 개발용 32bit 라이브러리가 함께 설치되어 있어야 한다는 것을 의미한다. 캐노니컬이 모든 32bit 개발 지원을 중단한다는 공지에 맹폭을 맞고 선택적으로 개발 지원을 유지하는 것으로 선회한 만큼 여전히 32bit 라이브러리는 여러 분야에서 사용되고 있다. 하지만 캐노니컬이 전체가 아닌 선택적으로 지원하는 것이기 때문에 일부 패키지 대해서만 한정적으로 지원할 것으로 보인다. 참고로, 이 포스팅..
브라우저 캐시 데이터를 SSD에 반복해서 쓰고 지우는 것은 SSD 좋지 않기 때문에, 캐시 데이터 크기 및 저장 위치를 램디스크로 변경하기 위해서는 우선 램디스크를 생성해야 한다. 램디스크는 /etc/fstab 아래와 같이 스크립트를 추가한다. tmpfs /var/ramdisk tmpfs defaults,noatime,size=2048M,mode=1777 0 1 램디스크는 크기를 2GB로 설정하였고, access time은 기록하지 않도록 설정한 것이다. /var/ramdisk 디렉토리는 SSD가 아닌 메모리에 할당된 램디스크에 생성된다. 여기에 브라우저 캐시 데이터가 저장할 것이다. 1. 파이어폭스 아래 이미지와 같이 파이어폭스 주소 영역에 about:config을 입력하면 파이어폭스 환경설정 메타데이..
우분투의 아카이브 매니저는 7zip과 RAR 압축 형식을 기본으로 지원하지 않기 때문에 관련 패키지를 추가로 설치해야 한다. 7zip과 RAR 압축 형식을 지원하기 위해 아래의 패키지를 설치하도록 한다. $ sudo apt install p7zip rar 위 패키지 설치로 아카이브 매니저는 7zip 및 RAR 형식의 압축 파일을 대한 해제가 가능하다. 윈도우에서 압축한 zip 파일 내에 파일이나 디렉토리 이름에 한글이 포함되어 있고, 이것을 우분투에서 압축 파일을 해제한다면 100% 한글이 깨지는 현상을 볼 수 있을 것이다. 이것은 한글 인코딩 방식을 UTF-8 방식을 채택한 우분투와 다르게 윈도우는 기존 제품의 하위 버전 호환성을 위해 고전적인 EUC-KR 방식을 사용하기 때문에 발생한 문제이다. 우분..
우분투에서 시리얼 프로그램으로 다양한 기능을 제공하는 Minicom을 많이 사용하지만, 로그 및 디버그 메시지 등의 시리얼 출력 기능에만 충실한 시리얼 터미널 프로그램이 필요하다면 아래 소스를 빌드하여 사용하면 좋을 것이다. 위 코드를 빌드하여 사용하려면 사용자 계정에 dialout 그룹 권한을 갖고 있어야 /dev/ttyXXX에 접근이 가능하다. 따라서 usermod 명령어로 사용자 계정에 dialout 권한을 할당해야 한다. $ sudo usermod -G dialout -a gon 아래와 같이 /etc/group 파일에서 dialout에 사용자 계정을 추가하는 방법도 있다. dialout:x:20:gon 위 두가지 방법 중 어느 것을 사용해도 상관없지만, 중요한 것은 위의 com.c 소스로 빌드한 ..
문서의 중요도에 따라 배포시 워터마크 포함시키거나 패스워드를 설정하여 배포하는 경우가 많이 있다. 문서가 외부에 유출되면 안되기 때문에 이중삼중으로 설정 하였겠지만, 매번 문서를 볼때마다 패스워드를 입력하는 것은 번거롭기 때문에 패스워드를 제거해서 따로 관리를 한다. 우분투는 설치시 QPDF 기본 App으로 포함되어 있기 때문에 따로 설치가 불필요하다. 사용방법은 매우 간단하며 아래 명령어를 참고하면 쉽게 PDF 설정된 패스워드를 제거할 수 있다. $ qpdf -password= -decrypt passwd_file.pdf remove_password_file.pdf QPDF는 윈도우 버전도 소스포지에서 제공하는 것 같으나, 바이너리 배포하는지 아니면 소스를 받아서 빌드해야 하는 확인이 필요하다. 가장 ..