Yayi和大家一起学习Fedora系列教程–第三课

就是Shell了。Shell可以帮助我们去驱使内核来完成我们所需要的工作。Shell一般分为两大主流:

sh
burne shell (sh)
burne again shell (bash)

csh
c shell (csh)
tc shell (tcsh)
korn shell (ksh)

然后在Linux下大多数的发行版都是默认选择bash的,我们也称之为bash shell

知道Shell是什么后,我们来看看Shell的基础使用。首先我们要知道哪里可以使用ShellShell是可以在虚拟终端中使用和在终端中使用的。终端的打开方式是“ctrl+atl+F*”按键,这个自己去试试,无论终端还是虚拟终端,使用效果是一样的,登录了就可以了。那么虚拟终端在哪里捏?按照下面的图片去把虚拟终端打开来吧。

打开后的这个将是我们的实验环境哦。

现在我们来说说Shell的格式,Shell格式正规应该是:

Shell软件 选项 参数

记住格式后,我们简单的看看一些软件的作用,注意区分大小写

cd 切换目录
pwd 查看当前的位置
ls 查看当前目录下的文件与文件夹
cp 复制文件/文件夹
mv 移动文件/重命名文件
touch 创建文件与修改文件属性
rm 删除文件
mkdir 创建文件夹
rmdir 删除文件夹
vi 编辑文件
less 以阅读器方式查看文件
cat 查看文件并输出
head 指定文件头的行数并输出(默认10行)
tail 指定文件尾的行数并输出(默认10行)
more 分页输出显示文件
file 查看文件类型
find 查看文件
mount 挂载文件系统(包括网络)
umount 卸载文件系统(包括网络)
fdisk 查看磁盘情况与创建分区
uesradd 创建用户
uesrdel 删除用户
groupadd 创建组
groupdel 删除组
chmod 更改文件/文件夹权限
chown 更改文件/文件夹属主与属组
history 查看终端输入历史
配合history查看的历史编号使用历史输入
chkconfig 查看与设定服务状态
service 对指定服务进行任务
jobs 查看后台进程号
fg 将后台进程恢复到前台
ps 查看全部进程并输出
top 实时方式查看进程
pstree 以树形方式查看进程并输出
tar 释放/创建归档
ifconfig 查看网络接口信息与配置网络接口
route 查看路由信息与配置路由
ping 测试网络
hostname 查看当前主机的主机名
nslookup 以交互方式进行域名查询
free 查看内存使用情况
df 查看磁盘使用情况
du 查看目录占用空间情况
cal 查看日历
date 查看与设置系统时间
time 设置程序时间(例如程序生存时间)
last 主机最近的登录情况
ln 创建链接文件
init 切换系统模式
reboot 重启
grep 查看文件里符合条件的字符串
help 查看软件的帮助文档
man 查看软件的手册页信息

知道了这些软件的功能后我们就开始讲讲如何去使用这些软件。

在这之前我先告诉介绍给大家认识下最好的老师给大家认识。

他们就是“helpman”这两个软件。他们可以帮助我们解决很多的问题。

我们先看看我们需要怎么找help老师帮忙,现在我不知道cd这个软件怎么样用,或者说是他的功能,我们需要help老师的帮忙。那么我们应该:

cd –help

是的,就是这么简单。不过大家要注意中间的空格键。

现在我们看看另一个老师的用法。man老师要比help老师懂更多的东西哦,用法有一点不一样。是反过来哦。同样是cd的帮助:

man cd

这样就明白了吧。简单吧,不过同样注意中间的空格,按“q”退出帮助。

接下来先看看cd这个的用法,大家都知道Linux是以树形结构来构建文件系统的。所有都在“/”之下。在配合前面给大家的公式。现在我们的位置是哪里?使用“pwd”查看下。现在明白后我们就看看如果进入到“/”位置,软件名称+参数:

cd /

是的就是这么的简单。

好了我不会跟大家讲每个“命令”的用法,为什么?很简单,因为他们是软件,我们不可能学习到所有的软件的选项与参数的用法,我们需要抓住技巧,抓住方法,更多的时候是需要我们的经验。要想学好基础的shell使用,不能懒,不能说为了方便复制直接就右键复制,试下用shell来帮你完成任务。因为这课很少,我在这个建议大家每个命令都要去用。不懂?我不是介绍了两个老师给你们么,再不懂?

Google也是你的老师,还不行?那么就mail跟Yayi一起讨论吧。

下面我也给大家一些练习,一定要做!

1. 创建一个文件test并删除。

2. 创建一个文件夹并删除。

3. 创建一个文件test并用mv修改文件名为check

4. vi编辑文件check,随便写20行。

5. 分别用catlessmoreheadtail查看文件。

6. 使用chmod修改文件check权限,权限为所有人均可读写执行。

7. 创建一个用户为test,删除用户。

8. 创建一个组为check并删除。

9. 创建一个用户test并指定加入到root组。

10. 使用chown切换文件check的属主为“test:root”。

11. 使用pspstreetop查看系统进程。

12. 使用ln为文件check创建一个硬链接并删除,使用ls查看删除后的情况。

13. 使用ln –s一个文件夹创建软链接,删除并使用ls查看删除后的情况。

14. 创建两个归档压缩包,一个为bz的包,一个为gz的包。并解压缩。

15. 尝试删除一个带文件的文件夹。

16. 尝试用时kill停止一个进程。

17. 尝试使用init切换每个参数,并把每个参数的功能记录在脑子里,参数分别为“012345、”。

作业就这么多。不难,但是要配合“helpmanGoogle”使用。

最后为大家推荐一个不错的中文翻译注释网站:

http://linux.chinaitlab.com/Special/linuxcom/Index.html

Yayi和大家一起学习Fedora系列教程–第二课

大家好,现在接着上次,开始我们的第二课,上次讲到Fedora 10的安装,那么我们现在接着上次讲讲怎么样才能把Linux在图形下应用起来。
首先我们先讲讲yum,Fedora应用到了yum来在线安装,升级,卸载自己的软件,那么yum是什么东西捏?
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora中的字符前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
可供Yum下载的软件包包括Fedora本身的软件包以及源自rpm.livna.org的Fedora Extras,全部是由Linux社区维护的,并且基本是自由软件。所有的包都有一个独立的GPG签名,主要是为了您的系统安全。而对于Fedora core 4.0 以上的用户,rpm.livna.org 的签名是自动导入并安装的。(摘自中国维基百科)
在一般Fedora4以上都会默认安装,如果之前你在安装系统的时候把它精简了,那么就把自己的安装光盘挂载上,现在一般都已经会自己挂载,所以挂载方法不在这里做详细讲解。
进到光盘的Packages文件夹里,里面有M多的软件,我们只要找到“yum”、“yum-metadata-parser”、“yum-utils”然后双击安装即可以,如果提示需要其他软件包,必须安装。
使用yum有什么好处?
解决新手对软件包依赖关系的烦恼,可以得到最新fedora测试过的软件。缺点则是你需要拥有一个稳定的网络。
下面我们来说说终端及虚拟终端如何使用yum。
Yum需要root官员里权限,所以必须先登陆到root,在Fedora 10里,图形界面已经不允许root登陆了,那么怎么在虚拟终端中登陆?答案是使用“su”。
在终端里,我们使用“su root”,就可以得到root的权限了然后我们就可以进行需要管理员权限的操作了。
注意:这里并不代表你已经切换登陆到root用户了,如果你需要切换到root用户,而不是得到权限的话,你应该是输入“su – root”。之间是有空格的。如果想切换到其他用户而不是得到权限,一样是“su – 用户名”。

如果你一定要使用root用户进行日常操作,用vi编辑下“/etc/pam.d/gdm”文件,把“auth [success=done ignore=ignore default=bad] pam_selinux_permit.so”这一行前面加个“#”号屏蔽掉。不过笔者并不建议大家这么做,如果这么做了,就算是用root用户登陆,但是依然有许多东西无法执行,这些都是SElinux惹的祸,但是把SElinux关掉后会大大降低系统的安全性,还是创建普通用户使用吧。

那么现在我们得到root权限后就看看yum使用方法。

安装一个软件 yum install 软件名称(不带版本号)
删除一个软件 yum erase 软件名称(不带版本号)
升级你系统里的软件 yum update
删除缓存数据 yum clean
查询YUM是否有此软件包 yum search 软件名称(不带版本号)
Yum帮助 yum –help

下面我们开始实际安装一个软件,许多朋友寻找教程都会看到chm结尾的文件,在fedora下默认是不对此文件支 持的,需要安装一个软件,软件的名字为“chmsee”,那么我们来示范一下。当我们在虚拟终端输入“yum install chmsee”,就会出现下面的提示:

让我们一起来分析下这个提示,看到chmsee设置为升级,需要依赖“libchm.so.0。然后在下面就会显示包的大小,版本,构架,源4个信息。然后我们按照提示按下“y”(如果不安装则按“N”),
安装就会自己完成。
现在有朋友感觉这样很麻烦自己又不知道自己需要什么软件,更不知道软件的名称了。不用怕,不过你至少要记住这个软件包的名称。
yumex是一个图形界面的yum,安装,删除,升级,设置yum的源都是图形下进行,最重要的是它带有每个软件的说明。不过需要你对E文有一定的理解,不行就g.cn吧。至于安装方法这里就不说了,当做作业。如果实在不会的就进群问吧。安装完成后按照下图找到“yumex Extender”:

点击它,输入root密码。就可以使用了。选择左侧的第二个就可以安装删除软件了。(别忘了点击“处理软件包队列”)。

最后说说升级,看到前面两张图上面都有个红色齿轮的图标,这个代表你有软件可以升级了,直接点击安装就好,这里不做详细讲解。

当然也可以在虚拟终端里输入“yum update”升级了。如果在使用yum的过程中,图形界面遇到锁定,或者终端里遇到正在使用,那么我们需要切换到root,然后“rm /var/run/yum.pid”,这样就好了。

附:因为Fedora不提供带有版权麻烦或者是封源的软件,这个给我们找软件带来了不少的麻烦,所以在这里提供fusion的源,来扩大我们的“软件库”。

直接复制到虚拟终端里就好了,必须需要root的权限哦。

rpm –ivh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

如果安装这个源后无法正常使用yum,那很可能是key引起的问题,解决方法就是在虚拟终端里输入下面的命令就好:

su -c “sed -i ‘s|^#baseurl|baseurl| ; s|^mirrorlist|#mirrorlist|’ /etc/yum.repos.d/rpmfusion*free*repo”

建议用来复制,不要自己打上去,以免出错。

说完yum后,我们再来看看rpm包是如何进行安装的。大家都知道rpm包是红帽特有的软件包,是一种已经编译好,我们只需要安装的就可以了。 rpm包唯一有一点要注意的是包依赖的问题,不过这个也不是什么难点,只要学会看懂提示,那么包依赖也很简单解决了。先看看下面的表,有关rpm的使用方法。

安装软件并显示过程

rpm –ivh 软件包

卸载软件

rpm –e 软件包

升级软件

rpm –Uvh 软件包

查询软件包是否安装

rpm –q 软件包名称

查询系统已经安装的软件包

rpm –qa

强行安装/卸载一个软件包

rpm –ivh/e –force 软件包名

不查询依赖关系安装/卸载

rpm –ivh/e –nodep软件包名

rpm帮助

rpm –help

大家一定要把表里的这几个参数记住了,内容不是很多。如果需要卸载一个软件,只需要打上软件名字就好,不需要带版本号,例如下载的QQ名字为“linuxqq-v1.0-preview3.i386.rpm”,那么我们卸载的时候只需要输入“rpm –e linuxqq”就可以了。现在我们开始实际安装一个软件,可能大家最关心的就是QQ怎么安装。那么我们首先上腾讯的官方网站下载qq for linuxrpm包。下载好后我们打开虚拟终端,进入到我们QQ存放的位置,开始安装。

如果有朋友和我一样遇到这个提示,那么请你用su得到root的权限再次安装。

看,只要拥有root的权限就可以安装了。这里要求大家把图片里的错误提示记住,如果以后遇到这样的提示,很可能就是没有权限造成的原因。下面登陆看看是否成功吧,笔者已经成功了。

rpm包的安装也就到此为止了,剩下的参数自己去尝试下,建议把qq安装,卸载,再安装,重复做多几次,熟能生巧。

接下来我们简单的讲讲编译安装,大家都知道,要想把Linux学好,编译安装不能不会,但是编译安装不是简单的几页纸能说的清楚的。所以笔者在这里只能简单的讲解下,更多的应该是自己去实际中体验,寻找技巧,把提示的错误尝试在google.com里找找,(不是谷歌,但是要大家E文比较好),在做编译安装前我们必须把gcc等软件安装上去,这样才可以正常的编译,废话不多说了,开始吧。

在编译安装中,其实简单来说只有3步(不包括一些庸师所说解压缩过程):

1. 编译前工作,大多数软件都带有一个“configure”文件,这个文件的作用也就是做编译前工作。编译前工作就是程序路径,不需要那些功能,需要哪些功能等的设定,一般我们在安装一个软件前都会“./config –help”来看看具体的参数。

2. 编译,直接点说就是make这个命令,但并不是所有的都是如此,只是大部分。

3. 最后就是执行编译后的工作了,也就是俗话说的安装。

通常需要输入的命令是“make install”。

接下来我们开始动手安装一个软件,不过在此之前我们必须把gcc给安装上去。为了简单方便,我们使用yum来安装gcc

打开yumexyum的图形界面工具),勾选开放工具,应用就好了,过程是漫长的,网速好的朋友列外。

把编译所需要的工具安装完整后,现在就上网下载一个rar for linux,安装这个后就可以在linux下解rar的包了。下面是下载地址:

http://www.rarlab.com/download.htm

编译安装也就到此为止了,后面讲到一些软件也会需要编译安装。大家就体验多几次吧,提一下的是,编译安装没有什么很好的卸载方法,也就是说,没有多少个人可以完全卸载一个大型编译安装软件,卸载方法就直接删除那个文件,你必须完全清楚文件在安装的时候都把文件发去哪了。

选择适合自己的软件包,然后下载就好了。下载好后我们就开始安装吧,对于如何解压缩,这里不详细讲解,请按照图片里的一起操作吧。依然记住需要root的权限。

现在我们就已经安装好了,大家可以对着一些文件右键创建压缩包的时候,看看是不是多了rar。不过这里值得一说的是,这个软件不需要gcc的支持,但是大部分还是需要的。在安装过程中,大家可能会看到笔者少了一步,是的,这个软件比较简单,所以就不需要那一步了,不过我们现在来打开Makefile这个文件看看,再回头看看编译和安装过程中的提示,大家应该基本可以猜出编译安装是怎么个回事了吧,实际就是用一个文件告诉电脑你要做什么,这个文件大部分都是“configure”,然后执行。现在对编译安装应该不感觉到陌生了吧,但是看完这个不代表自己已经会了,应该自己去尝试下更多的软件。

虽然在安装过程中没有提到“configure”的用法,不过有个参数我感觉是一定要提出来的,那就是对软件安装路径的设置,参数为“—prefix”。下面给出一些简单而又经典的演示,不过这个3个命令多数软件就可以安装完成了,不信的自己去试试。

1.“./configure –prefix=/usr/share/XXX

注意:一定要是软件的当前目录,并确保configure有执行权限。关于权限的设置会在第三课详细讲到。

2.make

3.make install

Fedora基本的安装也就到此结束了。下面我们来看看如何把Fedora应用起来。先看看网络设置。我们先说说共享上网的,设置IP相信许多人都没有问题,只是每次开机都不激活网卡或者是明明在线却说无连接,使火狐等软件默认脱机运行。解决这个问题有两种方法,

先看看第一种,也是笔者推荐的一种,安装图片操作即可:

下面看看第二种解决方法,实际是一种无奈的解决办法,还是跟图片一起操作:

不过记住要把network服务启用,这里就不示范了,大家学习下开关服务。

接下来就看看ADSL的拨号情况,同样跟着图片做即可

基本上是这样就可以了,然后激活一下就是拨号了哦。自己去试下吧,因为Yayi一直和别人共享上网,没有这个实际试验的机会。如果不成功请大家告诉我。

如果有朋友是共享上网的,想必也会有人遭遇到arp攻击,解决arp攻击最简单直接的方法就是把IP地址和MAC地址进行绑定,绑定的方式:先创建一个文本,然后写入“IP MAC地址”注意中间有空格,列如192.168.1.1mac地址为AA:BB:CC:DD:EE:FF,那么就在文本里写入“192.168.1.1 AA:BB:CC:DD:EE:FF”,用arp –f 文本的名称进行绑定就可以了。

网络设置好了,还有一个问题是大家每次开机都没有声音,网上找资料的时候就说把一些声卡选项点上就好了,但是关机再开机又没声音了,这个问题很容易解决,大家把“alsa-utils”安装一下就好了。哪里有下载?使用yum安装,具体方法不讲,如果不会请回去前面看看。

听歌的工具很多,比较出名的有xmmsAudaciousAmarok等等,笔者比较喜欢Audacious,所以在这里就讲讲Audacious的安装与使用。在虚拟终端里输入“yum install audacious”。

选择“y”进行安装。安装完后我们并不能马上使用,必须装上解码器,但是audacious- 1.5.1并没有mp3wmaacc等的rpm包的解码器,所以在这里我们选择了用audacious-1.4.5的解码器。不过Fedora10yum软件库并没有提供这些解码器,因为涉及的版权的问题,更详细的大家上网去找找看,所以我们必须把fusion的软件库给装上,详细的安装前面有提到,自己翻前去看看。如果已经安装好了,我们就安装“audacious-plugins-freeworld-mp3audacious-plugins-freeworld-wmaaudacious-plugins-freeworld-acc这三个软件,安装方法同样不说,自己去实践,如果有需要其他的解码器,可以自己使用“yum search audacious”来查询下安装包的名字。皮肤可以到http://www.gnome-look.org或者是http://customize.org/这里去下载,然后把下载后解压,然后把后缀名为wsz的文件放到“/usr/share/audacious/Skins”里面,接着打开audacious的首选项设置皮肤就好了。不在任务栏显示audacious的方法是,把打开首选项à插件à常规à StatusIcon勾选上,

这样就会看到托盘上有audacious的图标,对着它点下,audacious就会隐藏到托盘里了。

然后我们再看看flash player的安装,这个相对来说比较简单,到http://get.adobe.com/flashplayer/去下载一个rpm包,然后安装就可以了,记住需要root权限安装。

下面讲讲影视播放器软件,笔者在这里推荐使用两个,一个是大名鼎鼎的realplayer和一个不会比暴风影音差的mplayer。先看看realplayer的安装吧,首先到read的官方网站下载一个realplayer for linux rpm包,下载网址:http://www.real.com/linux ,然后跟着图片一起安装,图片里已经对realplayer设置过路径,如果不设路径它默认会安装到“/opt”这里,也是需要root的权限进行安装。

安装完后,安装下面图片找到realplayer,然后进行配置,配置过程比较简单,基本是不停的下一步就好了,这里就不多说了。

接下来就mplayer的安装了。安装mplayer需要有fusion的软件库,Fedora本身没有带。安装过fusion后,就直接使用yum来安装吧。

在虚拟终端里得到root权限,然后输入:

yum install mplayer mplayer-gui gecko-mediaplayer mencoder

这样就好了,当然mencoder不是必要安装的,但提供了许多编码功能。

如果需要皮肤可以到http://www.mplayerhq.hu/design7/dload.html 这里去下载,然后把解压的皮肤放到“/usr/share/mplayer/skins/default”里,打开mplayer右键可以设定皮肤。

虚拟机VMware,是大家用来做实验少不了的东西,现在我们开始来讲讲这个。首先到官方网站下载最新的vmware。网址为http://www.vmware.com

注意:建议下载最新的,否则vmware会不支持最新内核。

下载文件后得到root权限,然后就键入“sh VMware*.bundle

之后就有图形安装界面选择路径下一步就可以了。

安装完后如下图,至于KEY的问题,我这里就不方便提供了,大家上网搜索一下吧。

Windows共享,Fedora在这方面已经做得很方便了,大家在“位置”的地方找到“连接服务器”:

这个软件比较强大,ftpssh、和samba都支持,只需要把对方IP和用户名,文件夹名(对方共享的文件的名字)、共享文件夹名就可以了。

Fedora提供天气预报的功能,只要设置好就能使用,是否准确,这个就不知道了。对着托盘的时间右键打开选项,把“显示天气”给勾选上,然后选择位置。点击添加,在位置名称中按下C就可以显示中国大部分的城市了,自己选择自己的城市确定就好了

键盘快捷方式设置方法,看图:

然后在里面设置成自己需要的就好了。
到这里第二课就完了.其实不难,linux对我们是很友善的,大部分的问题都是可以解决的.所以请大家请不要害怕linux,用心学.

Yayi和大家一起学习Fedora系列教程–第一课

什么是Linux呢?

是一种计算机操作系统。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统(也被称为GNU/Linux)。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具(例如DEV C++)、资料库(例如PostgreSQLMySQL)、Web服务器(例如Apache)、X Window、桌面环境(例如GNOMEKDE)、办公套件(例如OpenOffice.org)、脚本语言(例如PerlPHPPython)等等。Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为了一种受到广泛关注和支持的一种操作系统。包括IBM和惠普、戴尔在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用Unix系统以及微软 Windows相比,作为自由软件的Linux具有低成本,安全性高,更加可信赖的优势。

绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了一个shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。正因为如此,GNU计划的开创者理查德·马修·斯托曼博士提议将Linux操作系统改名为GNU/Linux。但有些人只把操作系统叫做“Linux”大多数系统还包括了像提供GUI界面的XFree86之类的曾经运行于BSD的程序。

除了一部分专家之外,大多数人都不自己选择每一样组件或自行设置,而是直接使用Linux套件。

1983年,理查·马修·斯托曼(Ric hard Stallman)创立了GNU计划(GNU Project)。这个计划有一个目标是为了发展一个完全免费自由的 Unix-like 操作系统。自1990年代发起这个计划以来,GNU 开始大量的产生或收集各种系统所必备的元件,像是——函式库(libraries)、编译器(compilers)、侦错工具(debuggers)、文字编辑器(text editors)、网页服务器(web server),以及一个Unix的使用者接口(Unix shell)——除了执行核心(kernel)仍然付阙外。1990年,GNU计划开始在马赫微核(Mach microkernel)的架构之上开发系统核心,就是所谓的GNU Hurd,但是这个基于Mach的设计异常复杂,发展进度则相对缓慢。

1983年,理查·马修·斯托曼(Ric hard Stallman)创立了GNU计划(GNU Project)。这个计划有一个目标是为了发展一个完全免费自由的 Unix-like 操作系统。自1990年代发起这个计划以来,GNU 开始大量的产生或收集各种系统所必备的元件,像是——函式库(libraries)、编译器(compilers)、侦错工具(debuggers)、文字编辑器(text editors)、网页服务器(web server),以及一个Unix的使用者接口(Unix shell)——除了执行核心(kernel)仍然付阙外。1990年,GNU计划开始在马赫微核(Mach microkernel)的架构之上开发系统核心,也就是所谓的GNU Hurd,但是这个基于Mach的设计异常复杂,发展进度则相对缓慢。

Linux内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的,当时他并不满意Minix这个教学用的操作系统。最初的设想中,Linux 是一种类似 Minix 这样的一种操作系统。Linux的第一个版本在19919月被大学FTP server管理员Ari Lemmke发布在Internet上,最初Torvalds 称这个核心的名称为 “Freax” ,意思是自由( “free” 和奇异( “freak” 的结合字,并且附上了“X”这个常用的字母,以配合所谓的 Unix-like 的系统。但是FTP server管理员嫌原来的命名“Freax”的名称不好听,把核心的称呼改成“Linux”,当时仅有10000行代码,仍必须执行于Minix操作系统之上,并且必须使用硬盘开机;随后在10月份第二个版本(0.02版)就发布了,同时这位芬兰赫尔辛基的大学生在comp.os.minix上发布一则讯息。

Linux 的历史是和GNU紧密联系在一起的。从1983年开始的GNU计划致力于开发一个自由并且完整的类Unix操作系统,包括软件开发工具和各种应用程序。到1991 Linux 内核发布的时候,GNU已经几乎完成了除了系统内核之外的各种必备软件的开发。在 Linus Torvalds 和其他开发人员的努力下,GNU组件可以运行于Linux内核之上。整个内核是基于 GNU 通用公共许可,也就是GPLGNU General Public LicenseGNU通用公共许可证)的,但是Linux内核并不是GNU 计划的一部分。19943月,Linux1.0版正式发布,Marc Ewing成立了 Red Hat 软件公司,成为最著名的 Linux 分销商之一。(摘自中国维基)

那么Linux又有那些放行版呢?

比较出名的有UbuntuFedoraRedhatDebianSuseOpensuseCentosGentooLFS等等。

服务器通常会使用:RedhatDebianUbuntuServer版本)、SuseCentos

Linux爱好者经常使用:FedoraUbuntu(桌面版)、DebianSuseopensuse

比较自主:GentooLFS。(比较自主是安装自己的意愿去组装一个Linux)。

安装上面推荐的,选择一个自己喜欢的版本,只有选择了,我们才能继续下去。

Yayi在这里选择了Fedora

原因没有,萝卜青菜各有所爱,没有谁特别好,谁特别不好,因为大家都是Linux

那么Yayi为什么要去维基摘选上面的给大家呢?

难道你想别人跟你说“Debian系统怎么安装?”自己却不知道那个是什么东西?所以大家至少要把上面的摘选看一下。

选择好自己的系统后我们就开始安装吧。(系列教程笔者将使用Fedora10为示范)把光碟放入光驱设置为从光盘启动好后就会看到下面的画面了。然后我们选择第一项“Install or upgrade an existing system

选择后第一步后它将会检测光盘的完整性。如果需要检测则选择“OK”。如果不选择就选择“Skip”。Yayi就选择Skip跳过检测了。

到了这一步就直接NEXT吧。

注意:如果无法显示下面的画面则回到第一步,按tab建输入linux xdriver=vesa resolution=1024x768然后继续。

在这里选择自己需要的语言,然后下一步。需要外语的自己选择。

下面选择键盘的属性,大陆使用一般都是标准的US.English(也就是电脑城买到那些普通的键盘)。

这里选择“安装Fedora”,继续下一步。

设置好自己的机器名称。在这里值得注意的是,这里的机器名称并不是Windowsnetbios名称。

选择自己所在的时区,中国东边一搬选择上海。

输入根用户密码(Root),根用户密码也就是管理员密码,在Linux下管理员只有一个就是Root,当然可以把Root更改名字,不过那将会为你以后埋下一堆让你头疼的伏笔。

这里或许就是光盘安装的唯一一个难点了,有必要在分区之前告诉大家Linux的分区情况,不过详细的将会再以前讲到。

我们在windows下常见的文件系统有Ntfsfat等。

不知道大家还记得硬盘分区的一个概念不。

主分区一共最多可以有4个,扩展分区1个,逻辑分区可以有很多。

把这个记住了,下面开始说说Linux下文件系统:

Linux对硬盘的标识:sda1/hda1

sd/hd代表硬盘类型,我们PC机就两大类硬盘(SCSI一般PC机上没人会去装),有IDESATALinux下面对于IDE类的硬盘用hd来标识,而SCSISATA一样用sd标识。

a代表硬盘序号,而第一块硬盘用a来表示,第二块用b来表示,如此类推。

1代表分区序号。

注意:一个主分区最多可以标识成sda4/hda4

简单的认识完后,我们尝试自己标识一个,第三块SCSI硬盘的第二个主分区:sdc2那么第2IDE硬盘的第1个逻辑分区:hdb5

注意:无论你的硬盘是是否有主分区存在,逻辑分区一定从5开始,第二个就是6

接下来我们看看文件系统,常见的有ext3ext2swap等等。

对于新手的我们暂时先了解这3个。

Swap是交换分区,一定需要分区的,一般是内存的2倍。内存过大时不需要分过大,如8G以上。

Linux下面有个“挂载”这个词,在我们选择分区的时候会看到系统要求你选择挂载点。

在了解挂载点之前,必须说的是Linux是以“/”来建立的,并不是我们在windows下的c$d$这样来储存的,也就是说无论你的分区多少个挂载的地方一定是根的下面(“/”等于“根”)。当然swap等除外。

挂载点是什么?或许我这么跟你说你会明白快点。

打开你的c$,会看到windowsProgram Files之类的,可以理解成将文件分类好储存,每个挂载点放的文件各有各的意义,一定要理解好几个重要的。

目录(挂载点) 说明
/ 根目录,根所在的分区为根分区。
/boot 储存启动文件,一般独立分区。
/home 用户的宿主目录,root除外,一般独立分区
/root 管理员root的宿主目录。
/etc 用于储存Linux系统各种程序的配置文件。
/usr 用于储存应用程序(软件本身)。
/var 用于储存需要经常变化的文件(如数据库)。
/bin 用于储存普通用户可以执行的软件(可以看成快捷方式,大多数书籍会写这里存放命令)。
/sbin 储存管理员才能执行的软件(可以看成快捷方式,大多数书籍会写这里存放命令 )。
/tmp 用于储存临时文件,每次开机会自动清除。

一个Linux系统最少需要2个分区,一个是挂载“/”,一个则是交换分区,大家记住了。

在下面的画面我们选择“建立自定义分区结构”。

在这里我们选择新建,然后选择文件系统类型,挂载点分区大小。

交换分区不需要选择挂载点。

一般我们不是服务器的可以分成一个交换分区,一个“/”,还有一个挂载“/boot”的分区。分区好后如下图:

如果你怕自己分错或者嫌麻烦,可以让系统帮你分区,在之前的画面选择“在选定驱动上删除linux分区并创建默认的分区结构”,然后下一步就好了。

这里是选择自己要安装的选件,如果需要自己定制,那么就按现在定制吧。这里我们默认,继续下一步。

然后就进入安装了,安装过程是个漫长的等待。安装好后安装提示重启就好了。

这个没有看fedora10的启动画面是因为显卡驱动没有装好。不过可以尝试修改/boot/grub/grub.conf文件解决,不一定成功。详细的修改将后面讲到。

无论有无开机画面,按下方向键“↓”就可以看到详细开机进度。

看到欢迎画面了,对于大部分人来说基本就快完成了,但是一部人会不成功,后面详细讲,下一步吧。

还是继续下一步,这里主要是告诉你许可的信息,法律程序,你不是盗版的,别怕,这里已经给你许可了。

设置一个普通用户名,这个用户将是你以后在桌面下登陆的用户。

设置好时间,下一步。
这里是要你把你机器的配置发送给Fedora,可以无视,选择完成。

然后就到了登陆画面了,赶紧选择好刚刚创建的用户输入密码吧。

这里,已经说明我们成功了。

现在我们就讲讲把最后的信息设置好,点击完成后死机,非法重启继续回到欢迎界面设置的解决方法。

1. 开启电脑后,随便按下建,

2. 看到选择启动项,按E进行编辑。

3. 然后选择第二项,按E

4. 在最后面加个1,然后按esc

5. 再按B启动单用户,然后把firstboot这个服务给禁用了。

6. init 5继续。

在前面讲到fedora 10开机画面无法开启就和笔者一样是一条横条。这样的情况下可以尝试编辑/boot/grub/grub.conf文件。在“kernel /boot/vmlinuz-2.6.27.5-117.fc10.i686 ro root=UUID=XXXXX rhgb quiet” 后面加上vga=0x317kernel /boot/vmlinuz-2.6.27.5-117.fc10.i686 ro root=UUID=XXXXX rhgb quiet vga=0x317这个样子就好了,不一定成功!关于vga的参数设置,可以g.cn上找找。

到这里为止,一切都完成了。第一课讲完,认识与安装Fedora

Windows 运行命令

一.Shell:command (外壳命令行)

以“Shell+冒号+命令”的格式,打开各种外壳文件夹:
(1)shell:AddNewProgramsFolder
(2)shell:Administrative Tools
(3)shell:AppData
(4)shell:AppUpdatesFolder
(5)shell:Cache
(6)shell:CD Burning
(7)shell:ChangeRemoveProgramsFolder
(8)shell:Common Administrative Tools
(9)shell:Common AppData
(10)shell:Common Desktop
(11)shell:Common Documents
(12)shell:Common Programs
(13)shell:Common Start Menu
(14)shell:Common Startup
(15)shell:Common Templates
(16)shell:CommonDownloads
(17)shell:CommonMusic
(18)shell:CommonPictures
(19)shell:CommonVideo
(20)shell:ConflictFolder
(21)shell:ConnectionsFolder
(22)shell:Contacts
(23)shell:ControlPanelFolder
(24)shell:Cookies
(25)shell:CredentialManager
(26)shell:CryptoKeys
(26)shell:CSCFolder
(27)shell:Default Gadgets
(28)shell:Desktop
(29)shell:Downloads
(30)shell:DpapiKeys
(31)shell:Favorites
(32)shell:Fonts
(33)shell:Gadgets
(34)shell:Games
(35)shell:GameTasks
(36)shell:History
(37)shell:InternetFolder
(38)shell:Links
(39)shell:Local AppData
(40)shell:LocalAppDataLow
(41)shell:LocalizedResourcesDir
(42)shell:MAPIFolder
(43)shell:My Music
(44)shell:My Pictures
(45)shell:My Video
(46)shell:MyComputerFolder
(47)shell:NetHood
(48)shell:NetworkPlacesFolder
(49)shell:OEM Links
(50)shell:Original Images
(51)shell:Personal
(52)shell:PhotoAlbums
(53)shell:Playlists
(54)shell:PrintersFolder
(55)shell:PrintHood
(56)shell:Profile
(57)shell:ProgramFiles
(58)shell:ProgramFilesCommon
(59)shell:ProgramFilesCommonX86
(60)shell:ProgramFilesX86
(61)shell:Programs
(62)shell:Public
(63)shell:PublicGameTasks
(64)shell:Quick Launch
(65)shell:Recent
(66)shell:RecycleBinFolder
(67)shell:ResourceDir
(68)shell:SampleMusic
(69)shell:SamplePictures
(70)shell:SamplePlaylists
(71)shell:SampleVideos
(72)shell:SavedGames
(73)shell:Searches
(74)shell:SendTo
(75)shell:Start Menu
(76)shell:Startup
(77)shell:SyncCenterFolder
(78)shell:SyncResultsFolder
(79)shell:SyncSetupFolder
(80)shell:System
(81)shell:SystemCertificates
(82)shell:SystemX86
(83)shell:Templates
(84)shell:TreePropertiesFolder
(85)shell:UserProfiles
(86)shell:UsersFilesFolder
(87)shell:Windows

二.快速开启功能篇:

(1)appwiz.cpl 开启添加删除程序
(2)Control Pannel(控制面板)
(3)collab.cpl 网络邻居登陆设置
(4)desk.cpl 显示设置
(5)firewall.cpl 防火墙设置
(6)hdwwiz.cpl 硬件添加向导
(7)inetcpl.cpl Internet属性设置
(8)intl.cpl 区域和语言选项设置
(9)main.cpl 鼠标属性设置
(10)mmsys.cpl 声音设置
(11)ncpa.cpl 网络连接
(12)Ncpa.cpl 开启网络连接
(13)powercfg.cpl 电源选项
(14)sysdm.cpl 系统属性
(15)wscui.cpl 安全中心

三.用户功能篇:

(1)control.exe /name Microsoft.WindowsUpdate 启用windows update
(2)control.exe /name Microsoft.PerformanceInformationAndTools 启用vista体验索引窗口
(3)control.exe /name Microsoft.Personalization /page pageWallpaper 启用壁纸设置窗口
(4)control.exe /name Microsoft.FolderOptions 启用文件夹选项设置对话框
(5)netplwiz 打开用户管理器

四.MMC(管理控制台)功能的快速开启:

(1)compmgmt.msc 计算机管理控制台
(2)devmgmt.msc 设备管理器控制台
(3)diskmgmt.msc 磁盘管理器控制台
(4)eventvwr.msc 日志管理器控制台
(5)fsmgmt.msc 共享文件夹控制台
(6)gpedit.msc 组策略管理控制台
(7)iis6.msc iis管理控制台
(8)lusrmgr.msc 本地账户管理控制台
(9)napclcfg.msc NAP管理控制台
(10)printmanagement.msc 打印管理控制台
(11)rsop.msc 组策略结果集控制台
(12)services.msc 服务管理控制台
(13)wf.msc 防火墙管理控制台

五.系统工具的快速启用

(1)osk.exe 启用屏幕键盘
(2)msconfig.exe 系统启动设置工具,其中包含启用,关闭UAC功能
(3)notepad.exe 打开记事本
(4)mspaint.exe 打开画笔
(5)explorer.exe 启用资源管理器
(6)cmd.exe 启用命令行窗口
(7)SystemPropertiesAdvanced.exe“系统属性”->“高级”
(8)SystemPropertiesComputerName.exe“系统属性”->“计算机名”
(9)SystemPropertiesDataExecutionPrevention.exe“系统属性”->“数据执行保护”
(10)SystemPropertiesHardware.exe“系统属性”->“硬件”
(11)SystemPropertiesPerformance.exe“系统属性”->“性能选项”
(12)SystemPropertiesProtection.exe “系统属性”->“系统保护”
(13)SystemPropertiesRemote.exe “系统属性”->“远程”

Linux-dd命令

1. 命令简介

dd 的主要选项:

指定数字的地方若以下列字符结尾乘以相应的数字:

b=512, c=1, k=1024, w=2, xm=number m

if=file

输入文件名,缺省为标准输入。

of=file

输出文件名,缺省为标准输出。

ibs=bytes

一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。

obs=bytes

一次写 bytes 个字节(即一个块大小为 bytes 个字节)。

bs=bytes

同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。

cbs=bytes

一次转换 bytes 个字节,即转换缓冲区大小。

skip=blocks

从输入文件开头跳过 blocks 个块后再开始复制。

seek=blocks

从输出文件开头跳过 blocks 个块后再开始复制。(通常只有当输出文件是磁盘或磁带时才有效)。

count=blocks

仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数。

conv=conversion[,conversion…]

用指定的参数转换文件。

转换参数:

ascii 转换 EBCDIC 为 ASCII。

ebcdic 转换 ASCII 为 EBCDIC。

ibm 转换 ASCII 为 alternate EBCDIC.

block 把每一行转换为长度为 cbs 的记录,不足部分用空格填充。

unblock 使每一行的长度都为 cbs ,不足部分用空格填充。

lcase 把大写字符转换为小写字符。

ucase 把小写字符转换为大写字符。

swab 交换输入的每对字节。

noerror 出错时不停止。

notrunc 不截短输出文件。

sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。

2.实例分析

2.1.数据备份与恢复

2.1.1整盘数据备份与恢复
备份:

dd if=/dev/hdx of=/dev/hdy
将本地的/dev/hdx整盘备份到/dev/hdy

dd if=/dev/hdx of=/path/to/image
将/dev/hdx全盘数据备份到指定路径的image文件

dd if=/dev/hdx | gzip >/path/to/image.gz
备份/dev/hdx全盘数据,并利用gzip工具进行压缩,保存到指定路径

恢复:
dd if=/path/to/image of=/dev/hdx
将备份文件恢复到指定盘

gzip -dc /path/to/image.gz | dd of=/dev/hdx
将压缩的备份文件恢复到指定盘

2.1.2.利用netcat远程备份

dd if=/dev/hda bs=16065b | netcat < targethost-IP > 1234
在源主机上执行此命令备份/dev/hda

netcat -l -p 1234 | dd of=/dev/hdc bs=16065b
在目的主机上执行此命令来接收数据并写入/dev/hdc

netcat -l -p 1234 | bzip2 > partition.img
netcat -l -p 1234 | gzip > partition.img

以上两条指令是目的主机指令的变化分别采用bzip2  gzip对数据进行压缩,并将备份文件保存在当前目录。

2.1.3.备份MBR
备份:

dd if=/dev/hdx of=/path/to/image count=1 bs=512
备份磁盘开始的512Byte大小的MBR信息到指定文件

恢复:

dd if=/path/to/image of=/dev/hdx
将备份的MBR信息写到磁盘开始部分

2.1.4.备份软盘

dd if=/dev/fd0 of=disk.img count=1 bs=1440k
将软驱数据备份到当前目录的disk.img文件

2.1.5.拷贝内存资料到硬盘

dd if=/dev/mem of=/root/mem.bin bs=1024
将内存里的数据拷贝到root目录下的mem.bin文件

2.1.6.从光盘拷贝iso镜像

dd if=/dev/cdrom of=/root/cd.iso
拷贝光盘数据到root文件夹下,并保存为cd.iso文件

2.2.增加Swap分区文件大小

dd if=/dev/zero of=/swapfile bs=1024 count=262144

创建一个足够大的文件(此处为256M)

mkswap /swapfile
把这个文件变成swap文件


swapon /swapfile

启用这个swap文件

/swapfile swap swap defaults 0 0
在每次开机的时候自动加载swap文件, 需要在 /etc/fstab 文件中增加一行

2.3.销毁磁盘数据

dd if=/dev/urandom of=/dev/hda1
利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。执行此操作以后,/dev/hda1将无法挂载,创建和拷贝操作无法执行。

2.4磁盘管理

2.4.1.得到最恰当的block size

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file
dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

通过比较dd指令输出中所显示的命令执行时间,即可确定系统最佳的block size大小
2.4.2测试硬盘读写速度

dd if=/root/1Gb.file bs=64k | dd of=/dev/null
&nbsp
;           dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000

通过上两个命令输出的执行时间,可以计算出测试硬盘的读/写速度

2.4.3.修复硬盘

dd if=/dev/sda of=/dev/sda
当硬盘较长时间(比如1,2年)放置不使用后,磁盘上会产生magnetic flux point。当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。且这个过程是安全,高效的。