Installation

VcXsrv, 원격 X-Windows 클라이언트

집에서 테스트를 위해서 설치한 서버가 있는데, KVM 가상화를 해뒀다. OS 를 설치하기 위해서 virt-manager 를 자주 이용하는데, 노트북에 Mint 리눅스가 있기 때문에 이것을 이용하면 원격 X-Windows 에 접속해 GUI virt-manager 를 실행시킬 수 있다. 그런데, 매번 노트북을 켜서 하기도 귀찮고 그래서 윈도우즈에서 사용가능한 X-Windows 클라이언트를 필요했다. 이에 대해서 이미 NetSarang 에서 만든 XManager, Xming 이란것을 알고 있었다. XManager 는 사용이고, Xming 은 무료이지만 이전에 제대로 안되었던 기억이 있다. 혹시 다른게 있을까 싶어서 찾아보니 VcXsrv 를 알게되었는데 이것을 한번 사용해 보기로 […]

HowTo

RedHat Enterprise Linux Subscription 관리

현재 프로젝트를 하면서 RHEL 을 테스트용으로 사용하고 있다. Developer 라면 가입을 하면 Linux 와 JDK 등을 무료로 사용할 있는 서브스크립션을 얻을 수 있다. 문제 RHEL 8.4 를 다운로드 받아서 서브스크립션 인증을 하고 설치까지 다하고 나서 이미지를 백업했다. 그런데, 시간이 얼마지나지 않아 RHEL 8.5 로 업데이트가 되었다. 이미지를 백업한 것은 Minimal Installation 을 유지하기 위한 것이였다. RHEL 8.5 로 업그레이드를 하고 난 후에 문제가 있어서 다시 처음부터 해야할 상황이 되어서 RHEL 8.4 이미지를 가져와 부팅을 시켰다. 그리고 dnf 명령어를 이용해서 update […]

HowTo

VIM 세팅

vim 은 리눅스의 기본 에디터이다. 많은 기능을 제공하지만 이 기능을 사용하기 위해서는 설정을 해야 한다. 그런데, 이런 설정을 하나하나 하기 보다는 간단하게 Plugin 형태로 제공해 네트워크를 통해서 설치를 도와주는 플러그인 프로그램이 있다. 이것을 이용해서 기본적인 세팅을 해보자. VIM 세팅을 위해서 git 명령어가 설치되어 있어야 한다. 그리고 기본적으로 시스템 계정 홈디렉토리를 기본으로 한다. 또, 반드시 네트워크가 연결되어 있어야 한다. 443 이나 80 포트가 OutBound 로 열려 있어야 한다. Vundle VIM 플러그인 설치를 도와준다. 네트워크를 통해서 설치하고 픈 플러그인을 지정해주면 설치를 해준다. […]

HowTo

Trac 첨부 파일 삭제

Trac 은 위키나 티켓에 파일을 첨부할 수 있다. 하지만 첨부파일이 잘못되었을 경우에 삭제를 해야 하는데, 아쉽게도 Trac UI 에서 할 수가 없다. CLI 를 이용해서 다음과 같이 삭제할 수 있다. 삭제 명령어 삭제를 위해서는 CLI 명령어를 사용해야 하는데, 대략 다음과 같은 형식이다. ]$ trac-admin $ENV attachment remove 예를들어 첨부 파일에 파일명에 공백이 있을 경우에 위키나 티켓 본문에 넣을 방법이 없다. 따옴표로 감싸거나 %20 으로 HTML 엔터티로 바꿔놔도 안된다. 이럴때는 삭제하고 파일명을 바꾼뒤에 다시 첨부해야 한다. 삭제할때는 다음과 같이 할 수 […]

HowTo

윈도우즈10 에 Trac 1.2 설치하기

2021년에 아직도 Trac 을 사용하는 사람이 있을지 모르겠다. 하지만 프리랜서로 많은 프로젝트를 하는데 있어서 Trac 만큼 간단하면서도 필요한 기능이 다 있는 툴은 찾기가 힘들다. 프로젝트에 투입되면 Windows 10에 Trac 을 설치하고 프로젝트를 위한 여러가지 작업을 Trac 으로 하게 된다. Trac 을 이용하는 기능은 다음과 같다. Wiki Ticket Calendar Gant Calendar 문서도 작성하고 요청한 사항들을 정리하고 일정을 확인하는데, 그것도 로컬 컴퓨터에서 Python 으로 아주 가볍게 동작하는 툴을 본적이 없다. Jira 와 같은 협업툴이 많이 나왔지만, 프리랜서로서 자신만의 뭔가를 정리하려고할때 이만한 게 […]

HowTo

Rate Limiting with NGINX and NGINX Plus

이 글은 다음의 내용을 대충 번역한 것입니다. Rate Limiting with NGINX and NGINX Plus 아주 유용한 것중에 하나지만 종종 잘못 이해하고 잘못 설정하게되는 NGINX 기능이 속도 제한(rate limiting) 이다. 이것은 주어진 특정한 시간동안 HTTP 요청양을 제한할 수 있도록 한다. 하나의 요청은 웹사이트의 홈페이지를 위한 GET 요청이나 로그인 폼에 POST 요청이다. 속도 제한은 보안 목적을 위해서 사용되어 질 수 있는데, 에를들어 부르트 포스 패스워드 추정 공격의 속도를 낮출 수 있다. 이것은 실제 사용자에 대해 들어오는 요청 비율을 일반적인 값으로 제한하고 (로깅을 […]

HowTo

systemd unit 편집기 바꾸기

systemd 는 이제 리눅스 시스템의 뼈대가 되는 기본운영 방법이 되었다. 기존에는 System V Init 이였지만 RHEL 7, Ubuntu 16.04부터 기본 시스템운영 프로그램이 되었다. systemd 는 ‘ctl’ 로 끝나는 명령어들의 집합으로 제어가 가능하다. systemctl, journalctl, timedatectl, hostnamectl, loginctl 이 대표적이다. systemctl 의 경우에는 systemd unit 파일들에 대한 제어와 설정이 가능하다. systemd unit 파일은 기존의 Systemv V init Script 를 대체하는 것으로 일종의 시스템 데몬 프로그램들이라고 보면 된다. 시스템이 시작될때에 자동으로 시작되게 한다거나 종료하게 한다거나 하는것들을 가능하게 한다. unit 파일은 텍스트 파일이기 […]

Installation

Redmine 컴파일 설치

Redmine 컴파일 설치에 대해서 다룬다. 최신의 OS 를 가지고 하면 좋겠지만, CentOS 7 에서 설치를 진행 했다. Mariadb 설치 MySQL 도 가능하지만, MariaDB 를 선택했다. 컴파일 설치가 가능하지만 패키지 설치로 설치한다. ]# yum install mariadb-server mariadb-devel -y 각종 의존성이 함께 설치가 된다. CentOS 7 에서 MariaDB 버전은 5.5 이다. 현재 최선 버전은 10.4 이며 이것을 설치하고자 한다면 MariaDB 홈페이지에 공식 리파지토리를 설정하고 yum 명령어로 간단하게 설치할 수 있다. my.cnf 파일을 다음과 같이 설정해 준다. ]# vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock […]

Installation

Redmine 설치하기

Redmine 은 오픈소스 프로젝트 매니지먼트 프로그램이다. Ruby 로 제작되었기 때문에 설치 과정에서 Ruby 가 있어야 한다. 웹을 통해서 서비스를 하기 때문에 보통 웹서버와 연동을 하는 편이다. 환경 OS: CentOS 7 Arch: x86_64 Minimal Installation 상태 MariaDB 설치 MySQL 도 가능하지만, MariaDB 를 선택했다. 컴파일 설치가 가능하지만 패키지 설치로 설치한다. ]# yum install mariadb-server -y 각종 의존성이 함께 설치가 된다. my.cnf 파일을 다음과 같이 설정해 준다. ]# vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security […]

HowTo

Yum 패키지 충돌 발생시 쓸 수 있는 명령어

최근에 CentOS 8 에서 Kubernetes 를 테스트하던 중에 패키지 업데이트가 되지 않는 일이 발생 했다. 아직 Kubernetes 는 CentOS 8 배포판을 정식으로 지원하지 않아 CentOS 7 배포판의 패키지를 사용해야 하는 상황이다. 그런데, yum 명령어로 업데이트를 할려고 보니 오류가 발생 했다. 이럴 경우에 다음과 같은 명령어를 사용해서 의존성을 체크해 볼 수 있다. # repoquery –requires –resolve kubelet-1.18 ethtool-2:4.8-10.el7.x86_64 iptables-0:1.4.21-34.el7.x86_64 util-linux-0:2.23.2-63.el7.x86_64 iptables-0:1.4.21-34.el7.i686 util-linux-0:2.23.2-63.el7.i686 conntrack-tools-0:1.4.4-7.el7.x86_64 iproute-0:4.11.0-25.el7_7.2.x86_64 ebtables-0:2.0.10-16.el7.x86_64 glibc-0:2.17-307.el7.1.i686 glibc-0:2.17-307.el7.1.x86_64 socat-0:1.7.3.2-2.el7.x86_64 위와같은 명령어를 이용하면 패키지 의존성에 대한 내용을 풀어서 볼 수 있다. 참고: kubeadm […]