主服务器升级到树莓二代

作者:V君 发布于:2015-6-8 0:30 Monday 分类:小服杂记

TL;DR: 
1) 迁移: 从树莓1SD卡读出镜像, 写到TF卡.
2) 引导: 下载一个较新的官方镜像, 将TF卡引导分区文件全部删除, 使用新镜像的文件.
3) 模块: 从新镜像的 /lib/modules 复制到TF卡对应目录.
4) 升级: sudo apt-get update -y;sudo apt-get upgrade -y;sudo apt-get dist-upgrade -y;
然后再逐一检查各个服务的工作状态.

听我慢慢扯:
树莓1那点内存和处理器已经满足不了需求了, 升级在即. 终于抽了个空把迁移搞定.
由于树莓1是SD卡然而树莓2是TF卡, 镜像读写是少不了的, 于是先把树莓1的SD卡插上电脑读出镜像.

然后再写到一张新的TF卡上. 然后插到树莓2, 上电 -- 嗯. 和预料的一样 不启动.
早就知道引导文件有所差异导致, 于是用最近从官网下载的镜像里拿出引导文件替换掉.
重新插电启动, 引导成功了!

表以为这就万事OK了, 这时候会发现 apache 启动不能? 
再瞧瞧, 原来NTFS-3G似乎不工作, 外置存储没挂载...
手动挂载出现错误, 按提示加载内核模块然后报告找不到.

好吧, 估计是处理器从ARM-V6换到V7的缘故.
还是老样子回新景象拷贝缺失的内核模块到新TF卡上.
路径是 /lib/module 将新镜像的文件复制添加过来.
加载内核模块成功! 再次尝试mount -- 顺利挂载外置存储!

接着尝试启动 apache -- 仍然失败,
提示 openssl 和 php 相关错误, 好吧, 无脑 apt-get 更新 openssl 和 php5.
又一次顺利启动!

接着走apt-get upgrade / dist-upgrade
其实等 upgrade 完成之后应该大部分功能都可以正常工作, 只是有点久.
就先把OpenSSL和php5先更新 写博客了 (=゚ω゚)=

照片就不拍了 因为闪光灯会使树莓二代死机... ⊂彡☆))д´)

~EOF


update:
本以为没事了, 嗯 当你点开我的应用发现黄页400.... 好吧 暂时解决不了  还是要重装的节奏..

update2: 
尝试只重装mono看看 -- 在爆栈上面找到完整删除软件包的方法之后开始重新安装
先完整移除依赖项
sudo apt-cache depends mono-complete | grep 'Depends' | cut -d: -f2 | tr -d ' ' | xargs sudo apt-get purge -y
然后更新
sudo apt-get update -y;sudo apt-get upgrade -y
接着重装
sudo apt-get install mono-complete -y
然后各种补缺
sudo apt-get install libapache2-mod-mono mono-apache-server2
然而... 现在连400都没了 直接不响应.....


标签: 树莓派 linux 系统升级

评论(0) 引用(0) 浏览(1292)

被IE擅自缓存AJAX GET请求绊了一跤

作者:V君 发布于:2015-5-12 10:31 Tuesday 分类:填坑经验

TL;DR: IE,GET请求就给我加上时间QueryString,要么用POST!!!

 

这些天在做报表, 由于数据量太大, 计算需要太长时间, 普通的ajax会超时.

于是在服务端开了个线程处理, 客户端轮询状态直到完成再按需呈现成网页表格或Excel导出.

 

调试的时候挺愉快的, 各种流程都按预期的一样, 那是因为用Chrome.

由于开发环境数据量太少, 跑起来没什么意思.


于是发布到测试环境, 那边数据比较多, 这时候问题来了, 客户端轮询进度一直没推进.


用IE内置的F12监视也没问题 -- 老老实实的请求和响应, 每次内容都一样... 

(如果用Fiddler的话 应该能马上察觉到吧..... 偷懒的后果, 自做自得....)

 

那时还以为是数据量太大或者线程挂掉了... 尝试各种途径去做调试...

因为觉得打日志是羞耻的, 更希望能远程调试或者附加调试.


服务器装的2003, 不支持我大锄头2013的远程调试器,

但是支持2010的调试器, 好吧, 为此装了个2010, 远程连接失败... 折腾数次仍未果, 放弃.


想起SharpDev这货能附加调试, 搞了个放到测试服务器 -- 列不出可附加的进程..

查了才知道这货只支持x86调试.... 又查了如何让IIS6程序池用32位... 未果.

(IIS6的x86模式只有总开关, 似乎还会影响iisapp命令...放弃折腾)

 

如今终于“放弃荣辱观” -- 做大量日志以监视服务器工作状态 -- 嗯?

线程有好好的启动和结束...


好吧, 可能是服务端多线程的volatile问题,于是给状态字段加了这个关键字,

问题当然依旧, 这时, 恼火了, 让测试人员使用Chrome看看

马丹! 果不其然 结果很正常的呈现了!

 

好吧 写在这里挂起来吧 _(:3」∠)_

标签: 软件开发 C# ASP.NET IE AJAX 多线程

评论(0) 引用(0) 浏览(2097)

将树莓派变成蓝牙GPS

作者:V君 发布于:2015-5-3 3:35 Sunday 分类:折腾手记

TL;DR: 

你需要准备USB蓝牙和USBGPS各一个,插上树莓 上电

sudo apt-get -y update;sudo apt-get -y upgrade;sudo apt-get -y autoremove

sudo apt-get install -y bluetooth bluez-utils blueman

#启用配对

sudo hciconfig hci0 piscan

sudo bluetooth-agent 0000 &

#添加串口

sudo sdptool add --channel=3 SP

#监听串口

sudo rfcomm watch hci0 3  /home/pi/send-gps.sh {}

#send-gps.sh 内容为 cat /dev/ttyACM0 > $1

在手机安装个蓝牙gps提供程序,配对OK可以连上来了, 推荐使用开源的Bluetooth GPS for Android

 

听我慢慢扯:

阅读全文>>

标签: 树莓派 linux 蓝牙 GPS

评论(0) 引用(0) 浏览(3693)

破解360doc复制内容要登录

作者:V君 发布于:2015-5-1 15:29 Friday 分类:折腾手记

TL;DR: 安装这个 用户脚本 就可以了!

 

听我扯扯:

这天查资料总是得到这个网站, 然而复制就会弹出讨厌的登录框.

尽管用ABP屏蔽掉了, 但是内容还是被阻止送入剪贴板.

怒之, 逐分析其阻止机制, 写下数行代码, 屡试不爽, 发布到greasyfork共享之.

标签: javascript 用户脚本

评论(0) 引用(0) 浏览(1922)

C#,for-i和foreach哪个更加快?

作者:V君 发布于:2015-4-26 15:49 Sunday 分类:挖坑经验

TL;DR: 不要纠结, 哪个顺手就用哪个, 编译器比你更懂优化.


听我慢慢扯:

今天看到T同学在用AS3写有关循环的玩意, 这个问题就被引了出来.

然后我和L同学打了一架, 最后遗憾的断言失败.

我们都应该知道.net的集合有枚举器(IEnumerator)这玩意.

foreach遍历的集合应该实现这个接口. foreach取出枚举器实例不断调用next来取得当前对象,从而实现循环.

然而for-i是直接取索引器下标. 那时我断言了for-i比foreach更快. 

不服就上代码跑过. 于是就写几个不同的用例来测试.

首先是数组的for-i和foreach, 结果让我震惊, for-i居然比foreach慢一点点!

然后IList的遍历就是预期的for-i比较快了.

为毛? 经过许多调查,反编译,看汇编,上堆栈. 嗯,就如TL;DR说的一样, C#译器基本上一直在骗我们 ...

针对数组的foreach,去掉优化的反编译代码居然是局部变量index++的形式,这和说好的枚举器next不一样.

看了foreach和for-i的汇编, 发现for-i的汇编居然有压栈操作 然而foreach没有!

不纠结了, 总之怎么顺手怎么用吧...

标签: 软件开发 C# 循环效率

评论(0) 引用(0) 浏览(1670)

Powered by emlog 去你妹的备案 sitemap