背景:我发现postfix安装后有很多sendmail的僵尸进程,怎么办,最彻底的办法是删除掉这个sendmail,最后发现其vps上有postfix,于是删除掉。
删除postfix步骤,它默认会安装sendmail的:
[root@iZ25dcp92ckZ ~]# rpm -e postfix-2.10.1-6.el7.x86_64
错误:依赖检测失败:
        /usr/sbin/sendmail 被 (已安裝) redhat-lsb-core-4.1-27.el7.centos.1.x86_64 需要

[root@iZ25dcp92ckZ ~]# rpm -e redhat-lsb-core-4.1-27.el7.centos.1.x86_64
[root@iZ25dcp92ckZ ~]# rpm -e postfix-2.10.1-6.el7.x86_64    
whereis sendmail
sendmail:  //没有了sendmail。
安装postfix:
http://free.yes81.net/yes81/view-13491.html
阅读全文
背景:两种盘的读写速度不一样,于是要看一下到底是哪种:
df -h
有sas硬盘吗 ?还是SATA啊?
linux下SATA硬盘是 hda , SCSI硬盘是sda
   搞个Vmware6.0,有点旧,没办法电脑主板CPU不行,升级高版本有问题,但这都不是问题,每次打开时都提示要升级,怎么办:
平时没有怎么管就点不升级,后来发现在打开Vmware6.0里,选择“编辑”---“参数”---Workspace里有一个software updates下拉里选never,。
调查显示:企业需要Linux方面的IT人才,企业现在需要他们,并且愿意花上一大笔钱去聘请他们。由Linux基金会和号称#1技术工作平台的 Dice进行的2013年Linux工作报告调查表明,来自大型企业,中小型企业,政府和职介所的招聘经理都喜欢Linux专业人士——并且现在就需要。

特别的,这项涉及850名招聘经理和2600名Linux专业人士的调查发现:

93%的招聘经理表示,他们将会在接下来的6个月中雇佣Linux人才,比2012年的89%提高了4%。

2013年,更多的招聘经理表明找到Linux人才非常困难——10个人中有9个人这样说;在2012年,10个人只有8个人重视懂Linux的科技专业人士。

据招聘经理说,系统管理员是最吃香的Linux工作,代表着在支持云计算和Big Data的企业中Linux的发展。接下来是开发人员和开发运营专家。

被调查的75%的Linux专业人士在过去的6个月中都接收到至少一个来自招聘者的电话。雇主用高于平均水平的工资和奖金聘请他们。今年,Linux专业人士的工资增长了9%,远远超过其他技术类工资5%的增长率(这是10年来的最大增幅), Dice工资调查显示。

来自:http://cnbeta.com/articles/227487.htm
移动Vmware6.0下的CentOS6.3到单位机器启动时提示如下信息:

1.察看系统CPU频率,鼠标右键点“我的电脑”,属性。为:3.3GHZ
2.新建文件并添加如下内容:
C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini



解决办法:
当建立虚拟主机后启动虚拟主机提示:

VMware Workstation has measured your CPU speed to be 1032 MHz, but Windows reports that it is 1994 MHz. This may

mean that your computer has a power-saving feature that varies the processor speed. As a result, the clock in your

virtual machine may run too fast or too slow.

For a workaround, please refer to the VMware knowledge base article at:
http://www.vmware.com/info?id=97

解决方法:

根据VMWARE文档修改如下:
1. 察看系统CPU频率,鼠标右键点“我的电脑”,属性。
2. 在文件C:\Documents and Settings\All Users\Application Data\VMware\VMware Workstation\config.ini中添加(如果没有这个文件,自己添加):

host.cpukHz = 1700000(替换为你的CPU频率)
host.noTSC = TRUE
ptsc.noTSC = TRUE

来自:http://www.1985er.com/lee/article.asp?id=198
问题:vim打开后如何取消syntax = on?我发现服务器加上后vim编辑很慢,临时取消
set syntax=off   (实践发现输入啥都能关掉,理论上还是大写的OFF。)
嗯,又想打开呢?
:set syntax=ON    (一定要大写)

想要小写怎么办?
语句来使得语法高亮显示
:syntax off
:syntax on

背景:在用raspberry用SecureCRT下的vim打开文件时出现用set nu时行有下划线,于是找了下解决办法,如下:
vim行号下划线问题
在vim中发现开启显示行号(set number)或语法高亮(syntax on)时,发现文档中很多地方都有下划线,对视觉产生极大干扰。开始还以为是vim的某个配置造成的,后来发现真正的元凶是securecrt,但是可以通过配置来去掉下划线。具体配置如下:
session option–>terminal–>appearance,这里有current color scheme选项,不论选择哪一项,或者是新建的,都可以点击edit…按钮,里面底部有三个复选框,中间一个是show underline,取消选择,那进入vi后如果显示行号,那行号不会有下划线!
对应汉化版的securect,配置如下:
会话选项 –> 终端 –> 外观 –> 当前颜色方案 –> 编辑,在出来的对话框中把显示下划线前面的勾去掉。

From:http://onx0320126.wap.blog.163.com/w2/blogDetail.do?hostID=onx0320@126&blogId=fks_087065087083083065084082083069072087087071083085080071087080
参考:http://www.360doc.com/content/12/0408/19/532901_201980859.shtml

附录:
1)为操作的一行添加下划线(方便看当前):set cursorline
2)SecureCRT里彩色显示字:会话选项->外观,当前颜色方案,traditional。
SecureCRT如何设置才能使Vim中代码彩色显示?? 3,4。
3)SecureCRT里高亮显示字:会话选项->仿真,终端:xterm 勾选:ANSI颜色,使用颜色方案,使用颜色方案勾选才能高亮。
4)  服务器端的设置。在.bashrc中添加:export TERM=xterm  export TERM=xterm-color 语句。
再就是raspberry里的pi是彩色,而root后ls等反而不是,出现这个问题是:
先解决ls的色彩问题。


退出登录再重新连接,充满色彩的vi又回来了。
我的设置,vi ~/.bashrc :


理解:
export PS1='${debian_chroot:+($debian_chroot)}\[\033[0;37;40m\u@\033[0;32;40m$ipL:\w\033[0;33;40m\$ '
解释:
下面我用一个提示符的例子来解释 shell 的颜色。
~/.bashrc: PS1="\[\033[0;32;40m\u@\h:\w\$ \]"
这样提示符就全部显示成绿色了。就像这样:
nico@ebrain:~$
\033 声明了转义序列的开始,然后是 [ 开始定义颜色。 后面的 0 定义了默认的字体宽度。稍后我会介绍其他的可用字符。 转义序列字符串要用 \[ 和 \] 括起来, 防止转义序列的文本显示在 shell 里占用太多的空间。

下面我们要选择前景色(这里是 32,代表绿色)。背景色的 40 表示黑色。 要是不想让提示符后面的文字也变成绿色,我们用 \033[0m 关闭转义序列, \033[0m 是 shell 的默认颜色。前景色和背景色都有 8 种可用的选择。

可选颜色:红色、绿色、黄色、蓝色、洋红、青色和白色。 他们对应的颜色代码是:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋红)、36(青色)、37(白色)。

用同样色方法设置背景色,不过要把第一个数字“3”替换成“4”, 例如 40、41、42、43、44、45、46、47。
更多参考:http://www.linuxfocus.org/ChineseGB/May2004/article335.shtml


二:Vim颜色设置:
新建文件   ~/.vimrc是用户自己的vim配置文件,在这个配置文件中设置的配置只影响该用户自己。
命令如下:
cd ~
vi .vimrc
输入:syntax on
保存退出
source .vimrc
此时可以找一个xml文件 进行查看,看看是不是已经有颜色了
vim xxx.xml
给 vi 做个别名,
# vi ~/.bashrc
alias vi='vim'
# source ~/.bash_profile
注:syntax on ,显示颜色;syntax off ,则不显示颜色。

来自:http://www.doyj.com/2010/02/07/%E8%AE%A9securecrt%E7%99%BB%E5%BD%95debian%E6%97%B6%E6%98%BE%E7%A4%BA%E5%BD%A9%E8%89%B2/

PS1颜色表用来设置前面提示符的颜色:http://www.linuxfocus.org/ChineseGB/May2004/article335.shtml
http://www.cnblogs.com/starspace/archive/2009/02/21/1395382.html
修改linux终端命令行颜色:
参考:http://www.cnblogs.com/menlsh/archive/2012/08/27/2659101.html
1)终端关闭:linux - shutdown -h now 立即关机:shutdown -h now  halt    poweroff
shutdown -r 18:23:52 #定时重启在18点23分52秒关闭,-r 是restart的意思,即重启含义。
shutdown -h now      #即h是halt的意思,poweroff就是立即关机的含义,不再重新启动。

Broadcast message from root@raspberrypi (pts/0) (Sat Feb  2 13:51:35 2013):
The system is going down for system halt NOW!
[ 8458.116208] Power down.

该命令的一般格式    shutdown [选项] [时间] [警告信息] 命令中各选项的含义为:   - k 并不真正关机而只是发出警告信息给所有用户    - r 关机后立即重新启动    - h 关机后不重新启动    - f 快速关机重启动时跳过fsck    - n 快速关机不经过init 程序    - c 取消一个已经运行的shutdown 需要特别说明的是该命令只能由超级用户使用。 例1,系统在十分钟后关机并且马上重新启动   # shutdown –r +10 例2,系统马上关机并且不重新启动   # shutdown –h now

2)init 0 立即关机,init 6 重启。

3)reboot 重启

QA:
Init 6是重新启动机器。
reboot也是重新启动机器。
那么这两个命令到底有什么区别呢?
对这两个操作使用man命令看到的内容如下:
"init 6" 基于一系列/etc/inittab文件,并且每个应用都会有一个相应shutdown脚本。
'init 6' 调用一系列shutdown脚本(/etc/rc0.d/K*)来使系统优雅关机;
'reboot'并不执行这些过程,reboot更是一个kernel级别的命令,不对应用使用shutdown脚本。 .
我们应该在通常情况下使用 init 6.
reboot - reboot performs a sync(1M) operation on the disks, and then a
multi- user reboot is initiated. See init(1M) for details.
init 6 Stop the operating system and reboot to the
state defined by the initdefault entry in
/etc/inittab.
在出问题的状况下或强制重启时使用reboot.

更多参考:http://www.cnblogs.com/summergarden/archive/2013/01/12/2857754.html
里面说道,这个是以实际文件来备份的,如果一个盘符有20G,而文件只有10M,那就备份10M,有点像Ghost。
可以通过它备份到一个自己创建的盘符里。

      你是否一直在寻找在Linux下可以替代dd命令,类似Ghost的工具了,恭喜你不需要再寻找了,因为它就在你的面前--Partimage。
我使用的是Ubuntu12.04,想要安装Partimage第一步:
在终端输入,
sudo aptitude update
sudo aptitude install partimage
现在开始使用:
在终端输入,sudo partimage ,现在使用partimage的备份功能
用Tab移动选项,选择你需要备份的区域,在“Image file to crate/use”中填写你将备份的文件存放到哪个目录,在“Action to be done”选项中选择"Save partition into a new image file",这是说保存分区到新的备份文件,其他选项我就不介绍了,我的洋文不好,介绍起来心虚。用Tab键将光标移动到“<Next  (F5)>”处进行下一步操作,当然你可以直接按“F5”,如图
开始备份时partimage会提示是否进行压缩备份,有点类似Ghost备份时提示你“不压缩,压缩,高级压缩”的选项,我在这里选择的是第二个“压缩”,其余的选项是默认的,等待你自己去发掘:
同样用Tab选中“<Continue  (F5)>”或直接按“F5”进行下一步操作。进行备份前partimage会提示需要你填写备注,填写备注后按“OK”partimage会提示你备份的分区的一些信息,比如分区大小,已使用空间,剩余空间等等:
上图就是partimage提示你填写一些备注,当然你也可以不填写
partimage提示你分区的信息。选中“OK”后就开始备份了:
备份中
备份完后直接按“Enter”(回车键)退出partimage,到此我们就备份了我想要备份的分区,现在我想还原怎么样操作了?
现在使用partimage进行还原的操作:
在终端输入,sudo partimage
如图,我们还是选择第三个分区,在在“Image file to crate/use”中填写你的备份文件,当然partimage会自动在你备份的文件名中加上类似“.000”的后缀,
在“Action to be done”选项中选择“Restore partion from an image file”从一个备份文件中还原,然后按“F5”进行下步操作。
我使用的默认的值进行操作,直接按“F5”,在还原前会提示你备份时填写的备注信息,如图
按“Enter”进行下一步操作,partimage会提示你分区的信息,如图:
选中“OK”进行还原:
还原成功后,直接按“ok”就可以退出软件。
参考:http://www.linuxcast.net/public/cast_show/32   //centos需要修改yum的源



来自:http://www.ilovexinji.com/xinji-home/106-linux-ghost-partimage
视频:http://www.linuxcast.net/public/cast_show/32
      推荐一下powercmd小工具,缺点是不能改编码,修改windows的CMD窗口输出编码格式为UTF-8,GBK,美国英语 ,都有乱码的情况,不如原生态的cmd,但是那个cmd在复制等上缺点明显。
    
PowerCMD删除行:
删除cmd一行用: shift + Home (在行尾用前面的方法选中后),再Delete掉即可。
更多参考:http://www.360doc.com/content/12/0518/11/203871_211854106.shtml

带减号前缀和空格, 减号会被解析为参数前缀, 空格会被划分到下一个参数,  加双引号,单引号, 反斜杠均不行, google了一下, 完整的命令应该这样:

1
rm -- "- no-timestamp"

来源:http://306lab.com/?p=412
   node.js解决了异步问题,但没解决并行问题,于是有疯子想把node.js用C扩展方式做成并行,为什么呢?
是因为Erlang和Golang是未来的主流语言,而nodejs是单线程而不能很好利用多核CPU的问题,于是有人想给它增强能力(尽管有cluster),
也想学go和erlang从语言层面上来解决问题。
但是现在GO语言和erlang已经在语言层面解决了并行问题,我觉得主要是多核心的利用,并行是必然趋势。
自己要做这些事情得自己学会进程调度,队列,信号等,像erlang和go,程序员不需要关心进程线程调度的问题,它在底层就封装好了。
之所以node.js有很多人学是因为,node.js主要是语言是JS。这让很多有前端经验的人可以很空易掌握。但是node.js也有些问题的,比如网络模块缓冲区总是64k。
如果要对核心的东西做调整还是挺麻烦的。你可用js写游戏可以跨所有的手机平台包括网页版,所以node.js也是个工具,不是语言。不是node.js火,是js火,搭了html5的顺风车。
新在啊儿呢,这个Nodejs:js基本上一个有任意语言经验的coder可以在一周内上手做项目。只要提供好项目管理,把规范之类的做好。成本之低。如果是c++:c++我花了两周一路是坑。
都是在html5上下功夫,不过问题是, html5游戏的商业模式好像不太清晰。个人觉得吧,做终端, 老老实实用原生语言去做, html5带来的好处好像意义没那么大。
现在html5这个工作组在做一个事情就是给-x绑定一个js引擎。用c++提供图形渲染。js处理业务逻辑。我跑过几个demo,性能还不错。
所以,我一直对html5持谨慎态度,技术也不热衷,看了看概念,大概了解了下。然后结论是:观望,还不成熟。

     有人说最近几年游戏火,lua脚本就火了,和js一样很像python那样的胶水语言,能在线更新更能兼容浏览器,lua跟我刚说的Js一样的概念。 lua去调原生的c++,lua只是执行逻辑处理。他也是在app里集成了一个lua的引擎,还给lua绑定了一些cocos2d的接口,。lua现在用的已经很成熟了,多如牛毛,不多讲。

                                                                                                        Writen by :jackxiang   2013-01-11 17:30:00


附录:
嗯,node.js可以实现那个http王浏览器推数据么?
跟nodejs没太大关系吧。都可以实现
那前端怎么搞?取数据时我一直觉得是个难题。
一个长链接挂着。
有数据来就处理罗
浏览器那边也这样子搞?
websocket  向浏览器推 后端可以使用nodejs 加前端使用socket.io 可以实现

如果php用的多 后端可以使用  https://github.com/bergie/dnode-php  也是事件模型 跟node一样
也可以使用 https://github.com/cboden/Ratchet  用php实现的websocket server,通信协议使用wamp
http://socketo.me/ http://wamp.ws/  可以看看

如果真的要实现 server->client传数据,不建议直接采用socket.me上面的js库,desktop上面浏览器对web socket支持的不错,但是无法兼容android浏览器,所以可以使用socket 支持flash socket.
socket.io

启一个socket tcp 也没什么,XMPP的server,openfire 号称单机支持30万长连接
看到composer.json了吗
去查查 是什么东西
一个php的标准库
很好很强大的
这是个好玩意儿,比pear 强几百倍
现在多数优秀开源库都能用 composer 装
我还没用完全采用composer  
是用libevent + stream扩展函数来实现底层的

网络编程不熟悉的  建议还是不要使用事件模型写程序
几个核几个worker,就像nginx一样。
好好研究下nginx source
我主要是从 下面的员工说的  因为事件的机制不好控制,没有顺序执行起来方便易编写,需要员工的水平比较高。

的nodejs 用了下,有好的地方 也有让人很不爽的地方。感觉不是很稳定,多线程fork出来的程序,采用net网络操作时,经常会崩掉

写一个高性能的Server还是挺困难的,像Nginx都用了很多atomic库操作,还有内嵌很多汇编

目前不需要高性能,用做游戏服务端,维护一二千人在线。
足够了
go语言看起来不错,没有广泛使用案例呀。

个人感觉,server再强悍,如果后面挂的业务逻辑卡一点,优势一下就木有了

Go底层是基于epoll的全异步模式,但上层是同步的语法,阻塞时自动切换协程

像我写的swoole这个Server,虽然性能很高,其实极端情况下可能会出错。node.js问题也是有的,这里坑很多的。什么时候把这些填平了,才比较安全  socket都是带缓存区的,假设某个fd缓冲区满了,就要丢数据了
这里缓冲区设大会有问题,设小了丢数据。
呵呵,事件通知机制在更高并发的Server里就是累赘了
所以我们有的Server是直接轮询的,不做通知机制

背景:

Mysql的sql日志如下配置,前台点链接触发SQL,后台用tail去看查询SQL日志:


找windows下的tail过程及最后找到较好win下的tail软件:

有很多的tail,有的可以终端运行,但是一直按回车时,文字不上移,有的呢,则是xp自动提供的,如:http://support.drugwebcn.com/knowledge/index.php?option=com_content&task=view&id=51&Itemid=43
这些都不怎么样,有的建议安一个cygwin ,这些都太麻烦,我找了一个别人写的界面软件,觉得不错,于是作下对Mysql的sql作下tail,所以,推荐下面这个tail软件,可以有编码选项,查找,清屏,有托盘等便捷,关键是能用回车让已经有的文字上移,鼠标选择多行,不是用alt+鼠标选择:
http://www.duote.com/soft/30978.html

DownLoad Url:
WindowsTail:
http://sourceforge.net/projects/windowstail/files/?source=navbar


上面这个软年看来做得确实不错,如下:
王*(17540***)  16:39:02
党哥,感谢你啊,前两天在网上搜windows下的tail工具,找了好多找不到好的,结果突然有个向东博客justwinit,给出了解决方案,原来是就在我们身边的党哥指明了方向。
王*(17540***)  16:45:47
真的很不错,我搜索windows下tail,党哥就出来帮助我了。
关键是要带回车的
--------------------------------------------------------------------------------------------------
Another tail :
Tail4Win : 这个免费30天,要钱。这个的终端tail做得不错,界面收钱就有点...了吧。
http://www.withdata.com/tail4win_news.html
最新版本的Tail4Win可以实现在cmd下和linux下的tail一样,按回车可以把已经tail的文字上移,也不错,界面的好像没有这个功能。
Egg:
D:\wamp\bin\apache\apache2.2.22\logs>tail -f w.xiyou.cntv.cn-access.log


---
这个也是tail,不怎么样,除开能tail多个文件外,没有回车文字上移的linux特性,感觉不怎么的:
最近因为开发php程序, 虽然有vmware和centos server, 但是还是喜欢windows 下的apache+php+mysql,  无他, 只是因为开发和测试方便, 但是windows下有个非常不方便的地方是, 没有tail去查看log, 本人又不希望为了一个tail命令去装一个庞大的cygwin.

今天在网上搜了一下, sourceforge上有个tail工具不错, 推荐给大家
1. 首先当然是tail功能了, 可以tail多个文件, 如access.log, error.log
2. 关键字高亮功能.
3. workspace管理.
4. 绿色, 免安装, 只有164k

推荐一下, 下载地址
http://sourceforge.net/projects/tailforwin32

这个个人写的tail还成,有一个问题(最后一行保存后出来来):
http://users.telenet.be/jbosman/tail.zip
    最近对 CentOS 的批评很多(作者好几次都想丢担子不干了,呵呵),如 5.3 的迟迟推出,补丁的推出缓慢等等。另一个 RHEL 再编译版本 Scientific Linux 得到了许多人的推崇,排在了 CentOS 的前面。

Scientific Linux 是由费米实验室(隶属于美国能源部)、欧洲核子研究中心以及世界各地的领先实验室和大学共同维护的。相比 CentOS,Scientific Linux 有着稳定的支持,基本上不会出现因为某个开发人员的原因导致发行版本突然消失的可能。在发行版本的推出上以及补丁的更新,Scientific Linux 比 CentOS 的响应要快的多,其标准是在 RHEL 发布补丁 48 小时内发布补丁。

另外,Scientific Linux 不是专门用于专门的 Scientific 研究的,也没有专门的 science application,之所以有着 scientific 的名字,是因为其最初只是 Fermilab 和 CERN 两个实验室使用,后来才慢慢扩大。
实践Ok:



一条批处理命令启动VMware虚拟机
所以我们就可以编辑一个bat文件去启动虚拟机了. :)
@echo off
e:
cd E:\VMware\
E:\VMware\VMware.exe -X "E:\Windows XP Professional\Windows XP Professional.vmx"
参考:虚拟机软件wmware如何实现一启动软件就自动启动某个虚拟机
http://topic.csdn.net/u/20080724/10/6d480ded-19ac-40e6-b082-ce2c9c601275.html
修改:调整了E:\VMware>VMware.exe -X "E:\Windows XP Professional\Windows XP Professional.vmx"中的"\"被打成">"的错误;
如果你已经运行出错的命令 并导致VMware.exe不可用 请用安装包修复一下;

如果仅仅这样做,虚拟机启动时还是会显示界面,如何让虚拟机在后台运行呢?只需在上述命令后添加一个参数nogui

例如: "C:\Program Files (x86)\VMware\VMware Workstation\vmrun.exe" start "D:\Ubuntu\Ubuntu.vmx" nogui

Linux下启动的方法:
在redhat enterprise 5.3安装了vmware workstation,如何用vmware 命令行启动指定虚拟机?
[root@node0 ~]# /usr/bin/vmware  -x   "/root/vmware/Windows XP Professional/Windows XP Professional.vmx" &

把vmware workstation最小化到系统托盘:
最近频繁使用vmware。
而vmware又没有提供“最小化到系统托盘”的功能。
开着一个虚拟机,任务条上就多了一个vmware的条条,很是占地方。

随便google了一下,搜索“vmware tray minimize”,就找到了一个解决方案:
先点击下面链接去下载trayconizer.zip(有两个版本For Windows 95/98/ME 和 For Windows NT/2000/XP)。
解压之后,放到硬盘的任何地方。
我就直接把trayconizer.exe放到了c:\windows目录下。
然后把vmware workstation的快捷方式的目标改为:

"c:\windows\trayconizer.exe" "C:\Program Files\VMware\VMware Workstation\vmware.exe"
即在原来的"C:\Program Files\VMware\VMware Workstation\vmware.exe" 前加上"c:\windows\trayconizer.exe" 中间用空格隔开。
注意:"c:\windows\trayconizer.exe"后面应该有一个空格。
以后,用修改过的快捷方式打开的vmware,就可以最小化到系统托盘了。

当然了,该工具也适用于其他程序。

下载地址:
http://www.whitsoftdev.com/trayconizer/
这几天由于经常远程到一个Linux主机上处理东西,然后会生成一些文件,所以想把这些东西通过邮件附件的形式给自己发回来,于是好好研究了下Linux中的mail命令,其中参考了一些网友的经验:

1. 例如最简单的一个:

mail -s text zhousir1991@gmail.com

这条命令的结果是发一封标题为text的空信给后面的邮箱,但是往往这类邮件会被当成垃圾邮件来处理,所以如果没有收到邮件,建议打开垃圾箱来查看一下。

第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束

2. 第二个例子:

echo “This is a test mail!”|mail -s text zhousir1991@gmail.com#第二种方法,使用管道命令。

mail -s test zhousir1991@gmail.com < file

第三种方法,以file的内容为邮件内容发信,这个我个人现在用的比较多,因为在终端中写东西毕竟不是很方便,所以我还是会首先选择事先写好一个文档然后再mail过去。

3. 带附件的邮件发送(这是我想重点介绍的一个东西)

如果你的系统中没有uuencode命令的话,并且你已经配好了yum仓库;(yum仓库配置可以参看我的其他文档:http://www.cnblogs.com/zhousir1991/archive/2011/03/05/1971879.html)请先安装sharutils  (yum install sharutils)

uuencode 需要两个参数,第一个是你要发送的文件,当然这个也可以用管道来做,第二个是显示的文件名

uuencode /home/zhousir/httpd.conf httpd.conf|mail -s mailtest zhousir1991@gmail.com
---------------------------
发现一个问题:
-bash: mail: command not found
呵呵,显然mailx没有安装,于是:
yum -y install mailx
然后whois命令也没有
yum -y install jwhois

tar czf - /home/zhousir/ | uuencode home.tgz |mail -s mailtest zhousir1991@gmail.com

ps: slackware下的mail好像有一个-a参数,可以直接添加附件,我没有用过。

转自:http://www.svn8.com/linux/accidence/20091016/10858.html

Linux下Mail命令收集:

“/var/spool/mail/[linux用户名]”文件中。
在linux中输入mail,就进行了收件箱,并显示二十封邮件列表。

此时命令提示符为"&"
unread 标记为未读邮件
h|headers 显示当前的邮件列表
l|list 显示当前支持的命令列表
?|help 显示多个查看邮件列表的命令参数用法
d 删除当前邮件,指针并下移。 d 1-100 删除第1到100封邮件
f|from 只显示当前邮件的简易信息。 f num 显示某一个邮件的简易信息
f|from num 指针移动到某一封邮件
z 显示刚进行收件箱时的后面二十封邮件列表
more|p|page 阅读当前指针所在的邮件内容 阅读时,按空格键就是翻页,按回车键就是下移一行
t|type|more|p|page num 阅读某一封邮件
n|next|{什么都不填} 阅读当前指针所在的下一封邮件内容
阅读时,按空格键就是翻页,按回车键就是下移一行
v|visual 当前邮件进入纯文本编辑模式
n|next|{什么都不填} num 阅读某一封邮件
top 显示当前指针所在的邮件的邮件头
file|folder 显示系统邮件所在的文件,以及邮件总数等信息
x 退出mail命令平台,并不保存之前的操作,比如删除邮件
q 退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,已阅读邮件会转存到当前用户家目录下的mbox文件中。如果在mbox中删除文件才会彻底删除。
在linux文本命令平台输入 mail -f mbox,就可以看到当前目录下的mbox中的邮件了。
cd 改变当前所在文件夹的位置
写信时,连按两次Ctrl+C键则中断工作,不送此信件。
读信时,按一次Ctrl+C,退出阅读状态。

来自:http://blog.sina.com.cn/s/blog_408184cf01014uoq.html


名称:mail
格式:mail  [-s subject]  [-c cc-addr] [-b bcc-addr] user1 [user 2 ...]
说明:
mail对于系统管理者很有用,因为管理者可以用mail写成script ,定期寄一些备忘录提醒系统的使用者。
参数:
s 邮件标题。
c 抄送人邮件地址。
b 暗送邮件地址。
范例:
将信件送给一个或以上的电子邮件地址,由于没有加入其他的选项,使用者必须输入标题与信件的内容等。而 user2 没有主机位置,就会送给邮件伺服器的 user2 使用者。
mail user1@email.address
mail user1@email.address user2
将mail.txt 的内容寄给 user2 同时 抄送给 user1 。如果将这一行指令设成cronjob就可以定时将备忘录寄给系统使用者。
mail -s 标题 -c user1 user2 < mail.txt
daemontools是一个管理UNIX下服务的工具集。 supervise监视一个服务。它启动一个服务、当服务停掉时它会重起
服务。安装一个supervise是极其简单的,你仅仅需要一个包含运行服务
的脚本的目录。
multilog保存报错信息和一个或多个log。它可以随意的加上时
间戳,对于每个log可以设定任意一行是否符合预定样式。他可以循环的纪
录log以限制磁盘空间的使用。当磁盘空间不足时,它会停止并重试,而不
会丢弃任何信息。
mkdir /package
chmod 1755 /package
cd /package
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
tar zxf daemontools-0.76.tar.gz
cd admin/daemontools-0.76
(打开src/error.h 找到:extern int errno; 改成:#include <errno.h>)
package/install

会生成自己的安装目录daemontools

同时 有/server  目录 所需要监控的放在server目录即可

卸载 将所有的直接删除即可


使用的Url:http://blog.jianingy.com/tag/daemontools/
Vmware下的Linux虚拟机,RPC服务不用,于是关闭了,后重启动时出现:starting nfs statd failed ,于是否,就发现了RPC和这个NFS有关,了解一下,后NFS服务也给关闭了。nfs就是这样,印象中nfs服务相关有3个进程的。

rpc**:
rpcbind        
rpcgssd        
rpcidmapd    
rpcsvcgssd    

nfsd:
nfs            
nfslock


阅读全文
加了很多开机服务,在加入linux rabbitMQ ,用的直接对程序启动,(直接启动在添加入服务后,不进行service iptalbes start容易出现卡死的情况) 没有用service来做启动,给卡住了,怎么办?
解决方法:进入单用户模式,关掉防火墙chkconfig  iptables  off ,再重新启动。
怎么单用户?
---------------------------------------------------------------------------------------------------------
在grub上相应要启动的内核上按“e”。
进入下一界面,继续按“e”。
在进入文本界面后,输入“single”回车。
进入grub界面后,按“b”,即进入single模式
---------------------------------------------------------------------------------------------------------
在GRUB启动后,移动键盘到Linux的启动项;按e键;然后再移动键盘到类似下面的一行,也就是kernel的那行:
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet      把光标移动这行后,再按一下e键,进入编辑这行;在行尾条一个空格 ,然后输入 linux single
也就是类似如下的:
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/1 rhgb quiet   linux single  
结束编辑,按回车返回;
接着我们要启动系统,按一下b键启动;
非Fedora core 4.0 可能单用户进去的时候,可能系统是只读的;要运行下面的命令;
#mount -o remount,rw /  
二、如果X不能启动了,我如何才能登录机器?

把开机登录由图形登录改为文本模式登录,然后修复;
以单用户模式登录,找到 /etc/inittab文件,找到如下一行;
id:5:initdefault:  
把这里的5改为3 ,也就是改成如下的:
代码:
id:3:initdefault:
请问是用Yum install命令安装时下载的文件包放在哪里了?
Centos下yum-downloadonly软件包
yum-downloadonly用于下载所需要的软件包而并不真正的安装,下载好的软件包方便在没有网络的情况下使用
安装:
yum install yum-downloadonly
查看/etc/yum/pluginconf.d/downloadonly.conf,确包插件是启用的,即:
[main]
enabled=1
例如:下载Apache软件包,并放在/下
yum install --downloadonly --downloaddir=/ httpd

我试下下载一个Dos2Unix的rpm包放在/root/software目录下:
root@192.168.98.128:/var/cache/yum/i386# yum install --downloadonly --downloaddir=/root/software  dos2unix
Loaded plugins: downloadonly, fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
Setting up Install Process
Package dos2unix-3.1-37.el6.i686 already installed and latest version
Nothing to do

发现已经安装了则卸载:
root@192.168.98.128:/var/cache/yum/i386# rpm -e dos2unix-3.1-37.el6.i686
root@192.168.98.128:/var/cache/yum/i386# yum install --downloadonly --downloaddir=/root/software  dos2unix
Loaded plugins: downloadonly, fastestmirror, presto
Loading mirror speeds from cached hostfile
* base: mirrors.btte.net
* extras: mirrors.btte.net
* updates: mirrors.btte.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package dos2unix.i686 0:3.1-37.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved
======================================
Package   Arch  Version        Repository                   Size
======================================
Installing:
dos2unix  i686  3.1-37.el6     base   15 k

Transaction Summary
======================================
Install       1 Package(s)

Total download size: 15 k
Installed size: 17 k
Is this ok [y/N]: y
Downloading Packages:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 15 k
dos2unix-3.1-37.el6.i686.rpm                                                                                 |  15 kB     00:00    


exiting because --downloadonly specified
root@192.168.98.128:/var/cache/yum/i386# ls /root/software/dos2unix-3.1-37.el6.i686.rpm
/root/software/dos2unix-3.1-37.el6.i686.rpm
包有了,可以弄到其他机器(上不了网的)上再安装一次,刚才那个本机也没有安上,于是也安一次:
rpm -ihv /root/software/dos2unix-3.1-37.el6.i686.rpm  
Preparing...                ########################################### [100%]
   1:dos2unix               ########################################### [100%]
背景:之前一直是vmware在把包拷贝到不同的机器时,开机时有一个提示是copy还是move,如果选copy,在联网时会出现device eth0 does not seem to be ,而最近在一台机房的机器换了主板后,也出现了类似的情况,苏州桥机房里因换主板后,开机时网卡灯亮,后面网卡灯不亮,service network start启动网卡时出现 does not seem to be present,于是再次总结一下:
1)首先直接删除70-persistent-net.rules配置文件:
rm -fr /etc/udev/rules.d/70-persistent-net.rules
2)把网卡eth0,eth1,,eth2三张网卡给挪动一次。(也有说不用挪动,为何挪动,是因为里面有物理网卡的地址)。
3)重启后,对1)里70-persistent-net.rules的mac地址重新对应修改并挪动复原,再:
ifconfig eth0 up   ifconfig eth1 up    ifconfig eth2 up

最后,在sshd时还发现,service sshd start 时出现:
/etc/ssh/ssdh_config Permission denied .................
查了下,修改里面的让root能登录,依然不行,后来直接重新卸载掉sshd所有rpm包,重新yum包就ok了。
yum remove openssh-* -y
yum install openssh-*  -y

查看:http://xinkang120.blog.163.com/blog/static/194668223201262114841765/

简单有效,我试过Ok的解决办法:
最简单的解决办法是直接删除70-persistent-net.rules配置文件
rm -fr /etc/udev/rules.d/70-persistent-net.rules
reboot
重启系统就ok了,系统会自动生成一个新的。
阅读全文
(1)/etc/profile
全局(公有)配置,不管是哪个用户,登录时都会读取该文件。
(2)/ect/bashrc
Ubuntu没有此文件,与之对应的是/ect/bash.bashrc它也是全局(公有)的,bash执行时,不管是何种方式,都会读取此文件。
(3)~/.profile
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
另外,图形模式登录时,此文件将被读取,即使存在~/.bash_profile和~/.bash_login。
(4)~/.bash_login
若bash是以login方式执行时,读取~/.bash_profile,若它不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
(5)~/.bash_profile
Unbutu默认没有此文件,可新建。
只有bash是以login形式执行时,才会读取此文件。通常该配置文件还会配置成去读取~/.bashrc。
(6)~/.bashrc
当bash是以non-login形式执行时,读取此文件。若是以login形式执行,则不会读取此文件。
(7)~/.bash_logout
注销时,且是longin形式,此文件才会读取。也就是说,在文本模式注销时,此文件会被读取,图形模式注销时,此文件不会被读取。
下面是在本机的几个例子:
1. 图形模式登录时,顺序读取:/etc/profile和~/.profile
2. 图形模式登录后,打开终端时,顺序读取:/etc/bash.bashrc和~/.bashrc
3. 文本模式登录时,顺序读取:/etc/bash.bashrc,/etc/profile和~/.bash_profile
4. 从其它用户su到该用户,则分两种情况:
(1)如果带-l参数(或-参数,--login参数),如:su -l username,则bash是lonin的,它将顺序读取以下配置文件:/etc/bash.bashrc,/etc/profile和~ /.bash_profile。
(2)如果没有带-l参数,则bash是non-login的,它将顺序读取:/etc/bash.bashrc和~/.bashrc
5. 注销时,或退出su登录的用户,如果是longin方式,那么bash会读取:~/.bash_logout
6. 执行自定义的shell文件时,若使用“bash -l a.sh”的方式,则bash会读取行:/etc/profile和~/.bash_profile,若使用其它方式,如:bash a.sh, ./a.sh,sh a.sh(这个不属于bash shell),则不会读取上面的任何文件。
7. 上面的例子凡是读取到~/.bash_profile的,若该文件不存在,则读取~/.bash_login,若前两者不存在,读取~/.profile。
lastlog文件在每次有用户登录时被查询。可以使用lastlog命令检查某特定用户上次登录的时间,并格式化输出上次登录日志/var/log/lastlog的内容。它根据UID排序显示登录名、端口号(tty)和上次登录时间。如果一个用户从未登录过,lastlog显示**Never logged**。注意需要以root身份运行该命令,例如:
    rong 5 202.38.64.187 Fri Aug 18 15:57:01 +0800 2000
    dbb **Never logged in**
    xinchen **Never logged in**
    pb9511 **Never logged in**
    xchen 0 202.38.64.190 Sun Aug 13 10:01:22 +0800 2000
    另外,可加一些参数,例如,"last -u 102"命令将报告UID为102的用户;"last -t 7"命令表示限制为上一周的报告。


以下来自:http://doc.chinaunix.net/linux/201208/2306409.shtml

查看某用户 cat /home/username/.bash_history 的操作历史
    
    使用root登陆使用last -x可查看用户登陆历史。
    
    last 命令:
    
    功能说明:列出目前与过去登入系统的用户相关信息。
    
    语  法:last [-adRx][-f ][-n ][帐号名称…][终端机编号…]
    
    补充说明:单独执行last指令,它会读取位于/var/log目录下,
    
    名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
    
    参  数:
    
    -a  把从何处登入系统的主机名称或IP地址,显示在最后一行。
    
    -d  将IP地址转换成主机名称。
    
    -f   指定记录文件。
    
    -n 或-  设置列出名单的显示列数。
    
    -R  不显示登入系统的主机名称或IP地址。
    
    -x  显示系统关机,重新开机,以及执行等级的改变等信息。
    
    lastlog可简单查看所有用户最后一次的登陆时间



http://blog.163.com/lideren_2008/blog/static/147057920120515235866/
________________Linux清除用户登录记录和命令历史方法摘自上面的URl __________________
清除登陆系统成功的记录
[root@localhost root]# echo > /var/log/wtmp #此文件默认打开时乱码,可查到ip等信息
[root@localhost root]# last #此时即查不到用户登录信息

清除登陆系统失败的记录
[root@localhost root]# echo > /var/log/btmp #此文件默认打开时乱码,可查到登陆失败信息
[root@localhost root]# lastb #查不到登陆失败信息

清除历史执行命令
[root@localhost root]# history -c
或者,清空用户目录下的这个文件即可
[root@localhost root]# echo > ./.bash_history

1.vi /root/history #新建记录文件
2.history -c #清除记录
3.history -r /root/history.txt #导入记录
4.history #查询导入结果

example
[root@localhost root]# vi /root/history
[root@localhost root]# history -c
[root@localhost root]# history -r /root/history.txt
[root@localhost root]# history
1 echo > /var/log/wtmp  
2 last
3 echo > /var/log/btmp
4 lastb
5 history -c
6 echo > ./.bash_history
7 history
分页: 21/24 第一页 上页 11 12 13 14 15 16 17 18 19 20 21 22 23 24 下页 最后页 [ 显示模式: 摘要 | 列表 ]