为虚拟机扩展硬盘空间

笔者使用虚拟机硬盘一般会设置20或30GiB,因为虚拟机硬盘占用空间只会上升而不会下降,如果涨到太大就不方便克隆分发了。 有时空间不够,必须扩展空间。就需要使用虚拟机的添加硬盘功能。 笔者使用的是VMware,关闭虚拟机,菜单可以直接点击虚拟机设置,添加SCSI硬盘,选择创建新的虚拟硬盘(添加的虚拟硬盘同时也可以添加到其他虚拟机,使用现有虚拟磁盘即可,类似文件版的移动硬盘),然后选择将硬盘拆成多个...

阅读更多

使用自启动脚本rc.local需要注意的问题

最近给系统加自启动,遇到一些问题,记录以备查,系统使用的是Ubuntu 16.04 确保/etc/rc.local文件存在并且有执行权限,默认的rc.local文件内容为 #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the ...

阅读更多

如何查找进程PID并KILL相应进程

笔者最近有个需求,脚本里面运行了后台进程,重新执行脚本时需要先查找出之前运行的进程并杀死 查阅资料,常见有以下方法 方法1: 查找pid ps -ef | grep name | grep -v grep | awk '{print $2}' 解释 grep -v不显示grep的进程;由于PID在第二列,awk打印进程PID; 也可以使用pgrep name可以直接获取PID 结束进程: 获取完成...

阅读更多

python中的错误释放锁

有如下python代码: #! /usr/bin/env python # -*- coding: utf-8 -*- from threading import Lock import time import threading mutex = Lock() def test_lock(tid): global mutex try: if mutex.ac...

阅读更多

使用VMware的快照和克隆功能

在此之前,笔者都是直接复制的虚拟机目录用于分发虚拟机。前段时间为了多机模拟,复制了虚拟机,然后发现虚拟机之间网络不通,原因是复制的虚拟机mac地址相冲突。后来才知道可以使用VMware的快照和克隆功能暂存和备份。 关于快照和克隆,可以查看这篇文章: https://blog.csdn.net/whatday/article/details/52538031 注意以下几点: 快照可以创建多个,也可以...

阅读更多

python中的循环导入依赖导致模块导入失败

有以下三个python文件 module_1.py #! /usr/bin/env python # -*- coding: utf-8 -*- from module_2 import b def a(): pass module_2.py #! /usr/bin/env python # -*- coding: utf-8 -*- from module_3 import c d...

阅读更多

使用bash内建set命令增强脚本安全性

脚本文件如下加入set命令,可增强脚本安全性 #!/bin/bash set -euxo pipefail 解释: -e,也可使用 -o errexit,表示如果脚本中命令执行错误则中止后面命令执行并退出,注意错误是以行计,比如管道中多个命令只有最后的命令执行错误会退出,而中间执行错误并不会退出 -u,也可使用-o nounset,表示如果脚本中引用了未定义的环境变量则会提示错误而不会执行该行...

阅读更多

git中rm,reset,checkout的解释

git rm 删除本地文件,并且将删除加入暂存区,以便下次提交时删除文件。 为防止误删本地修改,如果文件被修改过,无论修改是否加入暂存区,均需要加-f选项。 使用--cached,仅将删除加入暂存区,而不删除本地文件。 git checkout 文件级别 git checkout -- ...

阅读更多