본문 바로가기

웹서버 재시작 할 때 unable to resolve host 에러 해결하기 in 우분투 우분투에서 웹서버 재시작 했는데 unable to resolve host 라는 메세지가 나온다면 hosts 파일을 변경하면 해결됩니다. /etc/hostname/etc/hosts 저는 hostname 파일을 해당 서버 이름에 맞게 수정해두는데요.가끔 까먹고 hosts 파일을 변경하지 않아서 unable to resolve host 라는 메세지를 만나게 되더라고요. hostname 변경한 이름을 host에 작성해주면 됩니다. 더보기
우분투 time sync AWS를 CLI로 사용할 때가 있는데요. 잘 안된다면 해당 컴퓨터 혹은 서버 시간을 확인해보세요. 이번에는 우분투 환경에서 time sync 하는 방법을 간단하게 정리해봅니다. 일단 Time Location 부터 맞춰야 하겠죠. 이건 예전에 작성한 포스팅으로 대신할게요 :-) 2015/03/10 - 우분투 서버 타임존(time zone) 변경, 시간 변경 (시간은 중요하죠 !) ntp라는 툴을 통해서 time sync를 맞출 수 있는데요. ntp가 없다면 아래와 같이 설치해줍니다. suto apt-get install ntp time sync를 맞추기 위해서 ntp를 잠시 정지하고요. sudo service ntp stop time sync를 맞춥니다. sudo ntpdate -s pool.ntp.org.. 더보기
crontab : daily, weekly, monthly example crontab을 활용하면 반복적으로 특정한 시간이나 날짜에 원하는 프로세스를 작동할 수 있죠. 여기서는 weekly, daily 로 설정하는 예제를 몇 가지만 작성해두려고 합니다. 설정 방법 자체는 너무 쉽기 때문에 바로 본론으로 ! 1. 우분투에서는 crontab의 기본 위치가 /etc/crontab 입니다. - # m h dom mon dow user command - 입력은 위와 같이 이뤄집니다. - dom - day of month, 값은 1 - 31 가져요. - mon - month, 값은 1 - 12 가집니다. - dow - day of week, 값은 0 - 6까지 값을 가지고 일욜 0, 월욜 1, 화욜 2, 수욜 3, 목욜 4, 금욜 5, 토욜 6 입니다. 2. daily - 매일 0시 0.. 더보기
wget 으로 파일 다운로드할 때 주의할 점 하나 wget은 정말 유용한 프로그램이죠.예전에 wget에 대한 예제를 포스팅한 적이 있네요. 2016/07/31 - [ # 리눅스/- 우분투] - wget으로 웹 이미지 폴더/파일 다운로드하기 2014/02/16 - [ # 리눅스/- 우분투] - wget 간단한 예제 관련된 포스팅이 2개나 있지만 아래와 같은 에러에 대해서는 전혀 작성한 적이 없더라고요. wget 으로 특정 이미지 url 들을 다운로드 하는데 위와 같이 syntax error near unexpected token ... 에러가 나더라고요. python popen으로 wget을 사용했고 아래와 같은 코드에서 에러가 났어요. popen('wget -O ' + expanduser('~') + '/Downloads/%s.jpg %s' % (ima.. 더보기
imagemagick 예제 여러개 아주아주아주 훌륭한 이미지 처리 관련 오픈소스인 imagemagick 정말 좋아요.제가 사용하는 기본적인 처리는 대부분 지원하고 커맨드라인으로도 사용 가능하기 때문에 더더더 좋아합니다. :-) 예제 몇 개를 이번 포스팅에서 작성해보려고요. 1. jpg to png 간단한 처리라서 imagemagick이 아니더라도 지원하는 툴이 많죠.imagemagick에서는 아래와 같이 사용합니다. convert name.jpg name.png 응용해보면 아래와 같이 할 수 있겠죠 ! import globfor original_img in glob.glob("images/*"): popen("convert %s %s" % (original_img, original_img.replace("jpg", "png"))) 2. .. 더보기
wget으로 웹 이미지 폴더/파일 다운로드하기 wget은 간단하게 특정 url에 있는 파일을 다운로드 할 수 있는 어플리케이션이죠. Ubuntu server에는 기본적으로 설치가 되어있는 것 같구요(Windows 같은 경우는 설치하셔야 사용 가능합니다). *참고: windows wget 다운로드 : http://gnuwin32.sourceforge.net/packages/wget.htm 사용 방법은 예를 들어서 설명드리면, http://192.168.0.100/test/aaa.png 위와 같은 주소에 있는 이미지를 다운로드해서 현재 폴더에 저장시키고 싶을 때는 wget http://192.168.0.100/text/aaa.png 위와 같이 사용하시면 됩니다. 하지만 이번 포스팅에서 다루고자 하는 것은 여러 파일이 하나의 폴더에 있을 때 모두 다운로드.. 더보기
리눅스, 맥 - grep 활용 파일안에서 문자열 찾기 예전에 "리눅스 파일 검색 (find), 파일 내부 문자열 검색(grep 이용)" 이라는 포스팅에서 Grep을 통해여러 파일안에서 특정 문자열이 있는지 찾는 내용을 간단하게 정리한 바 있습니다. :) 여기서는 특정 문자열이 포함된 한 줄이 매우 긴 경우 어떻게 하는지 작성해두려고 합니다. 1. 특정 문자열이 포함된 내용을 찾는 것은 아래와 같습니다. 예로 "Multi" 라는 문자열이 포함된 파일을 찾기 위해서는 아래와 같은 명령어를 사용할 수 있습니다. grep -r "Multi" ./* 2. 그런데 Multi 라는 문자열이 엄청나게 긴 문자열에 포함되어 있다면 아래와 같이 나올 수 있습니다. 이것도 좀 많이 줄여서 표현한 것입니다. 즉 Multi라는 문자열을 가진 파일을 찾고 싶은건데요. 결과는 찾을 .. 더보기
Ubuntu Boot Order (우분투 부팅 커널 변경) 제목에 영어랑 한글이랑 잘 맞지는 않지만 아무튼 시작해보겠습니다. 참고1. Ubuntu에서만 테스트해봐서 다른 리눅스들은 어떤지 잘 모르겠습니다.참고2. 여러 개의 Kernel (커널)이 설치되었을 때 내가 원하는 커널로 부팅하기 위한 내용입니다. 1. 일단 아래와 같은 파일을 열어봅니다. 보시는 것과 같이 vi /etc/default/grub 파일입니다. 기본적으로는 GRUB_DEFAULT=0 으로 되어 있는데 저는 GROUB_DEFAULT="1>2" 로 설정한 상태입니다. 0은 무엇이고 "1>2"가 무엇인지 알아내는 것이 이번 포스팅의 목적이라고도 할 수 있겠습니다. 2. 위 파일은 닫고 아래 파일을 열어봅니다. vi /boot/grub/grub.cfg 파일입니다. 열어서 쭉 아래로 내리다 보면 me.. 더보기
주기적으로 명령어 실행하기 (폴더의 파일 변화 확인하기) 주기적으로 어떠한 명령어를 실행하기 위해서 사용 가능한 명령어로 watch 가 있습니다. man watch로 확인해보면 여러 옵션을 통해 주기적으로 명령어를 실행할 수 있습니다. 저는 watch를 요럴 때 사용해봤습니다. 어떤 특정 폴더에 파일이 생성되고 있는지, 잘 삭제되고 있는지를 눈으로 보고 싶었고 watch를 통해 가능했습니다. watch를 통해 ls 명령어를 주기적으로 실행하는 것이 가능하기 때문입니다. 예를 들어 /var/www/html/test 라는 폴더를 감시(??)하고자 하시면 다음과 같이 입력하면 됩니다. watch ls /var/www/html/test 2개의 file이 존재하는 것을 확인할 수 있네요. 다른 터미널을 열어서 touch file3 명령어를 통해 하나의 파일을 추가하면 .. 더보기
우분투에서 Telegram(텔레그램) 한글 입력 우분투에서 텔레그램 한글 입력이 되네요!! 최근 버전으로 업데이트 되면서 한글이 입력을 지원하기 시작한거 같아요. 하지만 아직 완벽하지는 않네요. 그래도 입력된다는 것 자체가 기뻐서 공유 겸 포스팅합니다 :-) 사용하고 있는 Telegram의 버전은 0.8.52 이구요. 한글 입력/한영 변환은 ibus를 사용하고 있습니다. :-) 다음 버전에서는 더 잘 될 것으로 기대되네요 !!! ^^ 더보기
ubuntu - stopping userspace bootsplash stopping userspace bootsplash [OK] 우분투 부팅 중에 위 메시지를 보고 더 이상 진행이 되지 않았다. 바로 전에 한 일이라곤 fstab에 mount 내용을 작성한 것 밖에 없었고, recovery mode로 들어가서 fstab 내용을 지우고 다시 reboot 했더니 정상적으로 넘어갔다. 아직도 fstab에 적는건 어렵다. 이유는 제대로 익히지 않은 내 책임. 아무튼 fstab 내요을 잘 못 적으면 위 메시지를 보고 더 이상 진행이 안될 수 있다는 것을 기록으로 남겨둔다. 수행과정 recovery mode -> remount root (/) -> vi fstab -> reboot 방법은 간단하니깐 따로 그림은 없다. 대신 remount 하는 내용은 예전에 간단하게 포스팅으로 남겨.. 더보기
우분투 데스크톱배경화면 바꾸기 우분투 배경화면 바꾸기 1. 배경화면에서 마우스 오른쪽 버튼을 클릭한다. 2. 원하는 사진을 클릭한다. 폴더 변경은 오른쪽 상단에 있는 Select UI를 통해 가능합니다. 3. 클릭하면 바로 변경되요. :) 4. 이쁜 배경을 제공하는 사이트에 방문한다. ㅎㅎㅎ (저는 주로 https://interfacelift.com/wallpaper 를 사용합니다) 더보기
pscp Example in Ubuntu pscp는 parallel-ssh의 약자로 여러 대의 서버에 동일한 파일을 복사할 수 있는 기능을 제공합니다. 참고로 다음 URL에서 소스코드나 PDF 문서를 다운로드 할 수 있습니다. http://www.theether.org/pssh/ 예를 들어서 다음과 같은 일을 할 때 편리합니다. Server A ---------------------- Server B-1 (192.168.0.11)(192.168.0.10) ┣ Server B-2 (192.168.0.12) ┣ Server B-3 (192.168.0.13) ┣ Server B-4 (192.168.0.14) ┣ Server B-5 (192.168.0.15) ┣ Server B-6 (192.168.0.16) ┣ Server B-7 (192.168.0... 더보기
pssh Example in Ubuntu pssh는 parallel-ssh의 약자로 여러 대의 서버에 동일한 명령을 한방에 내릴 수 있는 기능을 제공합니다. 유사한 기능을 가진 툴이 여러 개가 존재함으로 원하는 툴을 사용하면 되고 저는 pssh를 일단 사용하고 있습니다. 참고로 다음 URL에서 소스코드나 PDF 문서를 다운로드 할 수 있습니다. http://www.theether.org/pssh/ 예를 들어서 다음과 같은 일을 할 때 편리합니다. Server A ---------------------- Server B-1 (192.168.0.11)(192.168.0.10) ┣ Server B-2 (192.168.0.12) ┣ Server B-3 (192.168.0.13) ┣ Server B-4 (192.168.0.14) ┣ Server B-5 .. 더보기
ssh : Server A -> Server B -> Server C 제목에 나타낸 것과 같이 Server A에서 ssh로 Server B를 통해서 Server C로 접근하고 싶을 때 어떻게 해야 하는가? 에 대해서 포스팅을 남겨둡니다. 먼저 방법을 작성하기에 앞서 어떤 구조인지, IP는 어케되는지 이런거를 작성해둬야겠죠. (Server A) : Server B에 접근 가능하면 됩니다. 추가로 Server C가 어떤 Key로 접근 가능하다면 그 Key를 가지고 있으면 됩니다. Key라는게 먼지 모르겠다라고 하시면, Key로 접근하는게 아닐테니깐 별로 신경쓰지 마세요. (Server B) : IP Address - 1.2.3.4 (example)로 가정합니다. 추가로 Server C에 접근 가능해야겠죠. (Server C): IP Address - 5.6.7.8 (examp.. 더보기
kill -9 패턴으로, 문자열로 여러 개의 프로세스 죽이기 kill -9 은 강제로 프로세스를 죽일 수 있는 (왠지 죽인다니깐 좀 미안해졌음) 커맨드 및 옵션이다. 아래와 같은 그림에서 확인할 수 있는 것 처럼 여러 개의 프로세스를 죽이기 위해서 kill -9 983 1059 1063 1065 ..... 1070 할 수 있다. 예를 들어 10개 정도의 프로세스이고 한 2시간에 한 번쯤 개발하다 그런거라면 할 수 있다. 하지만 하기 싫다. 그래서 검색해본 결과 pkill 이라는 명령어가 눈에 들어왔다. 사용 방법은 pkill -f name name은 위 예로 하자면 celeryd 같은 거다. pkill 로 한 번에 프로세스들을 죽이고 다시 ps 명령어를 통해 프로세스를 검색해보니 아래 그림과 같이 모두 잘 죽인 것을 확인할 수 있었다. 이렇게 또 하나의 명령어를 .. 더보기