vi를 사용하다가 emacs로 넘어왔다. 그동안 vi를 터미널의 기본 에디터로 오랜 세월을 사용하고 있었는데, 사용하면서 크게 불편한것 없었으나 vi의 visual mode / edit mode 등의 mode 전환에 대해서 당연하게 생각하고 써왔던 것에 대해 한두번쯤은 왜 이런게 있어서 커스텀 키매핑할때 더 불편하게 만드나,.. 이런 생각을 가끔식 하곤 했다. 대안에 대해서 따고 고민하지는 않았는데, Emacs를 알고 나서 부터 […]
Gentoo Apache Suexec 설정
Apache suexec 설정 Gentoo에서 Apache 설정중에 SUEXEC를 이용하여 특정 디렉토리의 스크립트 권한을 apache가 아닌 다른 소유자 및 그룹의 권한으로 실행시키게 할수 있는 방법이 있는데, 매번 apache:apache 권한으로 CGI 스크립트를 실행되도록 하다가 실제 해당 User의 권한으로 실행되도록 설정하다가 몇가지 문제점에 부딪혀서 그 해결방법을 메모해 둔다. Suexec는 Apache에서 예제로 아래와 같은 방식으로 설정한다. 위의 내용을 보면 알겠지만, […]
systemd에 reactjs 실행/중지 서비스 추가
Next.js로 구현된 서비스를 systemd에서 실행/중지 하는 daemon service 추가 방법 react.service를 systemd 서비스에 등록 status의 내용중에 Active 상태 정보를 보면 running중인지 여부를 알수 있는데, 만일 running중이면 ‘systemctl start react’로 다시 커맨드를 쳐봐도 ‘ExecStart’의 실행 커맨드를 진행해 주지 않으므로, start했으면 stop을 처리하고 다시 start를 하도록 한다. /root/bin/react.sh 파일내용 스크립트 내용중 start부분의 내용은 runuser 명령어를 사용하면 root로 […]
Gentoo에서 systemd & timedatectl 날짜 sync 하기
date 커맨드로 확인해 보고 시간이 맞지 않을 경우에는 NTP를 이용해서 시간 동기화를 맞춰야 하는데, systemd를 사용하고 있는 젠투에서는 시간을 맞추기 위해 아래처럼 설정해야 한다. NPT는? What is an NTP?NTP is an abbreviation for Network Time Protocol. It is a standard Internet Protocol (IP) for synchronizing computer clocks over a network. This protocol synchronizes all networked […]
Gentoo에서 rst2html5.py 관련 컴파일 에러 해결
emerge 중에 아래와 같이 에러가 나는 경우가 있는데, 원인은 알수 없으나 해결한 과정을 기록해둔다. 직접 rst2html5 파일을 찾아 실행을 시켜보았는데, 역시나 에러는 동일하게 내고 있었다. equery를 통해 어떤 패키지 인지 찾아서 다시 한번 패키지를 설치해보기로 한다. equery가 없다면 gentoolkit 패키지를 설치해야 한다. 패키지는 python-exec라는 걸 가르키고 있는데, 이것도 이전에 잘 설치되었었는데, 일단 다시 설치한다. 두 […]
Gentoo에서 !!! Error: Can’t load module python
젠투에서 emerge 중에 break로 빌드 중단을 했을때, 그 이후부터 python-exec가 제대로 동작하지 않아 아래처럼 문제가 될때가 있다. eselect도 되지 않고 컴파일시에는 no python-exec wrapped executable found in /usr/lib/python-exec. 이런 에러를 내고 더이상 진행이 되지 않을때이다. 이때에는 eselect-python을 다시 설치해 줘야 한다. 업그레이드 확인시에 기존버전에 의한 패키지 block이나 구버전의 의존성 패키지들은 죄다 지워서 업그레이드를 해주도록 한다. […]
Gentoo에서 emerge @world 할때 흔히 보이는 의존성 에러
아래는 흔히 보는 emerge 할때 나오는 에러이다. 의존성에 관련된 문제인데 해결하는 방법을 알아보자. 충돌이 나는 이유 일단 Perl의 업데이트 시에 생기는 문제는 virtual/perl-File-Path 버전은 perl-5.36.1이 필요한 상태이며, TimeDate 버전은 perl-5.34.1 버전을 필요로 하는 것이다. 이걸 해결하려면 당연한 이야기 이지만 TimeDate를 없애면 된다. gutils 패키지를 업데이트를 하려는데, gnutils-3.78 패키지는 net-libs/glib-networking-2.76.0 패키지를 업데이트로 설치할때 의존성을 갖고 있고 […]
nc(netcat)으로 웹페이지 요청해 보기
nc로 웹사이트에 직접적으로 소켓에 붙어 HTTP 메세지를 보내서 통신해 볼수 있다. -c의 옵션은? CRLF 라인 종료를 직접 쳐서 보낸다는 의미 -c Send CRLF as line-ending -c 옵션없이 접속하면 엔터를 치자마자 send 해버린다. HTTP로 80포트로 google.com 소켓에 붙으면 http://www.google.com 으로 Redirection 되는 것을 확인할수 있다.