在使用docker-compose的时候,突然碰到一个奇怪的错误:
Couldn’t connect to Docker daemon at http+docker://localunixsocket – is it running?
从网上找了个中方式都不行。
后来干脆忽视下,先整理目录。将docker-compose.yml中自动创建的data目录删除了。这个目录使我用来挂载到docker的container中的指定目录的。
然后, 之前的那个错误解决了!!!!
在使用docker-compose的时候,突然碰到一个奇怪的错误:
Couldn’t connect to Docker daemon at http+docker://localunixsocket – is it running?
从网上找了个中方式都不行。
后来干脆忽视下,先整理目录。将docker-compose.yml中自动创建的data目录删除了。这个目录使我用来挂载到docker的container中的指定目录的。
然后, 之前的那个错误解决了!!!!
mount /dev/loop0p1 boot
efibootmgr -w
其他的解释: 如果不做这一步,那么在主板 CSM 开启的混合模式下可能无法UEFI启动。
grub-install --boot-directory boot/boot --efi-directory boot --removable /dev/loop0
grub-install --boot-directory boot/boot --efi-directory boot --removable /dev/loop0
grub-install --boot-directory=boot/boot --efi-directory boot --removable --modules="ext2 part_msdos" /dev/loop0
注意第4点和第5点在不同环境下的输出
至此,同时支持bios和uefi的启动盘就制作完成了。
过程很简单,就几条语句
创建一个磁盘镜像
dd if=/dev/zero of=disk.img bs=512M count=1
如果不存在 /dev/loop0,一般都有
modprobe loop losetup -f
关联loop0和镜像文件
losetup -Pf /dev/loop0 disk.img
然后可以将/dev/loop0作为普通磁盘磁盘一样进行操作。比如使用gparted进行操作
gparted /dev/loop0
取消关联
losetup -d /dev/loop0
这个是偶然发现的。
过程是这样的。
我知道emacs 25.2已经出来一段时间了。只是太忙,懒的换了。昨天有点时间,就决定升级下。
在gnu emacs的官方网站上,提到了msys2中如何安装emacs。
我在windows上用的是msys,大约是6年前左右的版本,现在是win10上的bash on windows的linux环境,因为很多脚本只能在完整的linux下运行,依赖太多。
msys2是个什么鬼,比msys更好吧,看着这么容易安装,就试试。
确实很容易安装,竟然有软件管理器,竟然可以安装emacs,试试。
安装后的emacs可以直接在windows上运行,非常不错。既然这样,我就将之前的emacs删除了,然后,将启动emacs的配置中关于msys的bash的路径删除了(exec-path),只所以删除,是因为我认为在msys2中安装的emacs已经解决了bash的问题,会使用msys2的bash了。
一个美丽的误会就这样产生了。
emacs启动的非常完美,shell的启动也非常的完美,但等等,为什么shell提示的路径是/mnt/c/work,而不是/c/work,而lsb_release -a出来竟然是ubuntu 16.04!!!.
然后,我可以在emacs的shell中运行我想要的任何命令。几乎和在linux上一样。
bash on windows在处理链接上,是有区别的。于是,我是用了下magit,或者直接用快捷键在emacs下调用make,发现emacs中提示的路径格式还是C:/这样的windows格式,于是,这种模式下就无法继续进行了。
初步学习python,简单写了个代码
def test(): from . import main main.test() if __name__ == '__main__': test()
第二句话,在直接运行的时候一直报错:
SystemError: Parent module '' not loaded, cannot perform relative import
网上的解释是需要用模块的方式来运行。可我就随便写个test,如何以模块的方式运行?纠结了半天,原来在这个文件的上一级目录,目录 名称就是模块的名称。
比如,我这个文件放在test目录下,则需要在上一级目录中,直接以下面的方式运行
python -m test
但如果以这种方式运行,则需要将程序的入口放在目录的__main__.py中。比如,上面的代码保存在test/__main__.py中。
或许,默认以这种方式运行的话,会更适合模块开发吧。