分类目录归档:日志

Linux 和 Windows 双系统时间不一样的解决办法

这恐怕是所有装 Linux 和 Windows 双系统的人都会碰到的问题:Linux 系统的时间是对的,换到 Windows 系统,时间往往是早了上几个小时,那改吧,在线更新一下时间,改好了,再切换到 Linux 系统,结果时间是晚了几个小时,总之,Linux 和 Windows 总有一个时间是错的。

Windows 和 Linux 都把时间存在主板上的CMOS(保存计算机基本启动信息,如日期、时间、启动设置等),但这个“时间”的意义在它们的字典里不一样,讲个故事来说明,故事的主人公是上海的一台计算机,它的CMOS里存的时间是X年X月X日13时X分X秒X毫秒。

Windows 来了,它认为这个时间是当地时间,显示给用户看是X年X月X日13时X分X秒X毫秒,再根据用户设置的时区(上海是东8区),换算得到全球基准时间,即格林威治标准时间,得知全球基准时间为X年X月X日5时X分X秒X毫秒。

Linux 来了,它认为X年X月X日13时X分X秒X毫秒是全球基准时间,再根据用户设置的时区,换算得到当地时间是X年X月X日21时X分X秒X毫秒,于是它显示可用户看的就是21时。

知道原因了问题就好解决了,Windows 或 Linux 某一个系统改改适应对方就好了。这里给出让 Linux 认为时间是当地时间的办法。

执行 sudo timedatectl set-local-rtc true ,或在 /etc/adjtime 文件的末尾追加一行 LOCAL ,两个操作是等价的。之后重启,重新调整一下时间,万事大吉。

让 Windows 认为CMOS存的时间是世界基准时间也是可以的,方法不再赘述了。

Chrome 的 PAC 代理配置方法

Linux 下的 Shadowsocks-Qt5 只负责监听本地的一个端口,为连接上来的请求提供代理服务,而哪些应该走代理哪些该走正常渠道,并不做区分,所以只能靠上层应用来区分了,即哪些应该连到 Shadowsocks-Qt5 监听的端口哪些不连上去。

执行 man google-chrome ,找到了如下选项:

–proxy-pac-url=URL
Specify proxy autoconfiguration URL. Overrides any environment variables or settings picked via theoptions dialog.

先从网上找了个 PAC 文件,将设置 proxy 的那句改成 var proxy = "SOCKS5 127.0.0.1:1080;";,我的 Shadowsocks-Qt5 监听的是 127.0.0.1:1080,协议是 SOCKS5。再把这个 PAC 文件存到固定一个位置,比如我存在了 /home/wolfogre/Documents/autoproxy.pac,然后再命令行里执行:/usr/bin/google-chrome-stable %U --proxy-pac-url=file:///home/wolfogre/Documents/autoproxy.pac,Chrome 打开了,已经可以开心地上 Google 了,而访问一般的网站也没有走代理。

问题来了,每一次打开 Google 都要敲这么长的命令简直反人类,我还是希望通过点菜单里的漂亮图标启动。菜单里的所有图标启动项其实都是 /usr/share/applications 里的 *.desktop 文件,关于这一点下一节会在做说明,现在要做的就是以管理员身份编辑google-chrome.desktop ,在里面每一句 Exec=/×××× (应该有三句,分别针对普通打开,新疆窗口,佚名打开)的行末追加 --proxy-pac-url=file:///home/wolfogre/Documents/autoproxy.pac

这时候打开 Chrome 就能开心地上 Google 了。

Network Manager显示设备未托管的解决办法

Linux里面有两套管理网络连接的方案:

1、/etc/network/interfaces(/etc/init.d/networking)

2、Network-Manager

两套方案是冲突的,不能同时共存。

第一个方案适用于没有X的环境,如:服务器;或者那些完全不需要改动连接的场合。

第二套方案使用于有桌面的环境,特别是笔记本,搬来搬去,网络连接情况随时会变的。

他们两个为了避免冲突,又能共享配置,就有了下面的解决方案:

1、当Network-Manager发现/etc/network/interfaces被改动的时候,则关闭自己(显示为未托管),除非managed设置成真。

2、当managed设置成真时,/etc/network/interfaces,则不生效。

WordPress怎样完美地更换域名

网站的域名从旧域名 www.olddomain.com 更换为新域名 www.newdomain.com

第一步,开始之前,要做好备份,备份好网站数据库和网站文件,尤其是数据库。

第二步,将新域名做好解析和绑定操作。

第三步,登录主机管理系统,进入phpmyadmin,选择WordPress网站所使用的数据库。

选中该数据库之后,点击SQL,输入以下代码:

UPDATE wp_options SET option_value = replace(option_value, 'www.olddomain.com', 'www.newdomain.com');
UPDATE wp_posts SET post_content = replace(post_content, 'www.olddomain.com', 'www.newdomain.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'www.olddomain.com', 'www.newdomain.com');
UPDATE wp_comments SET comment_content = replace(comment_content, 'www.olddomain.com', 'www.newdomain.com');
UPDATE wp_comments SET comment_author_url = replace(comment_author_url, 'www.olddomain.com', 'www.newdomain.com');

如果不确定WordPress使用的是哪一个数据库,可以查看WordPress目录下的 wp-config.php 配置文件,查看其中的 DB_NAME 设置。

与直接在WordPress的管理后台修改域名相比,这个办法有两个优点:

  1. 即便旧域名已经失效了,也可以更换新域名;因为整个操作过程中,根本不需要登陆WordPress的管理后台。
  2. 更换比较彻底,不光更换了网站的域名,连文章内部的链接,图片和音视频等媒体文件的地址、链接,以及评论中的链接等,都一起进行了更换。

sublime 快捷键

Default Keymap

1. Ctrl+L             选择整行(按住-继续选择下行) 
2. Ctrl+Shift+K(shhift+del)     删除整行,  ctrl + KK 从光标处删之行尾,Ctrl+K Backspace 从光标处删除至行首
3. Ctrl+Shift+D       复制光标所在整行,插入在该行之前  
4. Ctrl+D             选词 (按住-继续选择下个相同的字符串,再按,可跳到相应的方法定义处
5. Ctrl+Shift+M       选择括号内的内容(按住-继续选择父括号) 
6. Ctrl+/             注释整行(如已选择内容,同“Ctrl+Shift+/”效果)
7. Ctrl + alt + /     取消注释 
8. Ctrl+Shift+UP      与上行互换  ctrl + shift + up: 列模式编辑  
9. Ctrl + R           跳转当前页的目标方法
10. Ctrl+K + U        大写
11. Ctrl+K + L        小写
12. 鼠标中间           列模式编辑
13. Ctrl+Shift+[]     代码折叠
14. ctrl+k ctrl+1:    折叠所有代码 
15. Ctrl + K,B        打开侧边栏
16. ctrl + 回车:     光标后插入行, Ctrl+Shift+Enter 光标前插入行
17. ctrl + m:         匹配括号
18. vim mode下        查找上一个下一个的快捷键是 是* #
19. ctrl +z, y:       撤销,恢复撤销
20. alt + .:          闭合当前标签
21. Ctrl+F2:          设置书签
22. F2:               下一个书签
23. Shift+F2:         上一个书签
24. ctrl + p:         即时的文件切换
25. ctrl + shift + a: 选择标签内的内容 
26. ctrl + 单击:      多行随意位置添加光标
27. alt + F3( mac: ctrl + command + g): 选择页面中所有相同的词
28. ctrl + F3:        跳转到下一个选中的词    
29. Ctrl+Shift+P Set Syntax:html : 设置文件类型
30. Shift + 右键:     连续多行光标选中 (by Gary Gauh)

继续阅读

使用 Sublime + PlantUML 高效地画图

程序员难免要经常画流程图,状态图,时序图等。以前经常用 visio 画,经常为矩形画多大,摆放在哪等问题费脑筋。有时候修改文字后,为了较好的显示效果不得不再去修改图形。今天介绍的工具是如何使用 Sublime + PlantUML 的插件画流程图,状态图,时序图等。这是一种程序员看了就会爱上的画图方式:自然,高效。

继续阅读

wordpress wp-postviews统计插件

1、在管理后台搜索并安装统计插件wp-postviews

2、archvie.php、author.php、category.php、index.php、search.php、single.php、tag.php

<span class="tags"><?php the_tags('', ', ', ''); ?></span>

在该代码后面插入postviews统计调用代码

<?php if(function_exists('the_views')){the_views();} ?>

3、进行wp-postviews后台配置

4、查看配置效果

5、如果启用小工具,可以在侧边栏调用最新文章和最热文章,设置调用全部的,也可以调用某个或多个分类目录,调用功能强大。

wordpress利于SEO优化的十三个插件

第一个插件:all in one seo

是一款很多网友在使用的SEO插件,给文章添加关键词和描述时使用,也可以自定义标题。

第二个插件:WP No Category Base – WPML compatible

这个插件的主要功能是自动替换URL中的category字段,使用这个插件后目录层级就变浅了,更好的结构让蜘蛛更好爬行。

第三个插件:WP-PostViews

想知道哪篇文章更受到搜索引擎和网友们的青睐,安装统计插件才能知晓,要不就只能靠猜了。
继续阅读