Notice
Recent Posts
Recent Comments
Link
꾸준한 개발일기
리눅스:: 백그라운드에서 명령어 실행하기(nohup) & 비밀번호 입력하는 방법 본문
반응형
데이터베이스 백업 시 용량이 매우 커 시간이 오래 소요된다. 그동안 ssh(터미널)이 끊기거나 다른 프로세스를 실행할 수 도 있는데 이를 대비하기 위해 백그라운드에서 실행해준다.
nohup [명령어] &
nohup pg_dump -h xxx.xxx.xxx.xxx -d postgres -Fc -n public --username=postgres > /home/centos/dbbank_postgres_public_220110.dump &
명령어 맨 앞에 nohup을, 맨 뒤에 &를 붙여준다.
nohup을 이용해 pg_dump를 실행할 때 문제가 발생한다. 덤프를 뜰 때 비밀번호를 입력해줘야되는데 nohup을 사용하면 비밀번호 입력창이 뜨지 않는다. 이를 해결하기 위해 명령어와 함께 비밀번호를 입력해주는 PGPASSWORD를 사용한다.
PGPASSWORD='[비밀번호]'
PGPASSWORD='postgres' nohup pg_dump -h xxx.xxx.xxx.xxx -d postgres -Fc -n public --username=postgres > /home/centos/dbbank_postgres_public_220110.dump &
명령어 가장 맨 앞에 입려해준다.
nohup: ignoring input and redirecting stderr to stdout
라는 로그가 뜨는데 무시해도 된다.
ps -ef|grep pg_dump
ps 명령어로 프로세스가 잘 동작하는지 확인해준다.
centos 25177 24958 64 09:31 pts/0 00:00:05 pg_dump -h xxx.xxx.xxx.xxx -d postgres -Fc -n public --username=postgres
centos 25186 24958 0 09:31 pts/0 00:00:00 grep --color=auto pg_dump
PID 25177을 보면 정상적으로 작동함을 확인할 수 있다.
kill [PID]
프로세스를 강제로 종료하고 싶다면 kill 명령어를 사용한다. 위에 있는 ps 명령어로 PID를 확인한 후 kill 뒤에 입력해준다.
centos 25186 24958 0 09:31 pts/0 00:00:00 grep --color=auto pg_dump
이처럼 뜨면 실행한 프로세스가 종료된 것이다.
파일이 잘 받아지고 있다.
반응형
'Programing > 리눅스' 카테고리의 다른 글
리눅스:: this web application instance has been stopped already 오류 해결하기 (0) | 2022.02.08 |
---|---|
리눅스:: 크론탭(Crontab) 사용방법 (0) | 2022.02.07 |
리눅스:: 데이터베이스에서 원하는 테이블만 백업(pg_dump)&복구하기 (0) | 2022.01.08 |
리눅스:: 데이터베이스 스키마(구조, 데이터x)만 백업하기(pg_dump) (0) | 2022.01.07 |
리눅스:: DB서버 데이터베이스 import 절차 (0) | 2021.12.29 |
Comments