दस्तावेज़
अवलोकन
उद्देश्य एक सरल तरीका प्रदान करना है जिसमें एक सर्वर छवि को अनुकूलित और विस्तारित किया जा सकता है।
उदाहरण tweak
- एक विन्यास फ़ाइल Tweaking
- डेटा फ़ाइलों को जोड़ना
- पैकेज जोड़ना
- एक नया सर्वर छवि बनाना जो कोर, LAMP, रेल आदि जैसी एक सामान्य सर्वर छवि का लाभ उठाता है।
डिजाइन लक्ष्य
- अच्छी तरह से डिजाइन तंत्र (सरल, सामान्य और शक्तिशाली)
- प्रवेश के लिए बाधाओं को कम करने के लिए तकनीकी रूप से सरल
- डेवलपर्स को अपने पैच को आसानी से प्रकाशित करने के लिए प्रोत्साहित करें
- TurnKey सर्वर छवियों को बेहतर विकास को शामिल करें
- पैच के ओपनसोर्स पारिस्थितिकी तंत्र की स्थापना
- विशेष जरूरतों की लंबी पूंछ
प्रयोग
एक ISO छवि पर एक पैच लागू करना (पैच छवि को छवि-patched.iso कहा जाएगा)
tklpatch image.iso patch.tar.gz
एक स्थापित सर्वर (सर्वर के अंदर से) को बदलने के लिए एक पैच लागू करना:
गोटा: रनिंग सिस्टम को tklpatch अपेक्षित अवस्था के अनुसार कॉन्फ़िगर किया जाना चाहिए जब तक कि पैच डिस्क्रेपनेसियों (जैसे, रनिंग सर्वर, पासवर्ड आदि) का प्रबंधन नहीं करता है।
tklpatch-apply / patch.tar.gz
नमस्ते विश्व उदाहरण
- किसी भी TurnKey सर्वर छवि डाउनलोड करें (जैसे TurnKey Core)
- उत्पन्न करें और उदाहरण पैच लागू करें:
tklpatch-example helloworld tklpatch path/to/turnkey-core.iso helloworld - अपनी आवश्यकताओं को फिट करने के लिए उदाहरण पैच टेम्पलेट को ट्वीक और अनुकूलित करें।
कमांड वाक्यविन्यास
TKLpatch को यूनिक्स परंपरा में सरल उप-scripts के मॉड्यूलर संग्रह के रूप में डिजाइन किया गया है। tklpatch कमांड स्वयं केवल शीर्ष उच्च स्तरीय स्क्रिप्ट है, जो कॉल करता है:
1) tklpatch-extract-iso
Disassemble the ISO to extract its contents
1) cdroot: ISO filesystem - contains bootloader and compressed rootfs
2) rootfs: uncompressed root filesystem
2) tklpatch-apply
Apply the patch to the root filesystem.
Patch structure:
patch-dir/
debs/ # custom debian packages (installed with dpkg -i *.deb)
overlay/ # overlay applied to root filesystem
conf # configuration script to execute in chroot (rootfs)
3) tklpatch-prepare-cdroot
Prepare cdroot for ISO creation. This mainly compresses the extracted
root filesystem.
4) tklpatch-geniso
Generate an ISO from the cdroot.
एक पैच की एनाटॉमी
एक पैच एक निर्देशिका है (जो एक gzipped tarball के रूप में पैक किया जा सकता है) जिसमें निम्नलिखित फ़ाइलों और निर्देशिकाओं में से कोई भी हो सकता है:
patch/
debs/ # custom debian packages (installed with dpkg -i *.deb)
overlay/ # overlay applied to root filesystem
conf # configuration script to execute in chroot (rootfs)
इसके अतिरिक्त, पैच इसमें एक पैच/फ़ोल्डर शामिल हो सकता है, जिसमें घोंसले पैच (एक गज़िप टारबॉल के रूप में अनपैक्ड या बंडल) हो सकता है। उनके नामों के अल्फा-न्यूमेरिक आदेश में नेस्टेड पैच स्थापित किया जाएगा पूर्व उन पैचों के लिए जिनमें उन्हें शामिल किया गया है (हैंडिंग पैच पैचिंग)।
patch1/
patches/
patch2/
patch3.tar.gz
patch4.tar.gz
patches/
patch5/
नेस्टेड पैच मॉड्यूलर डिज़ाइन को सुविधाजनक बनाता है क्योंकि परिवर्तनों को एक साथ बंडल करने की आवश्यकता नहीं है।