2019年2月

有的时候在重启之后会出现点击termina等其他linux应用点击之后一直无法打开的情况。可以尝试使用以下解决方案:

  • ctrl+alt+t 打开命令行界面
  • 输入 vmc list 如果没有 termina 说明虚拟机完全损坏,需要重新安装Linux on ChromeOS
  • 如果存在 termina 输入 `vmc start termina' 进入vm环境
  • 输入 lxc list 查看是否存在 penguin 的项,如果不存在则需要重新安装Linux on ChromeOS
  • 如果存在 penguin 项尝试输入 lxc start termina 如果没有任何提示,输入 lxc list 后发现是 RUNNING 状态说明可以成功运行。
  • 如果出现诸如 error: Missing source '/run/sshd/penguin/authorized_keys' for disk 'ssh_authorized_keys' 的错误则存在以下两种解决方案

    • 发布(备份)并删除原虚拟机后重新安装(速度较慢,取决于虚拟机大小):

      • 依次输入如下命令
      • lxc publish penguin --alias backup
      • lxc delete penguin
      • lxc init backup penguin
      • lxc start penguin
      • 其中第一步运行速度较慢,请耐心等待,如果不确定程序是否正常进行可以另外开一个终端进入 termina ,输入 top 观察是否存在 gziplxc 命令占据大量CPU或内存资源。
    • 尝试创建需要的文件令它再次工作:

      • 输入 ls /run/sshd/ 观察是否存在文件夹(通常情况下没有,如果有 penguin 文件夹则无需再次建立)
      • 输入 mkdir /run/sshd/penguin 建立文件夹
      • 输入 touch /run/sshd/penguin/authorized_keys 创建文件
      • 输入 lxc start penguin 观察是否有新错误发生
      • 如果有新错误重复上述 touch 命令,将 authorized_keys 替换成新错误缺失的文件,直到不再发生错误为止
      • 19-3-11更新

        • 对于 error: Missing source '/run/tokens/penguin_token' for disk 'container_token'问题,以上方法无效,使用这个命令echo hello-world > /run/tokens/penguin_token之后即可解决
  • 输入 lxc list ,此时状态是 RUNNING 说明可以成功运行。
  • 输入 run_container.sh --container_name penguin --user [你的用户名] --shell 将其中的[你的用户名](不含中括号)替换成你创建的crostini的用户名(通常是你的谷歌账号)

之后可以在这个界面中正常运行GUI程序,原来的termina将不可使用,files应用中也不可以打开linux文件,暂未找到解决方案。此时可以考虑暂用使用单独的窗口打开命令行避免与浏览器热键冲突来实现与termina相同的效果。

参考资料


19-3-11更新

不知道什么原因,每次重启之后很可能termina就不能直接使用了,但是使用一段时间(不关机,不使用的时候仅合上盖子)后就可以正常使用。

19-6-29更新

随着系统版本的更新与系统稳定性的增强,我已经很久没有出现termina出问题的情况了,这篇文章也许不再那么有用了。