<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>大概是个博客 &#187; Linux</title>
	<atom:link href="http://dagai.net/archives/tag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://dagai.net</link>
	<description>每天进步一点点</description>
	<lastBuildDate>Sat, 31 Jul 2010 04:55:37 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		
<!-- Start Of Script Generated By WP-PostViews Plus -->
<script type='text/javascript' src='http://dagai.net/wp-includes/js/jquery/jquery.js?ver=1.3.2'></script>
<script type="text/javascript">
/* <![CDATA[ */
/* ]]> */
</script>
<!-- End Of Script Generated By WP-PostViews Plus -->
	<item>
		<title>[转]Linux必学的60个命令</title>
		<link>http://dagai.net/archives/96</link>
		<comments>http://dagai.net/archives/96#comments</comments>
		<pubDate>Fri, 04 Jan 2008 07:21:30 +0000</pubDate>
		<dc:creator>Dagai</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://dagai.net/archives/96.html</guid>
		<description><![CDATA[Linux提供了大量的命令，利用它可以有效地完成大量的工作，如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以，在Linux系统上工作离不开使用系统提供的命令。要想真正理... ]]></description>
			<content:encoded><![CDATA[<p>Linux提供了大量的命令，利用它可以有效地完成大量的工作，如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以，在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统，就必须从Linux命令学起，通过基础的命令学习可以进一步理解Linux系统。<br />
<span id="more-96"></span><br />
不同Linux发行版的命令数量不一样，但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令，按照它们在系统中的作用分成下面六个部分一一介绍。</p>
<p>◆ 安装和登录命令：login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last；</p>
<p>◆ 文件处理命令：file、mkdir、grep、dd、find、mv、ls、diff、cat、ln；</p>
<p>◆ 系统管理相关命令：df、top、free、quota、at、lp、adduser、groupadd、kill、crontab；</p>
<p>◆ 网络操作命令：ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup；</p>
<p>◆ 系统安全相关命令：passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who；</p>
<p>◆ 其它命令：tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。</p>
<p>本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例，介绍Linux下的安装和登录命令。</p>
<p>login</p>
<p>1.作用</p>
<p>login的作用是登录系统，它的使用权限是所有用户。</p>
<p>2.格式</p>
<p>login [name][－p ][－h 主机名称]</p>
<p>3.主要参数</p>
<p>－p:通知login保持现在的环境参数。</p>
<p>－h:用来向远程登录的之间传输用户名。</p>
<p>如果选择用命令行模式登录Linux的话，那么看到的第一个Linux命令就是login：。</p>
<p>一般界面是这样的：</p>
<p>Manddrake Linux release 9.1(Bamboo) for i586</p>
<p>renrel 2.4.21－0.13mdk on i686 / tty1</p>
<p>localhost login:root</p>
<p>password:</p>
<p>上面代码中，第一行是Linux发行版本号，第二行是内核版本号和登录的虚拟控制台，我们在第三行输入登录名，按“Enter”键在Password后输入账户密码，即可登录系统。出于安全考虑，输入账户密码时字符不会在屏幕上回显，光标也不移动。</p>
<p>登录后会看到下面这个界面（以超级用户为例）：</p>
<p>[root@localhost root]#</p>
<p>last login:Tue ,Nov 18 10:00:55 on vc/1</p>
<p>上面显示的是登录星期、月、日、时间和使用的虚拟控制台。</p>
<p>4.应用技巧</p>
<p>Linux是一个真正的多用户操作系统，可以同时接受多个用户登录，还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样，提供了虚拟控制台的访问方式，允许用户在同一时间从控制台（系统的控制台是与系统直接相连的监视器和键盘）进行多次登录。每个虚拟控制台可以看作是一个独立的工作站，工作台之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现，通常使用F1-F6 。</p>
<p>例如，用户登录后，按一下“Alt+F2”键，用户就可以看到上面出现的“login:”提示符，说明用户看到了第二个虚拟控制台。然后只需按“Alt+ F1”键，就可以回到第一个虚拟控制台。一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制台最有用的是，当一个程序出错造成系统死锁时，可以切换到其它虚拟控制台工作，关闭这个程序。</p>
<p>shutdown</p>
<p>1.作用</p>
<p>shutdown命令的作用是关闭计算机，它的使用权限是超级用户。</p>
<p>2.格式</p>
<p>shutdown [－h][－i][－k][－m][－t]</p>
<p>3.重要参数</p>
<p>－t：在改变到其它运行级别之前，告诉init程序多久以后关机。</p>
<p>－k：并不真正关机，只是送警告信号给每位登录者。</p>
<p>－h：关机后关闭电源。</p>
<p>－c：cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数，但是可以输入一个用来解释的讯息，而这信息将会送到每位使用者。</p>
<p>－F：在重启计算机时强迫fsck。</p>
<p>－time：设定关机前的时间。</p>
<p>－m: 将系统改为单用户模式。</p>
<p>－i：关机时显示系统信息。</p>
<p>4.命令说明</p>
<p>shutdown命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统，这是十分危险的。因为Linux与Windows不同，其后台运行着许多进程，所以强制关机可能会导致进程的数据丢失，使系统处于不稳定的状态，甚至在有的系统中会损坏硬件设备（硬盘）。在系统关机前使用 shutdown命令，系统管理员会通知所有登录的用户系统将要关闭，并且login指令会被冻结，即新的用户不能再登录。</p>
<p>halt</p>
<p>1.作用</p>
<p>halt命令的作用是关闭系统，它的使用权限是超级用户。</p>
<p>2.格式</p>
<p>halt [－n] [－w] [－d] [－f] [－i] [－p]</p>
<p>3.主要参数说明</p>
<p>－n：防止sync系统调用，它用在用fsck修补根分区之后，以阻止内核用老版本的超级块覆盖修补过的超级块。</p>
<p>－w：并不是真正的重启或关机,只是写wtmp（/var/log/wtmp）纪录。</p>
<p>－f：没有调用shutdown，而强制关机或重启。</p>
<p>－i：关机（或重启）前，关掉所有的网络接口。</p>
<p>－f：强迫关机，不呼叫shutdown这个指令。</p>
<p>－p: 当关机的时候顺便做关闭电源的动作。</p>
<p>－d：关闭系统，但不留下纪录。</p>
<p>4.命令说明</p>
<p>halt就是调用shutdown －h。halt执行时，杀死应用进程，执行sync(将存于buffer中的资料强制写入硬盘中)系统调用，文件系统写操作完成后就会停止内核。若系统的运行级别为0或6，则关闭系统；否则以shutdown指令（加上－h参数）来取代。</p>
<p>reboot</p>
<p>1.作用</p>
<p>reboot命令的作用是重新启动计算机，它的使用权限是系统管理者。</p>
<p>2.格式</p>
<p>reboot [－n] [－w] [－d] [－f] [－i]</p>
<p>3.主要参数</p>
<p>－n: 在重开机前不做将记忆体资料写回硬盘的动作。</p>
<p>－w: 并不会真的重开机，只是把记录写到/var/log/wtmp文件里。</p>
<p>－d: 不把记录写到/var/log/wtmp文件里（－n这个参数包含了－d）。</p>
<p>－i: 在重开机之前先把所有与网络相关的装置停止。</p>
<p>install</p>
<p>1.作用</p>
<p>install命令的作用是安装或升级软件或备份数据，它的使用权限是所有用户。</p>
<p>2.格式</p>
<p>(1)install [选项]&#8230; 来源 目的地</p>
<p>(2)install [选项]&#8230; 来源&#8230; 目录</p>
<p>(3)install －d [选项]&#8230; 目录&#8230;</p>
<p>在前两种格式中，会将&lt;来源&gt;复制至&lt;目的地&gt;或将多个&lt;来源&gt;文件复制至已存在的&lt;目录&gt;，同时设定权限模式及所有者/所属组。在第三种格式中，会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也是必须的。</p>
<p>3.主要参数</p>
<p>－－backup[=CONTROL]：为每个已存在的目的地文件进行备份。</p>
<p>－b：类似 －－backup，但不接受任何参数。</p>
<p>－c：(此选项不作处理)。</p>
<p>－d，－－directory：所有参数都作为目录处理，而且会创建指定目录的所有主目录。</p>
<p>－D：创建&lt;目的地&gt;前的所有主目录，然后将&lt;来源&gt;复制至 &lt;目的地&gt;；在第一种使用格式中有用。</p>
<p>－g，－－group=组：自行设定所属组，而不是进程目前的所属组。</p>
<p>－m，－－mode=模式：自行设定权限模式 (像chmod)，而不是rwxr－xr－x。</p>
<p>－o，－－owner=所有者：自行设定所有者 (只适用于超级用户)。</p>
<p>－p，－－preserve－timestamps：以&lt;来源&gt;文件的访问/修改时间作为相应的目的地文件的时间属性。</p>
<p>－s，－－strip：用strip命令删除symbol table，只适用于第一及第二种使用格式。</p>
<p>－S，－－suffix=后缀：自行指定备份文件的&lt;后缀&gt;。</p>
<p>－v，－－verbose：处理每个文件/目录时印出名称。</p>
<p>－－help：显示此帮助信息并离开。</p>
<p>－－version：显示版本信息并离开。</p>
<p>mount</p>
<p>1.作用</p>
<p>mount命令的作用是加载文件系统，它的用权限是超级用户或/etc/fstab中允许的使用者。</p>
<p>2.格式</p>
<p>mount －a [－fv] [－t vfstype] [－n] [－rw] [－F] device dir</p>
<p>3.主要参数</p>
<p>－h：显示辅助信息。</p>
<p>－v：显示信息，通常和－f用来除错。</p>
<p>－a：将/etc/fstab中定义的所有文件系统挂上。</p>
<p>－F：这个命令通常和－a一起使用，它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。</p>
<p>－f：通常用于除错。它会使mount不执行实际挂上的动作，而是模拟整个挂上的过程，通常会和－v一起使用。</p>
<p>－t vfstype：显示被加载文件系统的类型。</p>
<p>－n：一般而言，mount挂上后会在/etc/mtab中写入一笔资料，在系统中没有可写入文件系统的情况下，可以用这个选项取消这个动作。</p>
<p>4.应用技巧</p>
<p>在Linux和Unix系统上，所有文件都是作为一个大型树（以/为根）的一部分访问的。要访问CD-ROM上的文件，需要将CD-ROM设备挂装在文件树中的某个挂装点。如果发行版安装了自动挂装包，那么这个步骤可自动进行。在Linux中，如果要使用硬盘、光驱等储存设备，就得先将它加载，当储存设备挂上了之后，就可以把它当成一个目录来访问。挂上一个设备使用mount命令。在使用mount这个指令时，至少要先知道下列三种信息：要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。</p>
<p>（1）Linux可以识别的文件系统</p>
<p>◆ Windows 95/98常用的FAT 32文件系统：vfat ；</p>
<p>◆ Win NT/2000 的文件系统：ntfs ；</p>
<p>◆ OS/2用的文件系统：hpfs；</p>
<p>◆ Linux用的文件系统：ext2、ext3；</p>
<p>◆ CD-ROM光盘用的文件系统：iso9660。</p>
<p>虽然vfat是指FAT 32系统，但事实上它也兼容FAT 16的文件系统类型。</p>
<p>（2）确定设备的名称</p>
<p>在Linux中，设备名称通常都存在/dev里。这些设备名称的命名都是有规则的，可以用“推理”的方式把设备名称找出来。例如，/dev/hda1这个 IDE设备，hd是Hard Disk(硬盘)的，sd是SCSI Device，fd是Floppy Device(或是Floppy Disk?)。a代表第一个设备，通常IDE接口可以接上4个IDE设备(比如4块硬盘)。所以要识别IDE硬盘的方法分别就是hda、hdb、hdc、 hdd。hda1中的“1”代表hda的第一个硬盘分区 (partition)，hda2代表hda的第二主分区，第一个逻辑分区从hda5开始，依此类推。此外，可以直接检查/var/log/messages文件，在该文件中可以找到计算机开机后系统已辨认出来的设备代号。</p>
<p>（3）查找挂接点</p>
<p>在决定将设备挂接之前，先要查看一下计算机是不是有个/mnt的空目录，该目录就是专门用来当作挂载点(Mount Point)的目录。建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录，当作目录的专用挂载点。举例而言，如要挂载下列5个设备，其执行指令可能如下 (假设都是Linux的ext2系统，如果是Windows XX请将ext2改成vfat)：</p>
<p>软盘 ===&gt;mount －t ext2 /dev/fd0 /mnt/floppy</p>
<p>cdrom ===&gt;mount －t iso9660 /dev/hdc /mnt/cdrom</p>
<p>SCSI cdrom ===&gt;mount －t iso9660 /dev/sdb /mnt/scdrom</p>
<p>SCSI cdr ===&gt;mount －t iso9660 /dev/sdc /mnt/scdr</p>
<p>不过目前大多数较新的Linux发行版本（包括红旗 Linux、中软Linux、Mandrake Linux等）都可以自动挂装文件系统，但Red Hat Linux除外。</p>
<p>umount</p>
<p>1.作用</p>
<p>umount命令的作用是卸载一个文件系统，它的使用权限是超级用户或/etc/fstab中允许的使用者。</p>
<p>2.格式</p>
<p>unmount －a [－fFnrsvw] [－t vfstype] [－n] [－rw] [－F] device dir</p>
<p>3.使用说明</p>
<p>umount命令是mount命令的逆操作，它的参数和使用方法和mount命令是一样的。Linux挂装CD-ROM后，会锁定CD—ROM，这样就不能用CD-ROM面板上的Eject按钮弹出它。但是，当不再需要光盘时，如果已将/cdrom作为符号链接，请使用umount/cdrom来卸装它。仅当无用户正在使用光盘时，该命令才会成功。该命令包括了将带有当前工作目录当作该光盘中的目录的终端窗口。</p>
<p>chsh</p>
<p>1.作用</p>
<p>chsh命令的作用是更改使用者shell设定，它的使用权限是所有使用者。</p>
<p>2.格式</p>
<p>chsh [ －s ] [ －list] [ －－help ] [ －v ] [ username ]</p>
<p>3.主要参数</p>
<p>－l：显示系统所有Shell类型。</p>
<p>－v：显示Shell版本号。</p>
<p>4.应用技巧</p>
<p>前面介绍了Linux下有多种Shell，一般缺省的是Bash，如果想更换Shell类型可以使用chsh命令。先输入账户密码，然后输入新Shell类型，如果操作正确系统会显示“Shell change”。其界面一般如下：</p>
<p>Changing fihanging shell for cao</p>
<p>Password:</p>
<p>New shell [/bin/bash]: /bin/tcsh</p>
<p>上面代码中，[ ]内是目前使用的Shell。普通用户只能修改自己的Shell，超级用户可以修改全体用户的Shell。要想查询系统提供哪些Shell，可以使用chsh -l 命令，见图1所示。</p>
<p>图1 系统可以使用的Shell类型</p>
<p>从图1中可以看到，笔者系统中可以使用的Shell有bash（缺省）、csh、sh、tcsh四种。</p>
<p>exit</p>
<p>1.作用</p>
<p>exit命令的作用是退出系统，它的使用权限是所有用户。</p>
<p>2.格式</p>
<p>exit</p>
<p>3.参数</p>
<p>exit命令没有参数，运行后退出系统进入登录界面。</p>
<p>last</p>
<p>1.作用</p>
<p>last命令的作用是显示近期用户或终端的登录情况，它的使用权限是所有用户。通过last命令查看该程序的log，管理员可以获知谁曾经或企图连接系统。</p>
<p>2.格式</p>
<p>1ast[—n][－f file][－t tty] [—h 节点][－I —IP][—1][－y][1D]</p>
<p>3.主要参数</p>
<p>－n：指定输出记录的条数。</p>
<p>－f file：指定用文件file作为查询用的log文件。</p>
<p>－t tty：只显示指定的虚拟控制台上登录情况。</p>
<p>－h 节点：只显示指定的节点上的登录情况。</p>
<p>－i IP：只显示指定的IP上登录的情况。</p>
<p>－1：用IP来显示远端地址。</p>
<p>－y：显示记录的年、月、日。</p>
<p>－ID：知道查询的用户名。</p>
<p>－x:显示系统关闭、用户登录和退出的历史。</p>
<p>动手练习</p>
<p>上面介绍了Linux安装和登录命令，下面介绍几个实例，动手练习一下刚才讲过的命令。</p>
<p>1.一次运行多个命令</p>
<p>在一个命令行中可以执行多个命令，用分号将各个命令隔开即可，例如：</p>
<p>＃last －x；halt</p>
<p>上面代码表示在显示系统关闭、用户登录和退出的历史后关闭计算机。</p>
<p>2.利用mount挂装文件系统访问Windows系统</p>
<p>许多Linux发行版本现在都可以自动加载Vfat分区来访问Windows系统，而Red Hat各个版本都没有自动加载Vfat分区，因此还需要进行手工操作。</p>
<p>mount可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下，从而将Windows的分区和/mnt这个目录联系起来。因此，只要访问这个文件夹就相当于访问该分区了。首先要在/mnt下建立winc文件夹，在命令提示符下输入下面命令：</p>
<p>＃mount -t vfat /dev/hda1 /mnt/winc</p>
<p>即表示将Windows的C分区挂到Liunx的/mnt/winc目录下。这时，在/mnt/winc目录下就可以看到Windows中C盘的内容了。使用类似的方法可以访问Windows系统的D、E盘。在Linux系统显示Windows的分区一般顺序这样的：hda1为C盘、hda5为D盘、 hda6为E盘……以此类推。上述方法可以查看Windows系统有一个很大的问题，就是Windows中的所有中文文件名或文件夹名全部显示为问号 “？”，而英文却可以正常显示。我们可以通过加入一些参数让它显示中文。还以上面的操作为例，此时输入命令：</p>
<p>＃mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc</p>
<p>现在它就可以正常显示中文了。</p>
<p>3.使用mount加挂闪盘上的文件系统</p>
<p>在Linux下使用闪盘非常简单。Linux对USB设备有很好的支持，当插入闪盘后，闪盘被识别为一个SCSI盘，通常输入以下命令：</p>
<p>＃ mount /dev/sda1 /usb</p>
<p>就能够加挂闪盘上的文件系统。</p>
]]></content:encoded>
			<wfw:commentRss>http://dagai.net/archives/96/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>linux，想说爱你不容易啊</title>
		<link>http://dagai.net/archives/70</link>
		<comments>http://dagai.net/archives/70#comments</comments>
		<pubDate>Thu, 29 Nov 2007 14:34:12 +0000</pubDate>
		<dc:creator>Dagai</dc:creator>
				<category><![CDATA[Lostcity]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://dagai.net/archives/70.html</guid>
		<description><![CDATA[接触linux已经是很久以前的事了，red hat、ubuntu、红旗、turbo linux等等，一直只是偶尔装着玩玩，存活时间也一般不会超过两个星期。前些日子心血来潮在当当网买了本“鸟哥的linux私房菜”，只... ]]></description>
			<content:encoded><![CDATA[<p>接触linux已经是很久以前的事了，red hat、ubuntu、红旗、turbo linux等等，一直只是偶尔装着玩玩，存活时间也一般不会超过两个星期。前些日子心血来潮在当当网买了本“鸟哥的linux私房菜”，只是基础教程，想来惭愧，从知道linux以来，就只看过几篇教程，至于书嘛那是一本都未买，这次一时兴起就买了本，准备入入门。<br />
在公司的电脑上挂了一块新硬盘，分出一半来装了个redhat as5，安装linux已经轻车熟路了，就是发现redhat as5的中文化程度还还不如redhat9呢，可真是为难死老夫了。调个分辨率都搞了半天没成功，后来才想起自己根本未设置显示器，要命的还在后头，虽然能上网，但是QQ呢，找了半天找了个pidgin，弄了半天愣是没弄上，后来照着pidgin官方的用yum安装也错误一大堆，头疼，估计有些程序没有安装，想找个跟windows的添加删除windows组件差不多的东西都没找到，可能是因为大都是英文看不懂吧。看来只能慢慢看鸟哥的入门教程了，鸟哥说得好啊，不能出现问题就去翻书找资料，还是先把一些基础弄懂再说吧。</p>
]]></content:encoded>
			<wfw:commentRss>http://dagai.net/archives/70/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fedora core 8即将发布</title>
		<link>http://dagai.net/archives/5</link>
		<comments>http://dagai.net/archives/5#comments</comments>
		<pubDate>Mon, 29 Oct 2007 17:02:53 +0000</pubDate>
		<dc:creator>Dagai</dc:creator>
				<category><![CDATA[Lostcity]]></category>
		<category><![CDATA[fedora core]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://dagai.net/archives/5.html</guid>
		<description><![CDATA[前不久Ubuntu发行了7.10版，FC也忍不住了要发布8.0，最近不停的换装了各个版本的linux，包括fedora core 6、Ubuntu 7.04、Redhat AS5等等，结果都在装完后被干掉，因为老夫是个菜鸟，老夫只是希望能支... ]]></description>
			<content:encoded><![CDATA[<p>前不久Ubuntu发行了7.10版，FC也忍不住了要发布8.0，最近不停的换装了各个版本的linux，包括fedora core 6、Ubuntu 7.04、Redhat AS5等等，结果都在装完后被干掉，因为老夫是个菜鸟，老夫只是希望能支持一下这个破本本的宽屏分辨率，折腾那个915resolution许久，都未能如愿，后来在7.10发布后赶快下了一个来看了下，直接完美支持宽屏，不用再自己折腾了，只是有个小问题，那个LIVE CD在安装到分区这里就不出来了，在虚拟机上安装又好好的，郁闷，不知道咋回事。</p>
<p>以前熟悉过一段时间Redhat，还是比较喜欢Redhat的操作方式，期待Fedora core 8&#8230;&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://dagai.net/archives/5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
