升级 windows 10

升级 windows 10

目前日常使用的是一台老旧的Thinkpad T430,运行 windows 7 (专业版),以前也收到过windows提示升级 win10。一来没有时间, 二来一直工作很好, 因此完全没有升级的想法。

这个春节由于流行肺炎的原因,基本上就呆在家里了,极度无聊。想到windows 7已经结束生命周期,上网搜了搜,似乎微软仍然保留了免费升级的通道, 干脆就升级windows 10算了 。

从微软的网站下载 media creation tool,选择升级现有电脑,过程非常简单顺滑。个人配置也完全平滑的升级到新的系统,基本上除了点击next,就没什么可以做了。不得不说, 在工程兼容性方面,微软简直做到了极致!

升级后的win10桌面
windows 10 桌面

平时常用的软件都没有问题,非常顺利。新系统与win7有些差异,略感怪异,尤其是那个磁贴(谁设计这货的?),实在太不好用,而且老是出意外,希望以后能逐步适应。

2020-01-28更新: 不知道是什么原因, 笔记本的风扇一直转,时大时小,以前windows 7时没有这种现象。看了任务管理器,CPU和内存占用都非常小,真是奇怪。

推荐一个lua的小插件

推荐一个lua的小插件

以前一直用Geany编辑器编写Lua程序。其实这个工具很垃圾,只是别的工具更垃圾。要求也不高,无非就是变量、函数等跳转、列表,工程范围内查找,基本的编辑功能即可,不要求调试功能。

平时写脚本一般都是采用visual studio code,很棒的工具,就简单编辑功能而言,vsc 做得相当好。因此也试图尝试 vsc 的插件,看看能否满足上述编写Lua脚本的要求。

看到 vsc 推荐作者sumneko 的插件,名字居然就叫 Lua,如下图所示。简单试了一下,感觉不错,符合上述各项需求,值得推荐。

Lua 插件
Lua 插件
2019汽车年审

2019汽车年审

去年的流程基本类似,不过现在不需要上交警的网站预约,直接在“深圳交警”的微信公众号里就可以办理预约。

在深圳交警的微信公众号里,也可以直接查询和办理交通违章, 这个要赞一下。以前要专门跑一趟交警中心以及银行,现在轻松多了。当然,最轻松还是不要违章,那就什么事都没有。

预约时需要选择检测点,这个需要特别注意一下。比如我以往常去的检测点关门了,就要注意选一个新的检测点。好在检测点非常多,南山区、宝安区等都有很多,挑一个地理比较近的就可以。现在各检测点的服务态度都很好,毕竟很多工作都自动化了,大家都轻松愉悦。

今年的费用是290元,年年都涨啊!这个似乎只能向交管部门抱怨,检测点也只是按规矩办事。

提交资料包括:(1)身份证 (2)行驶证。我的保险是人保,没有要求提交保单。现场有些人被要求提交保单进行拍摄,具体情况也没有去做详细了解, 建议带上保单副本或者电子档以防万一。

现在检测流程非常舒服:将交通三脚架放副驾驶位置、 缴费、 然后将车钥匙给工作人员,就没有其他操作了,在检测中心的休息室等着检测完即可。

同样,只有一个年审标,没有单独的绿标。

快手菜:牛肉

快手菜:牛肉

内容主要来自微博视频:小颖美食

主料:牛肉,也就是一大块后腿牛肉。

辅料:辣椒、土豆、大蒜瓣。

调味料:生抽、食用油、耗油、黄豆酱、淀粉、胡椒粉。

(1)牛肉逆纹路切成薄片;

(2)一勺淀粉、适量清水,搅均匀,倒入牛肉中,再加入一勺生抽、适量食用油,手抓均匀,腌制20分钟

(3)适量青、红辣椒切圈,大蒜瓣切成末;土豆切成小块,泡水5分钟后,控干水分。

(4)锅中油烧热,倒入土豆,先炸一下,表面微黄即可,倒入盘中备用。

(5)牛肉腌制好后,加入黄豆酱、耗油、胡椒粉,搅拌均匀;然后一片片铺在土豆上面。

(6)水提前烧开,然后将土豆牛肉盘放入锅中,隔水蒸,大火10分钟

(7)另一锅中热油,炒香辣椒大蒜末,加入生抽调味,翻炒均匀,然后加入一碗水淀粉,煮到粘稠。

(8)牛肉蒸好后,将芡汁淋在牛肉上即可。

一道菜:鸡腿

一道菜:鸡腿

在网上看到的,略微作了点改良,适合自己就好,快乐做鸡!

主料:大鸡腿两个(注意,是大鸡腿)。

辅料:洋葱(一个,切片)、辣椒、生姜(四、五片即可)、大葱(一根)、大蒜瓣(四、五瓣即可,切片)、盐(?似乎不需要强调)、芝麻香油、蚝油、生抽。

(1)大鸡腿在40度的水中浸泡,约30分钟,然后清水洗净二、三遍,去掉鸡腿的血水。

(2)用刀背敲打鸡腿,让肉质松软一些,然后放入大碗中,撒一勺盐、一勺芝麻香油,手抓大约2~3分钟,让鸡腿和佐料充分混合,然后腌制10分钟。

(3)鸡腿放盘中隔水蒸,水开后,中火或者小火再继续蒸大约25分钟。

(4)稍放凉鸡腿,然后手撕成小鸡块。

(5)另起一锅,多放油,放入辅料(洋葱、辣椒、生姜、大葱),翻炒。待洋葱、大葱等基本变色后,倒入小鸡块、蚝油和生抽(事先可先调制好),稍微炒炒即可出锅了。

升级php7

升级php7

这是一个升级的季节……

前两天刚升级完Git,感觉可以稍微轻松一下。今天收到email,WordPress 升级了! 升级也就算了,关键是进入管理界面时,扑面而来一个提示:“WordPress has detected that your site is running on an insecure version of PHP” ,这意思是:您的php版本太老了,该升级了!

查了一下当前Debian 9默认的php版本:V5.6.40,似乎不算太老啊。顺手又查了一下该系统中最新的php版本,已经是V7.0.33版本。V7的版本应该足够WordPress 使用,于是决定升级php来解决这个提示问题。

PHP毕竟是世界上最好的语言,各种插件都已经相应升级好了,都有PHP7对应的版本,因此事情就简单了,使用以下命令,直接安装即可:

sudo apt install libapache2-mod-php7.0 php7.0-fpm php7.0-gd php7.0-curl php7.0-mbstring php7.0-mcrypt php7.0-json php7.0-mysql php7.0-opcache php7.0-readline php7.0-xml php7.0-xmlrpc php7.0-zip php7.0-bz2 php-imagick

升级完php及apache的模块后,需要设置 Apache 使用最新的php7版本。也很简单,重新设置相应的模块并重启 Apache 即可:

sudo a2dismod php5
sudo a2enmod php7.0
sudo a2enmod proxy_fcgi
sudo a2enconf php7.0-fpm
sudo systemctl restart apache2
从HG迁移库到Git

从HG迁移库到Git

迁移工作比较简单,参考BitBucket推荐的一篇blog,基本操作与该博主的描述一致,部分有些差异。

以下操作基于Debian系统。

首先安装mercurial-git,这个工具会自动将原hg库的信息提交给新的Git库,会保留以前commit的comment内容,这点尤为重要。如果不关心以前的comment,就没啥好说了,直接将整个代码提交给Git就完事了。

sudo apt install mercurial-git

接着需要让 HG 知道有 mercurial-git 这个扩展,并能操作Git库。 修改~/.hgrc文件,添加以下内容即可:

[extensions]
hgext.git=

如果希望将HG的branch也转化成Git中的branch,则需要做一些稍显古怪的操作。请注意:HG中的branch不对应Git的branch!我不太清楚是HG的问题,还是 mercurial-git 这个工具的问题,需要为每个分支设置bookmark,然后根据这些bookmark转换成Git中的branch。

例如,将HG库中的default、mss_v36、mss_v36_dev三个分支,分别对应Git库中的master、mss_v36_hg 以及 mss_v36_dev_hg 分支:

hg bookmark -r default master
hg bookmark -r mss_v36 mss_v36_hg
hg bookmark -r mss_v36_dev mss_v36_dev_hg

然后,直接推送到Git的远端库即可:

hg push git+ssh://git@bitbucket.org:my_account/my_apps.git
Git入门基础知识

Git入门基础知识

多年开发工作以来,前前后后用过很多个版本管理工具,从最早的VSS(微软的工具,现在大概没人知道这是个什么东东了),到SVN、ClearCase、mercurial(hg),现在终于要过渡到Git了。

其实我们最近这些年一直用着hg,感觉挺好的,非常满意,没有打算换其他工具。无奈BitBucket发邮件通知,明年要切换到Git(详情请点击这里),考虑到年底事可能会比较多,乘着现在还不太忙,赶紧先学习,抓紧时间迁移。

HG和Git的基本原理和操作是相通的,都是分布式的版本管理工具。具体在某些细节上,确实有些差异。比如HG的commit操作,实际上相当于Git的add+commit两步操作。Git多了本地缓冲区的概念,在branch部分,HG和Git有很大差异。Git的本地branch和远端branch可以不一致,需要建立映射关联,而HG本地branch和远端branch总是一致的。Git当然更灵活些,而从管理角度考虑,我更喜欢HG的处理方式。

HG的branch不能被删除,只能被关闭,而Git的branch可以被删除!我觉得这是两者最大的一个差异。显然,Git更鼓励频繁地操作branch。这点我更喜欢Git,实际工作中,定位问题、出临时版本,都可以应用一些临时的branch,事后删除,版本库也干净很多。

网上的学习资料很多,我觉得廖雪峰写的教程非常详细、易懂,推荐给大家,请点击此处

在windows系统中,直接下载、安装SourceTree即可,而在Debian系统中,使用以下命令直接安装Git:

sudo apt install git

SourceTree 使用方便、直观,如果平时是工作在windows系统,用这个工具就挺好。像我很大一部分时间是工作在Debian系统上,因此掌握一些Git的命令行操作就比较重要,好在不太多,并且和HG相差不大。

以下记录一些常见的操作:

全局配置

ssh-keygen -t rsa -C "git@demo.com"

BitBucket的Git支持 SSH 和 HTTPS 两种传输方式,推荐采用SSH,并且采用证书接入,这样有两点好处:(1)防止其他人登录。账号、密码鉴权方式比较容易泄密,而SSH证书在本地保存,只要别人不能轻易获取你的密钥文件,就无法从其他计算机上登录Git服务器。(2)每次登录、操作无需输入账户密码,能省点时间吧。

上述命令就是创建SSH密钥,默认在~/.ssh 目录下创建两个文件:id_rsa以及id_rsa.pub。id_rsa.pub中记录公钥,将其内容拷贝出来,保存在BitBucket账户中即可。

git config --global user.name "git"
git config --global user.email "git@demo.com"

配置全局用户名。这个不是Git账号的登录名,只是在每次提交代码时,系统用这些参数做一些描述性信息,比如显示改动的用户是谁,诸如此类。

git config --global color.ui true

Git命令行采用彩色显示(无关紧要,只是个人的恶趣味)。

基本命令

git add xxx 将修改提交到缓冲区
git commit -m "1234"  将缓冲区提交到本地库
git restore <filename> 放弃本地的修改
git checkout -b xxx 创建本地分支xxx
git push --set-upstream origin xxx 将本地xxx分支推送到远程仓库
git checkout -b xxx --track origin/xxx 创建本地xxx分支,并关联到远程origin/xxx分支
git checkout xxx 切换到xxx分支

Branch相关命令

git branch 查询当前本地分支
git branch -a 查询所有本地和远端分支
git branch -r 查询远端分支
git merge xxx 将分支xxx合并到当前分支 
git branch -d xxx 删除本地分支xxx
git push origin -d xxx 删除远程分支xxx (注意:分支名不要带上 origin)
git remote prune origin 删除远程分支后,更新本地的远程信息
git pull 从远程仓库更新到本地仓库
git fetch --all 更新所有分支
git pull --all 拉取所有分支
git remote show origin 检查远程分支与本地分支的关系

Tag相关命令

git tag 查询所有的标签
git tag ttt 打一个标签ttt
git tag -a ttt -m "xxx" 打标签ttt,说明文字xxx
git show ttt 查看tag及其说明文字
git push origin ttt 推送标签到远程仓库
git push origin --tags 推送所有本地标签到远程仓库
git checkout tag_name 获取tag标签对应的代码(只是快照,无法更改)
git checkout -b branch_name tag_name 在tag基础上创建分支(可以进行修改)
git tag -d ttt 删除本地标签ttt (尚未推送到远程)
git push origin :refs/tags/ttt (删除远程库中的ttt标签)
Samba登录密码错误

Samba登录密码错误

在Pi上运行了Samba服务器,并创建了相应的samba用户和密码,但是从windows 7登录该samba服务器时,总是提示“用户名或者密码错误”。

可以肯定的是:用户名和密码都绝对没有错误!毕竟手写以及重新设置了无数遍,完全可以确认。

那问题出在哪里呢? 在网上搜索了一下,发现是windows 7的本地安全管理策略与samba配合有些问题,如下图所示:

修改windows本地安全策略

依次点击:控制面板 – 管理工具 – 本地安全策略 – 本地策略 – 安全选项,然后修改右侧的“网络安全 – LAN 管理器身份验证级别”项。

默认设置是“发送LM和NTLM,如果已协商,则使用NTLMv2会话安全”,需要修改为“仅发送NTLMv2响应,拒绝LM和NTLM”。