安装时没有安装桌面环境。
1.查看centos系统版本:命令lbs_release -a
2.mysql配置。
mysql从安装光盘中选择安装的。版本是5.0.77
修改/etc/my.cnf文件
default-character-set=utf8
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
default-character-set=utf8 增加
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysql] 增加
default-character-set=utf8 增加
没有密码登录时使用命令:mysql -u root
启动mysql服务:/etc/rc.d/init.d/mysqld start
设置密码
/usr/bin/mysqladmin -u root password '123456'
3.安装Apahce
# yum -y install httpd php php-mysql
安装php的扩展
#yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc
安装apache扩展
#yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
chkconfig httpd on [设置apache为自启动]
service httpd start [启动 httpd 服务]
apache配置出来的默认站点目录为/var/www/html/
4.测试
# vi /var/www/html/info.php
<?php
phpinfo();
?>
命令行下输入:firefox,打开浏览器。输入http://127.0.0.1,可以显示欢迎界面,加上info.php,可以显示php的环境信息。
Read more...
Archive for linux
nmap和Metasploit的安装笔记
我是在Ubuntu 10.04.3 LTS下安装的,简单介绍一下。
nmap安装命令:apt-get install nmap
Metasploit安装命令:
wget http://downloads.metasploit.com/data/releases/metasploit-latest-linux-installer.run
chmod +x metasploit-latest-linux-installer.run
./metasploit-latest-linux-installer.run
一路回车就ok了。
Read more...
执行sudo出现 sudo: must be setuid root解决方法
昨天在群里聊天的时候,有一段时间没看聊天记录,只看到他们在讨论不知道root密码,su命令不能用。我就说了句为什么要su。直接sudo不久行了么。然后发给我个命令"sudo chmod -R 777 /usr",说是执行这个命令了,sudo不能用了 ,我也没多想,直接敲上试了下。我查,果然不行了 ,然后就到网上查了一下原因以及解决方法。记录如下:
1 开机grub引导页面,按esc 或者是 shift(我在这里试了五六次,组后是不停狂按两个键,才进去的),grub启动页面时间很短,但是现在不能执行sudo命令,时间也不能修改,只有狂按了。这是为了进入recovery mode(修复模式)。
2 进入recovery mode(修复模式)之后,选择recovery mode(修复模式)并回车,下一个界面选择boot,下边有命令提示终端,我直接在里面输入命令,搞定~
3执行的命令,这个可以多种途径。网上直接是执行:
chown root:root /usr/bin/sudo
chmod 4755 usr/bin/sudo
我的方法是直接 passwd root ,修改密码。保证下次不用这么麻烦了。然后reboot,重启之后在su,切换到root下执行的命令。
4 为 SUID
2 为 SGID
1 为 SBIT
SUID 权限仅对二进位程序(binary program)有效;
运行者对於该程序需要具有 x 的可运行权限;
本权限仅在运行该程序的过程中有效 (run-time);
运行者将具有该程序拥有者 (owner) 的权限。
Read more...
vim使用笔记记录1--选择、复制和粘帖
今天写代码特意在vim下写的,逼着自己不动鼠标。不能解决的问题就google一下然后学习 ,再操作下,这次记录最基本的选择、复制和粘帖
基本操作流程:
进入可视模式,按ESC键。然后按v键,进入虚拟模式,相当于模拟鼠标。然后用方向键选定你的内容.(假如,移动光标上下左右,选中第三行和第四行的内容),然后按y键复制选定的内容;再用方向键移动到你要粘贴的地方(假如,移动指针到第十行),最后按p键来粘贴。
贴大牛的笔记:
1. 将光标移动到将要复制的行处,按yy举行复制当前行(按nyy复制n行),再移动到粘贴位置,按p举行粘贴。
2. 将光标移到复制的首位置,按下v,用hjkl移动,按y复制,如果按d就表示剪切,按p粘贴。
3. 光标移到肇始行,输入ma;光标移到结果行,输入mb;光标移到粘贴行,输入mc;然后 :'a,'b co 'c,把 co 改成 m 就成剪切了。
4. 光标移动到要复制的行,输入yny(n表现要复制该行以下n行);光标移动到粘贴行,按p粘贴。
5. 直接输入:n1,n2 co n3。(n1为肇始行,n2为结果行,n3为粘贴行)
6. 差别文件之间的复制:用:sp [filename]打开另一文件,(用^ww在文件之间切换),然后按上述要领复制
相关的下令如下:
yy 将当前行复制到缓冲区
yw 将当前单词复制到缓冲区
y1 将光标处的一个字符复制到缓冲区
p 将缓冲区的信息粘贴到光标的背面
:行号1 ,行号2 copy 行号3 将行号1到行号2的内容复制到行号3地址行的背面。
:行号1 ,行号2 move 行号3 将行号1到行号2的文本内容移动到行号3地址行的背面。
7. 寄存器操纵
"?nyy: 将当前行及其下n行的内容存储到寄存器?中,此中?为一个字母,n为一个数字
"?nyw: 将当前行及其下n个字存储到寄存器?中,此中?为一个字母,n为一个数字
"?nyl: 将当前行及其下n个字符存储到寄存器?中,此中?为一个字母,n为一个数字
"?p: 取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母 ,也可以是一个数字
ndd: 将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中 vi 中配置tab为4和自动转换成空格
yw命令可以复制一个单词。yy命令可以复制一行,y$命令可以复制从当前光标到本行结尾的所有字符
' 跳转前的光标位置
" 最后编辑的光标位置
[ 上一次修改的开始处
] 上一次修改的结尾处
将光标移到某一行,用命令ma来进行标记。在这里m是标记的命令,a是对这一行所做标记的名称,当然也可以使用26个字母中的任意一个做为标记名称。
剪切与复制相同:
Read more...
剪切一行:dd
剪切当前行光标所在的位置到行尾:d$
剪切当前行光标所在的位置到行首:d^
前切三行:3dd,即从当前行+下两行被剪切了。
Vim之打造Python自动缩进
参考文章:http://www.cnblogs.com/samwei/archive/2011/04/25/2026211.html
写得很详细,参考一下。我只是想实现python的自动缩进,所以就照做了前两条。
安装vim时自带的插件文件,只要修改一下vimrc文件就好。
sudo vi /usr/share/vim/vimrc
添加:
Read more...
set filetype=python au BufNewFile,BufRead *.py,*.pyw setf python set autoindent " same level indent set smartindent " next level indent set expandtab set tabstop=4 set shiftwidth=4 set softtabstop=4哈哈 测试了一下 成功了。虽然不是很懂具体是神马意思,但是可以猜测个差不多。先这样吧,有时间仔细研究一下vim的文档。 显示行号: 在配置文件中加入 set number 命令为‘:set nu’
ubuntu卸载django1.3.1安装django1.4
官网资料:https://docs.djangoproject.com/en/dev/topics/install/#installing-development-version
1、找到django安装目录,官网提供的方法:python -c "import sys; sys.path = sys.path[1:]; import django; print(django.__path__)"
当然可以在终端 进入python,寻找。
2、直接删除目录下的django文件夹。
3、安装django1.4新版本。按照官网方法就ok。
开始找的site-packages目录,发现是空的,后来才知道,改成dist-packages。从django官网下载文件速度慢死,第一次下载没下载完就结束了,安装没成功。
Read more...
ubuntu 安装svn
命令行下直接svn,提示未安装 ,并且给出安装方法。sudo apt-get install subversion
执行命令安装完成后,svn help查看帮助。
linux系统的使用还是很简单的,根据提示操作很方便。
以下摘自sae的svn教程:
1. 从SVN仓库中检索出代码到工作拷贝:
# svn checkout https://svn.sinaapp.com/appname [workcopy]
其中workcopy是可选的,如果不写workcopy,SVN会默认将appname做为workcopy。
如果只检索某个版本:
# svn checkout https://svn.sinaapp.com/appname/appversion [workcopy]
只检索某个版本的某个目录:
# svn checkout https://svn.sinaapp.com/appname/appversion/folder [workcopy]
2. 向SVN仓库提交代码:
# svn commit -m "here is message"
3. 将本地文件添加到工作拷贝:
# svn add something
注:如果something为文件,svn会将这个文件添加到工作拷贝;如果something是目录,svn会将目录及里面的文件全添加到工作拷贝。something也可以是通配符*,这样会忽略已经添加过的文件。
4. 从工作拷贝中删除一个文件:
# svn delete something
注:如果something为文件,svn会将这个文件从工作拷贝中删除;如果something是目录,svn会将目录及里面的文件全部从工作拷贝中删除。
5. 直接从SVN仓库中删除文件:
# svn delete -m "delete something" https://svn.sinaapp.com/appname/appversion/something
注:可以从SVN仓库中直接删除单个文件或单个目录甚至某个版本。
6. 将一个本地项目导入到SVN仓库:
导入应用的某个版本:
# svn import localdir https://svn.sinaapp.com/appname/appversion
注:要确保目前应用的appversion不冲突。
7. 查看工作拷贝中的文件或目录状态:
# svn status [something]
8. 更新自己的工作拷贝:
# svn update
注:从SVN仓库下载最新版本,此命令会导致本地没有提交的更改丢失,建议使用此命令前先查看一下本地拷贝状态(svn status)。
9. 取消对代码修改
取消对代码的修改分为两种情况。
第一种情况:改动没有被提交(commit)。
这种情况下,使用svn revert就能取消之前的修改。
svn revert用法如下:
# svn revert [-R] something
其中something可以是(目录或文件的)相对路径也可以是绝对路径。
当something为单个文件时,直接svn revert something就行了;当something为目录时,需要加上参数-R(Recursive,递归),否则只会将something这个目录的改动。
在这种情况下也可以使用svn update命令来取消对之前的修改,但不建议使用。因为svn update会去连接仓库服务器,耗费时间。
注意:svn revert本身有固有的危险,因为它的目的是放弃未提交的修改。一旦你选择了恢复,Subversion没有方法找回未提交的修改。
第二种情况:改动已经被提交(commit)。这种情况下,用svn merge命令来进行回滚。
回滚的操作过程如下:
1). 保证我们拿到的是最新代码:
svn update
假设最新版本号是28。
2). 然后找出要回滚的确切版本号:
svn log [something]
假设根据svn log日志查出要回滚的版本号是25,此处的something可以是文件、目录或整个项目
如果想要更详细的了解情况,可以使用svn diff -r 28:25 [something]
3). 回滚到版本号25:
svn merge -r 28:25 something
为了保险起见,再次确认回滚的结果:
svn diff [something]
发现正确无误,提交。
4). 提交回滚:
svn commit -m "Revert revision from r28 to r25,because of ..."
提交后版本变成了29。
将以上操作总结为三条如下:
a. svn update,svn log,找到最新版本(latest revision)
b. 找到自己想要回滚的版本号(rollbak revision)
c. 用svn merge来回滚: svn merge -r : something
10. 查看SVN仓库日志信息:
# svn log [workcopy]
查看所有本地的历史日志,如果workcopy为某文件,那么就是查看某个文件的日志信息。
查看SVN仓库所有文件的日志信息:
# svn log https://svn.sinaapp.com/appname/
这个命令会查看所有修改过的日志。
注:SAE提供的SVN服务完全支持标准SVN的所有命令,更详细的使用说明请查阅SVN官方帮助文档。
SVN命令帮助文档:http://www.subversion.org.cn/svnbook/1.4/svn.ref.html
中文完全帮助文档:http://svnbook.red-bean.com/index.zh.html
Read more...
Ubuntu Apache deflate的设置
下面是从网上找的的,先记录:
在apache1.3.x中, 使用gzip来对内容进行压缩.
在新版的apache2.x里, deflate模块代替了gzip模块,用于对内容进行压缩.
查看Apache是否有deflate这个模块,目录:/etc/apache2/mods-available/
启用这个mod:sudo a2enmod deflate
编辑deflate的配置文件: /etc/apache2/mods-available/deflate.conf
官网:http://httpd.apache.org/docs/2.0/mod/mod_deflate.html
一篇关于Apache优化的文章:http://my.oschina.net/lamp2me/blog/15317
默认Apache是所有插件都启用了,在配置文件apache2中可以看到,就不用启用了。
Read more...
Ubuntu PIL安装Python Imaging Library
apt-cache show python-imaging 查看版本是最新的1.1.7
直接apt-get install python-imaging 安装成功
import Image
Image.VERSION
'1.1.7'
查资料可以自己下载源码编译,但是我没选择折腾。直接安装吧。
再记录一个小问题:在Ubuntu下django的settings的配置中TIME_ZONE = 'CCT'不成功,需要修改为'Asia/Shanghai'。就OK了,昨天忘记记录了。
Read more...
Ubuntu下mysql数据库的编码修改
上传到Ubuntu服务器后错误百出,报错Data truncated for column 'title' at row 1,
Google搜索发现是编码不统一的问题。
查看数据库编码的方法:
show variables like 'character%';
修改/etc/mysql/my.cnf文件
找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
重启mysql服务:service mysql restart
再查看发现成为utf8了。
drop掉原来建立的数据库,新建一个utf8的:
CREATE DATABASE ms_db CHARACTER SET utf8 ;
前台测试,不再报错。
Read more...