如何查看自己的电脑是否是64位?
2种方式: 一、开始>运行中输入“cmd”,然后在命令提示符窗口中输入“systeminfo”,如果您的系统是64位的,会在 “OS 名称: Microsoft Windows XP Professional” 一行后明确标示出“x64 Edition”,否则您的系统就是32位的。
这个命令比较实用的,值很收藏.
二、开始>运行中输入“winver”,如果您的系统是64位的,同样会明确标示出“x64 Edition”。
By admin
read more2种方式: 一、开始>运行中输入“cmd”,然后在命令提示符窗口中输入“systeminfo”,如果您的系统是64位的,会在 “OS 名称: Microsoft Windows XP Professional” 一行后明确标示出“x64 Edition”,否则您的系统就是32位的。
这个命令比较实用的,值很收藏.
二、开始>运行中输入“winver”,如果您的系统是64位的,同样会明确标示出“x64 Edition”。
By admin
read more在 Ubuntu 上安装 Git 非常的简单,只需要:
sudo apt-get install git-core
但是 CentOS 默认的 yum 源中没有 Git,只能下载 RPM 包安装,确保已安装了依赖的包
sudo yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel perl-ExtUtils-MakeMaker perl-CPAN tk
安装最新的 Git
$ wget http://www.codemonkey.org.uk/projects/git-snapshots/git/git-latest.tar.gz
$ tar xzvf git-latest.tar.gz
$ cd git-{date}
$ autoconf
$ ./configure –with-curl=/usr/local
$ make
$ sudo make install
检查版本
$ git –version
git version 1.7.3.GIT
常见问题:
1.如果执行 git –version 的时候,提示
By admin
read more一.安装node.js
wet http://nodejs.org/dist/node-v0.4.8.tar.gz tar zxvf node-v0.4.8.tar.gz cd node-v0.4.8 ./configure –prefix=/usr/local/node make make install
二.测试
创建test.js文件,内容如下: var http = require(‘http’); http.createServer(function (req, res) { res.writeHead(200, {‘Content-Type’: ‘text/plain’}); res.end(‘Hello World\n’); }).listen(1337, “127.0.0.1”); console.log(‘Server running at http://127.0.0.1:1337/’);
执行:
node test.js
在浏览器里输入 http://127.0.0.1:1337/,可以看到 “Hello World“字样,即表示安装成功!注意后面不能加文件名.
注意事项:
1.客户端只能通过端口访问,不能指定js文件名. 2.监听IP地址可以省略,这样任何地方都可以访问.如果指定了127.0.0.1,则只能在本机才可以访问!
By admin
read more根据自己使用的操作系统是32位的还是64位的不同,需要选择软件的相应版本。
先安装msysgit: https://git-scm.com/downloads
再安装git windows客户端tortoisegit :
http://download.tortoisegit.org/
在安装tortoisegit的时候,选择第一个 Use(Tortoise)Plink即可。
===================
TortoiseGit日常使用指南: /wp-content/uploads/2011/01/TortoiseGit_Guide.pdf
相关教程:
Git使用教程视频: Git使用学习教程: 在 CentOS 装 Git: 在FreeBSD下安装:
============================================================
svn windows客户端: http://tortoisesvn.tigris.org/
By admin
read moreGit是一个由林纳斯•托瓦兹为了更好地管理linux内核开发而创立的分布式版本控制/软件配置管理软件。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。
1、在FreeBSD8.1下安装Git服务器
(1)用ports安装Git
cd /usr/ports/devel/git
make install clean
(2)修改/etc/rc.conf,让git随开机启动
git_daemon_enable=”YES”
(3)新增使用者git
pw useradd git
(4)启用git daemon
/usr/local/etc/rc.d/git_daemon start
(5)用sockstat 来验证git是否启动
sockstt -4l | grep 9418
root git-daemon 37064 3 tcp4 192.168.21.248:9418 *:*
2、如何导入一个新的Git项目
(1)首先把自己介绍给git系统,比如自己的姓名和email地址,命令如下:
git config--global user.name "Andrew.yu"
git config--global user.email " [email protected]"
(2)提交我的目录/home/andrewyu/test进Git项目库
cd /home/andrewy/test/
git init
git add .
git commit
(3)这时候 大家可观察我们的/home/andrewy/test的目录
[root@research_jail ~/project]# ls -lsart
total 8
2 -rw-r--r-- 1 root wheel 18 Apr 7 07:42 3
0 -rw-r--r-- 1 root wheel 0 Apr 7 07:42 2
0 -rw-r--r-- 1 root wheel 0 Apr 7 07:42 1
2 drwxr-xr-x 8 root wheel 512 Apr 7 07:42 .git
2 drwxr-xr-x 3 root wheel 512 Apr 7 07:43 .
2 drwxr-xr-x 4 root wheel 512 Apr 7 07:43 ..
Git init命令可用于初始化当前所在目录的这个项目,shell返回的提示表明已经建立了一个.git隐藏目录来保存这个项目前的进展信息。
By admin
read more在Centos5.6下通过验证!
官方网站:
很早之前,就看到了通过mysql UDF 更新memcached ,原来也研究过一段时间,只是没有来得及写个文档,导致后来工作中,经常要google,搜索其安装,使用的方法,刹时麻烦,今天总结一下:
1:mysql memcached UD介绍
mysql memcached UDF 其实就是通过libmemcached来使用memcache的一系列函数,通过这些函数,你能 对memcache进行get, set, cas, append, prepend, delete, increment, decrement objects操作,如果我们通过mysql trigger来使用这些函数,那么就能通过mysql更好的,更自动的管理memcache!下载地址:
2:安装方法:
1)安装memcache和memcached
参考:
2)安装libmemcached()
$ wget http://download.tangent.org/libmemcached-0.31.tar.gz $ tar -xzvf libmemcached-0.31.tar.gz $ cd libmemcached-0.31 $ ./configure $ make
安装的时候,发现新版本的都提示错误的
wget http://launchpad.net/libmemcached/1.0/0.43/+download/libmemcached-0.43.tar.gz tar zxvf libmemcached-0.43.tar.gz cd libmemcached-0.43 ./configure –with-memcached=/usr/local/bin/memcached make && make install echo “/usr/local/lib” » /etc/ld.so.conf ldconfig
安装完成后,libmemcached 的文件包括: /usr/local/bin/ 目录下 memcat memcp memdump memerror memflush memrm memslap memstat 都是可执行文件,是一些命令行工具,具体使用,可参考官方文档,或帮助。
By admin
read more参考原来的文章:,后来发现程序使用的mysqli扩展没有安装,这里介绍安装方法.
此方法在FreeBSD8.2下,php5.2.17和php5.3.6均正常!
由于原来用的ports安装方法,默认的安装包下载到了/usr/ports/distfiles这个目录里了.这里直接使用,如果没有的话,请从网上下载一个安装包,但要注意一定要和已经安装过的php版本一样才可以.
一.找到mysqli所在位置
cd /usr/ports/distfiles/ tar zxvf php-5.3.6.tar.gz cd php-5.3.6/ext/mysqli
二.安装mysqli
/usr/local/bin/phpize ————————– Configuring for: PHP Api Version: 20090626 Zend Module Api No: 20090626 Zend Extension Api No: 220090626 configure.in:3: warning: prefer named diversions configure.in:3: warning: prefer named diversions ——————————– ./configure –with-php-config=/usr/local/bin/php-config –with-mysqli=/usr/local/bin/mysql_config make make install Installing shared extensions: /usr/local/lib/php/20060613/
如果用的是php5.3版本的可能需要手动复制so文件到”/usr/local/lib/php/20090626″ 目录.
cp modules/mysqli.so /usr/local/lib/php/20090626
修改php.ini,或者编辑”/usr/local/etc/php/extensions.ini”文件
vi /usr/local/php/etc/php.ini
在extension区别添加一行
extension=mysqli.so
即可(系统默认的是dll文件的,这里用so文件实现).
对于php5.2.17版本,需要直接编辑extensions.ini文件,如果编辑的是php.ini的话,会提示错误信息:
PHP Warning: PHP Startup: Unable to load dynamic library ‘/usr/local/lib/php/20060613/mysqli.so’ – /usr/local/lib/php/20060613/mysqli.so: Undefined symbol “spl_ce_RuntimeException” in Unknown on line 0
By admin
read more今天更新了一下自己的cms,然后后台就提示登陆不了,报错如下:Failed to initialize storage module。
解决方法有两种如下:
1。在报错的文件里的session start();之前加入如下代码:ini_set(‘session.save_handler’, ‘files’); 。这种方法适合租用空间的用户使用。
2。在php.ini文件里,显式指定session的save_path(比如 c:/temp)然后重启web服务。如果服务器的管理权限属于你,那还是这样改比较方便。
原因分析:php5一个安全模式的bug,默认session的save_path是系统的临时目录,这样会要校验权限。
PHP中使用SESSION后出现Failed to initialize storage module错误的解决方法: 在session start之前加入以下这句话 ini_set(‘session.save_handler’, ‘files’);
By admin
read moreMongo资料分享.ppt 认识MongoDB.ppt MongoDB技术交流.ppt SQL-to-MongoDB.pdf QCon北京2011大会之:MongoDB开发应用实践 NoSQL应用场景及Cassandra架构分析 Windows下MongoDB管理工具(启用和服务)
NoSQl存储模型
Mongo与Mysql语法对应关系图
数据库
表
行
写入
查询
MongoDb
database
Collection
Document
insert into blog.users values(“user1”,”23))===========
use blogswitched to db blog> u = { name:”user1″, age:23 }
db.users.insert(u)
主要用到的查询函数式 find() 和 findOne(),前者返回一个迭代器 cursor,后者返回单个文档。
db.users.find({name:”user1″}){
“_id” : ObjectId(“4c4528a0b55f2224d447e4b0”), “name” : “user1”, “age” : 21, “sex” : 1}
db.users.find({name:”user1″, age:21}){ “_id” : ObjectId(“4c4528a0b55f2224d447e4b0”), “name” : “user1”, “age” : 21, “sex” : 1 }
By admin
read more这里用的是64位版本.使用时请检查相应操作系统的版本是32位还是64位.
1>设置mongoDB目录
cd /home/apps mkdir /home/apps
2>下载mongodb
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.3.tgz
3>解压缩文件
tar xzf mongodb-linux-x86_64-1.6.3.tgz
4>启动服务
./mongodb-linux-x86_64-1.6.3/bin/mongod -dbpath=/data/mongodb/db -logpath=/data/mongodb/log
5>将mongoDB服务加入随机启动
vi /etc/rc.local
使用vi编辑器打开配置文件,并在其中加入下面一行代码
/home/apps/mongodb/bin/mongod –dbpath /data/mongodb/db –port 27017 –logpath /data/mongodb/log –logappend &
6>连接mongoDB
./mongodb-linux-x86_64-1.6.3/bin/mongo DBName
讲到这儿,mongoDB的在Linux下安装已完成,本地连接mongoDB也已成功,这时我们就要考虑到另外一个问题了,局域网如何来连接mongoDB呢?局域网中windows机器如何来连接Linux机器中的mongoDB呢?
其实做法一样很简单:./mongodb-linux-x86_64-1.6.3/bin/mongo 192.168.10.234/DBName 即可。
不过此处就需要注意了,我们需要在centOS上打开mongoDB的端口号,接下来讲讲如何在centOS上打开指定端口。
我们打开配置文件 /etc/sysconfig/iptables,在该文件中添加如下内容:
-A RH-Firewall-l-INPUT -P tcp -m tcp –dport mongoDB端口号 -j ACCEPT
然后重启服务
service iptables restart
此时,你已可以开始通过局域网来访问centOS上部署的mongoDB
7>测试Mongodb
在控制台中:
$ nohup ./mongodb-xxxxxxx/bin/mongod &
$ ./mongodb-xxxxxxx/bin/mongo
By admin
read more**关于PATH的作用: ** PATH说简单点就是一个字符串变量,当输入命令的时候LINUX会去查找PATH里面记录的路径。比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls这个命令根本不在这个两个目录下,事实上当你输入命令的时候LINUX会去/bin,/usr/bin,/sbin等目录下面去找你此时输入的命令,而PATH的值恰恰就是/bin:/sbin:/usr/bin:……。其中的冒号使目录与目录之间隔开。
**关于新增自定义路径: ** 现在假设你新安装了一个命令在/usr/locar/new/bin下面,而你又想像ls一样在任何地方都使用这个命令,你就需要修改环境变量PATH了,准确的说就是给PATH增加一个值/usr/locar/new/bin。你只需要一行bash命令export PATH=$PATH:/usr/locar/new/bin。这条命令的意思太清楚不过了,使PATH自增:/usr/locar/new/bin,既PATH=PATH+”:/usr/locar/new/bin”;通常的做法是把这行bash命令写到/root/.bashrc的末尾,然后当你重新登陆LINUX的时候(应该是linux启动时就会执行这个文件),新的默认路径就添加进去了。当然这里你直接用source /root/.bashrc执行这个文件重新登陆了。你可以用echo $PATH命令查看PATH的值。
**关于删除自定义路径: ** 当某天你发现你新增的路径/usr/locar/new/bin已经没用了的话,你可以修改/root/.bashrc文件里面你新增的路径。或者你可以修改/etc/profile文件删除你不需要的路径
—————————————————————————————-
电脑中必不可少的就是操作系统。而Linux的发展非常迅速,有赶超微软的趋势。这里介绍Linux的知识,让你学好应用Linux系统。比如要把/etc/apache/bin目录添加到PATH中,方法有三:
1.#PATH=$PATH:/etc/apache/bin 使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效
2.#vi /etc/profile
在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格) 这种方法最好,除非你手动强制修改PATH的值,否则将不会被改变
3.#vi ~/.bash_profile
修改PATH行,把/etc/apache/bin添加进去 这种方法是针对用户起作用的 注意:想改变PATH,必须重新登陆才能生效,以下方法可以简化工作:
如果修改了/etc/profile,那么编辑结束后执行source profile 或 执行点命令 ./profile,PATH的值就会立即生效了。 这个方法的原理就是再执行一次/etc/profile shell脚本,注意如果用sh /etc/profile是不行的,因为sh是在子shell进程中执行的,即使PATH改变了也不会反应到当前环境中,但是source是在当前 shell进程中执行的,所以我们能看到PATH的改变。
这样你就学会Linux系统下修改环境变量PATH路径的方法。
By admin
read more这里环境为centos7 64位. 一。安装erlang
[shell]su -c ‘rpm -Uvh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm’ sudo yum install erlang[/shell]
二。安装rabbitmq
我们是用CentOS7(RHEL7也一样),可以从这里: http://fedoraproject.org/wiki/EPEL/FAQ#howtouse 找到安装有erlang的RHEL7(CentOS同)软件仓库并安装:
[shell] wget -c http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.0/rabbitmq-server-3.5.0-1.noarch.rpm
sudo rpm –import http://www.rabbitmq.com/rabbitmq-signing-key-public.asc sudo yum install rabbitmq-server-3.5.0-1.noarch.rpm [/shell]
三。启用rabbitmq
[shell]sudo chkconfig rabbitmq-server on[/shell]
As an administrator, start and stop the server as usual using /sbin/service rabbitmq-server stop/start/etc.
[shell]sudo /sbin/service rabbitmq-server start[/shell]
注意:如果通过上面的start命令启动失败,就检查一下下面的端口是否被占用,否则服务启动不了:
使用rpm安装完rabbitmq后,默认在/etc/rabbitmq/目录里是没有rabbitmq.config文件的,你可以手动创建,也可以复制一份默认的配置文件(/usr/share/doc/rabbitmq-server-3.5.0/rabbitmq.config.example )
By admin
read moreulimit最初设计是用来限制进程对资源的使用情况的,因为早期的系统系统资源包括内存,CPU都是非常有限的,系统要保持公平,就要限制大家的使用,以达到一个相对公平的环境。以下是典型的机器默认的限制情况:
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 204800
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 204800
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
但是很多年过去了,情况发生变化了,硬件在过去的时间里面发展的非常迅猛,一个拥有几十个核心的,上百G内存的机器差不多也是白菜价格了。但是软件的限制还是没怎么发生变化,导致一系列使用的问题。其中很重要的文件句柄使用限制尤为明显。
By admin
read more以前一直不太会用这个参数。现在认真研究了一下iostat,因为刚好有台重要的服务器压力高,所以放上来分析一下.下面这台就是IO有压力过大的服务器
$iostat -x 1
Linux 2.6.33-fukai (fukai-laptop) _i686_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
5.47 0.50 8.96 48.26 0.00 36.82
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util
sda 6.00 273.00 99.00 7.00 2240.00 2240.00 42.26 1.12 10.57 7.96 84.40
sdb 0.00 4.00 0.00 350.00 0.00 2068.00 5.91 0.55 1.58 0.54 18.80
rrqm/s: 每秒进行 merge 的读操作数目。即 delta(rmerge)/s wrqm/s: 每秒进行 merge 的写操作数目。即 delta(wmerge)/s
r/s: 每秒完成的读 I/O 设备次数。即 delta(rio)/s w/s: 每秒完成的写 I/O 设备次数。即 delta(wio)/s rsec/s: 每秒读扇区数。即 delta(rsect)/s wsec/s: 每秒写扇区数。即 delta(wsect)/s rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。(需要计算) wkB/s: 每秒写K字节数。是 wsect/s 的一半。(需要计算) avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。delta(rsect+wsect)/delta(rio+wio) avgqu-sz: 平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。 await: 平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio) svctm: 平均每次设备I/O操作的服务时间 (毫秒)。即 delta(use)/delta(rio+wio) %util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒)
By admin
read more**功能说明:**控制shell程序的资源。
**语 法:**ulimit [-aHS][-c ][-d <数据节区大小>][-f <文件大小>][-m <内存大小>][-n <文件数目>][-p <缓冲区大小>][-s <堆叠大小>][-t ][-u <程序数目>][-v <虚拟内存大小>]
**补充说明:**ulimit为shell内建指令,可用来控制shell执行程序的资源。
参 数: -a 显示目前资源限制的设定。 -c 设定core文件的最大值,单位为区块。 -d <数据节区大小> 程序数据节区的最大值,单位为KB。 -f <文件大小> shell所能建立的最大文件,单位为区块。 -H 设定资源的硬性限制,也就是管理员所设下的限制。 -m <内存大小> 指定可使用内存的上限,单位为KB。 -n <文件数目> 指定同一时间最多可开启的文件数。 -p <缓冲区大小> 指定管道缓冲区的大小,单位512字节。 -s <堆叠大小> 指定堆叠的上限,单位为KB。 -S 设定资源的弹性限制。 -t 指定CPU使用时间的上限,单位为秒。 -u <程序数目> 用户最多可开启的程序数目。 -v <虚拟内存大小> 指定可使用的虚拟内存上限,单位为KB。
方法: 1、修改/etc/sysctl.conf vi /etc/sysctl.conf # 确认包含下面内容
#------Begin Update for ASPire-----
fs.file-max = 32768
kernel.msgmni = 1024
kernel.sem = 1000 32000 32 512
kernel.shmmax = 2147483648
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_max_syn_backlog = 4096
#------End Update for ASPire-------
让配置立即生效
By admin
read more