본문 바로가기

개발환경79

CentOS 7에서 SW 개발용 패키지 설치 명령어 CentOS는 리눅스 배포판 중 하나로 Community Enterprise Operating System의 약자입니다. 현재 버전은 8.1까지 배포되었고, 안정적인 버전인 7.0 버전을 많이 사용하고 있습니다. 리눅스 서버의 1위인 RedHat기반으로 만들어진 리눅스 배포판으로 RedHat은 유료 버전인 반면 CentOS는 무료로 배포하고 있습니다. CentOS는 웹 호스팅 업체와 많은 회사에서 상용 서비스의 OS로 많이 사용하고 있어, 우분투에서 개발한 프로그램을 CentOS에서 확인하는 과정이 필요했습니다. 우분투에서 docker의 CentOS 이미지로 container를 설치하고 C언어와 파이썬으로 개발한 소프트웨어를 빌드했습니다. 이 과정에서 필요한 패키지는 아래 명령어로 설치가 가능합니다. $.. 2020. 11. 11.
21:9 모니터 사용 시 화면 분할 기능 사용하기 (우분투, 윈도우10) 제가 최근에 구입한 모니터는 3440x1440(Ultra WQHD) 해상도로, 일반 16:9 모니터와 비교하면 옆으로 길게 늘어진 화면을 가지고 있어 윈도우 2개를 띄우고 작업하기 딱 좋은 사이즈입니다. 모니터 2개를 사용하는 경우 창 크기를 윈도우 사이즈에 맞춰주는 기능을 OS에서 기본적으로 지원하지만 하나의 모니터에서 화면의 크기에 맞게 윈도우 분할하는 기능이 단축키로 숨겨져 있습니다. 본 포스팅은 넓은 화면을 가지 모니터에서 화면을 나눠서 사용하는 방법을 설명합니다. 아래 동영상은 21:9 모니터에서 우분투의 화면 분할 기능을 사용하는 사례입니다. 프로그램을 실행하여 오른쪽으로 배치 또는 왼쪽으로 배치하고 작업 공간을 상/하로 추가하는 사용 예시입니다. 본 동영상에 사용된 단축키 리스트는 아래 테이.. 2020. 11. 11.
Website 전체 백업 방법: HTTrack (티스토리 백업에 활용) 웹 사이트에 있는 html, images, javascript 등의 파일을 PC에 백업할 때 사용할 수 있는 툴인 HTTrack 를 소개합니다. HTTrack 은 웹사이트를 GPL 라이선스의 오픈소스로 개발하고 있으며 우분투, 윈도우, Mac 등의 여러 OS에서 무료로 사용할 수 있습니다. HTTrack은 URL을 입력하면 링크를 분석하여 웹 상에 있는 파일(이미지, JS 파일, 첨부파일)을 모두 다운로드하고 폴더 구조까지 '그대로' 컴퓨터로 저장합니다. 컴퓨터에 저장된 파일은 인터넷 브라우저를 통해서 백업한 내용을 원형 그대로 확인할 수 있습니다. 각 문서에서 연결된 링크 또한 로컬에 저장된 문서로 변경됩니다. 한 가지 주의해야 할 점은 웹 사이트 링크 개수에 따라서 백업 시간이 오래 걸립니다. 예를 .. 2020. 11. 2.
윈도우10 로그인 시 Win32Bridge.Server.exe 에러 발생 시 조치법 Windows 10에서 로그인 시 아래와 같이 Win32Bridge.Server.exe 에러 팝업이 발생하는 경우에 대한 조치법입니다. 현상: Win10에서 로그인 시 Win32Bridge.Server.exe 에러 팝업 조치법 1: Cortana 관련 에러로 작업 관리자의 시작 프로그램에서 해당 서비스를 Disable 합니다. CTRL+ALT+DEL 키로 '작업관리자'를 실행 작업관리자에서 '세부 정보' 보기 '시작 프로그램'에서 Cortana 선택하고 마우스 오른쪽 키 선택하여 '사용 안함' 으로 변경 조치법2: 앱 및 기능에서 Cortana 데이터 초기화 (시스템 설정 - 앱 및 기능 - Cortana 고급설정 - 데이터 초기화) 시스템 설정에서 앱 및 기능 선택 Cortana '고급' 옵션 선택 데.. 2020. 10. 26.
ffmepg 에러: trun track id unknown, no tfhd was found MPEG4 DASH 파일을 ffmpeg으로 처리 시 발생하는 에러입니다. 에러 메시지:[mov,mp4,m4a,3gp,3g2,mj2 @ 0000013e88baca00] could not find corresponding trex (id 1) [mov,mp4,m4a,3gp,3g2,mj2 @ 0000013e88baca00] could not find corresponding track id 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000013e88baca00] trun track id unknown, no tfhd was found [mov,mp4,m4a,3gp,3g2,mj2 @ 0000013e88baca00] error reading header video.m4s: Invalid data fou.. 2020. 10. 12.
우분투 20.04에서 Grub 편집: grub-customizer 와 Grub theme 설정 리눅스와 윈도우 등의 멀티 OS 부팅 환경에서는 Grub는 기본 설치되면 이를 통해서 부팅 시 OS를 선택할 수 있습니다. 예를 들어, 우분투 20.04와 윈도우 10 멀티 부팅 환경에서는 아래와 같이 5개의 메뉴가 기본으로 생성되고 부팅 시 우분투와 윈도우를 선택할 수 있습니다. 본 포스팅은 Grub 설정을 보다 쉽게고 이쁘게하는 방법에 대해서 설명합니다. ※ Grub (GRand Unified Bootloader)란 (출처: 나무위키) GNU 프로젝트의 부트로더이다. (중략) LILO(LInux LOader)와는 달리 리눅스에 한정되지 않고 다양한 운영 체제를 지원한다. 일명, 멀티 부트로더. 부트로더가 커널의 하드 디스크상의 물리적 위치를 알고 있어야 하는 LILO와 달리, 단지 파일명과 커널이 위.. 2020. 10. 1.
OneDrive를 활용한 파일 공유 방법: URL 생성 및 삭제 방법 최근 코로나 때문에 재택 근무나 원격 수업을 많이 진행하고 있습니다. 예를 들어, 원격 수업에서 선생님이 수업 내용을 동영상으로 만들고 이를 학생들에게 공유하고자 하는 경우 Microsoft Office 365의 One Drive를 활용하여 쉽게 파일을 학생들에게 공유할 수 있습니다. OneDrive에서 파일 공유는 인터넷 상의 URL을 생성하기 때문에 인터넷 연결이 가능한 PC나 스마트 폰만 있으면 특별한 프로그램 설치가 없이 누구에게나 쉽게 공유하는 것이 가장 큰 장점입니다. 또한 파일 변경 내용이 실시간으로 반영되기 때문에 업데이트 또한 간단합니다. OneDrive로 파일 공유 시 장점은 아래와 같습니다.OneDrive로 파일 공유 시 장점폴더/파일은 URL로 공유되며, 인터넷 연결 가능한 PC나 .. 2020. 9. 30.
Windows 10에서 한글 오타 발생 시 조치법 Windows 10 최신 업데이트에서 Microsoft 한글 IME가 최신 버전으로 업데이트 되었습니다. MS에서 개발하고 있는 한글 IME가 아직까지는 각 앱들과의 호환성을 100% 확보하지는 못 한 것 같습니다. Windows 10에서 Microsoft 한글 IME 오류가 발생하는 경우 아래 방법으로 조치 가능합니다. Test 버전: Windows 10 2004 (Build ID 20190) 제가 사용하는 버전은 MS Official release의 2004 버전은 아니며, 개발자 Preview 버전으로 Build ID 20190 버전에서 발생하는 문제점입니다. 공식 Release 버전에서 수정되기 희망합니다. 현상: Windows 10에서 한글 입력 시 간헐적으로 마지막 글자가 없어짐 (e.g. 가.. 2020. 9. 6.
우분투 20.04에서 Flask를 서비스 등록: 부팅 시 자동 실행 이전 Post에서 Flask Web 서버를 설명을 했고, 본 포스팅은 우분투 20.04에서 Flask Web 서버를 서비스 형태로 등록하는 방법입니다. Flask Web server를 우분투의 서비스로 등록했을 때 장점은 아래와 같습니다. Flask Web 서버를 재 부팅 시 자동 실행 가능 Flask Web 서버가 crash가 발생했을 경우 자동으로 재 실행 쉽게 Flask 서비스의 시작, 정지, 상태 확인, 재 시작 우분투에서 서비스 등록하기 위해서는 systemctl을 사용하며 아래 2단계 과정이 필요합니다. /lib/systemd/system 에 service configuration파일 작성 - 서비스 실행 파일, 부팅 시 실행 조건, 실행 권한 등을 설정 systemctl 명령어로 서비스 등록.. 2020. 8. 24.
Python: Web Framework Flask 사용하기 Python의 Web framework인 Flask을 활용해서 간단한 Web 서버와 REST API를 처리할 수 있습니다. 또한 Python Flask를 활용하면 Python 언어의 장점인 편리함을 그대로 활용 가능하며, 간단한 Web Application을 구성할 수 있습니다. Flask에 대한 개념 및 예제 코드에 대한 설명은 아래 동영상은 참고해주세요. Flask의 공식 사이트는 샘플 코드 및 설명을 제공합니다. Flask 개념 및 설명 (출처: https://www.youtube.com/watch?v=s_ht4AKnWZg) 1. Flask 설치 Python이 설치된 상태에서 pip로 flask 모듈을 추가 설치합니다. # macOS/Linux $ sudo pip3 install flask # Wi.. 2020. 8. 18.
우분투 20.04에서 lighttpd의 fastcgi 개념 및 사용법 Web server에서 CGI는 하나의 요청(request)에 하나의 프로세스를 생성한다. 이것은 프로세스를 생성하고 제거하는 과정에서 많은 부하가 발생하기 때문에 성능이 느릴 수 있습니다. 이를 개선한 것이 'FastCGI'입니다. FastCGI는 요청이 있을 때마다 프로세스가 만들어지는 것이 아니라 만들어진 프로세스가 계속해서 새로운 요청들을 처리하여 프로세스를 생성하고 제거하는 부하를 줄일 수 있습니다. 개념은 아래 lighttpd 문서를 참고해주세요. * 출처: /usr/share/doc/lighttpd/fastcgi.txt CGI programs have the problem that they have to be restarted by the webserver for every request w.. 2020. 8. 10.
Web 서버 GET/POST CGI 사용법 (QUERY_STRING / CONTENT_LENGTH) 이전 포스팅에서 ① 우분투 20.04에서 lighttpd 설치 ② CGI 모듈 enable 및 설정 파일을 설명했습니다. 본 포스팅은 HTTP의 GET과 POST Method에 대응하는 CGI 프로그램 작성 방법에 설명하고자 합니다. CGI 프로그램으로의 정보 입력은 명령줄 인수, 환경변수, 표준 입력에 의해 이루어지며, GET METHOD 인 경우에는 QUERY_STRING을 통해서 파라미터를 얻을 수 있고, POST METHOD 인 경우네는 CONTENT_LENGTH와 표준 입력에 parmeter를 전달받을 수 있습니다. CGI 프로그램으로의 정보 입력은 명령줄 인수, 환경변수, 표준 입력에 의해 이루어진다. 특히, 클라이언트가 서버에 요구한 URI의 안, 검색문자열(Query String)이 환경변.. 2020. 8. 7.
우분투 20.04에서 lighttpd CGI 설정 방법 및 C와 Python 예제 코드 CGI (Common Gate Interface)는 사용자 Browser에서 URL 요청을 받아서 Web 서버의 특정 위치의 프로그램을 실행하도록 하는 표준 규약을 의미합니다. 이전 포스팅에서는 lighttpd 설치 방법에 대해서 설명했고, 본 포스팅에서는 CGI의 최소 프로그램인 Hello world로 출력하는 방법에 대해서 설명하고, 다음 포스팅에서 GET과 POST Mehtod의 사용법에 대해서 설명할 예정입니다. 위키백과에서는 CGI를 다음과 같이 요약하고 있습니다. 중요한 키워드로 '환경 변수', '표준 입력', 'QUERY_STRING (GET method)', 'CONTENTS LENGTH (POST method)' 정도로 설명할 수 있습니다. CGI 프로그램은 웹 서버가 클라이언트로부터 요.. 2020. 8. 6.
우분투 20.04에서 lighttpd Web Server 설치 (Embedded용으로 활용 가능) Apache Web Server 가 가장 오래 사용되어 왔고, Web Server의 점유율 또한 1등 입니다. 하지만 Apache Web서버는 기능적으로 풍부하기 때문에 다소 무거운 감이 있어 제한된 리소스에서 동작하는 임베디드 시스템에는 적합하지 않습니다. 임베디드 시스템에 사용하기 위해서는 ① Web Server 자체가 경량화되어 작아야 하며, ② ARM으로 cross-compile이 가능하고, ③ 상용화하는 경우 오픈 소스 라이선스에 문제가 없어야 합니다. 이러한 조건을 만족하는 Web server 중 하나가 lighttpd (발음: 라이팃)입니다. lighttpd는 Revised BSD 라이선스로 GPL과는 달리 상용화 시 수정한 부분에 대해서 소스 전체를 오픈할 의무가 없습니다. ** 참고 내용.. 2020. 8. 6.
우분투 20.04에서 Apache와 Tomcat 완전 삭제 방법 우분투에서 Apache와 Tomcat 구동이나 설정 오류가 있어 해당 패키지를 재 설치하는 경우, 또는 Nginx나 lighttpd와 같은 새로운 Web Server를 설치하는 경우 기 설치된 Apache와 Tomcat을 '완전' 삭제해야 합니다. # 현재 구동 중인 services list 확인 - apache2 구동 확인 $ sudo service --status-all service --status-all # apache2 서비스 중지 $ sudo service apache2 stop # apache2와 tomcat9 삭제 (purge option은 설정 파일까지 삭제하는 옵션임, remove는 설정 파일은 유지함) $ sudo apt purge tomcat9* $ sudo apt purge apa.. 2020. 8. 3.
fatal error: curl/curl.h: No such file or directory 리눅스에서 C 언어로 HTTP POST를 구현하기 위해서는 libcurl를 사용해야 하고, 소스 상에서 curl/curl.h 을 include해야 합니다. 이 과정에서 발생할 수 있는 에러와 수정 방법입니다. 에러 메시지: fatal error: curl/curl.h: No such file or directory 수정 방법: $ sudo apt install libcurl4-gnutls-dev 리눅스 빌드 환경에서 libcurl.h 가 설치가 안되어 발생하는 에러로 libcurl-dev을 설치하면 간단하게 해결됩니다. libcurl-dev은 아래와 같이 gnutls, nss, openssl의 virtual package로 시스템에서 설치된 package에 따라서 자동으로 선택이 되는 경우도 있고, 에러.. 2020. 7. 28.
우분투 작업 스케줄러 Crontab 사용법, 디버깅, 주의 사항 우분투에서 프로그램을 예약 실행해야 하는 경우 crontab 사용할 수 있습니다. 예를 들어 1시간 마다 특정 폴더를 백업하거나 Git 소스를 업데이트는 하는 자동화 작업을 진행하는 경우 crontab을 활용하면 됩니다. crontab은 프로세스 예약 데몬이며, 리눅스용 작업 스케줄러로 특정 시각에 명령어를 수행하도록 등록 가능합니다. 출처: https://www.youtube.com/watch?v=llUw3RtD-Yw crontab 명령어 사용 방법 $ crontab [ -u user ] [ -i ] { -e | -l | -r } -e (edit user's crontab) # 예약 작업 추가 -l (list user's crontab) # 예약 작업 리스트 확인 -r (delete user's cro.. 2020. 7. 17.
우분투에서 7zip command line 사용하기 (p7zip과 7za추천) 7zip 파일은 압축율이 좋아 자주 사용하는 편이고, 개인이나 단체에서도 무료로 사용할 수 있습니다. 7zip에 대한 소개는 공식 홈페이지를 참고 부탁드리며, 추가 설명이 필요 없을 정도로 유명한 압축 툴으로 LZMA 이라는 압축 알고리즘 기반으로 개발되었다는 정보만 이해하면 문제가 없을 것 입니다. 우분투 20.04를 설치하면 notilus FileManager에서 기본적으로 7zip 파일의 압축 및 해제를 지원하기 때문에 사용에는 불편함이 없습니다. 하지만, 개발하고 있는 SW와 프로그램과 7zip을 연동하기 위해서는 터미널 상에서 command line interface를 사용할 수 있어야 합니다. 예를 들어 특정 폴더는 주기적으로 7zip으로 압축하여 백업하는 프로그램을 만드는 경우 sh comm.. 2020. 7. 9.
우분투 20.04에서 Web 서버 설치 방법 (apache2, tomcat9) 우분투에서 Web 서버 설치하는 방법은 많은 포스팅이 있어, 각각의 개념 보다는 package 설치에 필요한 메모 정도로 활용하고자 한다. 설치 동기는 REST API를 사용하다보면 구글 서버에서 redirect URL을 설정해야 하고 이 경우 http://localhost가 동작을 할 수 있도록 Web server (apache2와 tomcat9)를 설치해야 한다. 1. java 설치 확인 $ java --version openjdk 14.0.1 2020-04-14 OpenJDK Runtime Environment (build 14.0.1+7-Ubuntu-1ubuntu1) OpenJDK 64-Bit Server VM (build 14.0.1+7-Ubuntu-1ubuntu1, mixed mode, sha.. 2020. 7. 6.
[Memo] 우분투에서 gmail활용하여 command line으로 email 전송 우분투 20.04 에서 gmail 계정의 smtp를 활용해서 커맨드 라인으로 email을 송부하는 내용을 정리하였습니다. 우분투에서 자동으로 특정 프로그램을 실행하고 실행하고 그 결과를 email을 전송할 수 사용할 예정입니다. 우분투 20.04 설치 상태에서 아래 명령어를 copy&past 하면 잘 동작합니다. 이와 관련해서 출처 사이트에서 설명이 자세히 작성되어 있어, 명령어만 나열하였습니다. 1. postfix package 설치 $ sudo apt-get install mailutils libsasl2-2 ca-certificates libsasl2-modules postfix 2. main.cf 파일 수정 $ sudo vi /etc/postfix/main.cf #main.cf 파일 맨 밑에 아래.. 2020. 6. 22.
WSL 2.0 Global configuration (.wslconfig) 을 통한 성능 향상 WSL 2.0 은 윈도우10에서 리눅스 커널을 직접 올린 것으로 최근에 꾸준히 기능이 업데이트되고 있다. 최근 MS Build 2020 컨퍼런스에서는 CUDA와 Direct ML의 GPU 컴퓨팅을 지원해서 WSL에서 AI와 machine learnig에 사용할 수 있다고 한다. (출처: MS blog) WSL개념과 설치 방법은 아래 게시글을 확인 바란다. 현재 퀄컴이나 Android에서 배포하는 BSP와 Framework 소스는 리눅스 OS를 기반으로 배포하고 있고, Trace32나 일부 개발 Tool은 Windows 에서만 배포하고 있어, Windows와 리눅스를 같이 사용할 수밖에 없다. 본 게시글은 WSL에서 Android 빌드를 확인하는 과정에서 가상 메모리(=swap)를 늘리는 과정이 필요했고,.. 2020. 6. 21.
윈도우용 MobaXterm - SSH 및 X-Server 지원 윈도우에서 1) 원격 서버에 SSH (Secure Shell)로 접속, 2) 원격 프로그램을 실행, 3) 로컬에서 리눅스 명령어를 사용하는 경우 유용한 tool이 MobaXterm이다. 이미 Putty, PowerShell, Cygiwn을 사용하는 분들께는 MobaXTerm은 보다 유용한 기능을 지원한다. MobaXterm은 무료 버전과 유료 버전으로 구분되어 있으나, 본 내용은 무료 버전 기준으로 설명한다. 일반 사용자라면 무료 버전을 사용해도 기능적으로 부족함이 없고, 별도의 광고나 추가 설치 프로그램이 없이 실행파일을 다운로드하여 설치하면 바로 사용 가능하다. 지원 기능 요약 SSH 지원 (원격 서버 IP 주소 저장, ID 패스워드 저장) 멀티 TAB과 Split view로 다수의 terminal .. 2020. 6. 20.
[실패 사례] gcc 버전이 낮은 상용 리눅스 서버에서 프로그램 설치 시 GLIBCXX' not found 에러 실패 사례입니다. 상용 서비스를 하고 있는 리눅스 서버에 우분투에서 gcc로 빌드한 응용프로그램을 설치해야 합니다. 일반 리눅스 서버라면 필요한 패키를 설치하면 가능하지만 이미 상용 서버로 운영되고 있어 기 설치된 프로그램에 영향을 줄 수 있는 패키지의 추가 설치가 불가능합니다 프로그램 설치를 위해서 여러 방법을 시도했지만 결국 libc 버전 차이로 설치가 불가능 하다는 것으로 결론 지었습니다. 상용 리눅스 서버 전제 조건: 기 운영 중이 프로그램으로 인하여 서버에 추가 패키지 설치 불가 상당히 오래된 설치 상태에서 추가 패키지 업데이트 없음 잠재적 결론 shared lib는 일반 서버에서 상용 리눅스 서버로 local lib로 참조가 가능하지만, libc는 불가능 libc을 업데이트를 위해서는 상용 리.. 2020. 6. 17.
Ubuntu 동영상 플레이어: VLC Player 설치 1. 우분투 기본 동영상 프로그램의 문제점 우분투 20.04에서 DVD 동영상을 보다가 아래와 같이 "파일을 재생할 수 없습니다"라는 팝업 때문에 우분투에 적합한 동영상 플레이어를 찾기 시작했다. 윈도우즈에서는 기본 설치되는 Media Player 나름(?) 훌륭하고, GOM Player이나 KM Player와 같은 막강한 플레이가 않지만, 우분투에서는 윈도우즈 보다는 선택의 폭이 좁은 것 같다. 기본 동영상 프로그램은 DVD에서 추출한 포맷과 호환성이 떨어지는 것으로 보인다. 우분투 동영상 프로그램 이외에 기본 설치되는 동영상 프로그램 중에서는 'mpvMedia Player' 가 있다. mvpMediaPlayer는 다양한 코덱와 DVD 포맷을 지원하여 호환성에는 전혀 문제가 없지만 UI 가 거의 없다... 2020. 6. 15.
우분투20.04에서 한글 오타 방지 (UIM '벼루' 설치기) Ubuntu 20.04 에서 한글을 입력하다 보면 오타가 발생하는 경우가 가끔 있다. 특히 트위터에서는 한글 입력 시 100% 오타 현상이 발생하며, 아래 동영상처럼 키보드 입력은 '가나다라마'로 입력하나, 트위터 표시되는 글자는 한글자씩 씹혀 '가나다라마'오타가 발생한다. 우분투 디폴트 입력기인 IBUS 문제점인지 트위터의 문제인지 확실치는 않지만 입력기를 IBUS → UIM 변경하면 트위터 한글 오타 문제는 해결된다. (※ 트위터 버그보다는 IBUS의 한글 오토마타 버그로 '추정'됨) 한줄 요약 트위터와 같은 프로그램에서 한글 입력 오타가 발생해서 'IBUS' 에서 'UIM 벼루' 로 변경 트위터에서 오타 현상 발생 (100% 빌생) 한글 입력기를 IBUS→UIM으로 변경하는 과정은 아래와 같이 3단.. 2020. 6. 11.
Ubuntu 20.04에서 sshfs 를 이용한 원격 폴더 마운트 우분투가 설치된 로컬 PC와 원격 서버 (=빌드 서버 or 백업 서버)가 있는 경우 로컬 PC에서 원격 서버를 마운트 하는 방법을 정리하였다. 안드로이드 소스는 120GB 이상이고, 빌드가 완료되면 250GB 정도가 넘기 때문에 별도의 빌드 서버를 사용하는 경우가 많다. 로컬 PC에 설치된 IDE를 사용해서 원격 서버에 있는 파일을 수정하는 경우 sshfs로 원격 서버의 폴더를 마운트 해서 마치 로컬 PC의 파일을 수정하는 것처럼 사용할 수 있다. 또한 별도의 파일 서버나 백업 서버를 사용하는 경우에도 sshfs 유용하다. 회사에서는 보안 때문에 SMB 나 FTP를 막아 놓는 경우가 많지만 SSH 는 항상 열어 놓기 때문에 SSH 기반의 sshfs를 사용할 수 있고, Windows 용 sshfsWin 또.. 2020. 6. 10.
[Tips] Ubuntu 20.04 에서 Home 폴더 이름을 영문으로 변경 우분투 20.04 를 Locale을 한글로 설치하면 Home 폴더의 이름도 한글로 생성된다. 하지만 터미널에서는 폴더 이름을 입력할 할때 영문→한글→영문으로 변경해야 하기 때문에 불편했다. 궁여지책으로 심볼릭 링크를 사용했지만 간단한 command 하나로 영문으로 변경할 수 있다. #홈 폴더 이름을 한글로 변경 $ export LANG=C; xdg-user-dirs-gtk-update # 영문에서 다시 한글로 변경 $ echo “C” > ~/.config/user-dirs.locale $ export LANG=ko_KR.utf8; xdg-user-dirs-gtk-update 터미널에서 export LANG=C; xdg-user-dirs-gtk-update 실행하면 업데이트 아래 팝업이 표시되고 'Upda.. 2020. 6. 5.
Ubuntu에서 토렌트 다운로드하기 (Transmission) 우분투에서 토렌트 클라이언트인 transmission-gtk가 기본 설치되어 있다. 만일 설치되어 있지 않다면 apt로 transmission-common과 transmission-gtk로 설치할 수 있다. sudo apt install transmission-common transmission-gtk Transmissiont을 실행 (transmission -gtk) 실행하면 매우 직관적인 UI로 구성되어 있어 쉽게 사용 가능하다. 인터넷에서 .torent 파일을 다운로드하고 파일 매니저에서 실행하면 기본 프로그램으로 transmission이 이미 설정되어 있어 별다른 설정 없이 토렌트 파일을 다운로드한다. 기존에 윈도우즈에서 토렌트를 사용해본 경험이 있다면 별 어려움이 없이 사용 가능하다. 우분투에서.. 2020. 6. 4.
[Tips] Ubuntu 20.04 에서 swap file 늘리기 용량이 큰 프로그램을 사용하다 보면 화면 업데이트 업데이트가 안되는 freezing 현상이 발생되고, 마우스 클릭을 하더라도 반응이 없거나 매우 느린 현상이 발생한다면 "Memory 부족 현상"을 의심할 필요가 있다. 이런 현상이 발생하는 경우 '시스템 감시' 를 띄워 놓고 Memory 와 SWAP 사용량을 확인하면 메모리 부족 현상 여부를 정확하게 판단할 수 있다. 아래 그림에서 시스템 감시는 8GB RAM 은 다 사용했고, 부족한 메모리를 대신 SWAP 을 사용하고 있지만 대략 50% 정도 사용 중이다. Memory 부족 현상은 1) 실제 메모리와 2) SWAP 메모리를 모두 사용한 상태이다. 이 경우 리눅스 커널의 OOM(Out of Memory) killer가 실행 중인 프로그램을 우선 순위에 따.. 2020. 6. 4.
Git 사용하기#2 (bat, git-fuzzy, git-delta) 지난 Post에서는 git 개념을 설명했다면 지금은 git 사용시 편하게 사용할 수 있는 tool 중 3개 (bat, git-fuzzy, git-delta)를 소개하고자 한다. bat 과 git-fuzzy, git delta 는 단조로운 command line을 화려화게 사용할 수 있어 소스 코드의 가독성을 높이고, 보다 편리하게 git commit을 만들 수 있다. bat과 git-delta는 리눅스용/윈도우즈 빌드를 지원하고, git-fuzzy는 리눅스용 bash script이다. 즉, 우분투에서 3가지 tool 모두 사용가능하고, 윈도우에서는 윈도우즈용 빌드를 설치하고나 WSL 환경에서 사용해야 한다. [개발환경 만들기] 9. git 사용하기 #1 (부제: GitHub) 1. bat (cat 대신 .. 2020. 6. 4.