归档 三月 2011

phpmyadmin自动退出问题解决

笔者最近在为新网站做测试工作,在笔者的笔记本上搭建了一个简单的AMP环境。但在使用phpmyadmin管理mysql的时候出了点小问题。总会出现自动退出的情况。笔者判断可能于php的session配置有关系。 一、找到session.save_path确认存放session的文件夹是否有足够权限写入 二、找到session.auto_start,将其值改为1,默认为0 重启后,一切顺利^_^

Linux下运行window程序的解决方法

最近把家里的机子换成了Ubuntu版的Linux系统,和原来的windows系统组成了双系统;笔者将linux做为了默认系统。随之而来的问题,老婆用惯了windows,在linux下很不方便。虽然笔者一再苦口婆心的说linux的种种好处,以及linux系统的高效性。可以对于大多数一般使用者来说(上上网、玩玩小游戏、聊聊天)。linux确实没有什么优越性=_=!。 用老婆的话来说:linux有什么好的,连个QQ都上不了。虽然对笔者来说聊天的工具多了去了(MSN、Google Talk….),但对普通上网的朋友来说基本都是浮云了。 其实这话说的也有道理,使用桌面版的linux不就是为了玩玩游戏上上网么?如果这个都不能满足,那linux也太逊了=_=!好吧,另一半的意见也要重视,笔者开始在网上寻求linux下运行windows程序的方法–Wine。 Wine 是什么?!wiki的解释比较权威,摘要如下: Wine是一个在x86、x86-64上允许类Unix操作系統在X Window System下运行Microsoft Windows程序的软件。另一方面,程序员也可以定制Wine的API接口是windows程序可以在类Unix操作系统中运行。也有不少软件经过Wine测试后发布,比如Picasa,uTorrent,MediaCoder。 Wine全称 “Wine Is Not an Emulator”,即Wine不算是一种完整的模拟器。尽管Wine有另一个非官方名称,”Windows Emulator”,即Windows模拟器。Wine的正确名称是”Wine”,不是全大写、全小写或大小写混合。[1] Wine不是一个完整的Windows模拟器,而是模拟出操作系统的兼容模式来调用DLL以运行Windows软件。Wine是自由软件,在GNU公共许可证(LGPL) 下发布。 使用Ubuntu的朋友可以通过apt-get 获取Wine1.2。 sudo apt-get install wine1.2 接着是安装一些常用的windows运行库,需要用到winetricks  . wget http://www.kegel.com/wine/winetricks sudo chmod +x winetricks #这是一个脚本,所以下载后要赋予它执行权限 把一些常用的运行库down下来,例如QQ的运行库: sh winetricks msxml3 gdiplus riched20 riched30 vcrun6 vcrun2005sp1 乱码问题: 碰到这个情况是因为模拟的windows Font文件夹里木有任何字体,返回到windows下直接copy过来就可以了^_^ 好了,如果你想在linux运行QQ,那么基本上已经满足条件了,去下载个单文件版本的QQ.exe。双击运行就可以了。 当然,模拟器的效果肯定比不上原生系统,如果你不介意使用webQQ的话,那么就用webQQ吧。时代在发展,程序Web化老早就在进行了,如果你实在需要一个桌面图标之类的,可以试一试prism,一款将web程序桌面化的东东。

linux 软件安装介绍

刚刚从windows转到linux环境的朋友最头痛的问题莫过于linux 的软件安装。五花八门的安装方式与软件包格式让人实在有点抓狂,笔者曾经也是一样^_^。因此,笔者总结了一下windows与linux软件安装的优缺点以及linux下软件安装的基本方法,供各位参考。 一、传统的window软件一般都打包成一个可执行的安装文件,其中包括各种配置文件、dll动态链接库和主、副程序。这个方式的缺点比较明显: 没有统一的安装程序API接口,安装程序各式各样。这样也就无法查看到一个文件的来源,这就是为什么windows越用越慢的原因,大量垃圾文件堆积的结果 安装程序的尺寸往往比较庞大。因为要包括许多dll库文件,同时安装文件本身也是个体积较大的程序^_^(有点绕口) 程序员门开发各类安装程序也要费不少脑筋(笔者一直不太会制作安装程序,只有制作绿色版了事=_=!) 正是由于存在以上的诸多缺陷,微软开发了MSI格式安装包。和linux下的软件包的工作原理类似。但仍然存在上面的第二点提到的缺点,就是无法处理库文件。 二、windows程序还存在一个问题就是安装程序往往会把可执行程序、库文件、以及配置文件、数据等等一股脑装到一个文件夹里。造成文件夹里内容混乱不堪,想找个东西困难的要死^_^。 说了window程序一大堆缺点,该主角linux登场了。其实从笔者自己的经历来看,各位对linux软件安装心存畏惧最大的原因可能是linux会把程序安装到多个文件夹,刚刚接触linux的朋友可能有些手足无措,不知道从那里找到刚刚安装的linux程序。不用担心这个,只要记住一下几个文件夹以及它们的功用,你就不会再手足无措了^_^。 linux软件在安装的时候通常会向这几个文件夹拷贝文件 /usr/bin 中拷贝可执行文件、/usr/lib中存放库文件、/usr/share/doc/$package/ 中存放帮助文件。这个时候,就会有人要问了。如果文件放在不同的地方,卸载的时候岂不是很麻烦?!这点不用担心,安装程序管理系统会跟踪这些文件的位置、以及它们之间的依赖性。当你不再需要这个程序时,调用卸载命令即可。 三、在linux中有两种主流的安装包格式,分别使用在类red hat和类debain系统上。 1、下面时两种安装包常用命令的对照表 Debian Red Hat 介绍 dpkg -Gi package(s).deb rpm -Uvh packages(s).rpm 安装、升级程序 dpkg -r package rpm -e package 卸载程序 dpkg -l ‘*spell*’ rpm -qa ‘*spell*’ 检查语法 dpkg -l package rpm -q package 显示程序版本 dpkg -s package rpm -q -i package [...]

妈妈,我压力好大

一位小学5年级的小朋友,因为妈妈在考试前一天晚上还要求做奥数题,写下的一手小诗《妈妈,我压力好大》。写诗的愿望就是要妈妈给她“放个假”。下面唱歌的两个小mm长的也很可爱^_^

Ubuntu与XP双系统引导修复备忘

昨天一时突发奇想,为自己家中的台式机安装ubuntu。笔者使用的ubuntu版本为10.10。最新版本,图个新鲜^_^。安装CD不大,700多M的文件,相对于fedora小的多了。由于家中的机子不是我一个人用。决定在原有xp操作系统的基础上安装双操作系统。之前,有过安装fedora和centos双系统的经验,也没有看教程,直接刻盘安装。 安装比较顺利,笔者从硬盘上扒下30G空间,供linux使用,把/,/boot,/home进行了单独分区。grub安装在XP的系统盘下。重启后也出现了操作系统选择界面,可以重新进xp却发现无法顺利引导。重新返回了grub的选择界面。安装失败。 笔者怀疑是grub引导设定出了问题。于是在网上搜索资料,出现此类问题的朋友还真不少。当务之急是修复xp 1、找一张xp的安装盘,进入系统修复程序,发现xp还是可以登录的。证明问题确实出在grub引导上了。输入fixboot命令,修复xp的引导程序,重启后顺利进入xp系统;但ubuntu是进不去了。 2、接着,需要修复ubuntu的grub引导。找一张ubuntu的安装盘,进入liveCD。首先找到之前笔者建立那几个linux分区,将/分区挂到media下,/boot,/home挂到/分区下。 具体命令: fdisk -l #查找分区信息 sudo -i #进入root mkdir /media/tmp mount /dev/sda9 /media/tmp mount /dev/sda3 /media/tmp/boot mount /dev/sda11 /media/tmp/home #接下来是重点 grub-install –root-directory=/media/tmp /dec/sda #修复成功,重启 这样,xp的ubuntu顺利共存^_^。

Google Adsense申请通过

笔者的小博没有打算上广告的计划,虽然有不少朋友联系笔者打算做广告,不过都回绝了。不过为了以后着想,还是决定申请一下google Adsense。昨天下午申请了,今天顺利通过^_^。

Linux链接文件的三种类型

摘要:symlinks(符号链接)引用文件名,hardlinks(硬链接)引用meta-data(元数据),而reflinks(引用链接)则直接引用数据。 linux上这三种不同的的链接文件类型分别指向文件的三个不同组成部分。即文件名(存储在目录中)、元数据(存储在inode中)以及数据块(数据本身)。下面显示了,文件以及各个类型链接文件的关系。 name2 – symlink –> name1 – hardlink –> inode1 – reflink —> data                      name3 – hardlink -/                      /                      name4 – hardlink –> inode2 —reflink -/ 闲话不多说,接下来用实际应用解析一下各种链接类型以及它们的使用方法。首先我们创建一个文件。linux中有N中创建命令,例如echo > file ^_^。 一、符号链接 cp –symbolic-link name1 name2 符号链接类似于windows下的快捷方式,一个别名而已。 二、硬链接 cp –link name1 name3 其实linux下所有的普通文件都会硬链接到某个inode。也就是说每多创建一个硬链接就会多一个文件指向同一个inode。其实,这对系统备份是很有作用的^_^。 三、引用链接 cp –reflink name1 name4 说实话,这个笔者也没怎么用过,和硬链接相似。只是占用的存储空间更少。

网易编辑部也有标题党?!

笔者喜欢在网易看新闻,不是说他购新闻权威,论调购精辟。这么多年,习惯了而已。看新闻,先看标题。然而有很长一段时间,笔者发现网易的主页上出现很多标题与内容不相符合的情况。以诱人的标题,例如减价、擦边、民生等等诸如此类标题;看完内容却大失所望。或者今天一条新闻说某某政策出台。第二天又来否定。 花样不断,笔者到今天才恍然大悟~自己一定是out了。标题党这个名词早已传遍网络。网易赶了这个时髦而已^_^。 然而,随之而来的思考。作为中国互联网最重要的门户网站之一。吸引眼球的标题党和负责任的新传煤,网易应该选择哪个呢?!

Linux命令行下监控网站日志

下面的内容是使用linux作为网站的朋友一定要懂的方法。虽然有N多中工具用于分析例如apache、nginx的访问日志。但是,任何一种都没有linux内置命令来的高效、灵活^_^。例如:当你的图形化系统不起作用的时候(黑客攻击?!),手里掌握一些监控、分析日志的脚本显的尤为重要!下面的代码可以监控最近的访客日志,相当有用哦。 一、实时过滤日志 使用 tail -f 命令可以查看日志文件最近新增的部分。不过,实际应用中会存在一些麻烦,你会发现输出了一大堆内容占满了整个屏幕。有必要格式化一下这些内容^_^。脚本如下: #需要将脚本保存起来, $COLUMNS 变量才会有效 #注意: -n10 表示显示最后10行内容,可以自己修改 deny=”`tput bold; tput setaf 1`” #亮红 high=”`tput bold; tput setaf 3`” #亮黄 norm=”`tput sgr0`” tail “$@” -s.1 -f access_log | grep -Ev –line-buffered -f agents_to_ignore -f files_to_ignore | sed -u “s/\(.*\) – \[[^]]*\]\(.*\)/\1\2/” | #过滤掉一些字段 #分析google蜘蛛访问 sed -u \ ‘s#\(.*\) “http://www\.\(google\.[^/]*\).*[?&_]q=\([^&"]*\)[^"]*”#\1 “\2 (\3)” [...]

linux环境变量介绍

今天为大家介绍一下linux环境变量(environment variables)的基础知识。如果你选择使用linux;那么不可避免滴要和这些环境变量打交道(windows也有这个东东啦)。每个linux 进程都会有一组键/值对应的环境变量。程序可以控制这些环境变量或局部环境变量(子进程中的环境变量是不会影响到主进程的哦,这点和c函数调用有点类似^_^)。我们可以在shell进程(类似于DOS命令行啦)中与这些环境变量进行交互操作,当然也可以把变量导入到子进程中。介绍来为大家介绍下环境变量的设置、使用。 一、设置局部变量 为shell设置环境变量相当简单,在bash中敲入name=value即可。在tcsh(这个shell貌似已经out了^_^)中前面需要加一个set命令 set name=value 二、设置全局变量 上面介绍的方法适用于当前进程。如果你希望子进程中的变量在全局使用,那么需要使用export命令。在bash中输入export name=value。在tcsh中setenv name=value。 三、为指定进程设置变量 上面介绍的两种方法在实用应用中相当常用。但仅仅这样是不够的。有的时候我们希望为不同的子进程设置同名但不同值的变量,需要如何操作呢?答案很简单 name=value program 。例如:LANG=C sort ,这个命令为sort程序设置了LANG=C环境变量,这样的设置仅对sort程序起作用。相当人性化吧^_^。另外在tcsh中也需要加一个env,env name=value sort 四、查看变量 linux中查看、显示变量实用echo命令,如echo $name。其中的$符号做php的朋友一定很熟悉了吧,在linux中只有引用变量的时候才会添加这个前缀哦。在bash中我们可以使用set命令查看所有变量。使用printenv 查看所有全局变量。需要注意一点:在tcsh中set命令只能查看局部变量,而printenv 只可以显示所有shell内建变量。 五、变量的使用 变量的用途相当广泛,涉及linux程序的方方面面。有了上面的介绍。相信各位网友对linux变量这个东东也不再陌生了吧,今天就写到这了。