2009-05-18 3 views
1

나는 GNU/Linux 라이브 배포판의 사용자 지정 버전을 만들고 있습니다. 나는 패키지를 추가/제거하고, 스크립트를 편집해야한다. 나는 chroot의 루트로 사용되는 부주의 한 파일 시스템 (squashfs-root /)으로 작업한다. 내 작업을 관리하는 가장 좋은 방법이 궁금합니다. git repo를 만들고 squashfs-root /를 추가해야합니까? 주된 두려움은 chroot env를 엉망으로 만들고 작업 버전으로 돌아갈 수 없습니다. 감사합니다, hamengit : GNU/Linux 배포판 버전 관리

UPDATE : 내가 rdiff는 백업에 시도를 줄 것이다. 고맙습니다.

답변

2

git (및 다른 소스 제어 도구 모음)의 문제점은 권한 및 특수 파일을 잘 처리하지 못한다는 점입니다.

etckeeper/etc을 관리하는 git의 맨 위에있는 스크립트 집합입니다. 이미 많은 보안을 제공 할 수 있습니다.

마지막으로, 실행중인 사용자가 chroot()입니다. 이렇게하면 chroot 외부에서 쉽게 백업 할 수 있습니다. rdiff-backup과 함께 사용하면 멋진 최신 온 디맨드 버전을 직접 볼 수있을뿐만 아니라 온 디맨드 디스크 표현이 가능합니다.

+0

실제로 수동 백업으로 생각했지만 squashfs-root /는 1.3G입니다. rdiff - 백업 일부 "폴더 어제의 스냅 샷"기능이 있습니까? –

1

배포본을 만드는 데 사용하는 모든 작업을 자동화하고 배포본을 만드는 데 사용하는 스크립트 만 버전을 지정하십시오. 그런 식으로 뭔가를 엉망으로 만들 때마다 배포판을 다시 만들 수 있습니다.

+0

시나리오 : 현재 라이브 배포판에는 2.6.26 커널이 있습니다. squashfs-root를 마운트하고, choroot하고, 2.6.29 커널 소스를 설치하고, 커널을 다시 컴파일하고, squashfs-root에 새 커널을 추가하고, squashfs-root를 압축하고 .iso를 빌드합니다. 처리 방법은 무엇입니까? : -/ –

+1

@hamen : 명령 행에 입력하는 명령과 똑같은 명령을 포함하는 스크립트를 작성하십시오. –

0

git이 작동하므로 TimeMachine/System Restore로 유용합니다. 내/etc 디렉토리에 대해 그렇게 사용합니다. 크기가 충분히 작 으면 github으로 밀어 넣고 백업 및 배포 메커니즘으로 사용할 수 있습니다.