作者:小鱼的互联网观察
发布时间:January 11, 2013
分类:linux
对于ubuntu vps的管理维护都是通过ssh登录,然后敲命令。ubuntu也是最近刚开始学习使用,遇到问题就请教google,有用的资料记录到Tomboy中。慢慢累计了一些资料,和大家分享一下,希望对新人有所帮助。
注意:有些动作需要root 权限。如果当前登录非root,可以使用su root
然后输入root 用户密码,切换到root
apt-get update
更新源
sudo apt-get upgrade
更新已安装的包
apt-cache depends package
了解使用依赖
apt-cache rdepends package
是查看该包被哪些包依赖
apt-get build-dep package
安装相关的编译环境
apt-get source package
下载该包的源代码
apt-get clean && sudo apt-get autoclean
清理无用的包
apt-get check
检查是否有损坏的依赖
apt-cache search package
搜索包,例如 apt-cache search php5
apt-cache show package
获取包的相关信息,如说明、大小、版本等
apt-get install package
安装包
apt-get install package - - reinstall
重新安装包
apt-get remove package
删除包
apt-get remove package - - purge
删除包,包括删除配置文件等
重启 ubuntu vps:
shutdown -r now
现在立即重启
shutdown -r +3
三分钟后重启
shutdown -r 20:23
在20:23时将重启计算机
启动apache2:
sudo /usr/sbin/apache2ctl start
停止apache2:
sudo /usr/sbin/apache2ctl stop
测试apache2:
sudo /usr/sbin/apache2ctl configtest
重启apache2:
sudo /usr/sbin/apache2ctl restart
或
sudo /etc/init.d/apache2 restart
停用网站:
sudo a2dissite mysite
启用:
sudo a2ensite mysite
启用rewrite
sudo a2enmod rewrite
mysql备份与恢复
备份数据库
mysqldump -uroot -p dbname > /path/dbname.sql
恢复数据库
mysql -uroot -p dbname < /path/dbname.sql
利用gzip备份数据库
mysqldump -uroot -p dbname | gzip > /path/dbname.sql.gz
利用gzip恢复数据库
gunzip < /path/dbname.sql.gz | mysql -uroot -p dbname
作者:小鱼的互联网观察
发布时间:January 10, 2013
分类:技术
写了个python爬虫,网络方面性能很好,爬到的数据写入数据库中。
但是问题来了,写入了大概2w行之后报错。错误内容是:
'int' does not support the buffer interface
问题出现在int的一个转换问题。解决办法如下:
修改Python32\site-packages\pymysql\connections.py 文件中的
unpack_int24
unpack_int32
unpack_int64
三个函数。修改成下面样子
def unpack_int24(n):
try:
return struct.unpack('B',n[0])[0] + (struct.unpack('B', n[1])[0] << 8) +\
(struct.unpack('B',n[2])[0] << 16)
except TypeError:
return n[0]+(n[1]<<8)+(n[2]<<16)
def unpack_int32(n):
try:
return struct.unpack('B',n[0])[0] + (struct.unpack('B', n[1])[0] << 8) +\
(struct.unpack('B',n[2])[0] << 16) + (struct.unpack('B', n[3])[0] << 24)
except TypeError:
return n[0]+(n[1]<<8)+(n[2]<<16)+(n[3]<<24)
def unpack_int64(n):
try:
return struct.unpack('B',n[0])[0] + (struct.unpack('B', n[1])[0]<<8) +\
(struct.unpack('B',n[2])[0] << 16) + (struct.unpack('B',n[3])[0]<<24)+\
(struct.unpack('B',n[4])[0] << 32) + (struct.unpack('B',n[5])[0]<<40)+\
(struct.unpack('B',n[6])[0] << 48) + (struct.unpack('B',n[7])[0]<<56)
except TypeError:
return n[0]+(n[1]<<8)+(n[2]<<16)+(n[3]<<24) \
+(n[4]<<32)+(n[5]<<40)+(n[6]<<48)+(n[7]<<56)
修改 完成后保存。好了,问题解决了。。
作者:小鱼的互联网观察
发布时间:January 8, 2013
分类:技术
在分布式海量存储系统中,算法也发挥着重要的作用,本章分享的是在nosql等海量存储中两个比较重要的算法:The Log-Structured Merge-Tree(简称LSM-tree)、Bloom filter。这两个算法在bigtable、leveldb、cassandra、hbase等存储系统中都有用到。
The Log-Structured Merge-Tree
LSM-Tree软件解决方案的基本原理都非常简单,就是在内存中对最近的更新操作进行缓存,当更新积累到一定程度,然后进行批量的merge dump,从而把随机写变成批量顺序更新。
对于LSM-Tree,
拿update举个例子:
比如有1000万行数据,现在希望update table.a set addr='new addr' where pk = '833',
如果使用B-Tree类似的结构操作,就需要:
1. 找到该条记录所在的page,
2. load page到内存(如果恰好该page已经在内存中,则省略该步)
3. 如果该page之前被修改过,则先flush page to disk
4. 修改数据
上面的动作平均来说有两次disk I/O,
如果采用LSM-Tree类似结构,则:
1. 将需要修改的数据直接写入内存
可见这里是没有disk I/O的。
当然,我们要说,这样的话读的时候就费劲了,需要merge disk上的数据和memory中的修改数据,这显然降低了读的性能。
确实如此,所以作者其中有个假设,就是写入远大于读取的时候,LSM是个很好的选择。我觉得更准确的描述应该是”优化了写,没有显著降低读“,因为大部分时候我们都是要求读最新的数据,而最新的数据很可能还在内存里面,即使不在内存里面,只要不是那些更新特别频繁的数据,其I/O次数也是有限的。
所以LSM-Tree比较适合的应用场景是:insert数据量大,读数据量和update数据量不高且读一般针对最新数据。
文章读下来有以下几点感受:
1. 基本思想早就有了,作者给出了较好的表现形式。
2. Merge是page/block级别的,而不是BigTable中的文件级别的。这一点主要原因可能是BigTable在分布式场景下做block级别很困那,而且GFS也不支持修改。
3. 其提出的比较标准比较有趣,将磁盘容量,转速等结合起来给出一个以美元为单位的cost标准,然后跟B-Tree结构的实现做了比较,结果当然是大大胜出。但是这里我觉得作者有些比较是不合理的,比如LSM使用log而B-Tree没有使用,这显然对B-Tree不公,其实B-Tree如果使用log,写入性能应该不比LSM差,顺序读取可能差一些。
4. 在Multi components 中,提出Ci/Ci+1的比例达到20的时候是最优的,这个数字意义不大,但是其中的分析方法对于Merge策略的选择是个启发。
作者:小鱼的互联网观察
发布时间:January 8, 2013
分类:linux
android是linux系。使用arm cpu理论上支持ubuntu for arm 。但是鉴于没有任何一个安装在安卓手机上的ubuntu案例和文章。
搜索发现android软件商城有个软件paw server
此软件就是个简易的web server 支持php,支持html 。
并且他自己做了个web手机管理平台。可以发短信,可以删除软件等等。。非常强大。
paw server还处于开发阶段,当前是beta版本。并且据我测试,不能设置为80端口。居然81端口也不可以,知道是安卓系统做了限制还是和别的软件冲突。
paw server 中的php 是基于arm重新编译的版本。理论上支持sqlite,但是我测试了两个基于sqlitebb 的都无法安装。
有兴趣的朋友可以去试一试paw。
作者:小鱼的互联网观察
发布时间:January 7, 2013
分类:互联网观察
很多朋友的电脑上都在安装QQ的时候被捆绑安装了“QQ电脑管家”这个软件。愤怒的想说一句,这个垃圾软件你能不那么消耗资源么!!!!
只要是装了这个软件的电脑,全部都变得速度特别慢。响应速度很慢,网页浏览速度很慢。
我想说,病毒都比“QQ电脑管家”你这个垃圾软件消耗资源要小!!!!
被捆绑安装。卸载的时候各种提示阻止卸载。。。。。流氓至极!
尤其是捆绑安装。QQ安装的时候默认就带“QQ电脑管家”这个软件。
甚至,甚至有一次我自己的电脑不知道怎么就被安装上了,可能是在更新QQ的时候不小心点击了设计然后被强制安装上了“QQ电脑管家”这个垃圾软件。气愤的是。。。居然在控制面板没有卸载项。在各种卸载软件里面也找不到卸载项。我了个去!!!!能再流氓点么!最后用了很多办法才删除掉!!!
“QQ电脑管家”你个垃圾软件,你别再拉电脑处理速度了好么。
建议大家用金山毒霸。一个金山毒霸足矣,如果不放心可以再安装个金山卫士。推荐使用金山的理由。
1.N年的杀毒技术积累,保证你的安全,360和腾讯还在吃奶的时候金山就出了杀毒软件了。
2.相比较360和腾讯。金山做的这个软件分量很足,对系统性能影响比较小。
3.金山也垃圾,经常弹出强制建议用户安装自己的猎豹浏览器的弹出框。
国内的软件啊。。。为什么那么多强制安装。。。因为用户傻,你给安装什么他就用什么。。。。
作者:小鱼的互联网观察
发布时间:January 6, 2013
分类:互联网观察
经历了域名被删除,空间被删除。
这次。重新拾起了这个博客。
期间遇到了typecho数据问题。
遇到了typecho的目录问题。
现在全部解决了。
互联网观察
我会一直走下去!
- 页码:
- «
- 1
- 2
- 3