将铬安装到Linux磁盘映像?
问题描述:
我敢肯定这已被问过,但我不知道要搜索什么将铬安装到Linux磁盘映像?
我想创建一个自定义的Linux映像(用于Raspberry Pi) - 我目前正在操纵.img的文件系统但我发现它并不像在二进制文件中那样简单:(如果只是... ...
什么是在磁盘映像上“预安装”软件包的可接受方式,您只能操作文件系统,理想情况下不首先运行它?我最好是启动,安装,然后从中创建映像,或者是否有一种方法可以事先以与更改配置设置等相同的方式进行操作?
答
通常,当我必须要改变的东西在一个磁盘映像,我做到以下几点:
sudo mount --bind /proc /mnt/disk_image/proc
sudo mount --bind /sys /mnt/disk_image/sys
sudo mount --bind /dev /mnt/disk_image/dev
这些动作都需要为这个文件夹在引导过程中被创建,将它们安装在您的系统映像将效仿完全启动。然后,你就可以可以chroot
安全:
sudo chroot /mnt/disk_image
现在,您可以发出在chroot环境命令:
sudo apt-get install chromium
当然,改变/mnt/disk_image
到已安装文件系统路径。 apt-get
只适用于基于Debian的系统,根据您的发行版进行更改。
您可以发现问题连接到互联网,它可能是由DNS配置造成的。您可以做的最好的事情是将您的/etc/resolv.conf
文件复制到远程文件系统中,因为此文件通常由dhcp
更改并且在chroot环境中为空。
这是唯一允许您完全访问您要修改的系统命令行的解决方案。
答
有像Ubuntu定制工具包,允许您创建自己的版本与您自己的软件包的东西。
Crunchbang甚至有这样的实用程序,这是我亲自选择用于实验我的Pi的发行版。
答
这是一个未经测试的想法:
的dpkg
工具,它可以安装.deb软件包,有一个--root
选项,可以设置不同的文件系统比当地/
路径。
从man page:
--instdir=dir
Change default installation directory which refers to the
directory where packages are to be installed. instdir is
also the directory passed to chroot(2) before running
package’s installation scripts, which means that the
scripts see instdir as a root directory. (Defaults to /)
--root=dir
Changing root changes instdir to dir and admindir to
dir/var/lib/dpkg.
如果你安装你的形象,并通过其挂载点为--root
,它应该工作。
这很有用,因为我们可以从包中提取一切,看看fs在没有它的情况下应该如何查看 - 这使我们能够使用上述解决方案将所有内容都放在正确的位置 - 像魔术一样工作 - 如果我可以接受两个答案我会:) –
很高兴它帮助了一些,感谢upvote。 – pixelistik