Linuxquid安装调试中几个常用命令介绍

Linuxquid安装调试中几个常用命令介绍,第1张

1、初始化你在 squid.conf 里配置的 cache 目录

#squid/sbin/squid -z //第一次启动squid服务时必须输入此命令

如果有错误提示,请检查你的 cache目录的权限。

2、对你的squid.conf 排错,即验证 squid.conf 的 语法和配置。

#squid/sbin/squid -k parse

如果squid.conf 有语法或配置错误,这里会返回提示你,如果没有返回,恭喜,可以尝试启动squid。

3、在前台启动squid,并输出启动过程。

#squid/sbin/squid -N -d1

如果有到 ready to server reques,恭喜,启动成功。

然后 ctrl + c,停止squid,并以后台运行的方式启动它。

4、启动squid在后台运行。

#squid/sbin/squid -s

这时候可以 ps -A 来查看系统进程,可以看到俩个 squid 进程。

5、停止 squid

#squid/sbin/squid -k shutdown

这个不用解释吧。

6、重引导修改过的 squid.conf

#squid/sbin/squid -k reconfigure

这个估计用的时候比较多,当你发现你的配置有不尽你意的时候,可以随时修改squid.conf,然后别忘记对你的 squid.conf排错,然后再执行此指令,即可让运行中squid重新按照你的squid.conf 来运行。

7、把squid添加到系统启动项

编辑 /etc/rc.d/rc.local

添加如下行: /usr/local/squid/sbin/squid -s

当然,并不是每个人都喜欢这种启动方式,你可以用你最习惯的方式;或者把它安装为服务。

再来点其他的。

1、修改cache 缓存目录的权限。

#chown -R squid:squid /home/cache

我的cache缓存目录是 /home/cache,squid执行用户和用户组是 squid,squid。

2、修改squid 日志目录的权限

#chown -R squid:squid /usr/local/squid/var/logs

这一步并不是适合每一个使用squid的用户.意为让squid有权限在该目录进行写 *** 作 。

例如生成 access.log cache.log store.log

3、查看你的日志文档。

#more /usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT

该指令可以看到在squid运行过程中,有那些文件被squid缓存到内存中,并返回给访问用户。

#more /usr/local/squid/var/logs/access.log | grep TCP_HIT

该指令可以看到在squid运行过程中,有那些文件被squid缓存到cache目录中,并返回给访问用户。

#more /usr/local/squid/var/logs/access.log | grep TCP_MISS

该指令可以看到在squid运行过程中,有那些文件没有被squid缓存,而是现重原始服务器获取并返回给访问用户。

关于 TCP_XXXX 等参数及代表的信息,请参看www.chinaunix.org彭勇华《squid中文权威指南》13.2.1 章节。

当然,本例中的蓝色文字是可以修改为其他的参数,例如你的域名 www.xxxx.com ,同样可以看到access.log里关于该域名的行。

4、squid -k rotate 轮换squid的日志文件/var/log/squid,Squid代理服务器日志文件

的增长速度是惊人的,很容易点球满磁盘空间导致系统不能正常工作,甚至是死机.为了解决日志文件增长太快的问题,squid采用了"轮换"的方法.在squid.conf中可以通过logfile_rotate来设置文件轮换的个数,如:

logfile_rotate 10 ,轮换的工作一般用crontab定时器完在周期性的日志轮换,例如每周六凌晨2:00进行日志轮换,则执行如下命令: crontab -e

0 2 * * 6 squid -k rotate

quid安装的例子很多了,本文不讲述,本文着重介绍2个Linux下Squid代理服务高级应用的例子。

1、配置带认证的代理服务

默认时,Squid本身不带任何认证程序,但是可以通过外部认证程序来实现用户认证。一般有以下的认证程序:LDAP认证、SMB认证、基于 mysql的认证、基于sock5的密码认证和基于Radius的认证。下面介绍常用的ncsa实现的认证,ncsa是Squid源代码包自带的认证程序 之一,从squid 2.5开始都包含了ncsa的模块。在Red Hat Enterprise Linux 5的/usr/lib/squid目录下可以找到ncsa_auth文件。

要使用该认证服务,首先需要创建认证用户和密码:

#htpasswd -c /usr/local/squid/etc/ps_file guest

如果是以后添加用户的话就把-c的参数去掉。

然后,再更改/etc/squid/squid.conf主配置文件,添加如下:

//配置认证文件和用户文件

auth_param basic program /usr/lib/squid/ncsa_auth /usr/local/squid/etc/ ps_file

//指定认证程序的进程数

auth_param basic children 5

//代理服务器的名称

auth_param basic realm Squid proxy-caching web server

//认证有效时间为2小时

auth_param basic credentialsttl 2 hours

//只有认证用户才能访问

acl normal proxy_auth REQUIRED

http_Access allow normal

最后,重启squid服务即可。在浏览器里配上这个代理,打开任意网站,如果d出了输入用户名和密码的对话框,就证明配置成功了。

一、基础网管的发展方向

1.可以学习CCNA(或同等认证的)向网络工程师方向发展

建议选择CCNA,理由如下:

1)模拟器种类多,技术成熟,路由和交换机类型多,H3C、华为模拟器相对少,可选路由和交换机少

2)思科成熟的专业培训机构多

3)可以学习思科专属协调,如EIGRP、HSRP等

4)思科全世界公认,H3C恐怕只有china(玩笑)

2.可以学习linux基础,向运维方向发展

3.可以学习编程,如php和asp.net,不建议直接学java,因为0基础直接上难度会相对前两者大

二、中级网管发展方向

1.向CCNP发展

懂得:

EIGRP、OSPF、重分发、BGP、VPN(常用几种ipsec,site to site,move VPN等)、MPLS、IPV6

交换安全、AAA认证,IPS、MLS、组播、VoIP、QOS整流、帧中继等

2.向运维方向发展(主要是网站)

1)要求有CCNA的基础(可以不考证)

2)有windows和linux相关编程基础,能看懂,会配置写简单的程序php,asp.net和java三者选一或两

3)熟悉掌握linux:

a.基础知识:

①常用命令约100个

②必会linux三剑客grep,sed,awk,正则表达式,这是必须会的杀手锏,工作效率非常高,面试也很牛

③linux系统的启动过程,目录结构,常见配置路径,文件属性,链接知识,目录权限,用户管理,磁盘管理,网络基础(配IP设置路由等)

④linux基础网络服务、linux核心网络服务、linux网站集群服务

⑤数据库mysql为主(最好会oracle)主从,群集,优化、redis、memcached缓存

b.安全:

系统安全,网站安全,攻击处理,数据库优化(大公司不用),网络安全

c.架构

熟悉主流的网站常见的架构,故障处理,如LAMP,LNMP

d.其他技术

LVS+keepalived 、iptables、svn(版本控制)、openvpn、openswan、haproxy、

KVM虚拟化、quid(缓存代理)、heartbeat、监控(nagios、zabbix)等

3.windows方向

1)基础知识:

windows常见的服务器搭建,如FTP,asp.net网站,域,DNS知识(有的要),数据同步

2)懂得asp.net简单的编程

3)懂得数据库,MSSQL,最好oracle也懂得,主从,简单的优化、memcached缓存

3.程序开发(网站为主)

熟悉主流的网站架构(不同编程语言的架构不同)、分层(有的要求MVC)、js、jquery、AJAX、memcached(有的不要求)、

工厂模式(有的不要求),熟悉其中一门编程语言(php、asp.net、java)

4.DBA

主要是数据优化、数据库建设、数据库开发等

5.安全方向

网络安全、网站安全、服务器安全(这类工类比较无聊,整天看数据分析或攻击测试)

可能用到的知识:专业技能(包括方案和讲解)+做人

三、高级技术

成为某一领域的专家,经理或总监

可能用到的知识:专业技能(知识的叠加)、管理、做人、销售、方案和标书编写和讲解

知识的叠加:在你专业的情况下提升自己的知识

如:

运维基础上做开发,叫运维开发,运维开发不等于开发,你作运维,当运维方面的开发那是你的运维能力叠加。

如果你做运维又做php非运维方面的开发,那不是叠加的过程,除非你往CTO方向发展。

开发运维,开发的基础上做开发相关的运维,如环境的搭配,开发方面的排错。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7106240.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-01
下一篇 2023-04-01

发表评论

登录后才能评论

评论列表(0条)

保存