- 博客(231)
- 收藏
- 关注
原创 使用saltstack部署openstack
1. 老外写的http://www.gossamer-threads.com/lists/openstack/dev/34253https://github.com/CSSCorp/openstack-automation/tree/master/Openstack_Havanahttp://csscorp.github.io/openstack-automation/ht
2013-12-25 00:19:03 6172
原创 节点发现的几种实现方法
1. 使用ping命令$ for ip in $(seq 1 254); do ping -c 1 192.168.1.$ip>/dev/null; [ $? -eq 0 ] && echo "192.168.1.$ip UP" || : ; done2. 使用nmap[root@localhost temp]# nmap -sP 192.168.1.0/24St
2013-12-24 22:46:55 1871
原创 boot windows from linux
title Win7 rootnoverify (hd0,1) chainloader +1makeactive
2013-12-15 11:41:21 1114
原创 pip安装
源代码安装:python setup.py install卸载:pip uninstall packagename查看:pip list
2013-11-09 18:49:46 1191
原创 Linux下PCI设备vendor id查看
lspci 可以看到所有的PCI设备lspci -n |grep 03:00可以看到03:00设备的vendor id 和device id。其中Redhat虚拟化设备的vendor id 为1B36,一般显示为Redhat
2013-10-17 15:40:58 21907
原创 Linux下制作patch,打patch方法
[root@vps ~]# cat ipcpu/123.txt你好哦啊[root@vps ~]# cat ipcpu0/123.txt你好哦啊吃饭了没呀[root@vps ~]# diff -urN ipcpu ipcpu0 > ipcpu.patch[root@vps ~]# patch -p0 patching file ipcpu/123.txt[root
2013-10-14 11:05:00 987
原创 vim+python开发环境
发现了一些整合vim(包含了plugins和vim以及vim配置),比较省事。1.SPF13-vimhttps://github.com/spf13/spf13-vim2.sontek's vimhttp://sontek.net/blog/detail/turning-vim-into-a-modern-python-ide
2013-09-24 00:01:28 2082
原创 原来linux的虚拟终端是无法显示中文的
具体参考:http://www.ibm.com/developerworks/cn/linux/l-cn-termi-hanzi/index.html
2013-09-22 19:05:06 1599
原创 KSM,UKSM,PKSM(2/2)
PKSM是国人对KSM,UKSM的改进。主要有以下优点,目前PKSM处于开发阶段,尚不能商用。相对于UKSM,优点主要在于2,41.对用户透明自动添加全系统的用户进程的匿名页面到PKSM中,因此不在需要用户修改用户程序(使用madvise系统调用来添加用户进程到KSM系统中)。2. 高效的匿名内存页面检测自动检测匿名页面的创建和释放,使用新的算法和机制来直接
2013-09-14 09:59:52 3078
原创 KSM,UKSM,PKSM(1/2)
KSM是Linux内核的一个特性,提供了内存页合并的功能。但是KSM的实现比较简单,有很多优化的余地。因此就出现了很多KSM改进的项目。UKSM是国人开发的一个KSM改进项目。有如下优点,看了下代码,实现思路如下:1. 全系统扫描,用户透明KSM需要程序调用madvise系统调用,才会进行merge。UKSM自动对全系统扫描,因此不需要上层应用程序进行修改。2.
2013-09-14 09:44:36 3164
原创 openstack问题
a. 现象:keystone无法启动, 查看日志,有如下说明Can't connect to MySQL server on 'server' (13)手工使用mysql命令,连接没有问题。原因:selinux限制,简单的做法是关闭selinux。临时关闭的命令: setenforce 0。永久关闭的配置文件: /etc/selinux/c
2013-09-09 11:52:16 1361
原创 git 合并两次提交
命令:git rebase -i HEAD~2然后可以使用git rebase --edit-todo 调整合并哪些提交,需要合并的提交从pick修改为squash然后完成提交。
2013-09-04 23:45:47 6039 1
原创 Openstack、Cinder
### Openstack、Cinder##### 安装 + 前提 配置repo源:[openstack-grizzly]name=OpenStack Grizzly Repositorybaseurl=http://186.100.8.148/repo/rdo/f18enabled=1skip_if_unavailable=1gpgcheck=0gpg
2013-09-03 19:14:39 1373
原创 最近看过的书单(4)
断断续续的花了一个多月,终于看完了柴静的这本《看见》。书里以一个记者的角度记述了这些年的那些大事件,社会现象。我也因此得以从另一个不同的角度看待这些事情。书是少有的切合实事,又饱含思考,对社会,对人生,对灾难,对人性。书中 也谈到了局限性,很多时候真正阻止我们突破的,不是外在,是我们内心的设限。另外,很喜欢书中的这句诗:"庐山烟雨浙江潮,未到千般恨不消,到得
2013-09-01 22:21:01 1148
原创 ovirt-node接入openstack
ovirt-node接入openstack,需要对ovirt-node的ISO进行定制。安装openstack的nova,glance,keystone等组件并进行配置。该开源项目提供了定制ovirt-node的ISO的方法:https://gitorious.org/ovirt/ovirt-node-openstack-plugin/source/d2be5f88e48602
2013-08-31 11:12:45 2947
原创 网络安全相关的视频
http://www.borderware.com/tips-resources/video-tutorials.asp讲的很棒,具体而实际的认识网络安全以及各种恶意手段。
2013-08-27 00:43:18 1609
原创 Blivet库
功能:Blivet is a python module for system storage configuration.提供对系统存储进行配置的python模块。目前该项目被anaconda项目所使用。
2013-08-26 10:33:46 1910
原创 如何调查linux启动慢的原因
可以使用systemd-analyse进行分析,并生成svg文件进行查看。systemd-analyse plog > plot.svg
2013-08-16 17:23:03 2398
原创 Numa
Numa===- numa的用途 解决SMP架构下,多个CPU争抢总线,总线成为瓶颈的问题。 numa(non-uniform memory access)。 numa思路为将内存和cpu分割为多个区域,每个区域叫做node。然后将node高速互联。 node内cpu与内存访问速度快于访问其他node的内存。 操作系统也需要感知numa,并进行访存的优化。
2013-08-16 09:31:16 1691
原创 避免磁盘被multipath管理为multipath设备的方法
可以在/etc/multipath.conf中的blacklist中进行设置,防止multipath对指定磁盘操作。
2013-08-02 10:38:42 3005
原创 repo同步
repo同步在windows上配置ccproxy给linux提供代理在linux上设置代理,http_proxy=http://186.100.4.XX:YYYY由于softether在高数据率时容易出问题,所以最好做个限速互联网上的版本仓库地址:http://mirrors.ustc.edu.cn/# cat /etc/lftp.conf...set net:limit-rate
2013-07-27 14:20:00 1689
原创 如何修改squash文件
squashfs是Linux内核使用的压缩只读文件系统。所以squashfs是无法修改的。但是我们可以基于已有的squashfs文件重新生成squashfs文件,并在生成前修改其中的文件。方法如下:Mount the squashfs:mkdir /mnt/squishymount mfs.sqash /mnt/squishy -t squashfs -o l
2013-07-23 16:27:48 4424
原创 ovirt-node的log功能
最近使用ovirt-node项目,该项目关于日志基于以下两种技术实现远端存放。大致了解了下,具体如下1.rsyslog基于主机的管理一般需要收集服务器的日志信息用于及时发现错误,处理故障。搭建linux下的集中日志服务器的程序一般可以用syslog,rsyslog,syslog-ng,还有scribe和fluentd等。基本每一种方式都是服务器端和客户端的模式。
2013-07-17 16:55:10 1770
原创 inotify
inotify是2.6内核加入的特性,可以用来监控文件系统上的各种事件变化,比如添加、删除,修改等。这样就避免了低效的轮询实现。Inotify机制并不局限于工具,在脚本语言中也完全可以享受Inotify的乐趣,如Python中可以使用pyinotify和inotifyx,Perl中有Filesys-Notify-Simple和Linux-Inotify2,Inotify的Ruby版有rub
2013-07-15 17:27:28 1289
原创 ovirt项目相关
首先,说说ovirt和openstack。openstack无疑目前正如日中天,ovirt恐怕无人问之。我的理解是,openstack目标是提供类似于亚马逊的云计算开源解决方案。而ovirt的目标是提供vsphere的开源解决方案。两者更多是互补的。也许未来ovirt会管理openstack的node。Quantum已经集成到ovirt当中。keystone说不定也快了。未
2013-07-12 23:00:49 1296
原创 最近看过的书单(3)
最近只看了一本书《斗破苍穹》,好奇于网络上的排行。看完失望不已,对浪费的时间后悔不已。极度的YY,幼稚的文笔,偏激的世界观,网游般的副本打怪升级模式。失望,失望,失望。。。
2013-07-09 22:40:31 1164
原创 解开rpm
rpm2cpio xxx.rpm | cpio -div例如:[root@localhost oracle]# rpm2cpio oracle-instantclient11.2-basic-11.2.0.2.0.i386.rpm | cpio -div
2013-06-29 16:46:23 1294
原创 删除git的commit
删除commit以及commit记录:git reset --hard HEAD~1与revert不同,reset --hard后git log无法看到该提交。而revert回保留所有修改的踪迹。
2013-06-29 14:45:15 1948
原创 ovirt node的安装简介
Ovirt安装模式 支持install,update,downupdate,reinstall四种安装方式。 install:全新安装(以前未安装过ovirt node)。 update:安装比现有版本更新的ovirt node。 downupdate: 安装比现有版本旧的ovirt node。 reinstall: 安装于现有版本相同的ovirt node。四种安装模
2013-06-19 12:04:20 4890
原创 如何cscope查看python代码
cscope默认会查找.c,.h,.l,.y代码。对于其他代码,比如python, java则需要事先建立cscope.files, 然后再执行cscope -Rbqk举例:1.进入代码根目录2.执行命令 find ./ -name '*.py' > ./cscope.files3.执行命令cscope -Rbqk
2013-06-18 23:00:07 4127
转载 西安著名茶馆介绍
西安著名茶馆介绍: 在西安,最著名的消夜去处当属德福巷咖啡茶品一条街了。德福巷与南大街平行,位于南大街西侧约100米,是一条唐风明韵的仿古街道,青石砌的牌楼,青石铺的路,古香古色的建筑,弥漫的满街的淡淡的沁人肺腑的茶香,让人在现代都市的喧嚣、浮躁和纷扰中享得几许超然的愉悦。茶馆、咖啡厅的打烊时间没有一个很确切的点,一般会到子夜以后,还有的店会告诉你,只要愿意你可以坐到天亮。福宝阁茶楼
2013-06-18 22:19:41 3996 2
转载 <转>三种形式的懒惰
我们说懒惰有三种。第一种,整天就是吃和睡。第二种,是告诉自己,“有一类人,就像我这种,是永远管理不好自己的。”在佛教思想中,这种懒惰会让你认为努力也是白费的,你永远无法获得精神上的救赎。无自信会让你打消任何企图努力一下的念头。而这第三种就是,把生命浪费在不是最重要的事情上,总是不从解决事情最本质的问题入手。所有的时间都在想办法解决次要问题,一个接一个,永远没有尽头,就像湖面涟漪的水纹。你在告诉自己
2013-06-18 09:51:38 1085
原创 关于Ovirt的TUI库
几天查看Ovirt的Node代码,突然发现初始安装配置使用的已经不再是snack库。而是一个叫urwid的TUI库。上urwid看了,这个库应该可以提供更完善的功能,可以更快做出更好的界面。参考:1. urwid库http://excess.org/urwid/2. ovirt-nodehttps://github.com/oVirt/ovirt-node
2013-06-08 14:03:03 1616
原创 最近看过的书单(2)
《抠门小妞的欧洲穷游记》一个北京80后,睡机场,自己做饭,穷游葡萄牙西班牙20多天的经历。才发现穷游也其乐无穷。还是那句话,旅行是为了迷路,迷路是为了遇见美好。《失败之书》北岛写的散文,本来期望不高,读之爱不释手。作者由于政治原因,多年漂泊海外,辗转7,8个国家。遇见的一些有趣的人,有趣的事情。也许,这种被迫漂泊对读者是件幸事。我们才能看到如此有趣的
2013-06-04 07:53:43 1225
转载 qemu,coroutine
coroutine 和函数一样, 区别在于 coroutine 有多个入口点, 而一般的函数 函数只能有一个入口点. 一般的函数只能从开始的地方执行, 一旦退出, 就只能从 唯一的入口点再开始了. 但是 coroutine 不同, 当它觉得没有任务需要处理时, 它可以把 CPU 让给其他函数, 然后它在这个让出的点等待, 直到其它函数再把 CPU 给它.考虑以下的例子(producer
2013-05-15 22:49:03 1738
转载 QEMU VGA 分析(0) – 显卡组件剖析
显卡的基本功能就是允许 CPU 操作显卡的内存(显存), 然后在对存储在这些 内存中的信息进行一些变换, 产生可以供显示器使用的信号.Frame BufferFrame Buffer 存储了显示器需要显示的像素, 是显卡的核心部件. 几乎所有的操作都是使用里面存储的数据. Frame Buffer 以内存的形式存在的, 或者, 有的显卡会实用 VRAM 来做显存.
2013-05-15 22:43:01 4155
原创 Qemu Migration优化特性 XBZRLE
Qemu Migration优化特性XBZRLE (Xor Based Zero Run Length Encoding)概述用于降低虚拟机downtime和迁移的总时间。尤其对运行内存高负载写的虚拟机有效。比如SAP的ERP系统这样的大型企业应用。通过源端cache已经发送的内存页,下次发送该页时就可以对比,只发送变化部分的数据。因此cache越大,则命中越高
2013-05-13 11:14:11 3695
原创 Qemu Migration优化特性 Guest自动降速
Qemu Migration优化特性LiveMigration时Guest自动减速用途Guest非常忙,内存更新速度快于migration速度,导致LiveMigration一直无法完成。这种情况下,通过使Guest降速(减少VCPU时间),短时降低Guest更新内存速度。使LiveMiration能够完成。原理一个周期产生的dirty数据超过发送数据的50
2013-05-13 10:51:37 1962
原创 使用LD_PRELOAD调试代码
$ cat /tmp/catchexit.c#include #include void exit(int status){ const char msg[] = "*** CAUGHT EXIT, DUMPING CORE ***\n"; write(2, msg, sizeof msg); abort();}void _exit(int status)
2013-05-12 23:06:32 1679
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人