SSH是被建议的一种方式来和Snappy装置进行交互.通常默认的Ubuntu Core image里ssh是启动的,但是在通常的product产品的build里,ssh在默认的情况下是被禁止的.这是因为我们不希望我们的设备被用户通过ssh来访问.那么我们怎么来打开我们的ssh接口呢?
为了能够进行ssh访问,我们的一种方法是手动启动sshd,或者你想每次启动后,sshd会自动启动.这样我们不必每次手动启动我们的sshd.如果是这样的话,我们必须对我们的image进行修改.我们必须在filesystem中删除"/etc/ssh/sshd_not_to_be_run".
修改filesystem最简单的方法的方法是把可以进行dd的image进行mount成为一个在我们的host里loop device.为了实现这个目的,我们使用kparkx来register我们的.img文件:
$ sudo kpartx -av yourimage.img
add map loop0p1 (252:3): 0 131072 linear /dev/loop0 8192
add map loop0p2 (252:4): 0 2097152 linear /dev/loop0 139264
add map loop0p3 (252:5): 0 2097152 linear /dev/loop0 2236416
add map loop0p4 (252:6): 0 3282944 linear /dev/loop0 4333568
# mount and enable ssh on system-a partition
$ sudo mount /dev/disk/by-label/system-a /mnt
$ sudo rm -f /mnt/etc/ssh/sshd_not_to_be_run
$ sudo umount /mnt
# mount and enable ssh on system-b partition
$ sudo mount /dev/disk/by-label/system-a /mnt
$ sudo rm -f /mnt/etc/ssh/sshd_not_to_be_run
$ sudo umount /mnt
$ sudo kpartx -dv yourimage.img
del devmap : loop0p4
del devmap : loop0p3
del devmap : loop0p2
del devmap : loop0p1
loop deleted : /dev/loop0
选择我们得到了一个我们所希望的image.这个image可以具有ssh的功能.我们可以参阅文章"如何安装Snappy Ubuntu到树莓派(RaspBerry PI)上"来安装到我们的设备中.