貌似搞定了mutt

从网上找了个脚本来备份lnmp,结果发现一堆坑。

好不容易搞定了mysql的备份(忽略掉一些lock的表)。

最后又发现mutt发送邮件有问题。

一开始问题出在参数位置上,原来脚本似乎因为参数放错了顺序,导致报错说没有这种文件(其实它把邮箱地址给当成了要发送的附件)。

调整顺序之后,又遇到权限问题。

找了半天,还是外国人给力。

以下四条语句,一条不能少:

chown root:smmsp /usr/sbin/sendmail
chmod 2555 /usr/sbin/sendmail
chown smmsp:smmsp /var/spool/clientmqueue
chmod 770 /var/spool/clientmqueue

得感谢这个论坛:

http://www.linuxquestions.org/questions/slackware-14/no-mail-for-local-users-729726/

最终的结果是:不报错了。

然而,并没有收到邮件!

收不到很正常,啥配置也没写,怎么能收到邮件。

找半天找到一个靠谱的配置文件修改说明,http://www.linuxidc.com/Linux/2016-05/130908.htm

结果改完遇到这样的提示:

gnutls_handshake: A TLS packet with unexpected length was received.
Could not send the message.

简直无语,这个MUTT个个都说好,但我实在不知道好在哪里,当年我用linux自带的邮件发送很快就成功了。而这个mutt的配置文件光注释就2000多行。配置完还是然并卵,是不是叫人很无语?

根据如下老外的说法:

http://unix.stackexchange.com/questions/66560/mutt-smtp-tls-error-sending-mail

我把smtps给改成smtp,发了一个不带附件的,这回没有报错了。

但是还是没收到。

搞了两天了,实在一点办法也没有。

http://markmail.org/message/chbm3ravsho7edjc

30号中午12点,终于搞定了!

之前疯狂改各种权限用户组,都解决不了问题,最后(大概)是因为我直接运行mutt查看系统的mail, 生成了.mail文件,使得该写的缓存能写了。
历经几天几夜,搜索阅读了几十份老外的论坛帖子,总算能发邮件了。

Mutt直接运行看邮件的好处是:不光能看到系统本身的提示,还能看到来自收件方(退信收件方)的错误提示,网易给我发了错误码以及错误码的解释文档的链接。

因为网易一直把我当成垃圾邮件,后来,我修改了muttrc文件,把假的126发件人改成自己用户@主机名(并且把主机名改成了域名)
不过令人沮丧的是,备份脚本并没有把整个mysql备份下来,备份的内容都是垃圾,大概是因为我之前加了-skip-lock-tables参数吧

没有自己开发过自己产品的人无法理解张小龙

我这个标题玄了点。

实际上更大的感触是,张小龙抢了我的创意,当然这是玩笑的说法,只能说有些想法不谋而合,原来我用hack方式扩展微信群的能力,现在微信自己要升级了,hack怕是要被枪毙。

我在看【张小龙首次全面阐述小程序,定档1月9日上线(内附演讲全文)】, 分享给你, 快来看看吧! | http://mp.weixin.qq.com/s/RlLkcMMhAisBSzqIJuTetg

买了课的水平只有5?

刚才在知乎看了个答案,让我想到很多事。

知乎的问答大概如下(原答案禁止转载我就不引用了):

某甲比某乙水平高吗?为什么他不开live或培训班或公开课?

答:某甲千分,某乙百分,买了课的只有5分,因为他们连搜索都不会。

这答案很好!

我是推崇自学的。

推崇自学的另一面是:我本人上课的能力很差,没办法听课。

我打心眼佩服那些能认真听课的人,特别佩服那些有魄力花钱买课的人。

花钱省时间,提高效率,这好像是富人思维。

学习的效率很重要。

一方面拒绝花钱听课一方面推崇提高效率,这个矛盾现象不矛盾的地方在于:我认为学习方法和环境必须因人而异,才有很好的效率。

所以我曾经写文章表达几个观点:

  • 未来人类的学习效率一定是靠人工智能来促进的,因为手机和电脑比你的老师更了解你。
  • 除了学习,人类一切的决策都需要智能助理的介入辅助。
  • 人机合一的场景不仅仅只是芯片植入肉体,软件无微不至的关怀也很重要。
  • 该借力机器而不借力,那是自取灭亡。
  • 现在战斗力为5分的人类未来一定很差吗,不一定,未来机器不能代替的只是跨界者、感知者,因为跨界的部分机器没有数据积累无法学习,机器也难以感知人类的真实需要。没有跨界能力没有感知力和想像力的人,将会被机器圈养和控制。

那篇可怜的文章已连同我的服务器在上一个乱纪元挂了,在此纪念一下。

终于复活了我的博客

话说。

上次我嫌慢,还花钱升级了vps,但是忘了钱其实不够交的。

一忙,就把vps直接给整没了,每次都是这么死的,跟三体文明一样。

这一段时间心血来潮,觉得既然已经保存了那么多备份,不用就浪费了。

把数据库备份文件给塞回到新建的vps里,建lnmp的vhost,自然是一顿费劲。(为了保证没有多余的东西,想把mysql重装,但是又不想重装lnmp,虽然找到了mysql.sh,却死也运行不了,不报错的时候也没反应,最后是把整个lnmp给卸载重来了。

遇到最大的问题是:死也过不去mysql无法重启的关,报的那个错还是说关闭的时候没更新pid文件,看错误日志看了一百遍也没想明白怎么回事,各种试。

最后突然想到,那个强制恢复原来数据的开关其实并没有起作用,因为它说-i不存在,其实那个开关全称大概是innodb_enforce_recovery,直接加到命令行里不起作用,后来我把它写到My.cnf里了,终于启动了。

这一启,算是把wordpress给救活了一半。因为我至少能用命令行把数据库导出成sql了。

然后安装wordpress,还好我比较清醒,没有用普通的安装方法,直接改配置文件。

接下来测试效果,发现页面各种打不开,于是去改google字体、脚本问题。

改完之后能进首页,可是又发现后台登不上,好不容易把密码给试回来了吧,又叫我升级数据库,升级完了,它又叫我升级,于是我觉得应该是数据库版本号不对,跑到数据库里去改(http://jingyan.baidu.com/article/76a7e409e19849fc3b6e1537.html),可是没用,不让改,报1030错误,一查,原来还是那个recovery选项的问题,跑回去把它从6改成0,果然可以update了。真是一环套一环。(这过程中很有意思,网上的文章的方法是在本地安装最新版然后看数据库里版本号应该是什么再来改,但是我可没心情这么搞,直接改代码,把版本号给写到url里让自己能复制的)

接下来解决伪静态问题,其实没怎么解决,就是把固定链接的格式改成了原始的id格式,其他那些都搞不定,不知道是不是跟lnmp的伪静态设置有关系。

 

中间比较惨的是,我想换新加坡机房,结果换完之后发现超慢,比原来还要慢,于是想换回来,结果发现换了三番却不能用备份,真心不想重新安装一遍(当然心里准备着万一不行就直接使用一个预装wordpress的image然后导入数据库)。换回新加坡,遇到另外一个蛋疼问题,那就是无法用ssh,报connection refused,只好用在线命令行(这玩意根本不是ssh),但是官网根本进不去,感觉不是css出不来,而是根本进不了。后来用蓝灯,可是蓝灯根本不顶事,而且蓝灯本身也是个奇葩,我在有病的笔记本上研究蓝灯又研究了一个小时,最后花钱买了蓝灯专业版,还是没卵用,最后是跑去下载了新版重装之后,似乎好了,虽然慢,可是还是登上了console,最终回到台式机上用console把ssh服务给开回来了。(http://blog.csdn.net/anan890624/article/details/52194647)

开了ssh,才谈得上看代码,看数据库,否则完全无奈。