FreeBSD用户邮件转发
在FreeBSD里,root以及普通用户都有邮件通知,每次需要登录终端查看,比较烦人;
查了手册以后发现,其实可以把邮件转发到其他邮箱里,比如Gmail,然后就不用登录服务器去查看系统邮件了;
具体做法是:在用户home目录下创建 .forward 文件,写上转发地址,保存,就ok了。
By admin
read more在FreeBSD里,root以及普通用户都有邮件通知,每次需要登录终端查看,比较烦人;
查了手册以后发现,其实可以把邮件转发到其他邮箱里,比如Gmail,然后就不用登录服务器去查看系统邮件了;
具体做法是:在用户home目录下创建 .forward 文件,写上转发地址,保存,就ok了。
By admin
read more非常非常爽的一个工具,看了书之后研究了一下,非常爽
# screen
//以下^A表示同按“Ctrl + A”键
当 按了 ^A d 把 screen session detach 掉后,会回到还没进 screen 时的状态,此时在 screen session ? 每个 window 内跑的 process ( 无论是前景/ 背景) 都在继续执行,即使 logout 也不影响。
By admin
read more修改FreeBSD的系统时间
必须有root权限
比如要修改时间为2007年4月15日7点52
只改时间的话
使用NTP服务器更新本地时间
常用的NTP服务器
time.nist.gov
time.windows.com
chime.utoronto.ca
ntp.pipex.net
By admin
read more1.安装wget
#cd /usr/ports/ftp/wget/
#make install clean
2.修改/etc/make.conf
FETCH_CMD=wget -c -t 1
DISABLE_SIZE=yes #这行是必要的,否则…
如果你要wget穿透代理服务器,请加上下面两行
FETCH_ENV=http_proxy=http://proxy2.zsu.edu.cn:3128
FETCH_ENV=ftp_proxy=http://proxy2.zsu.edu.cn:3128
或者使用其他的穿越代理工具例如proxychains 或者socks5(runsocks)
则FETCH_CMD=proxychains wget或者runsocks wget
By admin
read more在最前面的javascript加上以下语句:
By admin
read more进入vi的命令 vi filename :打开或新建文件,并将光标置于第一行首 vi +n filename :打开文件,并将光标置于第n行首 vi + filename :打开文件,并将光标置于最后一行首 vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处 vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename vi filename….filename :打开多个文件,依次编辑 移动光标类命令 h :光标左移一个字符 l :光标右移一个字符 space:光标右移一个字符 Backspace:光标左移一个字符 k或Ctrl+p:光标上移一行 j或Ctrl+n :光标下移一行 Enter :光标下移一行 w或W :光标右移一个字至字首 b或B :光标左移一个字至字首 e或E :光标右移一个字j至字尾 ) :光标移至句尾 ( :光标移至句首 }:光标移至段落开头 {:光标移至段落结尾 nG:光标移至第n行首 n+:光标下移n行 n-:光标上移n行 n$:光标移至第n行尾 H :光标移至屏幕顶行 M :光标移至屏幕中间行 L :光标移至屏幕最后行 0:(注意是数字零)光标移至当前行首 $:光标移至当前行尾 **屏幕翻滚类命令 ** Ctrl+u:向文件首翻半屏 Ctrl+d:向文件尾翻半屏 Ctrl+f:向文件尾翻一屏 Ctrl+b;向文件首翻一屏 nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。 **插入文本类命令 ** i :在光标前 I :在当前行首 a:光标后 A:在当前行尾 o:在当前行之下新开一行 O:在当前行之上新开一行 r:替换当前字符 R:替换当前字符及其后的字符,直至按ESC键 s:从当前光标位置处开始,以输入的文本替代指定数目的字符 S:删除指定数目的行,并以所输入文本代替之 ncw或nCW:修改指定数目的字 nCC:修改指定数目的行 删除命令 ndw或ndW:删除光标处开始及其后的n-1个字 do:删至行首 d$:删至行尾 ndd:删除当前行及其后n-1行 x或X:删除一个字符,x删除光标后的,而X删除光标前的 Ctrl+u:删除输入方式下所输入的文本 搜索及替换命令: /pattern:从光标开始处向文件尾搜索pattern ?pattern:从光标开始处向文件首搜索pattern n:在同一方向重复上一次搜索命令 N:在反方向上重复上一次搜索命令 :s/p1/p2/g:将当前行中所有p1均用p2替代 :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代 :g/p1/s//p2/g:将文件中所有p1均用p2替换 **选项设置 ** all:列出所有选项设置情况 term:设置终端类型 ignorance:在搜索中忽略大小写 list:显示制表位(Ctrl+I)和行尾标志($) number:显示行号 report:显示由面向行的命令修改过的数目 terse:显示简短的警告信息 warn:在转到别的文件时若没保存当前文件则显示NO write信息 nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符 nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始 mesg:允许vi显示其他用户用write写到自己终端上的信息 **最后行方式命令 ** :n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下 :n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下 :n1,n2 d :将n1行到n2行之间的内容删除 :w :保存当前文件 :e filename:打开文件filename进行编辑 :x:保存当前文件并退出 :q:退出vi :q!:不保存文件并退出vi :!command:执行shell命令command :n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指 定n1,n2,则表示将整个文件内容作为command的输入 :r!command:将命令command的输出结果放到当前行 。
By admin
read more今天将原网站数据导入新系统的时候,发现用户表是空的,程序前几天很正常的,并没有做任何修改,于是将程序的高度模式打开,发现得到错误提示:”Got error 134 from storage engine”,进到mysql里执行select * from tbl_member limit 100,我没有发现错误的,不过将语句若修改为select * from tbl_member limit 100,10时,又出现了这个错误提示信息,怀疑是mysql表损坏,由于备份的时候,mysql处于运行使用状态,并没有停止服务的,所以才产生了这个错误的
于是用 repair table tablename 命令修复了次用户表,再次执行上述命令,ok,显示执行成功
By admin
read more来源: http://bbs.chinaunix.net/viewthread.php?tid=1039563&extra=&page=1
#/usr/ports/www/nginx
#make config
lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x Options for nginx 0.5.34 x
x lqqqqq^(-)qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
x x [X] HTTP_ADDITION_MODULE Enable http_addition module x x
x x [X] HTTP_DAV_MODULE Enable http_webdav module x x
x x [X] HTTP_FLV_MODULE Enable http_flv module x x
x x [X] HTTP_PERL_MODULE Enable http_perl module x x
x x [X] HTTP_REALIP_MODULE Enable http_realip module x x
x x [X] HTTP_REWRITE_MODULE Enable http_rewrite module x x
x x [X] HTTP_SSL_MODULE Enable http_ssl module x x
x x [X] HTTP_STATUS_MODULE Enable http_stub_status module x x
By admin
read moredu、df,freebsd/linux du,df(磁盘空间信息)命令详解
df和du命令详解df命令详细用法
a:显示全部的档案系统和各分割区的磁盘使用情形
i:显示i -nodes的使用量
k:大小用k来表示 (默认值)
t:显示某一个档案系统的所有分割区磁盘使用量
x:显示不是某一个档案系统的所有分割区磁盘使用量
T:显示每个分割区所属的档案系统名称
常用命令:df -hi
du:查询档案或目录的磁盘使用空间
a:显示全部目录和其次目录下的每个档案所占的磁盘空间
b:大小用bytes来表示 (默认值为k bytes)
c:最后再加上总计 (默认值)
s:只显示各档案大小的总合
x:只计算同属同一个档案系统的档案
L:计算所有的档案大小
常用命令:du -a
By admin
read more另一篇文章是用php-fpm方式安装的,用的人也比较的多,推荐使用,这里介绍的是用fastcgi方式安装的.
首先在安装所有软件之前新系统ports,然后 再进行下面的工作
1)安装mysql**#cd /usr/ports/databases/mysql51-server**
**#make WITH_CHARSET=gbk WITH_XCHARSET=all ** WITH_PROC_SCOPE_PTH=yes SKIP_DNS_CHECK=yes BUILD_OPTIMIZED=yes install clean //(utf8我选择了这个,情况自己定)
#cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf #rehash !!!—–WITH_CHARSET=utf8(我选择了这个,情况自己定,可以使用gbk) # mysql_install_db ##初始化mysql,如果在命令行后面添加上 –user=mysql 的话,会失败,不清楚什么原因
#chown -R mysql:mysql /var/db/mysql ##目录权限修改 #/usr/local/bin/mysqld_safe & ##启动mysql #/usr/local/bin/mysqladmin -u root password ‘newpass’ ##修改root密码,newpass是你需要改的密码
最后:在/etc/rc.conf 添加一行命令: mysql_enable = “YES” ** 或者直接在命令行中输入命令: echo ‘ mysql_enable = “YES” ‘ » /etc/rc.conf ** 使mysql成为一项服务,随机启动,省去手动启动mysql服务了.
注意如果安装的是mysql5.5的话,可能会在初始化表的时候提示"ATAL ERROR: Could not find ./bin/my_print_defaults",解决办法是:
/usr/local/bin/mysql_install_db –user=mysql –basedir=/usr/local/ –datadir=/var/db/mysql &
2)安装php # cd /usr/ports/lang/php5 # make config [X] CLI Build CLI version [X] CGI Build CGI version [ ] APACHE Build Apache module //不安装这个 [ ] DEBUG Enable debug [X]] SUHOSIN Enable Suhosin protection system [X] MULTIBYTE Enable zend multibyte support [ ] IPV6 Enable ipv6 support [ ] REDIRECT Enable force-cgi-redirect support (CGI only) [ ] DISCARD Enable discard-path support (CGI only) [X] FASTCGI Enable fastcgi support (CGI only) [X] FPM Enable fastcgi process manager (CGI only) [X] PATHINFO Enable path-info-check support (CGI only) # make install clean #cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini 注意:上面“[X]FPM …” 这一项在以php-fpm方式运行nginx运行php脚本的时候才选择的。
By admin
read more官网还没有正式发布新闻,不过在其主FTP站点上已经可以下载光盘映像了, ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-amd64/7.1/ 算是新年的礼物啊。
详细改进及声明: http://www.freebsd.org/releases/7.1R/relnotes.html 官方下载同样是3CD或1DVD.当然对于做服务器来说第一张盘就足够了。
这里还有附图啊!喜不喜欢这样的红色小魔鬼呢?
By admin
read moreExplain虽然是大家常用的分析mysql优化的办法,但对于系统级别内容的消耗资源信息就无能为力了.这时需要用到Mysql中的Profiling(程序剖析) 功能.参考:
EXPLAIN tbl_name or EXPLAIN SELECT select_options
EXPLAIN tbl_name是DESC[RIBE] tbl_name或SHOW COLUMNS FROM tbl_name的一个同义词。
当你在一条SELECT语句前放上关键词EXPLAIN,MySQL解释它将如何处理SELECT,提供有关表如何联结和以什么次序联结的信息。
借助于EXPLAIN,你可以知道 1)你什么时候必须为表加入索引以得到一个使用索引找到记录的更快的SELECT。 2)你也能知道优化器是否以一个最佳次序联结表。为了强制优化器对一个SELECT语句使用一个特定联结次序,增加一个STRAIGHT_JOIN子句。
对于非简单的联结,EXPLAIN为用于SELECT语句中的每个表返回一行信息。表以他们将被读入的顺序被列出。 MySQL用一边扫描多次联结的方式解决所有联结,这意味着MySQL 1)从第一个表中读一行,2)然后找到在第二个表中的一个匹配行,3)然后在第3个表中等等。=>当所有的表被处理完,它输出选择的列并且回溯表列表直到找到一个表有更多的匹配行,从该表读入下一行并继续处理下一个表。
从EXPLAIN的输出包括下面列:
table输出的行所引用的表。
type 联结类型。各种类型的信息在下面给出。
possible_keys possible_keys列指出MySQL能使用哪个索引在该表中找到行。 注意,该列完全独立于表的次序。这意味着在possible_keys中的某些键实际上不能以生成的表次序使用。 如果该列是空的,没有相关的索引。在这种情况下,你也许能通过检验WHERE子句看是否它引用某些列或列不是适合索引来提高你的查询性能。如果是这样,创造一个适当的索引并且在用EXPLAIN检查查询。见7.8 ALTER TABLE句法。为了看清一张表有什么索引,使用SHOW INDEX FROM tbl_name。 (可以查出,哪些索引基本上未用,或用的少)
key key列显示MySQL实际决定使用的键。如果没有索引被选择,键是NULL。
key_len key_len列显示MySQL决定使用的键长度。如果键是NULL,长度是NULL。注意这告诉我们MySQL将实际使用一个多部键值的几个部分。
ref ref列显示哪个列或常数与key一起用于从表中选择行。
rows rows列显示MySQL相信它必须检验以执行查询的行数。
Extra 如果是Only index,这意味着信息只用索引树中的信息检索出的。通常,这比扫描整个表要快。 如果是where used,它意味着一个WHERE子句将被用来限制哪些行与下一个表匹配或发向客户。 如果是impossible where 表示用不着where
Type的取值常会有下面这些:
system 表仅有一行(=系统表)。这是const联结类型的一个特例。
const 表有最多一个匹配行,它将在查询开始时被读取。因为仅有一行,在这行的列值可被剩下的优化器认为是常数。 const表很快,因为它们只读取一次!
eq_ref 对于每个来自于先前的表的行组合,从该表中读取一行。这可能是最好的联结类型,除了const类型。它用在一个索引的所有部分被联结使用并且索引是UNIQUE或PRIMARY KEY。
ref 对于每个来自于先前的表的行组合,所有有匹配索引值的行将从这张表中读取。 如果联结只使用键的最左面前缀,不或如果键不是UNIQUE或PRIMARY KEY(换句话说,如果联结能基于键值选择单个行的话),使用ref。如果被使用的键仅仅匹配一些行,该联结类型是不错的。
**range ** 只有在一个给定范围的行将被检索,使用一个索引选择行。ref列显示哪个索引被使用。
index 这与ALL相同,除了只有索引树被扫描。这通常比ALL快,因为索引文件通常比数据文件小。
ALL 对于每个来自于先前的表的行组合,将要做一个完整的表扫描。 如果表格是第一个没标记const的表,这通常不好,并且通常在所有的其他情况下很差。你通常可以通过增加更多的索引来避免ALL,使得行能从早先的表中基于常数值或列值被检索出。
By admin
read more折腾了一个晚上,基本上都是用packages安装,php用ports安装,由于PHP只用了FastCGI模式,所以phpmyadmin提示缺少模块而无法安装,最后下载的源码安装。整个过程中,竟然发现最耗费时间的PHP的那些模块! 其实安装完成后再回过头来看,步骤熟练后,加上编译时间,半个小时足够!
先做个规划,操作步骤分三块,分别用三个帖子来写,分别是:软件的安装,软件的设置,启动调试及遇到错误说明。
主要思路:用php-fpm来管理FastCGI。在网上的大多数资料都是用lighttp来安装管理,但是据说php-fpm比那个要强,所以就赶了一回时髦,用了一下php-fpm。
先列一下安装的东西,其实由安装的软件列表,就可以看出用做的过程,今天晚了,明天写步骤: QUOTE: autoconf-2.62 Automatically configure source code on many Un*x platforms autoconf-wrapper-20071109 Wrapper script for GNU autoconf e2fsprogs-libuuid-1.41.3_1 UUID library from e2fsprogs package freetype2-2.3.7 A free and portable TrueType font rendering engine gettext-0.17_1 GNU gettext package gmake-3.81_3 GNU version of ‘make’ utility jpeg-6b_7 IJG’s jpeg compression utilities kbproto-1.0.3 KB extension headers libICE-1.0.4_1,1 Inter Client Exchange library for X11 libSM-1.1.0,1 Session Management library for X11 libX11-1.1.99.2,1 X11 library libXau-1.0.4 Authentication Protocol library for X11 libXaw-1.0.5_1,1 X Athena Widgets library libXdmcp-1.0.2_1 X Display Manager Control Protocol library libXext-1.0.4,1 X11 Extension library libXmu-1.0.4,1 X Miscellaneous Utilities libraries libXp-1.0.0,1 X print library libXpm-3.5.7 X Pixmap library libXt-1.0.5_1 X Toolkit library libiconv-1.11_1 A character set conversion library libltdl-1.5.26 System independent dlopen wrapper libmcrypt-2.5.8 Multi-cipher cryptographic library (used in PHP) libpthread-stubs-0.1 This library provides weak aliases for pthread functions libxcb-1.1.93 The X protocol C-language Binding (XCB) library libxml2-2.7.2_1 XML parser library for GNOME m4-1.4.11,1 GNU m4 mysql-client-5.0.75 Multithreaded SQL database (client) mysql-server-5.0.75 Multithreaded SQL database (server) nginx-0.6.35 Robust and small WWW server pcre-7.8 Perl Compatible Regular Expressions library perl-5.8.9 Practical Extraction and Report Language php5-5.2.8 PHP Scripting Language php5-bz2-5.2.8 The bz2 shared extension for php php5-ctype-5.2.8 The ctype shared extension for php php5-dom-5.2.8 The dom shared extension for php php5-exif-5.2.8 The exif shared extension for php php5-fpm-5.2.8 PHP Scripting Language with FastCGI Process Manager php5-gd-5.2.8 The gd shared extension for php php5-mbstring-5.2.8 The mbstring shared extension for php php5-mcrypt-5.2.8 The mcrypt shared extension for php php5-mysql-5.2.8 The mysql shared extension for php php5-openssl-5.2.8 The openssl shared extension for php php5-session-5.2.8 The session shared extension for php php5-simplexml-5.2.8 The simplexml shared extension for php
By admin
read more