생활코딩 - Linux 을 듣고 정리한 내용입니다.
가전제품을 껐다가 켰다가 (open, close) ➡️ ls
, rm
, mkdir
만들었다가 삭제했다가
다만 daemon
, server
에서는
ex) 주소창에 www.naver.com 입력하고 enter
클릭할 시, 웹 페이지가 화면에 출력된다.
➡️ 인터넷 넘어서 서버가 있다.
➡️ 그러므로, 서버에서는 daemon
, service
형태의 소프트웨어가 존재해야 한다.
apache
: web server 중에 대표적인 것- mac에서는 기본적으로
apache
가 설치되어 있다.
apachectl -v
: apache
버전 확인
✔️ etc
디렉터리 안에 apache2
가 존재
daemon
관련 설정 파일들이 모여있다.
sudo apachectl start
: apache
실행
sudo apachectl stop
: apache
종료
etc/rc3.d/
에 자동으로 실행시키고 싶은 프로그램의 링크를 걸면 된다.
etc/rc5.d/
: OS가 GUI 방식으로 구동된다면 여기다가 링크를 걸면된다.
S
로 시작하면 시작K
로 시작하면 현재 시작하지 않는다.
- service on, off 는 중요하다!
cron
: 정기적으로 종료, 전송, 조정할 때 이러한 작업들을 처리해야할 때cron
을 사용시 해결할 수 있다.
crontab -e
: 정기적으로 하고자 하는 일들을 정의할 시 cron
이라는 프로그램이 동작하여 정의한 내용들을 실행시켜준다.
m h dom mon dow command
m
: 분해주기, 분당 몇번 실행시키는지 (10 : 10분, */1
: 1분에 한번)
h
: 시간 (*
: 시간 관계 없이, 10 1
: 1시 10분에 실행)
dom
: day of month, 달의 날 (24 : 매달 24일)
mon
: month
dow
: 요일
command
: 명령어 (위시간에 매번 실행되는 명령어)
✔️ date
date
: 현재 시간
date > date.log
: date
기록을 date.log
파일에 저장
date >> date.log
: date
실행 결과가 date.log
끝에 추가된다.
tail -f 파일이름
: 자동으로 파일을 감시하고 있다가 뒤쪽의 텍스트가 추가되면 자동으로 화면으로 refresh
해준다.(띄워준다.)
✔️ 리눅스 vi 명령어
명령 모드
G
dd
3dd
p
x
dw
u
o
$
a
마지막행 모드
w
q
wq
set nu
?문자열
/문자열
✔️ 위에서 공부한 내용 테스트
crontab -e
로 cron
에 진입
vi
편집기 실행됨*/1 * * * * date >> date.log
를 입력 : 1분마다 date
결과를 date.log
에 기록하겠다.(추가됨)
crontab -l
로 cron
에 입력한 내용들을 확인해본다.
최종 입력 결과 확인
cd ~
: 홈 디렉터리로 이동한다.
tail -f date.log
: 자동으로 date.log
파일을 감시하고 있다가 뒤쪽의 텍스트가 추가되면 자동으로 화면으로 refresh
해준다.(띄워준다.)
✔️ 명령어 추가
*/1 * * * * date >> date.log
+ 2>&1
2>
: 표준 error를 어디로 이동시킨다.(redirection
)
1>
: 표준 1를 어디로 이동시킨다.(redirection
)
🔔 crontab 정리
crontab -e
: vi 편집기에 진입하여 명령어를 시간에 맞게 지정할 수 있다.crontab -l
: 현재 등록한cron
list들을 출력해준다.crontab -r
:cron
에 입력한 명령어들을 삭제한다.
✔️ email
을 보낼 때
saved
를 어딘가에(db?)에 기록해놓고 작업을 끝냈다고 알림을 보낸다. (사용자는 서버가 보낸 알림을 통해 '이메일이 전달됬구나' 라고 확인할 수 있다.)Cron
이 Saved
가 기록한 정보들을 확인한다.Saved
에 데이터들이 추가되었다면, 정보들을(데이터들을) 백그라운드로 수많은 이메일들을 보내는 작업을 진행한다. (background
: client
화면에 보이지 않게)background
특징처럼, Cron
이 실행될 때 client
는 다른작업을 할 수 있다.
cron은 많은 곳에서 사용된다!
Shell start up 설정(script)
:Shell
이 실행되었을 때 특정 명령어가 자동으로 실행
alias
: 명령어의 별명을 붙여줄 때 사용한다.
ex)
alias c='clear'
: clear
→ c
alias ..='cd ..'
: cd ..
→ ..