名词集合:我的Linux之路

       发现自己虽然使用Linux好长时间,可是还是像个傻瓜一样,把它当成Windows在用。好多东西都不知道或者都没用上。真是枉为计算机人呀!

       这篇文章就把自己平日里接触到的Linux的东东记下来,也可以为以后和大牛们交流的时候提供一些谈资。哈哈。努力走在成为大腿、大牛、大神的路上!加油,噢耶!


Linuxconf:

在维基百科中知道的:

        Linuxconf is a configurator for theLinux operating system. It features differentuser interfaces: a text interface, a web interface and a GTK+ interface. Currently, most Linux distributions consider it deprecated compared to other tools such as Webmin, the system-config-* tools on Red Hat Enterprise Linux/Fedora,drakconf on Mandriva, YaST on openSUSE and so on. Linuxconf was deprecated from Red Hat Linux in version 7.1 in April 2001.

        It was created by Jacques Gélinas of Solucorp, a company based in Québec. It is licensed under the terms of the GNU General Public License.

       

linuxconf程序是一个交互式的高级配置与管理程序,linuxconf程序可以动态配置系统,而且具有多种工作界面,极大地方便了用户配置与管理系统。 为运行linuxconf,必须以根(root)用户的身份登录Linux系统。
   常见的linuxconf工作界面有:命令行界面、字符单元界面(使用了像Red Hat Linux安装时的用户界面形式)、基于X Window的界面(提供易于使用的“点击”树状菜单)。在Red Hat Linux 6.0中,新增了一种基于Web的工作界面,这种新增的界面鲜为人知,它具有远程系统管理的风格,很受网络管理员的青睐。 

关于Linuxconf的介绍

       绝大多数Linux的发行版本已经有了并且仍将有他们自己的系统配置实用程序,但是像SuSE 的 YaST或者Redhat 的配置工具这样的程序还不十分常见,因而系统管理员不得不在使用新的发行版本后去适应新的GUI和新的概念.
  Linuxconf是一个计划(Project),它尝试着建立一种单一的与发行版本无关的系统配置工具.它可称是活跃的催化剂,它不仅仅只是改变一下配置文件,而是重启那些不能自动识别系统变化的程序,甚至重启整个系统.如果系统是在配置改变后被重新启动,那么Linuxconf将追踪系统是否已被正确配置.Linuxconf另外一个有趣的特性是它管理着不同的配置文件,它们可在系统初启时接受用户的选择.
  Linuxconf符合模块化设计思想,其核心包括了绝大多数系统常用的特性.但是一些为阿帕奇(Apache),Squid或其他程序而写的模块也能够被加进核心.这些模块可以使用Linuxconf的API接口函数,同时也可使用模块化的front-ends结构.这些结构使用了Linuxconf的一些基本特性并且提供了一个GUI.目前已经有了基于Java,GTK,NeWT,Ncurses和其它库的front-ends结构,当然也有基于命令行的接口.为了实现远程维护,Linuxconf包括了一个运行在端口98的HTML接口,这些接口的运行不需要WEB服务器的支持,因为它是实际程序的一部分.如果权限允许,这个特性可用来在TCP/IP网络上配置另外一台远程计算机.
  Linuxconf可改变的东西超出了许多人的想象:它可以在第一个系统boot脚本文件(Redhat是/etc/re.d/rc.sysinit)后面添加程序用来让用户选择合适的runlevel去配置系统或者察看系统启动日志文件.(/sbin/askrunlevel)程序在它通过telinit运行一个标准的runlevel前等待一个可调的时间段.当想控制Sys V Sysinit的所有不同服务时Linuxconf就使用所谓的drop-ins.这些drop-ins(/etc/linuxconf/control/)定义了一个服务是如何被启动,中止,重载或者是被检测的.当要加入一个服务时,drop-ins可被方便的添加或修改.
  因为Linuxconf改变或者控制了系统中如此多的参数,所以把它安装在要做重大改变的系统上或者没经测试的发行版本系统上是很危险的.
  Linuxconf支持翻译系统,但是绝大多数帮助文件仍然没被翻译.到目前为止,法语,意大利语,德语翻译版本或多或少得到了支持.

    补充:

在Red Hat Linux 6.0中,若要linuxconf工作在Web浏览器环境,则必须进行以下设置:
   1、在gnome-linuxconf对话框中,打开“Config/Networking/Misc/Linuxconf network access”分支,选中“Enable netwoork access”选项。
   2、在对话框中输入任何允许使用Linuxconf的计算机的主机名,包括用户主机名字。
   3、选择[Accept]按钮,并按空格键,单击[Quit]按钮。
   4、启动Netscape浏览器,在URL栏键入:http://〈hostname〉:98/ 〈cr〉。其中,必选项“hostname”应换成用户计算机的主机名。如:lgxlinux.linux.net。
   5、选择浏览器页面底部的[Start]按钮,在弹出的口令验证框中,分别输入根用户的名字“root”和相应的口令。如果口令正确,则进入基于Web的linuxconf工作界面。该界面主要由Config和Control两部分组成,它们各自均含有5个具有超链接特性的选项,用户单击具体的选项,即可打开对应的页面,完成相应的配置。



X-window:

维基百科中说:In computing, the X Window System (X11, X, and sometimes informally X-Windows) is a windowing system for bitmap displays, common on UNIX-like operating systems.

X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting with a mouse and keyboard. X does not mandate the user interface — this is handled by individual programs. As such, the visual styling of X-based environments varies greatly; different programs may present radically different interfaces.

         X Window即X Windows图形用户接口,是一种计算机软件系统和网络协议,提供了一个基础的图形用户界面(GUI)和丰富的输入设备能力联网计算机。其中软件编写使用广义的命令集,它创建了一个硬件抽象层,允许设备独立性和重用方案的任何计算机上实现。

         X Window通过软件工具及架构协议来建立操作系统所用的图形用户界面,此后则逐渐扩展适用到各形各色的其他操作系统上,几乎所有的操作系统都能支持与使用X Window,GNOMEKDE也都是以X Window为基础建构成的。
         X Window向用户提供基本的窗口功能支持,而显示窗口的内容、模式等可由用户自行定制,在用户定制与管理X Window系统时,需要使用窗口管理程序,窗口管理程序包括AfterStepEnlightenmentFvwm、MWM和TWM Window Maker等,供习惯不同的用户选用。
         可以定制的窗口环境在给用户带来了个性化与灵活性的同时,要求用户有相对比较高的使用水平,不过这种机制带来的好处也是明显的,它不象Microsoft Window那样将窗口元件的风格、桌面、操作方式等千篇一律地规定死,只可以换一下墙纸、图标、调整字体大小等等,在X Window系统中可以有多种桌面环境的选择。


KDE

        维基百科上说:KDE is an international free software community ,producing an integrated set ofcross-platform applications designed to run on Linux, FreeBSD, Solaris, Microsoft Windows, and OS X systems. It is known for its Plasma Desktop, a desktop environment provided as the default working environment on many Linux distributions, such asopenSUSE,Mageia and Kubuntu and is default desktop environment on PC-BSD, a BSD operating system.

        The goal of the community is to provide basic desktop functions and applications for daily needs as well as tools and documentation for developers to write stand-alone applications for the system. In this regard, the KDE project serves as an umbrella project for many standalone applications and smaller projects that are based on KDE technology. These includeCalligra Suite, digiKam, Rekonq, K3b, and many others.

KDE software is based on the Qt framework. The original GPL version of this toolkit only existed for the X11 platform, but with the release of Qt 4, LGPL versions are available for all platforms. This allows KDE software based on Qt 4 to also be distributed to Microsoft Windows and OS X.

       KDE,K桌面环境(Kool Desktop Environment)的缩写。一种著名的运行于LinuxUnix 以及FreeBSD操作系统上面自由图形工作环境,整个系统采用的都是TrollTech 公司所开发的Qt程序库(现在属于Digia公司)。KDE 和Gnome 都是 Linux 操作系统上最流行的桌面环境系统。

       KDE 现在是 UNIX 上可用的易于使用的现代桌面环境。和一些如GNU/Linux这样的自由的类 UNIX 一起,UNIX/KDE 组成了一个对于任何人都可用的完全自由和开放的计算平台,而且完全免费,任何人都可以修改它的源代码。当然它总是有可以改进的空间,我们相信我们已经发布了一些当今可用的能和商业操作系统/桌面组合的合适的替代品。我们希望 UNIX/KDE 组合将会最终为普通计算机用户带来一个同样开放、可靠、稳定和专利自由的计算环境,世界范围内的科学家和计算机专业人士已经喜爱它很多年了。



Mandrake Linux
Mandrake Linux是Mandriva Linux的前身。这家公司前几年曾濒临倒闭,他们致力于做最好用的Linux系统,以桌面应用为主,使用的是rpm的包管理系统。和大多数桌面系统的特点一样,拥有赏心悦目的用户界面和大量的应用工具,能满足个人用户日常使用电脑的需要。此外他们的启动画面bootspalsh也非常好看,据说Mandriva界面的美观仅次于SUSE。
Mandriva Linux 是一个适用于多种平台的强大操作系统:32 位处理器,例如 Intel 奔腾;、AMD 速龙;、PowerPC; ,和 64 位处理器,例如 AMD 皓龙;。Mandriva Linux 包含许多图形化的管理助手和向导,这使得完成与其它 Linux 系统同样强大的功能变得非常简单。而内在的海量应用程序也必将是企业和个人用户理想的解决方案。
目前在台湾地区,由于有很多的硬件开发厂商,在追求稳定和低成本的情况下,Mandrake Linux的使用很广泛。

SAMBA

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。

SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。


postfix

postfix是Wietse Venema在IBMGPL协议之下开发的MTA(邮件传输代理)软件。postfix是Wietse Venema想要为使用最广泛的sendmail提供替代品的一个尝试。在Internet世界中,大部分的电子邮件都是通过sendmail来投递的,大约有100万用户使用sendmail,每天投递上亿封邮件。这真是一个让人吃惊的数字。Postfix试图更快、更容易管理、更安全,同时还与sendmail保持足够的兼容性

postfix是为了改进sendmail而存在的。

postfix由十几个具有不同功能的半驻留进程组成,并且在这些进程中并无特定的进程间父子关系。某一个特定的进程可以为其他进程提供特定的服务。
大多数的postfix进程由一个进程统一进行管理,该进程负责在需要的时候调用其他进程,这个管理进程就是master进程。该进程也是一个后台程序。
这些postfix进程是可以配置的,我们可以配置每个进程运行的数目,可重用的次数,生存的时间等等。通过灵活的配置特性可以使整个系统的运行成本大大降低。
 (1) postfix的邮件队列(mail queues)
              postfix有四种不同的邮件 队列,并且由队列管理进程统一进行管理:
                     1. maildrop:本地邮件放置在maildrop中,同时也被拷贝到incoming中。
                     2. incoming:放置正在到达或队列管理进程尚未发现的邮件。
                     3. active:放置队列管理进程已经打开了并正准备投递的邮件,该队列有长度的限制。
                     4. deferred:放置不能被投递的邮件。
队列管理进程仅仅在内存中保留active队列,并且对该队列的长度进行限制,这样做的目的是为了避免进程 运行内存超过系统的可用内存。
(2) postfix对邮件风暴的处理
当有新的邮件到达时,postfix进行初始化,初始化时postfix同时只接受两个并发的连接请求。
当邮件投递成功后,可以同时接受的 并发连接的数目就会缓慢地增长至一个可以配置的值。当然,如果这时系统的消耗已到达系统不能承受的负载就会停止增长。还有一种情况时,如果postfix在处理邮件过程中遇到了问题,则该值会开始降低。
当接收到的新邮件的数量超过postfix的投递能力时,postfix会暂时停止投递deferred队列中的邮件而去处理新接收到的邮件。这是因为处理新邮件的延迟要小于处理deferred队列中的邮件。Postfix会在空闲时处理deferred中的邮件。
(3) postfix对无法投递的邮件的处理
当一封邮件第一次不能成功投递时,postfix会给该邮件贴上一个将来的时间邮票。邮件队列管理程序会忽略贴有将来时间邮票的邮件。时间邮票到期时,postfix会尝试再对该 邮件进行一次投递,如果这次投递再次失败,postfix就给该邮件贴上一个两倍于上次时[间邮票的时间邮票,等时间邮票到期时再次进行投递,依此类推。当然,经过一定次数的尝试之后,postfix会放弃]对该邮件的投递,返回一个错误信息给该邮件的发件人。
(4) postfix对不可到达的目的地邮件的处理
postfix会在内存中保存一个有长度限制的当前不可到达的地址列表。这样就避免了对那些目的地为当前不可到达地址的邮件的投递尝试。从而大大提高了系统的性能。
(5) postfix的安全性
    postfix通过一系列的措施来提高系统的安全性,这些措施包括:
      1. 动态分配内存,从而防止系统 缓冲区溢出
      2. 把大邮件分割成几块进行处理,投递时再重组;
      3. Postfix的各种进程不在其他用户进程的控制之下运行,而是运行在驻留主进程master的控制之下,与其他用户进程无父子关系,所以有很好的绝缘性。
      4. Postfix的队列文件有其特殊的格式,只能被postfix本身识别;

处理过程
(1)接收邮件的过程
当postfix接收到一封新邮件时,新邮件首选在incoming队列处停留,然后针对不同的情况进行不同的处理:
1.对于来自于本地的 邮件:local进程负责接收来自本地的邮件放在maildrop队列中,然后pickup进程对maildrop中的邮件进行完整性检测。maildrop目录的权限必须设置为某一用户不能删除其他用户的邮件。
2.对于来自于网络的邮件:smtpd进程负责接收来自于网络的邮件,并且进行安全性检测。可以通过UCE (unsolicited commercial email)控制smtpd的行为。
3.由postfix进程产生的邮件:这是为了将不可投递的信息返回给发件人。这些邮件是由bounce后台程序产生的。
5. 由postfix自己产生的邮件:提示postmaster(也即postfix 管理员)postfix运行过程中出现的问题。(如 SMTP协议问题,违反UCE规则的记录等等。)

关于cleanup后台程序的说明:cleanup是对新 邮件进行处理的最后一道工序,它对新邮件进行以下的处理:添加信头中丢失的Form信息;为将地址重写成标准的user@fully.qualified.domain格式进行排列;从信头中抽出收件人的地址;将邮件投入incoming队列中,并请求邮件队列管理进程处理该邮件;请求trivial-rewrite进程将 地址转换成标准的user@fully.qualified.domain格式。

(2) 投递邮件的过程
新邮件一旦到达incoming队列,下一步就是开始投递邮件。相关的说明如下:
邮件队列管理进程是整个postfix 邮件系统的心脏。它和local、smtp、pipe等投递代理相联系,将包含有队列文件路径信息、邮件发件人地址、邮件收件人地址的投递请求发送给投递代理。队列管理进程维护着一个deferred队列,那些无法投递的邮件被投递到该队列中。除此之外,队列管理进程还维护着一个active队列,该队列中的邮件数目是有限制的,这是为了防止在负载太大时 内存溢出。邮件队列管理程序还负责将收件人地址在relocated表中列出的邮件返回给发件人,该表包含无效的收件人地址。
如果邮件队列管理进程请求,rewrite后台程序对收件人地址进行解析。但是缺省地,rewrite只对邮件收件人是本地的还是远程的进行区别。
如果邮件对你管理进程请求,bounce后台程序可以生成一个邮件不可投递的报告。
本地投递代理local进程可以理解类似UNIX风格的邮箱,sendmail风格的系统别名数据库和sendmail风格的.forward文件。可以同时运行多个local进程,但是对同一个用户的并发投递进程数目是有限制的。你可以配置local将邮件投递到用户的宿主目录,也可以配置local将邮件发送给一个 外部命令,如流行的本地投递代理procmail。在流行的linux发行版本RedHat中,我们就使用procmail作为最终的本地投递代理。
远程投递代理SMTP进程根据收件人地址查询一个SMTP服务器列表,按照顺序连接每一个SMTP服务器,根据性能对该表进行排序。在系统负载太大时,可以有数个并发的SMTP进程同时运行。
pipe是postfix调用 外部命令处理邮件的机制。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值