전체 글 181

crontab이 제대로 실행되지 않는다면 crontab에서 지원하지 않는 명령일 수 있습니다. (pushd, popd 명령 사용 불가)

개구리는 올챙이 적을 생각하지 못한다는 속담이 있습니다. 개발자도 마찬가지입니다. 원숙한 SW개발자가 되면 큰 어려움 없이 새로운 것을 배울 수 있고, 문제를 만나도 빨리 해결할 수 있습니다. 내가 개구리가 되어서 쉽게 과제를 진행하고 쉽게 문제를 풀 수 있겠지만, 그 모든 것들을 쉽게 익힐 수 있었던 것은 아니라는 것을 명심해야 하겠지요. 평소에 익숙하게 사용하던 crontab이 제대로 실행되지 않아서 시간과 노력을 제법 낭비했습니다. 결론부터 말씀드리자면, crontab에서 실행할 수 없는 명령어들이 존재합니다. 이 글에서는 crontab에서 실행할 수 없는 명령어인 pushd를 사용하여 강제로 crontab이 제대로 실행될 수 없도록 하고, 그 상황에서 디버깅을 하는 방법에 대해서 설명하고자 합니다..

네이버 클로바 나눔 손글씨 폰트 모두 다운로드 받는 방법 및 링크

네이버에서 무료로 제공하는 폰트들은 아주 혜자스럽습니다. 유료로 재판매하는 것 외에는 상업적인 용도로 무제한 이용할 수 있어서 OS에서 제공하는 폰트 외에 조금 더 예쁘게 꾸미고 싶을때 상당히 도움이 됩니다. 우리가 가볍게 생각하는 폰트에도 저작권이 있기 때문에 폰트를 잘못 사용할 경우 저작권법을 위반할 소지가 있습니다. 네이버에서 제공하는 폰트들은 이런 걱정 없이 마음껏 사용할 수 있어서 정말 참 만족스럽습니다. 특히 클로바 나눔 손글씨는 마치 손으로 쓴 것과 같은 느낌을 주기 때문에 블로그 자동화를 위한 이미지 작업에 유용하게 사용하고 있습니다. 다만 다운로드가 조금 불편할 점이 있는 것 같습니다. 네이버 클로바 홈페이지에 접속하면 다양한 손글씨 폰트들을 무료로 다운로드 할 수 있습니다만, 하나씩 다..

SW개발 2022.05.23

우분투 리눅스에서 키보드 입력이 느린 문제 해결 방법 (USB 3.0 문제일 수 있습니다.)

안녕하세요? 문서화에 미친 SW개발자입니다. 문서화라는 것은 항상 귀찮다고 생각했던 적이 있었습니다. 구현 및 디버깅만해도 벅찬데 문서화까지 한다는 것은 제법 성가신 일이고 불필요한 일이라고 생각했었기 때문입니다. C언어 개발자로 15년정도의 경력을 쌓았고, 이제는 거의 불혹의 나이에 접어들었습니다. 이제는 잘 기록해두지 않으면 잘 기억이 나지 않을때가 많이 있다는 것이 조금 슬플 따름입니다. 무엇인가 한 가지 기록이 필요한 것이 있으면, 잊기 전에 기록해두려고 노력하는 중입니다. 회사 프로젝트와 관련된 내용은 인트라넷 confluence(컨플루언스)에 기록해두고, 일반적인 내용은 블로그에 기록하는게 저 나름대로의 원칙입니다. 오늘은 우분투 리눅스에서 키보드 입력이 느린 문제를 해결하는 방법에 대해서 기..

워드프레스 글 목록을 파이썬으로 가져오는 방법

블로그 자동화를 구현하는 방법에는 여러가지가 있겠습니다. 그 중에서도 워드프레스의 API를 이용하는 방법은 아주 빠르면서도 깔끔하게 블로그 자동화를 구축할 수 있는 방법입니다. 1. 글의 목적 본 페이지에서는 워드프레스의 글 목록을 파이썬으로 가져오는 방법에 대해서 설명을 드리고, 간단한 파이썬 예제들을 제공합니다. 2. 필요한 사전 작업 본 글에서 설명하는 워드프레스 API를 실제로 실행하려면 아래 사항들이 준비되어 있어야 합니다. 2.1 워드프레스가 설치되어 있어야 합니다. 워드프레스를 통해서 API를 호출하기 위해서는 당연히 워드프레스가 설치되어 있어야 합니다. 아래 글을 참고하셔서 웹서버를 구성하시거나 클라우드 서비스를 생성하시기 바랍니다. 우분투 리눅스에 워드프레스 설치 방법 우분투 리눅스에 워..

워드프레스 API 실행을 위해서 xmlrpc 활성화 시키는 방법

네이버 블로그나 티스토리 블로그와는 달리, 워드프레스는 각종 API들을 제공합니다. 워드프레스의 API를 통해서 웹페이지나 블로그를 자동화시킬 수 있습니다. 이런 API는 상당히 강력한 기능이 아닐 수 없습니다만, 분명히 단점도 존재합니다. 특히 xmlrpc는 보안에 몹시 취약합니다. 워드프레스 xmlrpc 취약점 그 이유는 해당 API를 이용해서 brute-force 방식으로 연속으로 암호를 대입하여 관리자의 암호를 알아낼 수 있기 때문입니다. 특히 이 취약점만 전문적으로 공격하는 로봇이 있을 정도라고 합니다. 아무튼 이런 이유로 xmlrpc 관련된 내용을 구글에서 찾으면 이런 취약점을 보완시킬 수 있는 방법에 대한 기사들이 주로 검색이 됩니다. 오히려 본래의 목적대로 xmlrpc를 사용하려는 사용자들..

ssh 연결시 "Bad owner or permissions on /home/user/.ssh/config" 발생시 해결 방법

우분투 리눅스가 설치된 PC들을 여러대 사용하고 있습니다. ssh 연결을 통해서 여러대의 PC들에 원격 접속해서 이런 저런 작업들을 진행하기도 하고 틈틈히 공부도 하고 있습니다. 수 없이 사용했던 ssh로 다른 PC에 접속을 시도하려는데 아래와 같은 생경한 에러 메시지가 발생하였습니다. 문제 현상 $ ssh 192.168.0.4 Bad owner or permissions on /home/user/.ssh/config 문제 검토 잘못된 소유자거나 잘못된 권한이라는 불친절한 메시지를 보고, ls -all 명령으로 해당 파일의 권한을 확인해 보았습니다. $ ls -all /home/user/.ssh/config -rw-rw-r-- 1 user user 60 Mar 5 04:04 /home/user/.ssh/..

워드프레스 API 호출시 "OSError: unsupported XML-RPC protocol" 문제 해결 방법

2022.05.19 - [워드프레스] - 워드프레스 API로 getPosts 실행시 AttributeError: module 'collections' has not attribute 'Iterable' 에러 발생시 조치 방법 워드프레스 API를 통해서 블로그 자동화를 구성하고 있습니다. 잘 동작하던 파이썬 스크립트를 조금 수정했는데 아래와 같은 "OSError: unsupported XML-RPC protocol"이라는 에러 메시지를 토해내면서 수행되지 않는 것입니다. 처음에 가장 먼저 의심했던 것은 패키지 설치가 덜 되었거나 필요한 모듈이 없는게 아닌가 의심했습니다. 하지만 살펴보니 의외로 간단하게 해결할 수 있었습니다. 문제의 에러 메시지 Traceback (most recent call last):..

워드프레스 API로 getPosts 실행시 AttributeError: module 'collections' has not attribute 'Iterable' 에러 발생시 조치 방법

본 페이지에서는 워드프레스 API를 통해서 getPosts 실행시에 AttributeError: module 'collections' has not attribute 'Iterable' 에러가 발생할 경우 조치하는 방법에 대해서 설명합니다. 워드프레스 API와 getPosts() 이 글을 검색해서 읽고 계신 분들이라면 기본적으로 워드프레스, API, 파이썬 등의 개념에 대해서 어느정도 알고 계신 분일 것이라고 추측됩니다. 워드프레스는 웹으로 할 수 있는 거의 모든 작업들을 API로 제공합니다. 이를 통해서 우리는 웹페이지를 손쉽게 관리할 수도 있고, 글을 자동으로 발행하는 등의 블로그 자동화를 이룰 수 있습니다. 그 중에서도 getPosts() 메쏘드는 가장 빈번하게 사용되어지는 API 중의 하나입니다...

AttributeError: module 'collections' has no attribute 'Iterable'

최신 파이썬 버전에서 collections.Iterable 속성이 deprecated 되었습니다. 이로 인해서 해당 속성값을 이용하려면 파이썬 2.7버전에서는 collections.Iterable로 사용해야 하고, 파이썬 3.10 버전에서는 collections.abc.Iterable로 사용해야 하는 문제가 있습니다. 본 페이지에서는 collections.Iterable 구문에서 발생하는 exception을 처리하는 방법에 대해서 설명하고자 합니다. 파이썬 버전에 따라서 호환되도록 처리해야 되기 때문에 try exception 구문을 할용하도록 하겠습니다. 문제의 상황 아래는 파이썬 3.10 버전에서 python-wordpress-xmlrpc 패키지를 설치해서 사용중에 발견된 런타임 에러입니다. 보시면 ..

SW개발/파이썬 2022.05.19

워드프레스 API를 통한 자동 글쓰기 예제 (파이썬 버전)

블로그 자동화를 위해서는 네이버 블로그나 티스토리 블로그로는 한계가 있습니다. 하루에 발행할 수 있는 글의 개수에 제한이 있기 때문입니다. 그래서 GitHub Pages나 워드프레스로 블로그를 옮기는 경우가 많이 있습니다. GitHub Pages는 md 파일 또는 html 파일을 업로드만 하면 되기 때문에 아주 손쉽게 자동화를 이뤄낼 수 있습니다. 반면, 워드프레스의 경우 API를 통해서 글의 목록을 확인하거나 자동으로 글을 발행할 수 있는 기능을 제공합니다. 필자의 경우 워드프레스의 XML PRC 기능을 이용해서 워드프레스 API를 호출하는 기능을 PHP 스크립트로 테스트해보았습니다만, 작업도 디버깅도 제법 힘이 들었습니다. 본 페이지에서는 파이썬 스크립트를 통해서 워드프레스에 자동으로 글을 쓰는 방법..