데이터 백업을위한 스크립트가 있습니다. 그들 중 일부는 루트 액세스가 필요하므로 sudo
. 그러나 때로는 mySQL 루트 암호가 필요한 mySQL 백업과 같이 혼란스러워집니다.
이제 다음과 같은 bash 스크립트에서 해결 방법을 구현했습니다.
echo "Please enter root password"
sudo echo "Ok"
sudo mysqldump --all-databases --opt -u root -p > ~/backup.dump
그 뒤에 숨은 아이디어는 sudo 암호가 캐시됩니다. 처음에 입력하면 mySQL 백업 중에 메시지가 표시되지 않으므로 더 이상 mySQL 루트 암호와 혼동 할 수 없습니다.
이 접근 방식을 사용하는 것이 안전합니까 아니면 잘못된 점이 있습니까?
그 접근 방식은 sudo
.
를 사용 sudo
하면 기본 구성에서 암호가 캐시됩니다.
그리고 더미 명령을 사용하여 암호를 해당 표준 캐시에 넣습니다. 루트 권한으로 아무 작업도 수행하지 않는 명령은 확실히 위험하지 않습니다.
sudo
뿐귀하의 예제는 mysqldump
암호를 사용하는을 사용하기 때문에 위의 내용이 mysql 암호와 관련이 없음을 분명히하고 싶습니다 . sudo
예제 라인 의 와만 관련이 있습니다 sudo mysqldump ...
.
특히,에 암호주는 문제가 해결되지 않으면 mysqldump
이 명령 행에 표시하지 않고, 스크립트에서 등 ps
, top
또는 시스템의 모든 사용자에 대한 프로세스 관리자 GUI.
추가 정보 :
sudo
암호 캐시 의 시간 제한은 기본적으로 15 분이며 timestamp_timeout
에서 설정 하여 변경할 수 있습니다 sudoers
. 를 사용하여 다음 sudo visudo
과 같은 줄을 추가하십시오.
Defaults timestamp_timeout=30
에 /etc/sudoers
. (설정 timestamp_timeout
하는 0
캐시를 비활성화 할 수 있습니다.)
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다