| 阅读: 6 评论: 0 作者: skyfree 发表于 2010-02-08 22:30 原文链接我想,未来云计算将会覆盖几乎所有的电脑,到那时,操作系统的重要性真的是很小了,不知道到时候微软公司还在做什么。 我最近做了个云存储的工具,可以让用户把本地的文件通过简单的拖拽 存储到adobe acrobat提供的5G免费空间上。 http://www.driveoncloud.com/ 大家可以试用一下, 只有英文版。呵呵评论: 0 查看评论 发表评论最新新闻:· 阿里巴巴集团获“淘宝网”注册商标(2010-02-09 00:38)· 传迪斯尼与谷歌1亿美元洽购巴士在线股权(2010-02-08 22:01)· PPLive涉足电子商务 推出“PP购物街”(2010-02-08 20:54)· Google Store Views?以后不用出门逛街了!?(2010-02-08 20:11)· 短信拜年还敢么? 中移动严管春节群发(2010-02-08 19:56)编辑推荐:不要迷恋开放系统,那只是个传说网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库 |
| 阅读: 8 评论: 0 作者: 阿C++ 发表于 2010-02-08 18:25 原文链接1.默认配置:1>允许匿名用户和本地用户登陆。 anonymous_enable=YES local_enable=YES2>匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开匿名 用户家目录/var/ftp,且只能下载不能上传。3>本地用户的登录名为本地用户名,口令为此本地用户的口令;本地用户可以在自己家目录中进行读写操作;本地用户可以离开自家目录切换至有权限访问的其他目录,并在权限允许的情况下进行上传/下载。 write_enable=YES4>写在文件/etc/vsftpd.ftpusers中的本地用户禁止登陆。 2.配置文件格式: vsftpd.conf 的内容非常单纯,每一行即为一项设定。若是空白行或是开头为#的一行,将会被忽略。内容的格式只有一种,如下所示option=value要注意的是,等号两边不能加空白。 3.匿名用户(anonymous)设置anonymous_enable=YES/NO(YES)控制是否允许匿名用户登入,YES 为允许匿名登入,NO 为不允许。默认值为YES。write_enable=YES/NO(YES)是否允许登陆用户有写权限。属于全局设置,默认值为YES。no_anon_password=YES/NO(NO)若是启动这项功能,则使用匿名登入时,不会询问密码。默认值为NO。ftp_username=ftp定义匿名登入的使用者名称。默认值为ftp。anon_root=/var/ftp使用匿名登入时,所登入的目录。默认值为/var/ftp。注意ftp目录不能是777的权限属性,即匿名用户的家目录不能有777的权限。anon_upload_enable=YES/NO(NO)如果设为YES,则允许匿名登入者有上传文件(非目录)的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。anon_world_readable_only=YES/NO(YES)如果设为YES,则允许匿名登入者下载可阅读的档案(可以下载到本机阅读,不能直接在FTP服务器中打开阅读)。默认值为YES。anon_mkdir_write_enable=YES/NO(NO)如果设为YES,则允许匿名登入者有新增目录的权限,只有在write_enable=YES时,此项才有效。当然,匿名用户必须要有对上层目录的写入权。默认值为NO。anon_other_write_enable=YES/NO(NO)如 果设为YES,则允许匿名登入者更多于上传或者建立目录之外的权限,譬如删除或者重命名。(如果anon_upload_enable=NO,则匿名用户 不能上传文件,但可以删除或者重命名已经存在的文件;如果anon_mkdir_write_enable=NO,则匿名用户不能上传或者新建文件夹,但 可以删除或者重命名已经存在的文件夹。)默认值为NO。chown_uploads=YES/NO(NO)设置是否改变匿名用户上传文件(非目录)的属主。默认值为NO。chown_username=username设置匿名用户上传文件(非目录)的属主名。建议不要设置为root。anon_umask=077设置匿名登入者新增或上传档案时的umask 值。默认值为077,则新建档案的对应权限为700。deny_email_enable=YES/NO(NO)若是启动这项功能,则必须提供一个档案/etc/vsftpd/banner_emails,内容为email address。若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。默认值为NO。banned_email_file=/etc/vsftpd/banner_emails此文件用来输入email address,只有在deny_email_enable=YES时,才会使用到此档案。若是使用匿名登入,则会要求输入email address,若输入的email address 在此档案内,则不允许进入。 4.本地用户设置local_enable=YES/NO(YES)控制是否允许本地用户登入,YES 为允许本地用户登入,NO为不允许。默认值为YES。local_root=/home/username当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录。write_enable=YES/NO(YES)是否允许登陆用户有写权限。属于全局设置,默认值为YES。local_umask=022本地用户新增档案时的umask 值。默认值为077。file_open_mode=0755本地用户上传档案后的档案权限,与chmod 所使用的数值相同。默认值为0666。 5.欢迎语设置dirmessage_enable=YES/NO(YES)如果启动这个选项,那么使用者第一次进入一个目录时,会检查该目录下是否有.message这个档案,如果有,则会出现此档案的内容,通常这个档案会放置欢迎话语,或是对该目录的说明。默认值为开启。message_file=.message设置目录消息文件,可将要显示的信息写入该文件。默认值为.message。banner_file=/etc/vsftpd/banner当使用者登入时,会显示此设定所在的档案内容,通常为欢迎话语或是说明。默认值为无。如果欢迎信息较多,则使用该配置项。ftpd_banner=Welcome to BOB's FTP server这里用来定义欢迎话语的字符串,banner_file是档案的形式,而ftpd_banner 则是字符串的形式。预设为无。 6.控制用户是否允许切换到上级目录在默认配置下,本地用户登入FTP后可以使用cd命令切换到其他目录,这样会对系统带来安全隐患。可以通过以下三条配置文件来控制用户切换目录。chroot_list_enable=YES/NO(NO)设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。chroot_list_file=/etc/vsftpd.chroot_list用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。chroot_local_user=YES/NO(NO)用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。通过搭配能实现以下几种效果:①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。 7.数据传输模式设置FTP在传输数据时,可以使用二进制方式,也可以使用ASCII模式来上传或下载数据。ascii_upload_enable=YES/NO(NO)设置是否启用ASCII 模式上传数据。默认值为NO。ascii_download_enable=YES/NO(NO)设置是否启用ASCII 模式下载数据。默认值为NO。 8.访问控制设置两种控制方式:一种控制主机访问,另一种控制用户访问。①控制主机访问:tcp_wrappers=YES/NO(YES)设 置vsftpd是否与tcp wrapper相结合来进行主机的访问控制。默认值为YES。如果启用,则vsftpd服务器会检查/etc/hosts.allow 和/etc/hosts.deny 中的设置,来决定请求连接的主机,是否允许访问该FTP服务器。这两个文件可以起到简易的防火墙功能。比如:若要仅允许192.168.0.1—192.168.0.254的用户可以连接FTP服务器,则在/etc/hosts.allow文件中添加以下内容:vsftpd:192.168.0. :allowall:all :deny②控制用户访问:对于用户的访问控制可以通过/etc目录下的vsftpd.user_list和ftpusers文件来实现。userlist_file=/etc/vsftpd.user_list控制用户访问FTP的文件,里面写着用户名称。一个用户名称一行。userlist_enable=YES/NO(NO)是否启用vsftpd.user_list文件。userlist_deny=YES/NO(YES)决定vsftpd.user_list文件中的用户是否能够访问FTP服务器。若设置为YES,则vsftpd.user_list文件中的用户不允许访问FTP,若设置为NO,则只有vsftpd.user_list文件中的用户才能访问FTP。/etc /vsftpd/ftpusers文件专门用于定义不允许访问FTP服务器的用户列表(注意:如果 userlist_enable=YES,userlist_deny=NO,此时如果在vsftpd.user_list和ftpusers中都有某个 用户时,那么这个用户是不能够访问FTP的,即ftpusers的优先级要高)。默认情况下vsftpd.user_list和ftpusers,这两个 文件已经预设置了一些不允许访问FTP服务器的系统内部账户。如果系统没有这两个文件,那么新建这两个文件,将用户添加进去即可。 9.访问速率设置anon_max_rate=0设置匿名登入者使用的最大传输速度,单位为B/s,0 表示不限制速度。默认值为0。local_max_rate=0本地用户使用的最大传输速度,单位为B/s,0 表示不限制速度。预设值为0。 10.超时时间设置accept_timeout=60设置建立FTP连接的超时时间,单位为秒。默认值为60。connect_timeout=60PORT 方式下建立数据连接的超时时间,单位为秒。默认值为60。data_connection_timeout=120设置建立FTP数据连接的超时时间,单位为秒。默认值为120。idle_session_timeout=300设置多长时间不对FTP服务器进行任何操作,则断开该FTP连接,单位为秒。默认值为300 。 11.日志文件设置xferlog_enable= YES/NO(YES)是否启用上传/下载日志记录。如果启用,则上传与下载的信息将被完整纪录在xferlog_file 所定义的档案中。预设为开启。xferlog_file=/var/log/vsftpd.log设置日志文件名和路径,默认值为/var/log/vsftpd.log。xferlog_std_format=YES/NO(NO)如果启用,则日志文件将会写成xferlog的标准格式,如同wu-ftpd 一般。默认值为关闭。log_ftp_protocol=YES|NO(NO)如果启用此选项,所有的FTP请求和响应都会被记录到日志中,默认日志文件在/var/log/vsftpd.log。启用此选项时,xferlog_std_format不能被激活。这个选项有助于调试。默认值为NO。 12.定义用户配置文件在vsftpd中,可以通过定义用户配置文件来实现不同的用户使用不同的配置。user_config_dir=/etc/vsftpd/userconf设置用户配置文件所在的目录。当设置了该配置项后,用户登陆服务器后,系统就会到/etc/vsftpd/userconf目录下,读取与当前用户名相同的文件,并根据文件中的配置命令,对当前用户进行更进一步的配置。例 如:定义user_config_dir=/etc/vsftpd/userconf,且主机上有使用者 test1,test2,那么我们就在user_config_dir 的目录新增文件名为test1和test2两个文件。若是test1 登入,则会读取user_config_dir 下的test1 这个档案内的设定。默认值为无。利用用户配置文件,可以实现对不同用户进行访问速度的控制,在各用户配置文件中定义local_max_rate=XX, 即可。 13.FTP的工作方式与端口设置FTP有两种工作方式:PORT FTP(主动模式)和PASV FTP(被动模式)listen_port=21设置FTP服务器建立连接所监听的端口,默认值为21。connect_from_port_20=YES/NO指定FTP使用20端口进行数据传输,默认值为YES。ftp_data_port=20设置在PORT方式下,FTP数据连接使用的端口,默认值为20。pasv_enable=YES/NO(YES)若设置为YES,则使用PASV工作模式;若设置为NO,则使用PORT模式。默认值为YES,即使用PASV工作模式。pasv_max_port=0在PASV工作模式下,数据连接可以使用的端口范围的最大端口,0 表示任意端口。默认值为0。pasv_min_port=0在PASV工作模式下,数据连接可以使用的端口范围的最小端口,0 表示任意端口。默认值为0。 14.与连接相关的设置listen=YES/NO(YES)设 置vsftpd服务器是否以standalone模式运行。以standalone模式运行是一种较好的方式,此时listen必须设置为YES,此为默 认值。建议不要更改,有很多与服务器运行相关的配置命令,需要在此模式下才有效。若设置为NO,则vsftpd不是以独立的服务运行,要受到xinetd 服务的管控,功能上会受到限制。max_clients=0设置vsftpd允许的最大连接数,默认值为0,表示不受限制。若设置为100时,则同时允许有100个连接,超出的将被拒绝。只有在standalone模式运行才有效。max_per_ip=0设置每个IP允许与FTP服务器同时建立连接的数目。默认值为0,表示不受限制。只有在standalone模式运行才有效。listen_address=IP地址设置FTP服务器在指定的IP地址上侦听用户的FTP请求。若不设置,则对服务器绑定的所有IP地址进行侦听。只有在standalone模式运行才有效。setproctitle_enable=YES/NO(NO)设置每个与FTP服务器的连接,是否以不同的进程表现出来。默认值为NO,此时使用ps aux |grep ftp只会有一个vsftpd的进程。若设置为YES,则每个连接都会有一个vsftpd的进程。 15.虚拟用户设置虚拟用户使用PAM认证方式。pam_service_name=vsftpd设置PAM使用的名称,默认值为/etc/pam.d/vsftpd。guest_enable= YES/NO(NO)启用虚拟用户。默认值为NO。guest_username=ftp这里用来映射虚拟用户。默认值为ftp。virtual_use_local_privs=YES/NO(NO)当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限。默认情况下此参数是关闭的(NO)。 16.其他设置text_userdb_names= YES/NO(NO)设置在执行ls –la之类的命令时,是显示UID、GID还是显示出具体的用户名和组名。默认值为NO,即以UID和GID方式显示。若希望显示用户名和组名,则设置为YES。ls_recurse_enable=YES/NO(NO)若是启用此功能,则允许登入者使用ls –R(可以查看当前目录下子目录中的文件)这个指令。默认值为NO。hide_ids=YES/NO(NO)如果启用此功能,所有档案的拥有者与群组都为ftp,也就是使用者登入使用ls -al之类的指令,所看到的档案拥有者跟群组均为ftp。默认值为关闭。download_enable=YES/NO(YES)如果设置为NO,所有的文件都不能下载到本地,文件夹不受影响。默认值为YES。 文中有不对或者有不清楚的地方,请大家告诉我,谢谢! vsftp实例 在 众多网络应用中,FTP(文件传输协议)有着非常重要的地位。它可以用于文件的存储和共享。与大多数Internet服务一样,FTP也是一个客户机/服 务器系统。用户通过一个支持FTP协议的客户机程序,连接到主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户发出 的命令,并将执行结果返回给客户机。 现在我们通过一个例子来看看FTP是如何搭建起来的。在此,我们用著名的Vsftp来搭建FTP服务器。此FTP服务器主要用于公司内部文件的存储和共享。 一.需求1. 某公司有5个大部门,分别为:人事行政部、财务部、技术部、市场部、生产部。2. 各部门的文件夹只允许本部门员工有权访问;各部门之间交流性质的文件放到公用文件夹中。3. 每个部门都有一个管理本部门文件夹的管理员账号和一个只能上传、下载和查看文件的普通用户权限的账号。4. 公用文件夹中分为存放工具的文件夹和存放文件的文件夹。5. 用户只能对自己的家目录文件夹及其下面的目录文件有操作权限,不允许切换到上级目录,不允许匿名用户访问。 二.规划根据公司需求情况,现做出如下规划:1. 在系统分区时单独分一个Company的区,在该区下有以下几个文件夹:HR、CaiWu、JiShu、ShiChang、ShengChan和 Share。在Share下又有以下几个文件夹:HR、CaiWu、JiShu、ShiChang、ShengChan和Tools。2. 各部门对应的文件夹由各部门自己管理,Tools文件夹由管理员维护。3. HR管理员账号:hradmin;普通用户账号:hruser。 CaiWu管理员账号:caiwuadmin;普通用户账号:caiwuuser。 JiShu管理员账号:jishuadmin;普通用户账号:jishuuser。 ShiChang管理员账号:shichangadmin;普通用户账号:shichanguser。 ShengChan管理员账号:shengchanadmin;普通用户账号:shengchanuser。 Tools管理员账号:admin。4. 各部门管理员账号有完全控制本部门文件夹的权限以及下载Tools文件夹中工具的权限,普通用户账号只有上传、下载和查看本部门文件夹的权限以及下载Tools文件夹中工具的权限。5. 因为此FTP服务器主要用于公司内部使用,因此,FTP使用主动工作模式,在FTP服务器上将其他不需要用到的端口屏蔽掉,增加服务器安全。 文件夹之间的关系请见下图: 三.Vsftp RPM安装和启动在系统中使用rpm –qa |grep vsftp来查看系统有没有安装该软件,如果没有安装则挂载系统盘,找到vsftp软件包,使用rpm –ivh vsftp*即可安装。使用RPM包安装后,vsftp的配置文件默认在/etc/vsftpd/下。使用service vsftpd start启动vsftp。Vsftp默认允许匿名用户访问。使用chkconfig --level 35 vsftpd on,可以使vsftp随系统一起启动。在/etc/sysconfig/iptables中将20和21端口开放,然后用service iptables restart重启iptables服务。在/etc/selinux/config中将“SELINUX”项关闭,SELINUX=disabled。 四.新建用户使用useradd命令新建用户,使用passwd命令添加密码。useradd hradmin –r –m –d /Company/ –s /sbin/nologinuseradd hruser –r –m –g hradmin –d /Company/ –s /sbin/nologinuseradd caiwuadmin –r –m –d /Company/ –s /sbin/nologinuseradd caiwuuser –r –m –g caiwuadmin –d /Company/ –s /sbin/nologinuseradd jishuadmin –r –m –d /Company/ –s /sbin/nologinuseradd jishuuser –r –m –g jishuadmin –d /Company/ –s /sbin/nologinuseradd shichangadmin –r –m –d /Company/ –s /sbin/nologinuseradd shichanguser –r –m –g shichangadmin –d /Company/ –s /sbin/nologinuseradd shengchanadmin –r –m –d /Company/ –s /sbin/nologinuseradd shengchanuser –r –m –g shangchanadmin –d /Company/ –s /sbin/nologinuseradd admin –r –m –g root –d /Company/Share/Tools 五.新建目录在/Company中添加各部门的私密文件夹以及一个用于放置共享东西的共享文件夹。cd /Company/mkdir HR CaiWu JiShu ShiChang ShengChan Share在/Company下的共享文件夹中,添加各部门的文件夹以及一个放置共享工具的文件夹,这些部门文件夹用于放置需要共享的文件。cd /Company/Share/mkdir HR CaiWu JiShu ShiChang ShengChan Tools 六.修改目录属性修 改/Company中的各部门文件夹的文件权限为1770(实现效果:本部门管理员和普通用户可以进入,非本部门用户禁止进入;本部门管理员上传的文件, 本部门的普通用户只能下载和查看,不能修改;本部门普通用户上传的文件,本部门的管理员可以查看,下载,删除,重命名,但是不能修改里面的内容;如果管理 员想要修改普通用户上传的文件,可以先下载该文件,然后在FTP上删除该文件,在本机编辑好后再将该文件上传),属主和组为各部门的管理员及管理员组。cd /Company/chmod –R 1770 HR CaiWu JiShu ShiChang ShengChanchown –R hradmin.hradmin HR/chown –R caiwuadmin.caiwuadmin CaiWu/chown –R jishuadmin.jishuadmin JiShu/chown –R shichangadmin.shichangadmin ShiChang/chown –R shengchanadmin.shengchanadmin ShengChan/chmod –R 1775 Share/chown admin.root Share/ cd /Company/Sharechown –R hradmin.hradmin HR/chown –R caiwuadmin.caiwuadmin CaiWu/chown –R jishuadmin.jishuadmin JiShu/chown –R shichangadmin.shichangadmin ShiChang/chown –R shengchanadmin.shengchanadmin ShengChan/chown –R admin.root Tools/ 七.配置vsftpVsftp的配置文件在/etc/vsftpd/下。文件名为vsftpd.conf。cd /etc/vsftpd/cp vsftpd.conf vsftpd.conf.bakvi vsftpd.confwrite_enable=YES #允许登入者有写权限anonymous_enable=NO #禁止匿名用户访问local_enable=YES #允许本地用户访问local_umask=022 #本地用户新增档案时的umask值file_open_mode=0755 #本地用户上传档案后的档案权限ftpd_banner=Welcome to BOB's FTP server. #定义欢迎话语的字符串xferlog_enable=YES #启用上传/下载日志记录xferlog_file=/var/log/vsftpd.log #日志文件所在的路径及名称xferlog_std_format=YES #将日志文件写成xferlog的标准格式ascii_upload_enable=YES #启用ASCII 模式上传数据ascii_download_enable=YES #启用ASCII 模式下载数据chroot_list_enable=YES #在chroot_list中列出的用户不允许切换到家目录的上级目录chroot_local_user=NO #chroot_list_file=/etc/vsftpd/chroot_list #userlist_enable=YES #在user_list中列出的用户不能访问FTP服务器,未列出的可以访问userlist_deny=YES #userlist_file=/etc/vsftpd/user_list #tcp_wrappers=NO #不使用tcp wrapper来控制主机访问setproctitle_enable=YES #每个与FTP服务器的连接,都以不同的进程表现出来listen=YES #FTP服务器以standalone模式运行port_enable=YES #FTP服务器启用PORT模式pasv_enable=NO #禁用FTP服务器的PASV模式listen_port=21 #FTP服务器监听21端口connect_from_port_20=YES #指定FTP服务器使用20端口进行数据传输ftp_data_port=20 #FTP服务器数据传输端口为20idle_session_timeout=600 #600秒钟不对FTP服务器进行任何操作,则断开该FTP连接data_connection_timeout=120 #建立FTP数据连接的超时时间为120秒max_clients=0 #不限制用户的连接数量max_per_ip=3 #每个IP只能与FTP服务器同时建立3个连接local_max_rate=512000 #本地用户使用的最大传输速度 编辑chroot_list,一个用户一行。此文件中列出的用户不允许访问其家目录的上级目录。vi /etc/vsftpd/chroot_listhradminhrusercaiwuadmincaiwuuserjishuadminjishuuesrshichangadminshichangusershengchanadminshengchanuser 编辑user_list,一个用户一行。在此文件中列出的用户不能访问FTP服务器,未列出的可以访问。vi /etc/vsftpd/user_list 八.测试使用flashFXP软件作为FTP客户端。 评论: 0 查看评论 发表评论最新新闻:· 阿里巴巴集团获“淘宝网”注册商标(2010-02-09 00:38)· 传迪斯尼与谷歌1亿美元洽购巴士在线股权(2010-02-08 22:01)· PPLive涉足电子商务 推出“PP购物街”(2010-02-08 20:54)· Google Store Views?以后不用出门逛街了!?(2010-02-08 20:11)· 短信拜年还敢么? 中移动严管春节群发(2010-02-08 19:56)编辑推荐:不要迷恋开放系统,那只是个传说网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库 |
系统监控:msn在线机器人实时报警
[ 2010-2-8 17:40 | lonelybyte | RSS ]
| 阅读: 12 评论: 0 作者: lonelybyte 发表于 2010-02-08 17:40 原文链接一、实际需求 在应用各种监控软件(比如:cacti、nagios、sitescope等)的时候,我一般都会用到它的email阀值报警功能。如果这时候再加上一个 msn在线监控机器人为你把关,第一时间给你发出msn报警信息,是不是能让你更快的处理问题呢。以下我为大家介绍一个msn command line 的小程序来实现这个功能。 软件下载地址:sendMsg 二、运行环境 一个支持php的系统环境就可以啦,当然要能上网,不然怎么发消息呢。 我的做法是和cacti监控服务器放一起,不需要额外的设备和资源投入。 注册一个msn的帐号用于监控机器人。比如:test@test.com 密码:123456 需要收到消息的msn帐号必须加监控帐号test@test.com为好友,不然收不到消息。 三、sendMsg用法 sendMsg.zip包中所有文件如下: 下载: code.txt# ls -l sendMsg/-rw-r--r-- 1 root root 1213 Jul 29 2007 index.php //测试页面,web中打开开始测试;很容易做。-rw-r--r-- 1 root root 3894 Jul 29 2007 msnpauth-1.1.3.php-rw-r--r-- 1 root root 3372 Jul 29 2007 msnpauth.php-rw-r--r-- 1 root root 4586 Jul 29 2007 sendMsg.php-rw-r--r-- 1 root root 223 Jul 29 2007 simple.php-rw-r--r-- 1 root root 1424 Jul 29 2007 template.tpl 该程序也是通过登录msn服务器、建立IM会话,发送消息; 基本PHP语法如下: 下载: code.txt$sendMsg = new sendMsg();$sendMsg->login('test@test.com', '123456');//刚才建立的用于举例的msn监控机器人帐号$sendMsg->createSession('recipient@hotmail.com');//接受信息人的msn帐号$sendMsg->sendMessage('message', 'Times New Roman', 'FF0000');//第一个是具体信息内容,后面可以设定字体和颜色;$sendMsg->sendMessage(iconv("GBK", "UTF-8", 测试), 'Times New Roman', '008000');//也利用iconv转换gbk到utf8来发送中文信息; 效果如下: 四、实际应用 这里是我自己写的一个应用发送msn信息的php脚本:仅供参考,如果大家有更好请和我交流。 下载: code.txt#!/usr/bin/php<?if ($argc != 3) {die("Usage: send_cndmonitor.php <msn-address> <messages>\n");}array_shift($argv);$msnaddr = $argv[0];$messages = $argv[1];include('sendMsg.php');$sendMsg = new sendMsg();$sendMsg->login('test@test.com', '123456');$sendMsg->createSession($msnaddr);$sendMsg->sendMessage($messages, 'Times New Roman', '008000');?> 主要是为了能被其他脚本调用,用于发送一个报警信息。缺点是不能判定错误,所以实际运用中存在故障,需要网络流畅的环境下使用。 我们的生产环境已经存在大量的监控系统,所以针对错误信息已经整理到数据库中,因此我只需要从数据库导出目前存在error信息的文本文件,然后根 据节点位置发送给相关维护负责人即可。 为了能判定和确保发送正确,我利用sendMsg中的index.php的页面和shell脚本相结合来循环发送,实在抱歉本人PHP程度有限; 脚本如下:(这是我实例中使用的一个工作脚本,仅供大家借鉴) 下载: code.txt#!/bin/shwget --user=monitor --password=123456 http://127.0.0.1/monitor/msn.txt -O /var/www/html/sendMsg/msn.txt.1 >/dev/null 2>&1#下载msn要发送的信息,因为页面都是认证的所以用了wget的user和 password;now=`date +%Y-%m-%d-%H:%M`[ -f /var/www/html/sendMsg/msn.txt ] && oldmd5=`md5sum var/www/html/sendMsg/msn.txt |awk '{print $1}' |tee /var/log/cdn_status_old.md5` || exit 0[ -f /var/www/html/sendMsg/msn.txt.1 ] && newmd5=`md5sum var/www/html/sendMsg/msn.txt.1 |awk '{print $1}' |tee /var/log/cdn_status_new.md5` || exit 0SA=(admin1 admin2 admin3 admin4)# 相关负责人列表和下载的msn信息的中的名字对应;msnaddr=(admin1@msn.com admin2@msn.com admin3@msn.com admin4@msn.com)# 相关负责人的msn帐号和SA变量中的的名字顺序一一对应;sendMsg(){num=0while [ $num -lt 1 ];dowget --post-data "sender=test@test.com&password=123456&recipient=${1}&message=${2}" http://127.0.0.1/sendMsg/index.php -O /var/www/html/sendMsg/index.php.1 >/dev/null 2>&1# 使用wget post-data发送post参数给index.php页面,用以发送msn信息。if [ -f /var/www/html/sendMsg/index.php.1 ]; thenif cat /var/www/html/sendMsg/index.php.1 |grep -i successfully >/dev/null 2>&1;thennum=1 #判断 信息发送成功elif cat /var/www/html/sendMsg/index.php.1 |grep -i "The user appears to be offline" >/dev/null 2>&1;thennum=1 #判断msn接受人为是否在线状态echo "The user is offline."exit 0elif cat /var/www/html/sendMsg/index.php.1 |grep -i "Something went wrong trying to connect to the server" >/dev/null 2>&1;thennum=1 #判断 msn 服务器存在连接问题echo "MSN server is wrong."exit 0elsenum=0 #除了 以上三种情况退出循环外,其他情况重试。firm -f /var/www/html/sendMsg/index.php.1elsenum=0fidone} if [[ $oldmd5 == $newmd5 ]];then #校验 msn的信息是否是已经发送过的,主要是为了不重复发送错误信息。rm -f /var/www/html/sendMsg/msn.txt.1exit 0elsemv /var/www/html/sendMsg/msn.txt /var/www/html/sendMsg/bak/msn$now.txt -fmv /var/www/html/sendMsg/msn.txt.1 /var/www/html/sendMsg/msn.txt -f# 备份已发送的msn错误信息 fi for i in `seq 0 1 3` #根据维 护人员的数量进行判断和循环doif cat /var/www/html/sendMsg/msn.txt |grep -i ${SA[$i]}; thenmessages=`cat /var/www/html/sendMsg/msn.txt |grep -i ${SA[$i]}`sendMsg "${msnaddr[$i]}" "$messages"elsecontinuefidone 加入到crontab每5分钟执行一次;考虑维护人员的上线时间(最好是24H值班msn,那就不存在这个问题)设定执行时间为每周1到5的9点到 18点; 下载: code.txt*/5 9-18 * * 1-5 /var/www/html/sendMsg/send_report.sh 实际应用大家可以根据自己的情况进行调整,我这里只是告诉大家怎么使用sendmsg,举了一个简单的实例帮助大家理解和应用。 如果懂php语言的可以把这个作为cacti的一个插件使用,那样效果就更棒啦~评论: 0 查看评论 发表评论最新新闻:· 阿里巴巴集团获“淘宝网”注册商标(2010-02-09 00:38)· 传迪斯尼与谷歌1亿美元洽购巴士在线股权(2010-02-08 22:01)· PPLive涉足电子商务 推出“PP购物街”(2010-02-08 20:54)· Google Store Views?以后不用出门逛街了!?(2010-02-08 20:11)· 短信拜年还敢么? 中移动严管春节群发(2010-02-08 19:56)编辑推荐:不要迷恋开放系统,那只是个传说网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库 |
imagex.exe不够聪明,无法处理已打开的注册表储巢文件。
[ 2010-2-8 16:59 | Windows 7 论坛 | RSS ]
| imagex.exe不够聪明,无法处理已打开的注册表储巢文件。 如果要备份注册表储巢文件,只好使用regedit.exe导出注册表储巢文件。 |
| 我用的是ubuntu9.10 |
获取剪切板数据出错
[ 2010-2-8 16:41 | Windows XP 论坛 | RSS ]
| 最近公司许多同事在printscreen之后,粘贴到mspiant时遇到“获取剪切板数据出错”英文是"error:getting clipboard data",希望大家给予帮助,多谢 |
| 阅读: 8 评论: 0 作者: 蜀山老K 发表于 2010-02-08 16:36 原文链接1。现状系统信息: Solaris 10 11/06 s10s_u3wos_10 SPARC Copyright 2006 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 14 November 2006SunOS sunday 5.10 Generic_141444-09 sun4v sparc SUNW,Sun-Fire-T2000UFS信息:Filesystem size used avail capacity Mounted on/dev/dsk/c0t0d0s0 15G 15G 0K 100% /.../dev/dsk/c0t1d0s6 67G 1.1G 65G 2% /export/home2VFSTAB:/etc/vfstab#device device mount FS fsck mount mount#to mount to fsck point type pass at boot options#fd - /dev/fd fd - no -/proc - /proc proc - no -/dev/dsk/c0t0d0s1 - - swap - no -/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0 / ufs 1 no logging.../dev/dsk/c0t1d0s6 /dev/rdsk/c0t1d0s6 /export/home2 ufs 3 yes -磁盘信息:AVAILABLE DISK SELECTIONS: 0. c0t0d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424> /pci@780/pci@0/pci@9/scsi@0/sd@0,0 1. c0t1d0 <SUN72G cyl 14087 alt 2 hd 24 sec 424> /pci@780/pci@0/pci@9/scsi@0/sd@1,0Specify disk (enter its number): 1selecting c0t1d0[disk formatted]Warning: Current Disk has mounted partitions./dev/dsk/c0t1d0s6 is currently mounted on /export/home2. Please see umount(1M).format> currentCurrent Disk = c0t1d0<SUN72G cyl 14087 alt 2 hd 24 sec 424>/pci@780/pci@0/pci@9/scsi@0/sd@1,0format> verifyVolume name = < >Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 25 129.19MB (26/0/0) 264576 1 swap wu 26 - 51 129.19MB (26/0/0) 264576 2 backup wu 0 - 14086 68.35GB (14087/0/0) 143349312 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 usr wm 52 - 14086 68.10GB (14035/0/0) 142820160 7 unassigned wm 0 0 (0/0/0) 0format>2。现状T0: c0t0d0(72G) 是系统分区盘,T1: c0t1d0(72G)是数据盘[前人装的当时直接newfs就挂给export/home2了],T2: 还有块没plugin的新硬盘(146G)方便起见,分别命名为T0,T1,T23。要求(因为此ufs已经通过share到网络中,给其他机器作ufs和samba了,所以不想改变原有数据)由于T1空间日益减少(以后迟早要变小- -!),所以新购置了一块sun的146G的硬盘T2,想要在保留T1中所有数据的前提下,把T2和T1串起来(带状Raid0?)挂载给/export/home2,使其扩容。开始操作!在 /export/home2(c0t1d0s6)数据保留的情况下, 把另外的硬盘的剩余空间c0t0d0s3拉过来扩容成功。分区情况:c0t0d0: 剩余空间分区 s3 49.2G metadb分区 s4 149Mc0t1d0: 剩余空间分区 s6 68.25G metadb分区 s7 104M 0.已挂载s6#df -hFilesystem size used avail capacity Mounted on。。。/dev/dsk/c0t1d0s6 67G 64M 66G 1% /export/home2。。。# pwd/export/home2# lslost+found test# more testabcdefg 123456789q1。建立metadb备份# metadb -a -f -c 2 c0t0d0s7# metadb -a -f -c 2 c0t0d0s4# metadb flags first blk block count a u 16 8192 /dev/dsk/c0t1d0s7 a u 8208 8192 /dev/dsk/c0t1d0s7 a u 16 8192 /dev/dsk/c0t0d0s4 a u 8208 8192 /dev/dsk/c0t0d0s4# metastat2。建立条状串连(T1的s6数据必须在挂载状态)# metainit -f d0 2 1 c0t1d0s6 1 c0t0d0s3d0: Concat/Stripe is setup# metastatd0: Concat/Stripe Size: 246320256 blocks (117 GB) Stripe 0: Device Start Block Dbase Reloc c0t1d0s6 0 No Yes Stripe 1: Device Start Block Dbase Reloc c0t0d0s3 0 No YesDevice Relocation Information:Device Reloc Device IDc0t1d0 Yes id1,sd@n5000cca0007a5690c0t0d0 Yes id1,sd@n5000cca00083a334查看建立以后空间大小改变没# df -hFilesystem size used avail capacity Mounted on。。。/dev/dsk/c0t1d0s6 67G 64M 66G 1% /export/home2。。。3。更新dev src 条状串联# umount /export/home2# mount /dev/md/dsk/d0 /export/home2# df -hFilesystem size used avail capacity Mounted on/dev/md/dsk/d0 67G 64M 66G 1% /export/home2大小未变,按照预定计划,把T0的s3头部连在了T1的s6的尾部# ls -lptotal 8drwxr-xr-x 3 root root 512 Apr 24 2009 home/drwxr-xr-x 2 root root 512 Jan 7 10:23 home1/drwxr-xr-x 3 root root 512 Jan 7 13:09 home2/drwxr-xr-x 2 root root 512 Mar 31 2009 install/# cd home2# lslost+found test# more testabcdefg 123456789q数据都保留了# cd /export# lshome home1 home2 install# pwd/export4.扩容在线设备# growfs -M /export/home2 /dev/md/rdsk/d0Warning: 4992 sector(s) in last cylinder unallocated/dev/md/rdsk/d0: 246320256 sectors in 40092 cylinders of 48 tracks, 128 sectors 120273.6MB in 2506 cyl groups (16 c/g, 48.00MB/g, 5824 i/g)super-block backups (for fsck -F ufs -o b=#) at: 32, 98464, 196896, 295328, 393760, 492192, 590624, 689056, 787488, 885920,Initializing cylinder groups:.................................................super-block backups for last 10 cylinder groups at: 245366816, 245465248, 245563680, 245662112, 245760544, 245858976, 245957408, 246055840, 246154272, 246252704完成# df -hFilesystem size used avail capacity Mounted on/dev/dsk/c0t0d0s0 15G 10G 4.3G 71% /。。。/dev/md/dsk/d0 116G 64M 115G 1% /export/home2。。。# pwd/export# cd home2# lslost+found test# more testabcdefg 123456789q为了能reboot后自动挂载,修改原mount point 和 device# vi /etc/vfstab"/etc/vfstab" 13 lines, 493 characters#device device mount FS fsck mount mount#to mount to fsck point type pass at boot options#。。。/dev/md/dsk/d0 /dev/md/rdsk/d0 /export/home2 ufs 3 yes -。。。~"/etc/vfstab" 13 lines, 486 characters评论: 0 查看评论 发表评论最新新闻:· 阿里巴巴集团获“淘宝网”注册商标(2010-02-09 00:38)· 传迪斯尼与谷歌1亿美元洽购巴士在线股权(2010-02-08 22:01)· PPLive涉足电子商务 推出“PP购物街”(2010-02-08 20:54)· Google Store Views?以后不用出门逛街了!?(2010-02-08 20:11)· 短信拜年还敢么? 中移动严管春节群发(2010-02-08 19:56)编辑推荐:不要迷恋开放系统,那只是个传说网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库 |
| 阅读: 71 评论: 0 作者: iTech 发表于 2010-02-08 16:04 原文链接一 修改机器名方法一:暂时修改机器名:hostname用hostname命令可以临时修改机器名,但机器重新启动之后就会恢复原来的值。#hostname //查看机器名#hostname -i //查看本机器名对应的ip地址 方法二:永久性修改机器名:修改系统配置文件修改/etc/sysconfig/network //修改这个系统配置文件,才能有效改变机器名 /etc/hosts //hostname命令读这个配置文件直接修改/etc/hosts文件,系统本身用到主机名的地方不会变化,所以 /etc/hosts 是网络中用的,/etc/sysconfig/network是本机起作用。二 修改IP 以Red Hat Enterprise Linux 5.2为例 1、最常用的给网卡配置ip的命令为 #ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up 说明: eth0是第一个网卡,其他依次为eth1,eth* 192.168.0.1是给网卡配置的第一个网卡配置的ip地址 netmask 255.255.255.0 配置的是子网掩码 up是表示立即激活ifconfig的更多参数说明查看相关帮助 2、手动改/etc/sysconfig/network-scripts/ifcfg-eth0文件 vi打开ifcfg-eth0文件 原内容: DEVICE=eth0 BOOTPROTO=dhcp HWADDR=00:03:47:2C:D5:40 ONBOOT=yes TYPE=Ethernet 改为: DEVICE=eth0 BOOTPROTO=static IPADDR=192.168.1.223 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 HWADDR=00:03:47:2C:D5:40 ONBOOT=yes TYPE=Ethernet 分别执行命令 /sbin/ifdown eth0 /sbin/ifup eth0 /etc/init.d/network restart //使设置的网关马上生效 ifup - 代表拨号的连接命令,该命令只要在命令行或终端中可以成功执行就可以了 ifdown - 代表断开连接的命令,同样该命令只要在命令行或终端中可以成功执行就可以了 三 设置DNS /etc/resolv.conf nameserver 202.102.24.35 指定了dns服务器的地址 四Linux加域sudo cp /etc/samba/smb.conf /etc/samba/smb.conf_backup # 备份配置文件sudo gedit /etc/samba/smb.conf 找到这行:workgroup = MSHOME 用以下行替换:workgroup = new_domain_or_workgroup 保存编辑的文件。 sudo testparmsudo /etc/init.d/samba restart五 修改用户名usermod -l newname -d /home/newname -m oldnamegroupmod -n newname oldname六 停止防火墙/etc/init.d/iptables stopservice iptables stop七 重启网络# service network restartOR# /etc/init.d/network restartOR# service network stop# service network startOR# /etc/init.d/network stop# /etc/init.d/network start完!评论: 0 查看评论 发表评论最新新闻:· 阿里巴巴集团获“淘宝网”注册商标(2010-02-09 00:38)· 传迪斯尼与谷歌1亿美元洽购巴士在线股权(2010-02-08 22:01)· PPLive涉足电子商务 推出“PP购物街”(2010-02-08 20:54)· Google Store Views?以后不用出门逛街了!?(2010-02-08 20:11)· 短信拜年还敢么? 中移动严管春节群发(2010-02-08 19:56)编辑推荐:不要迷恋开放系统,那只是个传说网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库 |
访问文件服务器问题
[ 2010-2-8 15:09 | Windows Server system 论坛 | RSS ]
| 是这样的今天在某用户想通过邮件里的一个链接打开文件服务器上的某文件夹发现不法打开。提示:“由于本机的限制,此操作已被取消”但用户可以从”开始“--”运行“输入同样的链接却可以访问到文件服务器的该文件夹。求解。感谢赐教! |
| Linux Mint 8 KDE开发代号是Helena,它基于Kubuntu 9.10,采用Linux 2.6.31内核,KDE 4.3.4桌面环境,是一款Kubuntu后的KDE桌面最佳选择。 http://www.linuxmint.com/pictures/screenshots/helena/kde/thumb_helena.png[/img] [url=http://www.linuxmint.com/blog/?p=1 |

