nas*_*ass 6 live-cd live-usb boot auto-login username
我正在使用一些 Ubuntu 衍生产品的 ISO 映像——它应该与 Ubuntu 非常相似。版本为 14.04.1 64 位。这里的想法是根据您第一次从 DVD-ROM 或 USB 记忆棒启动 Ubuntu 时获得的实时会话,创建一个自定义的实时 USB 记忆棒。
请注意,我已经尝试在 U 盘中正常安装 Ubuntu,但这不适合我,因为 U 盘作为存储介质速度较慢。结果,该系统中的任何会话都很缓慢且通常无效。
因此,为了获得最佳结果和更快响应,会话需要从 RAM 驱动器运行,而最省力的路径似乎是启动 Ubuntu LiveCD 或 LiveUSB 时获得的实时 Ubuntu 会话。如果您有任何其他建议,请随时提出。
我已经通过了大量的指南。我听说过Ubuntu customization kit其他(大多是非常古老的)特定定制。在所有指南中确定的一件事是定制需要在casper初始(ram?)系统中完成。所以,我已经提取的ISO映像Xubuntu,而我unsquashed的filesystem.squashfs引导文件。从我读过的引导脚本位于
squashfs-root/usr/share/initramfs-tools/scripts/casper-bottom/ #directory
squashfs-root/usr/share/initramfs-tools/scripts/casper #file
Run Code Online (Sandbox Code Playgroud)
而我想要实现的——至少在最初——是
我已经尝试从实时会话中执行此操作(使用持久性),但 lightdm 自动登录功能不是持久性的,删除实时会话用户也是如此。
所以在文件中casper我看到有4个赫然相关条目
USERNAME=casper
USERFULLNAME="Live session user"
HOST=live
BUILD_SYSTEM=Custom
Run Code Online (Sandbox Code Playgroud)
并将其更改为
USERNAME=nass
USERFULLNAME="not a live session"
HOST=portableos
BUILD_SYSTEM=Custom
Run Code Online (Sandbox Code Playgroud)
看起来我不仅可以从 boot 拥有我自己的用户,而且不需要删除 casper 用户,因为我已经是替换 casper 的主要用户:)
不幸的是,用自定义值替换这些,重新制作 squashfs 文件系统并替换 ISO 中的文件不会改变实时会话用户。实时会话用户再次被称为“Ubuntu”。
同样,chmod -x在文件中执行casper-bottom/15autologin (甚至完全删除它)不会改变启动过程,也不会在登录时要求输入密码。
因此,这似乎再次不是创建新用户、删除 casper 用户或禁用自动登录引导过程的正确位置。
所以我不得不问,我应该在哪里进行所有这些自定义?
编辑:
评论user-session=xubuntu中squashfs-root/etc/lightdm/lightdm.conf.d/10-xubuntu.conf我已经成功地禁用自动登录。
我也更新了文件 squashfs-root/etc/casper.conf
USERNAME=nass
USERFULLNAME="not a live session"
HOST=portableos
BUILD_SYSTEM=Custom
Run Code Online (Sandbox Code Playgroud)
但我再次启动到用户“Ubuntu” - 这是唯一可用的用户。
最后,squashfs-root/etc/passwd不包含用户“Ubuntu”的任何条目,因此我不能简单地在那里更改它。
不用说,我在每次尝试启动之前“mksquashfs”文件系统并替换相关文件。
最后!
经过无数小时的搜索并结合稀疏信息,要更改默认用户名,只需将其伸入initrd.lz. 似乎 sqyashfs 继承了用户名,因为它是从初始 ram 驱动器导出的。
因此,一旦您提取了 liveCD ISO,请从casper/initrd.lz, 和 中获取 initrd :
lzma -dc -S .lz /mnt/casper/initrd.lz | cpio -idetc/casper.conf.在同一个文件中取消注释“风味”变量。
请注意,无需更改scripts/casper. 你可能和我一样困惑,但没有理由为什么这些在那里。(为什么真的?)
返回到 initrd 根文件夹并重新创建 initrd 文件为 find . | cpio --quiet --dereference -o -H newc | lzma -7 > ~/new-initrd.lz
编辑:
--dereference 上面第 5 步中的内容不应在更新的 (>=17.04) 版本的 *ubuntu 中使用。
现在,替换下面的另一个 initrd.lz extracted-iso/casper/,您应该可以使用您选择的用户名登录。
| 归档时间: |
|
| 查看次数: |
3697 次 |
| 最近记录: |