Programming 68

scp - SSH 프로토콜로 파일 전송

scp SSH 서버 간 간단하게 파일을 전송하고 싶을 때 유용합니다. ftp보다 쉽고 보안상으로도 안전해요. Secure CoPy 의 줄임말이거든요. 본문 scp로 무엇을 할 수 있는지 생각해봅시다. 일종의 P2P 파일 전송이니까, 크게 아래 두 가지 경우로 나뉘겠네요. # 상대방의 시스템으로 파일 밀어넣기 scp /path/to/sourceFile user@host:/path/to/targetFile # 상대방의 시스템에서 파일 가져오기 scp user@host:/path/to/sourceFile /path/to/targetFile 옵션을 볼게요. scp usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit]..

Docker - 오드로이드/라즈베리파이 웹 개발을 위한 간단 ARM LEMP 스택 패키지

Docker 아마 간단한 웹/소켓 서버가 필요한데 현재 윈도우 시스템이라면, 보통 가상머신으로 리눅스를 설치하기 위해 VMware나 VirtualBox를 많이들 사용하실 겁니다. 나쁘지 않은 방법이에요. 사실 (알려진 한) 지금껏 그 방법 외에는 윈도우라는 Host OS를 유지할 다른 방법이 없었어요. 근데 저런 가상머신의 문제점은, 쓸데없는 리소스 소모와 성능 저하가 너무 심하단 거예요. OS위에 다른 OS를 설치하는 방식이기 때문에 하나만 돌려도 시스템 과부하가 어마무시 합니다. 그래서 최근에 나온 CPU들은 아예 가상화 성능 개선 기술(명령어 집합)을 제공하긴 하죠, VT-d나 VT-x같은.. 그래봐야 Host OS 위에서 다른 OS 하나를 통으로 돌린다는 점은 바뀌지 않아요. Docker는 조금 ..

Programming/Docker 2017.11.13

Terminator - 리눅스 터미널 대체, 화면 분할

개요 출처: https://gnometerminator.blogspot.kr/p/introduction.html 리눅스를 쓰다 보면 종종 터미널 화면이 분할되었으면 할 때가 있는데요. 터미널 창 4개를 띄워서라도 각 모서리에 두고 싶은데 그러기 어려워요. 그래서 나온 프로그램이 터미네이터입니다. 화면 분할 뿐 아니라, 터미널을 사용하면서 "아 이게 되면 참 좋을텐데..." 하는 어지간한 게 모두 들어가 있어요. 리눅스 필수 프로그램인 듯. Terminator 설치는 간단히 패키지 매니저에서 하시면 돼요. apt update apt install terminator 그리고 사용자 설정 파일을 작성해줘요. 아래는 http://programmingsummaries.tistory.com/361를 참고하여 작성한..

iconv - 리눅스에서 텍스트 파일 인코딩 변경 (EUC-KR to UTF-8)

개요 윈도우 메모장으로 작성한 문서를 우분투에서 열려고 하니, 글자가 전부 깨져 보였어요. 메모장에서 저장할 때 파일 인코딩을 UTF-8로 할걸 했지만, 다시 윈도우 PC에서 열어서 UTF-8로 저장하고 오기엔 귀찮았어요. 그래서 찾았어요. 명령어로 한 번에 UTF-8로 바꾸는 방법을.. 와일드 카드 문자(*)로 여러 파일을 한 번에 바꿀 수 있으니까요 :) iconv iconv는 기본적으로 설치되어 있을 거예요. 만약 없다면, apt 로 설치해주세요. 간단히 파일 인코딩이 EUC-KR인 텍스트 파일이 있는 경로로 가서 아래 명령어를 실행해주시면 돼요. iconv -c -f euc-kr -t utf-8 test.txt > test-utf8.txt 인코딩이 타입을 바꾸는 거라 EUC-KR 도 명시해줘야 해..

iozone - 리눅스 디스크 성능 테스트

개요 리눅스 디스크 성능 테스트 방법입니다. 얘도 CLI 환경에서 사용하기 때문에 서버 성능 평가를 위해 (많이?) 사용된다고 하네요. 근데 sysbench에서 제공하는 테스트 종류가 많기 때문에 간단한 벤치마킹을 위해선 굳이 필요하진 않구요. 테스트 결과가 sysbench보다 자세하니 자세한 걸 원할 때 사용하시면 될 것 같아요. iozone 빌드 iozone은 직접 빌드해야 합니다. 일단 소스 파일을 받아 압축을 풀어줍시다. wget http://www.iozone.org/src/current/iozone3_471.tar tar -xvf iozone3_471.tar cd iozone3_471/src/current/ 여기서 make 명령어를 입력하시면, makefile에 정의된 대로 빌드가 됩니다만, ..

sysbench - 리눅스 시스템/DB 성능 테스트 (ODROID XU4 성능)

개요 간단한 리눅스 성능 테스트 방법입니다. CLI 환경에서 sysbench를 이용하기 때문에, 서버 성능 평가를 위해 많이 사용된다고 하네요. sysbench sysbench 를 설치하고, sudo apt install sysbench 많은 임시 파일들이 생성되기 때문에 임시 디렉토리도 만듭니다. mkdir sysbench_temp cd sysbench_temp sysbench 로 크게 4가지 성능 테스트를 진행하실 수 있습니다. --num-threads 옵션에 자신의 CPU에 맞는 쓰레드 수를 넣어주세요. 예제 테스트 환경: Ubuntu Minimal 16.04.3 LTS, 4.9.58-70, eMMC 32G. 참고삼아 봐주세요. ##### CPU ##### sysbench --test=cpu --c..

우분투 17.10 - ibus 한글 입력

개요 Ubuntu 17.10 이 새로 릴리즈 됐습니다. 기존 자체 환경인 Unity를 버리고 Gnome 데스크탑 환경이 기본값이 되면서 사용 환경이 조금 바뀌었어요. Unity도 Gnome 기반이니 어마무시하게 바뀐 건 없지만요. 캐노니컬에서 일부러 기존의 Dock 을 유지했다고도 하고.. 새로운 17.10 우분투를 설치한 후, 가장 간단하고 안정적인 방법으로 한글 입력을 해봅시다. # 내장 ScreenShot 프로그램을 사용했는데, 스크린샷에선 UI가 기본 Gnome 처럼 파란색 테마로 바뀌네요. 설정하실 땐 주황색일 거에요. 한글 입력 설정 "Software Center"를 열고 "Gnome Tweaks"를 검색해 설치하세요. 실행한 다음 아래 메뉴로 가 "Additional Layout Option..

실행중인 프로세스를 SSH 접속 종료해도 유지하기

원래는 nohup으로 현재 터미널과 상관없이 백그라운드에서 계속 돌게 할 수 있습니다만,이미 실행한 프로세스를 터미널을 종료해도 유지하고 싶다면 아래와 같은 방법을 사용하면 된다네요. 1. Ctrl + z 로 실행중인 프로세스 중지 2. bg (#) 을 입력해 백그라운드에서 해당 프로세스 재실행 3. disown 명령어를 통해 작업의 소유권을 현재 쉘 세션에서 해제 4. 맘놓고 SSH 로그아웃 / 해당 터미널 세션 종료 출처) http://brownbears.tistory.com/174

명령어 - sort

sort는 어떤 결과를 정렬하고 싶을 때 사용할 수 있습니다. 예를 들어, 온도 로그 파일을 정렬해서 보고 싶다거나.. 할 때요. 간단하게, # 3번째 컬럼을 기준으로 정렬합니다. sort -k 3 /path/to/file # 컬럼의 기준을 tab으로 바꿉니다. sort -t $'\t' / path/to/file # 정렬 결과를 반대로 표시합니다. sort -r /path/to/file # 파이프로도 사용하실 수 있습니다. tail /path/to/file | sort 참고) https://linux.die.net/man/1/sort

명령어 - sed

기가막힌 스트림 에디터입니다.Input stream 으로부터 들어오는 텍스트 문자열을 단순하게나마 수정할 수 있습니다. 스트림 에디터이기 때문에 작업 결과가 표준 출력(STDOUT, 스트림)으로만 보여지지만, 명령어의 옵션이나 리다이렉션을 통해 파일로도 저장할 수 있습니다. 예를 들어 굳이 텍스트 에디터로 파일을 열지 않아도 파일 내 모든 apple을 banana로 바꿀 수 있으며, 제일 빠릅니다. 참고) https://linux.die.net/man/1/sed