Category: Linux

  • apt-cacher-ng

    사용하는 리눅스 컴퓨터가 1~2대이면 업데이트를 위한 캐시 혹은 로컬 미러 서버의 존재가 필요없다. 리눅스 컴퓨터 숫자가 많아진다면 다운로드 받는 시간이 조금 아까워지기 시작한다.

    로컬 미러 서버를 알아보고 시도도 해보고 그랬는데 전체를 다운받는 개념이라서 캐시 서버 형식의 프로그램을 알아보았다. 그 중에 하나인 apt-cacher-ng를 사용해 보고 있다.

    설치는 다음과 같이 한다.

    sudo apt install apt-cacher-ng

    설정 파일 위치는 /etc/apt-cacher-ng/acng.conf 이다. 굳이 바꿀 것은 없다.

    설치 후에는 apt로 패키지를 설치할 때 apt-cacher-ng가 설치된 컴퓨터를 바라보도록 설정을 변경해야 한다. 홈페이지에서는 2가지 방법을 제시하고 있다.

    • HTTP Proxy를 이용하는 방법
    • sources.list 파일의 deb 수정

    Proxy가 익숙하지 않아서 2번째로 먼저 시도 했는데, 그보다는 Proxy 방법이 하나만 설정을 변경하면 되기 때문에 몹시 편하다. Proxy 방법은 2가지 방법 중 하나를 선택해서 하면 되고, 나는 /etc/apt/apt.conf 파일을 생성하는 방법을 선택했다.

    /etc/apt/apt.conf
    Acquire::http::Proxy "http://서버IP주소:3142";

    HTTPS를 이용하는 경우라면 설정이 더 있으니 메뉴얼이나 구글 검색을 해보도록 한다.

    HOWTOs and FAQ (uni-kl.de)

  • 셸 스크립트, 파일간 변수 사용

    A라는 셸 스크립트에서 사용한 변수를 B라는 셸 스크립트에서도 사용해야 할 경우가 있다.

    인터넷 검색을 해보면 source를 이용하여 이전 스크립트를 불러오는 방법과 export를 이용하는 방법이 있는 것 같다. 해보니 source를 이용한 것이 조금 더 나에게 직관적으로 다가온다.

    a.sh에서 이용한 모든 변수를 b.sh에서 이용하고 싶다면 b.sh에 다음과 같은 구절을 추가하면 된다.

    source a.sh
  • NGINX 사용 시작

    nginx 를 이용해 보기로 하였다. 실제 운영중인 블로그에 처음부터 도입하기는 좀 위험하다 싶어서 다른 PC에서 우선 설치해 보기로 하였다. 우선 회사에서 파일 다운로드 좀 편하게 할려고 사용하는 NUC에 설치했다. 설치는 apt로 하면 되니까 어렵지는 않다.

    index.html 같은 파일이 없을 경우 apache에서는 폴더가 기본적으로 보이는데 nginx에서는 보이지가 않았다. 이 부분은 설정을 추가하여 주면 되는 것이다.

     /etc/nginx/sites-available/default 파일에서 다음의 부분을 찾아서 autoindex on;을 추가하여 준다.

    server {
            listen 80 default_server;
            listen [::]:80 default_server;
            root /var/www/blog;
    
            index index.php index.html index.htm;
    
            server_name domain.com www.domain.com;
    
            location / {
                    autoindex on;
            }
    }

  • vsftpd에서 file_open_mode

    리눅스에서 vsftpd를 이용해서 FTP로 파일을 주고 받고 있다. 본인의 계정으로 사용할 것이라면 별로 설정을 건드릴 필요는 없는데 PostgreSQL 사용자 계정인 postgres 에서 DB에 COPY할 파일에 접근이 안되는 문제가 있어 해결해 줄 필요가 있다. 644나 744로 하면 읽기 권한이 있음에도 파일에 접근을 못하는 문제가 있다.

    처음 파일 접근 권한 설정의 어려운 점은 umask라는 것인데, 이것은 기본 설정에서 해당 부분만큼 뺀 것을 권한으로 설정하라는 것이다. 내 목표는 업로드한 파일을 755로 만드는 것이니까 umask는 000으로 한다.

    그럼에도 불구하고 파일을 업로드하면 666으로 되어 있다. 파일 기본 권한 설정은 vsftpd.conf 파일에서 빠져 있기 때문으로 해당 부분을 추가하여 주면 된다. umask 아래에 위치해야 한다고 한다.

    local_umask=000
    file_open_mode=0755