클론을 사용하여 다수의 서버를 설정하고 싶습니다. 초기 이미지를 적용한 후 구성 스크립트를 실행하고 싶습니다. 복제는 하드웨어 공급업체의 하드 디스크 복사를 통해 수행됩니다.
속도:
- 하드웨어 공급업체가 새 서버를 구축합니다.
- 하드웨어에는 초기 이미지가 있는 하드 드라이브가 함께 제공됩니다.
- 최종 위치에 서버 설정
- 서버가 시작됩니다.
- 서버는 초기 구성 스크립트를 실행합니다.
- 서버가 다시 시작됩니다.
다음 요구 사항을 충족하는 5단계와 6단계의 구현 방법은 무엇입니까?
- 우분투 12.04 LTS
- 컴퓨터가 켜지면 사용자 개입 없이 스크립트가 시작되고 실행되어야 합니다.
- 모든 데몬이 시작된 후에 스크립트를 실행해야 합니다.
- 스크립트는 콘솔에 상태를 출력해야 합니다.
- 스크립트는 오류 상황에서 사용자 입력을 허용해야 합니다.
답변1
나는 이 접근 방식을 시도하지 않았지만 당신이 찾고 있는 것처럼 들립니다. 도구가 호출됩니다.우분투 설치 후.
설치 후의 일부로 다운로드하거나 나중에 배포할 수 있습니다. 또한 시작 시 다운로드할 수 있는 지원 옵션이 포함된 구성 파일을 사용합니다. 도구 홈 페이지에서 자세한 내용을 읽을 수 있습니다. 여기에는 답변이 너무 많습니다.
옮기다
호출하는 데 사용할 수 있는 두 가지 방법이 나와 있습니다.
네트워크에서 .cfg 파일 다운로드
$ sudo ./ubuntu-12.04-postinstall.py -c https://raw.github.com/nicolargo/ubuntupostinstall/master/ubuntu-12.04-gnomeshel
로컬 파일 사용
$ sudo ./ubuntu-12.04-postinstall.py -c mycfg.cfg
행동 전/후
이 섹션을 사용하면 어떤 일이 발생하기 전(사전 작업) 및/또는 다른 모든 작업이 완료된 후(사후 작업) 사용자 정의 스크립트를 실행할 수 있습니다.
패키지 및 저장소
패키지를 설치 또는 제거하거나 이를 사용하여 추가 PPA를 추가하여 타사 APT 리포지토리에 액세스할 수 있습니다.
기록
Python 스크립트인 경우 명령을 통해 스크립트의 출력을 실행 tee
하고 출력을 파일과 콘솔로 보낼 수 있습니다.
답변2
/etc/rc.local 파일은 마지막 initscript 실행이 보장되어야 하지만 이것이 우분투의 경우인지는 확실하지 않습니다. rc.local에서 구성 스크립트를 호출한 다음 mv
성공적으로 완료되면 해당 파일을 호출하여 재부팅(또는 유사한 옵션) 시 실행되지 않도록 할 수 있습니다.
systemd의 콘솔 출력을 위해 서비스가 콘솔과 syslog에 로그인하도록 명시적으로 지시하는 파일을 생성해야 합니다. IIRC, 우분투는 upstart를 사용합니다. 어쩌면 이것이 도움이 될 것입니다:https://askubuntu.com/questions/115034/debugging-console-output-and-upstart-scripts