Linux 159

[Ubuntu] You () are not allowed to use this program (crontab) - 2

현상 Ubuntu에서 일반 사용자로 crontab 설정을 등록하려고 했더니 권한 문제로 설정이 되지 않았다. cron.allow 설정이 존재하는지, 내용은 어떤지 확인해보았더니 아래와 같이 이미 crontab을 설정할 사용자가 등록되어 있었다. 정확하게 아는 건 아니지만 파일의 읽기 권한이 충분하지 않아서 발생하는 현상인 것 같다. 아래의 두 가지 방법 중 원하는 방법으로 설정하면 될 것 같다. 해결 방법 1. 다른 계정이 /etc/cron.allow 파일을 읽을 수 있도록 설정한다. chmod 644 /etc/cron.allow # 또는 chmod o+r /etc/cron.allow 2. /etc/cron.allow 파일의 그룹 소유자를 crontab으로 설정한다. chown root:crontab /..

Linux 2022.10.29

[nohup] python 프로세스 백그라운드 실행

개요보통 Linux에서는 명령어 뒤에 &를 붙여 프로세스를 백그라운드로 실행할 수 있다.python test.py &하지만 이러한 실행법은 쉘이나 터미널이 끊기면 프로세스도 함께 중단되는 문제가 있다.   nohupnohup은 no hangup의 줄임말로 프로세스 중단이 없다는 의미의 명령어이다. 쉘을 데몬형태롤 실행시켜 세션이 끊겨도 백그라운드 프로세스가 중단되지 않고 유지된다. nohup &# 예시nohup python test.py &  nohup.out기본적으로 nohup 실행 결과는 nohup.out 이라는 파일로 저장된다.다만 실시간으로 실행 로그가 출력되지는 않는다. 실시간으로 로그를 출력할 때는 python 실행 시 -u 옵션과 함께 실행한다.nohup python -u test.py &..

Linux 2022.10.26

[Vim] 붙여넣기 시 자동 들여쓰기(계단) 현상 방지

개요 Vim(vi) 편집기로 소스 코드 등을 복사하여 붙여 넣을 때 들여 쓰기로 인해 개행, code format이 엉망이 되는 경우가 존재한다. 예시 ) release repository Release Repository http://myhost/content/repositories/releases/ true 들여쓰기가 블록을 결정하는 언어인 경우에는 포맷을 맞추기 골치 아픈데, 간단하게 해결할 수 있는 방법을 적어둔다. 현재 모드 확인 :set 명령을 통해 현재 vim의 모드를 확인할 수 있다. :set 붙여넣기 모드 활성화 계단 현상이 발생할 때, set paste 명령으로 붙여 넣기 모드를 활성화한 후 코드를 붙여 넣으면 들여 쓰기 원본 형식을 유지하면서 소스를 붙여 넣을 수 있다. :set pa..

Linux 2022.10.18

[ZABBIX] 알림 보내기

개요 2022.10.13 - [ZABBIX] 설치 및 실행 2022.10.14 - [ZABBIX] Ms Teams 알림 설정 위 글을 통해 Zabbix 설치 및 MS Teams 연동 설정까지 해보았다. 이번에는 Admin 사용자가 MS Teams를 통해 알림을 받을 수 있도록 설정해보려고 한다. Action 설정 왼쪽 메뉴바 Configurations > Actions > Trigger actions로 접근한 뒤, Report problems to Zabbix administrators의 상태를 Enabled 상태로 변경해준다. 사용자 메시지 전송 방법 설정 왼쪽 메뉴바 Administration > Users에서 Admin 계정을 선택한다. Media 탭으로 접근한 뒤 Add 버튼을 클릭해, MS Te..

Linux 2022.10.15

[ZABBIX] Ms Teams 알림 설정

개요 2022.10.13 - [ZABBIX] 설치 및 실행에서 Zabbix 설치까지 해봤는데, 모니터링 알람을 받기 위해 Ms Teams와 연동해보려고 한다. 알람을 수신할 채널의 Webhook URL을 생성해야 하는데, Zabbix Webhook 커넥터 또는 Incoming Webhook 커넥터를 이용할 수 있다. 이 글에서는 Incoming Webhook 커넥터를 구성하여 사용할 것이다. MS Teams에 Webhook 구성 Webhook 구성 방법은 접은 글로 작성해둔다. 더보기 알람을 수신받을 채널의 메뉴에서 커넥터를 클릭한다. 사용할 수 있는 커넥터 목록 중 Incoming Webhook 구성을 클릭한다. 커넥터 이름을 지정하고 만들기를 클릭한다. 만들어진 Webhook URL을 잘 복사해두고 ..

Linux 2022.10.14

[ZABBIX] 설치 및 실행

ZABBIX 2022.10.12 - [ZABBIX] 구조 / 동작 방식에 이어서 ZABBIX를 설치해보도록 한다. OS는 Ubuntu 20.04 LTS arm이고, ZABBIX 5.0 LTS를 설치할 것이다. DATABASE는 MySQL, Web Server는 Apache를 사용한다. 설치 방법 및 구성 선택 설치 URL : https://www.zabbix.com/download 설치 URL에 접속해 설치 방법을 선택한다. 이 글에서는 패키지로 설치할 것이기 때문에 Zabbix Packages를 선택했다. 그리고 설치할 ZABBIX 버전과 OS 버전, 설치할 요소, 사용할 데이터베이스와 웹 서버를 선택한다. 이 글에서는 아래와 같이 설정했다. 설치 1. Zabbix 레포지터리 설치 wget https:..

Linux 2022.10.13

[ZABBIX] 구조 / 동작 방식

ZABBIX 네트워크 서비스, 서버 등의 네트워크 하드웨어를 감시하고 추적하여 관리자에게 장애가 발생했음을 신속히 알리기 위한 네트워크 관리 시스템. 오픈 소스이다. 데이터베이스로 MySQL, PostgreSQL, SQLite, 오라클 데이터베이스나 IBM DB2를 선택하여 사용할 수 있다. 백엔드는 C로 만들어져 있으며, 프런트엔드는 PHP가 사용된다. ZABBIX 에이전트 소프트웨어를 설치하지 않으면 SNMP, TCP, ICMP, IPMI, SSH, telnet 등을 이용한 감시 방법을 지원한다. OS ZABBIX 에이전트 소프트웨어를 설치하면 CPU 사용량, 네트워크 사용량, 디스크 용량 등을 포함한 더 많은 정보에 대한 감시 방법을 지원한다. 구조 Server : 모니터링을 수행하는 Zabbix ..

Linux 2022.10.12

[Vim] 변경 내역 확인

개요Vim 편집기에서 편집한 내용을 실행 취소(undo)할 때는 :u를 입력하면 된다.그리고 실행 취소한 내용을 다시 실행(redo)할 때는 CTRL + R을 입력하면 된다. 그렇다면 변경 내역 자체는 어떻게 확인할 수 있을까?   :changesVim은 변경 사항이 발생한 위치(열 번호, 줄 번호)를 변경 목록에 기록하고, 각 버퍼에는 실행 취소할 수 있는 최근 100개의 변경을 기억한다. 한 줄에 수정이 여러 번 이루어졌다면 나중에 변경된 위치만 기록된다. 변경 목록은 :changes를 입력하여 확인할 수 있다.  예시예로 들어 위의 내용을 가진 파일이 있다고 하자.# test fileimport osimport refrom flask import request@app.route('/method', ..

Linux 2022.10.02

[Linux] ~<username> - 사용자 홈 디렉터리

~ 쉘 스크립트를 보다 아래와 같은 구문을 보았다. BASE_DIR=~ # 예시 BASE_DIR=~ubuntu 특정 디렉터리 정보를 담은 변수를 선언한 것 같긴 한데, 정확히 어느 경로인지 확인해보려고 한다. 확인 쉘에서 변수를 직접 선언한 뒤, echo 명령으로 확인해봤다. BASE_DIR=~ubuntu echo $BASE_DIR ubuntu 계정의 홈 디렉터리였다. 사용자 이름 앞에 ~ 기호를 붙이면 해당 사용자의 홈 디렉터리를 의미한다. ~root인 경우 root 사용자의 홈 디렉터리를 의미한다.

Linux 2022.09.30

[Shell Script] #! - Shebang

#! shebang, sharpbang, shabang, hashbang 등으로 칭해지는 문자로, 스크립트 파일의 첫 줄에 사용하여 스크립트가 어떤 명령으로 실행될지를 지정한다. 명령어의 경로는 절대 경로 또는 현재 디렉터리로부터의 상대 경로로 지정할 수 있다. 변수는 사용할 수 없고, 사용할 수 있는 옵션은 하나로 제한된다. 예시 #! /bin/bash # bash 스크립트 실행을 위한 shebang line ... #! /bin/sed -f # sed 스크립트 실행을 위한 shebang line ... #! /usr/bin/awk -f # awk 스크립트 실행을 위한 shebang line ... #! /usr/bin/perl # perl 스크립트 실행을 위한 shebang line ... #! /u..

Linux/Shell Script 2022.09.24
1 2 3 4 5 6 7 8 ··· 16