文档
如何使用 TKLDev 从源创建 TurnKey 应用设备 ISO
我原来写这个是作为 博客文章本文亦自博客原文后更新,
目录
TKLDev 设置
创建 VM
我建议你安装TKLDev到虚拟机。我假设你会使用类似VirtualBox或VMware的产品。 我对VBox非常熟悉,我也会使用他们的术语。 VMware 产品应该都很好。
如果您从 VM (OVA) 中安装, 您的 VM 将自动被分配资源 。 默认资源是最低限度的,因此根据更好的经验酌情调整。
建议的 VM 规格和设置:
- 大部分应用设备会用更少的积分来建造精细.
- 应用设备的2-5%可能需要最多2x RAM.
- 可能需要更多的存储来构建多个应用设备,而无需每次移除产物.iso.
维拉姆: 1024MB( 更多更好)
vCPU 核心 : 2( 更多更好)
高温度 : 10GB 分钟( 更多更好)
OS类型 : x64 Debian(任意64位 Linux应该工作)
联网 : 已连接(见 文件. . . . . .
说明: 您可能需要选择 。PAE 密码' 在 VBox 设置中; 我不确定 VMware 是否等效 。
下载
从中下载最新的 VM (OVA) 或 ISO TKLDev 应用设备 page
安装到 VM
这是 TurnKey 安装程序的分步指令。 不幸的是, 缺少一些截图, 但您应该知道这个想法 。 VM( OVA) 构建它时, 已经"安装前"了, 其差异不大 。 OVA 用户可以直接跳转到 步骤8.
01) 安装到硬盘“ ” : “ 进入 ”
02)'Ok':在选项间移动的<Enter>(或)<Tab>;<Enter>可选择)
03)“是”(在选项之间移动“Tab”;“进入”以选择)
04,等待当它复制数据...
05 “是”(在选项间移动“Tab”;“进入”以选择”) 显示截图缺失
06) “是”(在选项之间移动“Tab”;“进入”选择) 显示截图缺失
07 BUG: 有时系统可能无法自动完成重启( 它可能会被卡在“ 被射杀的目标关闭 ” 上 ) 。 如果发生这种情况, 您需要手动重新启动 VM 。
08) 允许启动后输入想要的“ root”( Linux 管理员) 用户密码; < Enter>
09)等待,当它自己设置(这需要一点时间)......
10)“滑动”(在选项间移动的“Tab”;“进入”选择)
11) 安装(<Enter>)
与 TKLDev 合作
连接到 TKLDev VM
我强烈建议您使用 SSH 会话连接 VM 。 您也可以选择使用 VM 窗口, 但是 IMO 最好只使用 SSH 会话 。 除了作为Linux用户,我更喜欢本地终端窗口,它能用到我期望它如何...
Linux 和 Mac 数据
Linux和Mac 我建议使用 ssh 命令( 由 OpenSSH 提供) 。 我不确定Mac 是否成立, 但我期望大多数 Linuxes (Linui?) 默认情况下会安装它 。
打开您所选择的终端模拟器并像这样连接 :
ssh root@<ip-address>
它可能会询问您是否想要添加 ECDSA 密钥指纹( 您可以输入) 。 然后输入密码并点击“ Enter” 。 因此, 对我来说, 第一个会话是这样的 :
比如说,对我来说,那就是:
# ssh root@192.168.1.143 The authenticity of host '192.168.1.143 (192.168.1.143)' can't be established. ECDSA key fingerprint is ef:e4:65:dc:b0:a5:21:23:2d:c6:f4:81:3b:ea:1c:28. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.1.143' (ECDSA) to the list of known hosts. root@192.168.1.143's password:
窗口
你需要一些类似的东西 普蒂语Name 连接您的服务器。在精确设置 OTTOMH 时,我不确定,但在端口22 上连接到“ ip- address” ,然后用户名“ root” 和您设置的密码。
说明: 与 Windows 不同, Linux 输入密码时不显示任何字符, 所以不要认为, 似乎在注意时发生什么错误 。 键入密码。
构建您的第一个 ISO
为了演示(并加倍检查一切工作与已知的好目标),我们将建造"Core"应用设备(这是其他所有的人所建的).
更改目录为 /turnkey/fab/products:
cd products
克隆“ 核心” 应用设备 构建代码 :
git clone https://github.com/turnkeylinux-apps/core.git
输入核心目录 :
cd core
制作 ISO :
make
当完成时, 它应该生产一个 ISO, 叫做“ product.iso ” 。 请检查是否与“ ls” 一起查看 :
ls build
我建议你现在就重新命名它。 这就是我要使用的东西, 这样它就可以在 /turnkey/fab/products 目录中生成一个时间标记的文件名 :
mv build/product.iso ../$(basename $(pwd))_$(date --utc +%Y-%m-%d_%H-%MUTC).iso
假设一切都已经过去了, 则应该生成一个类似此文件( 不同日期和时间) :
/turnkey/fab/products/core_2015-05-22_07-51UTC.iso
你现在可以离开外壳环境了。
从您的 TKLDev VM 中获取 ISO
将ISO带出最简单的方法是通过SFTP连接到您的TKLDev VM.
我建议GUI的情人 费列西拉 (一个很好的开源跨平台 FTP 客户端) 对于那些有终端偏好的人,你可能想要sftp或scp,但你可能已经知道了!
无论如何,任何支持SFTP或SCP的应用都应该是罚款(目前大多数FTP客户端都应该支持SFTP). 注:您需要 SFTP;不是普通 FTP,不是 FTPS.
连接到您的 VM( 使用 IP 和“ root” 用户和密码) 。 您需要指定 SFTP 和/ 或端口 22( 取决于您的客户端; Filezilla 满意其中之一或两者兼有) 。
然后导航到 /turnkey/fab/products/. 您的 应用设备, XX-2X-name- &-datestamp >.iso 应该在那里,然后直接下载它...
构建另一个 ISO
过程基本上与上面的构建核心 应用设备 相同。唯一真正的区别在于您将不同的 git repo 复制到 /turnkey/fab/products. 中。 您可以在 GitHub 上找到所有重置器 这儿 或每个 应用设备 页面在“ TKLDEV SOURCE:”旁边有一个链接,以连接其上的回波。 LAMP 应用设备 page 和它有联系 GitHub 重传通常情况下, 重现的urls是 https://github.com/turnkeylinux-apps/<应用设备-name>.git.
因此,为了建造LAMP 应用设备:
cd products git clone https://github.com/turnkeylinux-apps/lamp.git cd lamp make
测试您的 ISO
要测试您的 ISO 只需安装到一个新的 VM , 就像您在 TKLDev 本身 (按照上面的"安装到 VM" 指令) 所做的那样.
任何你经历的虫子,请告诉我们。 问题跟踪器 理想的地方,或者如果你不确定(如果是虫子或 PEBKAC 密码 错误)仅张贴在下面.
如果一个建筑失败
因为我们处于发展模式,建造工程有可能失败。 失败建造工程可能是由于一些原因造成的。 一种可能是代码被打破(或者需要更新,或者由于测试不充分而引入了新的错误). 另一个可能是您的网络设置和/或互联网连接。 目前 TKLDev 需要固态的互联网连接。 有时( 如果与互联网有关) 只需重运行 make 将会解决问题。
如果你运气不好, 建筑失败, 那么请告诉我们(特别是如果你重新尝试, 它持续失败)。 你可以在下面贴出, 开始一个新的线条 或者对我们提出一个问题 跟踪器。理想的办法是,如果你能张贴堆栈追踪(最后的~20-30行~~0X的记录在屏幕上应该很好),那就太好了。 这样我们就能感觉到 是什么可能造成了错误 不需要再重复它了
如果你重新测试了建筑( 通过重跑) make),只要得到同样的错误,那么也许在尝试第三次之前尝试清理repo中的构建文件.
另外,如果你计划再建造一个应用设备,一个失败的建筑有时会干扰它。所以我建议你习惯于清理失败的建筑。 如果你正在开发(即想尝试修补代码和帮助我们),那么有更好的清理方法,但我还是留到另一个博客文章中去.
清理破烂建筑最简单的方法就是跑:
make clean
如果因为某种原因, 失败了, 我建议重启并再次尝试。 要从命令线上重新启动 :
reboot
提示
保持共同的时空
虽然每个应用设备都有自己的个人建筑代码(在其中) 自己的仓库),也有显著的构建代码,由应用设备共享. E. LAMP 应用设备需要单独和单独地维持所有代码 似乎有点傻 所以我们尽可能地把共享代码合并成一个名为Repo的代码 常见.
常见的repo是TKLDev v14.0中设置的自动(你必须手动安装脚本才能完成,或者自己在v13.0中手动复制). 不管它是 TurnKey GitHub 普通回波的克隆。 这意味着除非您更新, 否则它会在您设置 TKLDev 服务器时被及时冻结 。 不过别担心,这很容易更新.
在正常情况下,常见现象并不经常改变。 然而,我们目前正在做一些重大发展,因此,确保你们有一个最新的共同版本是一个好主意。 检查一个更新的常见性,通常是一个好主意,如果你的构建有中断的话.
因此为了更新常见,使用这个简单的过程:
cd common git pull
第一条线应该带你们去 /turnkey/fab/common 和第二行应当下载 GitHub 的任何更改,并将其与现有的代码合并。
标签补全
< Tab > 补全 启用于 TKLDev 中以保存一些打字功能 !
绕文件系统移动
TKLDev 有一些预设的帮助路径,因此绕文件系统移动的速度更快,也更容易。 例如:
cd products
无论你在哪里,都会带你去/turnkey/fab/products
cd core
将带您到 /turnkey/fab/products/core
构建多块 应用设备
在 TKLDev 中一次只能建一个 应用设备 。 如果您想要同时建多个 ISO, 您需要多个 TKLDev VMs 。 如果您现在只发现这个, 那么在您的 应用设备 失败时, 运行
净土
已知错误:安装后中断问题重启 (应定)
这本笔记是历史的,不应该跟现在的发行一起发生,不过,我们还是留在这儿,以防万一. 曾经有一个错误, 特别是在安装之后; 应用设备 运行在 VM 中会挂在“ 射程目标关闭 ” 上 。 而不是关闭/ 重新启动 。 冒着这种机会,你只要强迫"力量"或"重启"/"重置". 只要应用设备显示"射精目标关闭",那么这完全安全,不会造成任何腐败.