Category Archives: Linux

MKBlog 관리자 입니다.
Linux 프로그램의 사용 방법을 정리할 게획입니다.
제가 잘 몰라던 부분 위주로 정리할 계획입니다.
감사합니다.

[Linux-Ubuntu] XRDP 설치 및 사용하기 (Install X? Remote Desktop Protocol)

실험환경: Ubuntu 18.04 XRDP는 Microsoft Remote Desktop Protocol (RDP) 기능을 다른 OS에서도 사용할 수 있도록 해주는 Protocol이다. 상세한 설명은 출처 1 영문 위키피디아에서 확인 할 수 있다. 개인적으로 사용하는 방법에만 관심이 있어서 해당 Protocol에 대해서 추가로 공부를 하지는 않았다. 보통 위와 같이 설정한 다음 Window Remote Desktop 프로그램을 사용해서 리눅스에 접속을 할 수 있다고 한다.… Read More »

[Linux] CMake 명령어 정리 (CMake Commands)

CMake에 대해서 정리해보려고 했는데 출처 1, 2에 설명이 정말 잘 정리되어 있어서 개인적으로 사용하는(사용해본) 명령어만 정리해보았다. 대부분 출처 1, 2에서 발취한 내용이다. CMake 최소 지원 버전 선택하기 (CMAKE_MINIMUM_REQUIRED) CMake 지원 최소 버전을 명시할 때 사용한다. 보통 CMakeLists.txt 파일 제일 처음에 작성한다. VER: CMake 최소 버전 File 및 Folder 위치 정보 변수에 저장하기 (GET_FILENAME_COMPONENT) File 및… Read More »

[Vim/Linux] cscope DB 파일 자동 로딩 (Auto-Loading cscope DB File)

예전에 cscope Database (DB) 파일을 생성하는 방법에 대해서 정리하였다 (출처 1참조). 해당 글에서는 cscope Database 파일을 절대 경로(Absolute Path)로 변경하여서 vim에서 로딩하도록 설정하였다. 하지만 절대 경로로 변경하지 않고 현재 위치한 경로 아래에 있는 모든 cscope DB 파일을 자동으로 로딩하는 방법이 있어서 정리하였다. 방법은 아주 간단하다. 아래에 있는 코드를 .vimrc 파일에 추가하면 된다. 보통 .vimrc는 /home/USER_NAME/.vimrc에서… Read More »

[Linux] Vim 여러줄에 동일한 글자 입력하기 (Same Characters on Multiple Lines)

Vim을 사용하면서 여러 줄에 동일한 글자를 입력해야 하는 경우가 빈번히 발생한다. 특히 주석처리 하는 과정에 많이 사용된다. 여러 줄에 걸쳐서 동일한 문자를 입력하는 방법을 정리하였다. 여러 줄에 동일한 글자 입력하는 방법 (그림 1참조) “Ctrl + v”를 입력함 글자를 입력하고 싶은 라인을 선택함 “Shift + i”를 입력함 원하는 글자를 입력함 ESC를 입력함 완성 출처 https://stackoverflow.com/questions/253380/how-to-insert-text-at-beginning-of-a-multi-line-selection-in-vi-vim

[Linux] git 명령어 정리 (git commands)

최근 일을 하면서 git을 많이 사용하게 되었다. 예전에 일을 할 때는 Subversion을 많이 사용했는데, git을 사용하다 보니 명령어가 익숙하지 않아서 정리해보았다. 대부분의 명령어는 1개 단위로 정리를 하였다. 하지만 특정 경우에 여러 개의 명령어를 사용해야 하는 경우가 있다. 이런 경우는 2개 이상의 명령어로 구성되어 있다. 아마 각 명령어를 상세히 이해한다면 2개 이상의 명령어가 어떻게 동작하는지 알… Read More »

[Linux] vim 단축키 정리 2 (Function Folding Shortcut)

Notepad 등 Editor에서 함수 단위로 접었다 폈다 하는 기능을 지원한다. vim에서도 비슷한 기능이 있어서 단축키를 정리해보았다. 아래 Table은 출처 1에서 발취한 내용이다. 단축키 (Shortcut) 설명 (Description) zf 선택된 영역을 Fold 한다. zf#j zf/ zj zk za zo Fold 되어 있는 영역을 다시 Unfold 한다. zO zc Unfold 되었던 부분을 다시 Fold 한다. (Cursor 기준) 한… Read More »

[Linux] 특정 Core에 Task(Job) Scheduling 하기 (taskset)

실험환경 OS: Ubuntu 18.04 Linux에 실행되는 Process를 특정 Core에 Scheduling 해야 하거나 현재 실행되고 있는 Process가 몇 번 Core에서 실행되고 있는지 등을 확인하고 싶을 때 “taskset” 명령어를 사용하면 된다. 아래 자주 사용하는 옵션을 정리하였다. 더 많은 옵션은 출처 1에서 확인 할 수 있다. PID_NUMBER 연산을 수행하고 있는 Core 번호 확인 (결과는 16진수로 표시됨) $taskset -p… Read More »

[Linux-Ubuntu] 일정 주기로 CMD 실행하기 (Crontab)

실험환경: Ubuntu 18.04 Ubuntu에서 특정 CMD(명령어)를 반복적으로 실행하기 위해서 Crontab이란 리눅스 전용 작업 스케줄러를 사용하면 된다. 사용 방법은 모두 출처 1에서 참조하였다. 상세한 내용은 출처 1을 참조하면 된다. Crontab에 등록된 CMD 확인 CMD를 사용하여 현재 Crontab에 등록된 모든 CMD를 확인 할 수 있다. 아래 그림 1은 현재 등록된 CMD를 수행한 화면이다. 현재 2가지 CMD가 설정되어… Read More »

[Linux-Ubuntu] Python 버전 변경

실험환경: Ubuntu 14.04 & Ubuntu 18.04 Ubuntu Linux에서 Python 버전을 변경하는 방법을 정리하였다. 모든 자료는 출처 1에 기준으로 작성하였다. 가장 먼저 아래 CMD를 실행해서 등록된 Python이 있는지 확인한다.  “//MK”는 주석을 의미하고, “$” 뒤에 있는 CMD는 Terminal에 실행해야 하는 부분이다. 만약 아래와 같은 에러 메시지가 나오면 등록된 Python이 없다는 의미이다.  그림1과 같은 에러 메시지가 나올 경우 아래와 CMD를… Read More »

[Linux-Ubuntu] Samba 공유 폴더 설정

실험 환경: Ubuntu 14.04, Ubuntu 18.04 Linux(Ubuntu)와 Window 사이에 파일을 공유(?)하기 위해서 Samba를 사용해서 공유 폴더를 설정한다. 아래 코드에 따라 실행하면 간단히 공유 폴더를 설정할 수 있다. “#”뒤는 주석이며, “$”뒤는 터미널에서 실행해야 하는 CMD이다. “#—#”안의 내용은 smb.conf 파일 마지막 부분에 작성해야 하는 코드이다. 모든 코드를 작성 후 Samba Service를 다시 실행하면 된다. 위와 같이 설정 완료 후 윈도우에서… Read More »