故意学习,故意生活,故意活的像个人!

发布新日志

  • Linux新手系列之二

    2007-05-23 12:06:29

     你从来只用过Windows,从来没接触过UNIX,只知道把一个文件拽来拽去,只知道硬盘就是C:\ D:\ E:\却从来没有研究过分区表,也许会用VC编个程序,很习惯它的集成环境....

      有一天,不管什么原因了,也许是看报纸上那些把内存和硬盘都分不清楚的记者的吹嘘,或者是老板要求你用它作个项目,或者是同学们都有了你没有觉得很土,或者你听说找工作有这个的经验就有更大希望....不管怎样,你想在自己的机器上安装一个Linux。OK,这个文章就是给你写的,因为从现在开始,你会有成堆的问题你会觉得从前在windows那里得来的有关计算机的经验好像完全用不上。你会觉得"Linux怎么这样麻烦"。你会有种从来没有开过汽车但是得把汽车拆开修理一样觉得无处下手。OK,这个文章就是为你写的。

      为什么要学Linux。其实你不必学习Linux,如果你就是想使用计算机让它使你的工作,比如打字,排版,统计数据等更有效率,Linux不行。Windows,或者我推荐windows 2000是你最好的选择,它对中文的支持很好,非常稳定,上面有无数应用程序,而且如果你自己承担风险,还可以使用盗版,免费。Linux将会给你造成很多麻烦,安装时会造成系统数据丢失,无法驱动网卡/声卡/显示卡/显示器,无法配置中文,图形界面速度慢,等等。从前在windows上很容易做到的比如修改显示频率或者安装新的网卡驱动在Linux下都变得好像要你自己重新上一次大一计算机原理课那么讨厌。呵呵,那Linux有什么好处呢?你会问。其实Linux没什么好处,从使用角度,它唯一的好处是它是我们自己的,而windows再好,是Microsoft的。“又能怎么样?”你也许又问。区别是,Linux可以让你来研究它,通过使用Linux你可以获得更深一步对计算机的了解……而不只是一个全自动的盒子。计算机是一个很神奇的东西,你也许对那些写出windows的程序员很崇拜(我是的),或者对那些能发明更好的算法更安全的操作系统的hacker(对不起,远程攻击系统的不是hacker)很崇拜,那么你应当知道,坐在一个windows的机器前面整天就会用鼠标拖拽也许能给你一个很好的打字员的薪水,但是永远无法让你进入真正计算机的世界--成为一个自由思想的Hacker,或者说,你只能永远是个windows的用户 …… 也没什么不好,很多领导还不会计算机呢 -- 而不可能有机会自己写一个windows。

      一个不太妙的结果是,当世界上充满了windows的奴隶时,我们就得花更大的价钱从Microsoft那里获得这样的技术,某些社会里,我们管这个叫做剥削。

      讲这么多,无非是说,萝卜不能两头切,至少现在是这样。要想什么别人都给你做好,系统安装一路回车,硬件配置点两下鼠标,对不起,请用windows 2000。如果你准备好了这一切,那么接着看吧。   
  • 学会在Linux下对硬盘分区

    2007-05-23 12:04:12

      第一点也是最重要的一点,要知道当前安装LILO的版本,因为LILO2.21及早期版本对硬盘大小有限制,如果安装LILO到1023磁道以外即8G的空间以外,LILO就无法启动。 但一些BIOS较老的机器,LINUX仍然无法突破1024磁道的限制,因此这些BIOS无法认出大于1024的硬盘空间。

      1. 还需要考虑的问题有:
      2. 是否限制用户可使用的磁盘空间大小?
      3. 在系统中需要安装哪些软件?
      4. 交换分区需要多大?
      5. 系统是否有多个硬盘?

      下面,我们按系统工作性质的不同对分区的划分提出了一些建议。当然,根据实际情况,在满足系统工作需求的前提下,下面的分区大小也可以灵活的变动。

      一. 基本工作站的分区方案

      假设系统的硬盘大小是10G。

        /boot 20M
        Swap 128M
        /root 9.85G

      建立一个20M的/boot分区是为了避免将系统内核文件放到1024磁道以外,如果将/boot做为root分区的一个子目录,内核文件就会安装在root分区的任何地方,因为硬盘的大小超过了8G,所以在启动时就有可能出现问题。建议将交换分区的大小设置为内存的两倍,在这里我们假设系统的内存为64M。最后我们将硬盘的剩余空间全部分给了root分区。

      二. Red Hat Linux 6.2 及其早期版本上的基本服务器硬盘分区方案

      这里的服务器我们假设只提供几种通用的服务,如WWW服务及FTP服务等几种服务,通过telnet登录的用户数很少。假设其硬盘大小为25G。

        /boot 20M
        Swap 128M
        / 10G
        /home 13G
        /var 2G
     在硬盘的最前面创建20M大小的/boot分区,原因同上。交换分区的大小也是128M,因为内存的大小为64M。

      / ,即root分区设为10G这么大是因为其中有一个/usr目录,这个目录可能会占用很多硬盘空间,特别是在安装了X Server,运行图形界面的应用程序的时候。

      /home分区是硬盘中最大的分区,这似乎与我们假设系统用户数不多有些矛盾。实际上在/home目录下确实没有几个用户目录,但在Red Hat6.2及更早的版本中,Apache服务器和wu-ftpd FTP服务器被放在了/home/httpd及/home/ftp目录中。所以这个分区这么大也是有原因的。

      最后,/var目录独自占用了一个分区,因为系统的所有日志都写到了/var/log目录下,这将会占用很大的硬盘空间。如果系统日志记录得非常详细,整个目录很快会被写满,导致系统工作呆滞。当然,可以通过系统日志后台守护程序syslogd来修改日志配置,避免发生这种情况。

      三. Red Hat 7及以上版本的基本服务器分区方案

      这种情况同前一个方案的情况相同,不同的是LINUX版本为Red Hat 7.0及其以上版本。

      /boot 20M
      Swap 128M
      / 10G
      /var 15G

      与RedHat6不同,在RedHat7中HTTP服务和FTP服务的目录现在位于 /var/www/ 和/var/ftp/,因此/var分区有15G之大也就不难理解了。
      四. 多用户服务器分区方案

      在这种服务器系统中,同时有多个用户通过telnet, ssh, rlogin或其方式在远程访问系统。系统中有三个35G的硬盘驱动器,总共有105G的磁盘空间 。系统中用到了RAID 5技术做数据冗余。这种情况下,管理员必须为每个用户分配磁盘空间。对RedHat 6.2及更早的版本,分区如下:

      Disk 1:
        /boot 20M
        / 4G
        /var 3GB
        /home 27.98G
      Disk 2:
        swap 20MB
        / 4GB
        /var 3GB
        /home 27.98GB
      Disk 3:
        swap 20MB
        / 4GB
        /var 3GB
        /home 27.98GB

      这样分区的原因:首先,Disk1上的20M /boot分区不属于任何RAID阵列,否则如果你将/boot放至RAID阵列中,以后就不能系统内核升级了。

      为了方便管理,在其它两个硬盘中建立了20M的交换分区。这种服务器一般配有1G以上的内存,因此交换分区的大小不成问题。如果增大交换分区,就会减少RAID分区空间,所以20M是足够的。RAID分区的分组如下:

      1-A, 2-A, and 3-A 一起组成一个8G的 RAID 5 驱动器,做为/根目录打开。
      1-B, 2-B, and 3-B 组成 6GB的 RAID 5 驱动器,做为 /var目录。
      1-C, 2-C, and 3-C 组成 55.96GB RAID 5 驱动器, 做为 /home.目录。

      这种分配方案总共有55.96G的空间分配给所有用户及Apache和FTP服务,在/var下用6G空间用做记录日志、邮件,这么大的空间是足够的。

      如果安装Red Hat7或以上版本,应给/var分区更大的空间,因为它同时还存放着WEB和FTP服务的两个目录。
  • linux 安装过程全功略

    2007-05-23 11:57:16

    安装LINUX其实和安装WIN98一样容易,不相信,咱走着瞧。

      (一)安装前准备  

      1、由于初次安装RedHat,为了避免与WIN98冲突,我特地找个闲置的640M的硬盘,并把它设置为从盘,打算把RedHalt安装到该硬盘上。进入WIN98后,系统自动识别为D盘。(如何在同一硬盘上安装LINUX与WIN98,请参阅主页上中文HOW文档)

      (二)开始安装Linux:

       开机进入COMS设置,把引导顺序改为CDROM、A、C。把RedHat6.0光盘放入光驱,系统自动进入安装状态。初次安装,还是执行默认值为妙,由于各自硬件不同,我谈谈我的几个主要步骤吧。 

        1、为Linux添加一个分区,用Tab选择Add钮,按回车,屏幕上将出现一个题为“Edit New Partition”的对话框。首先我们在Mount Point项中,输入这个分区(hdb)所对应的系统目录/(根目录);接着在Size(Megs)项中,输入分区的大小600(单位兆);在Type这一项中用光标上、下键选择适当的分区类型,我们选中Linux的文件分区Linux native;最后按OK确认。这样我们就成功地建立起一个为Linux所用的分区了。如果你的硬盘空间允许,你完全可以再建立一个或几个分区给Linux使用。接着用同样的方法给Linux增加一个交换分区,不同的仅是Mount Point项让它空着,在Type项目中选择Linux Swap。输入分区大小(如64),注意,交换分区的大小不能低于物理内存的实际大小。为Linux分好了区,按OK将分区信息写入硬盘。接着就是进行格式化了,执行默认值吧,  

        2、定制安装Linux软件了,硬盘空间有限,使用默认值算了,哦,我需要KDE,我加上KDE项!好了,现在可以安装了。

        3、设置显示器。我的显示器可不是名牌的,,找个替代吧,我选Viewsonic 14ES,显示器才能上到真彩 否则是丑陋的256色(告诉你,这是我多次配置XWindows才得到的答案喔)。

        5、设置显示卡。到显卡列表找吧,找呀找,终于找到了我的SIS6326,要不然就有点麻烦了。

        6、设置系统管理员密码,密码至少六个以上,它不会出现如WIN下的***,千万不要乱打呀,没有正确的密码可进不了Linux系统的哦。  

        7、系统提示制作启动盘,我可要用它启动我的RedHalt的啊,插入软盘后YES。

        8、安装LILO(Linux多操作系统启动管理器)。我想我大多数的时间还是用Win98吧,选SKIP跳过这一步。用Linux时插入启动盘啦。 

  • Linux命令

    2007-05-23 11:55:42

     Linux虽然是免费的,但它的确是一个非常优秀的操作系统,与MS-WINDOWS相比具有可靠、 稳定、速度快等优点,且拥有丰富的根据UNIX版本改进的强大功能。下面,作为一个典型的DOS 和WINDOWS用户,让我们一起来学习Linux的一些主要命令,希望大家能尽快进入到Linux的世界里。

      一、启动

      Linux的启动操作过程和DOS相似(尽管如此,但作为操作系统本身,Linux在启动和退出时所作的工作要比DOS多得多),也可以通过按下Ctrl+Alt+Del三键进行热启动。不同的是Linux启动到最后时,需要进行登录。下面是一个典型的登录过程:

      ……

      RedHat Linux release 5.1

      Kernel 2.0.32 on an i686

      login:

      你键入:root后,计算机显示输口令(password:),输入你的口令(如果是第一次启动,则是你在安装时所输入的口令)即可。当计算机出现一个“#”提示 符时,表明你登录成功!

      [root@localhost root]#_    Linux提示符 (现在的版本都更新了,默认启动到KDE环境,所以看到的是已经类似WINDOWS的桌面了,而root@localhost root仅只是一个终端)

      C:\>_         DOS提示符

     二、常用的一些命令:

      1.显示文件目录命令ls(DOS下为DIR)

      在Linux中用ls命令显示文件及目录(当然,你仍然也可用DIR命令,只不过在这里的参数不同)。例如:#ls

      root mnt boot dev bin usr xiong tmp etc games

      看起来似乎简单(就相当于DOS中的“DIR/W”),但你会发现你看到的有些难懂,连哪些是目录哪些是文件都不清楚,哪些又是可执行文件呢?不要紧,请输入:#ls -F+root/ mnt/ boot/ dev/ bin/ usr/ xiong* tmp/ etc/ games / readme

      看清楚了吧,带*为可执行文件(相当于DOS中的EXE和COM文件),带/为子目录,其它的为通用文件。另外,我们可用ls -l显示文件目录的详细情况(相当于DOS中的DIR命令)。千万注意区分大小写!!如LS -f;Ls等都是错误的。另外,ls命令还有许多参数,你可以用man ls或ls--help去进一步了解。

      2.改变当前目录命令cd(DOS下为CD)

      在DOS中,我们可以用C:\>CD\MNT\cdrom或cd\mnt\cdrom

      C:\mnt\cdrom>cd ..或cd..或CD..

      C:\mnt>cd\或C:\mnt>cd \

      而在Linux中为cd /mnt/cdrom,目录名的大小写必须与实际相同,cd后必须有空格。

      pwd 显示当前目录

      cd .. 必须为小写,必须有空格

      cd / 总目录为/,cd与/必须有空格

      3.建立子目录mkdir(DOS下为MD或MKDIR)

      在Linux中只能用mkdir,可用相对路径和绝对路径,请比较:

      C:\>md xiong或md \xiong或md\xiong

      DOS系统

      [root@localhost /]#mkdir xiong或mkdir /xiong

      Linux系统

      4.删除子目录命令rmdir(DOS下为RD)

      在Linux中用rmdir命令删除子目录,例如:

      rmdir /mnt/cdrom 相当于rd \mnt\cdrom

      注意:同DOS一样,要删除的子目录必须是空的,而且必须在上一级目录中才能删除下一级 子目录。

      5.删除文件命令RM(DOS下为DEL或EARSE)

      在Linux中用RM命令删除文件,例:

      rm /ucdos.bat 相当于del \ucdos.bat

      6.文件改名命令MV(DOS下为REN或RENAME)在Linux中用mv命令给文件改名,例:

      mv /mnt\floppy p相当于 ren \mnt\floppy p

      说明:在Linux中的mv命令除了文件改名外,还有文件移动的功能,请看例子:

      mv /mnt/floppy /bin 相当于DOS中的命令 move \mnt\floppy \bin

      7.文件复制命令cp(DOS下为COPY)

      在Linux中用cp命令进行文件复制,例:

      cp /ucdos/* /fox 相当于copy \ucdos\*.* \fox

      注意:DOS中的*.*在Linux中用*代替。

     二、常用的一些命令:

      1.显示文件目录命令ls(DOS下为DIR)

      在Linux中用ls命令显示文件及目录(当然,你仍然也可用DIR命令,只不过在这里的参数不同)。例如:#ls

      root mnt boot dev bin usr xiong tmp etc games

      看起来似乎简单(就相当于DOS中的“DIR/W”),但你会发现你看到的有些难懂,连哪些是目录哪些是文件都不清楚,哪些又是可执行文件呢?不要紧,请输入:#ls -F+root/ mnt/ boot/ dev/ bin/ usr/ xiong* tmp/ etc/ games / readme

      看清楚了吧,带*为可执行文件(相当于DOS中的EXE和COM文件),带/为子目录,其它的为通用文件。另外,我们可用ls -l显示文件目录的详细情况(相当于DOS中的DIR命令)。千万注意区分大小写!!如LS -f;Ls等都是错误的。另外,ls命令还有许多参数,你可以用man ls或ls--help去进一步了解。

      2.改变当前目录命令cd(DOS下为CD)

      在DOS中,我们可以用C:\>CD\MNT\cdrom或cd\mnt\cdrom

      C:\mnt\cdrom>cd ..或cd..或CD..

      C:\mnt>cd\或C:\mnt>cd \

      而在Linux中为cd /mnt/cdrom,目录名的大小写必须与实际相同,cd后必须有空格。

      pwd 显示当前目录

      cd .. 必须为小写,必须有空格

      cd / 总目录为/,cd与/必须有空格

      3.建立子目录mkdir(DOS下为MD或MKDIR)

      在Linux中只能用mkdir,可用相对路径和绝对路径,请比较:

      C:\>md xiong或md \xiong或md\xiong

      DOS系统

      [root@localhost /]#mkdir xiong或mkdir /xiong

      Linux系统

      4.删除子目录命令rmdir(DOS下为RD)

      在Linux中用rmdir命令删除子目录,例如:

      rmdir /mnt/cdrom 相当于rd \mnt\cdrom

      注意:同DOS一样,要删除的子目录必须是空的,而且必须在上一级目录中才能删除下一级 子目录。

      5.删除文件命令RM(DOS下为DEL或EARSE)

      在Linux中用RM命令删除文件,例:

      rm /ucdos.bat 相当于del \ucdos.bat

      6.文件改名命令MV(DOS下为REN或RENAME)在Linux中用mv命令给文件改名,例:

      mv /mnt\floppy p相当于 ren \mnt\floppy p

      说明:在Linux中的mv命令除了文件改名外,还有文件移动的功能,请看例子:

      mv /mnt/floppy /bin 相当于DOS中的命令 move \mnt\floppy \bin

      7.文件复制命令cp(DOS下为COPY)

      在Linux中用cp命令进行文件复制,例:

      cp /ucdos/* /fox 相当于copy \ucdos\*.* \fox

      注意:DOS中的*.*在Linux中用*代替。

  • Linux命令使用技巧集锦

    2007-05-23 11:50:54

    初用Linux时可能有处处不方便的感觉, 可是等使用一段 时间掌握了一些技巧后就会感到越来越顺手了. 以下就是我 使用Linux以来积累的一些经验与技巧, 相信对初学者会有所帮助的.

      1. 使用虚拟控制台   

      登录后按Alt+F2键这时又可以看到"login:"提示符, 这 个就是第二个虚拟控制台. 一般新安装的Linux有四个虚拟控 制台, 可以用Alt+F1~Alt+F4来访问. 虚拟控制台最有用的时 候是当一个程序出错锁住输入时可以切换到其他虚拟控制台 ?

      2. 拷贝与粘贴  

      字符界面: 不管是Slackware 还是RedHat 安装后每次启 动时都会自动运行一个叫gpm的程序, 该程序运行后就可以用 鼠标来拷贝与粘贴了. 具体做法是按住鼠标左键拖动使要拷贝的地方反白, 这时反白的区域已经被拷贝, 再按鼠标右键拷贝的内容就会被粘贴在光标所在位置了. X-Window下: 拷贝的操作与字符界面下一样, 三键鼠标的话 按中键粘贴, 两键鼠标的话同时按左右键粘贴(须在配置XF86 时在鼠标的设置里选择 Emulate 3 Button).

      3. 快速进入某些目录

      键入 cd ~ 可进入用户的home目录. 键入 cd - 可进入上一个进入的目录.

      4. 软驱的使用

      如果是Linux 的ext2文件系统用如下命令: #mount -t ext2 /dev/fd0 /mnt dos格式的软盘则用命令: #mount -t msdos /dev/fd0 /mnt 然后就可以在/mnt里访问软盘的内容了, 注意在取出软盘之 前要先卸掉软盘上的文件系统, #umount /mnt 否则会导致信息丢失. 在软盘上建立文件系统可用如下命令: #mke2fs /dev/fd0 1440

      5. RedHat下显示彩色目录列表   

      打开/etc/bashrc, 加入如下一行: alias ls="ls --color" 下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下: 蓝色-->目录 绿色-->可执行文件红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件

      6. 显示文件的类型   

      用命令 file 可以使你知道某个文件究竟是ELF格式的可执行文件, 还是shell scrīpt文件或是其他的什么格式 例如: #file startx

    初用Linux时可能有处处不方便的感觉, 可是等使用一段 时间掌握了一些技巧后就会感到越来越顺手了. 以下就是我 使用Linux以来积累的一些经验与技巧, 相信对初学者会有所帮助的.

      1. 使用虚拟控制台   

      登录后按Alt+F2键这时又可以看到"login:"提示符, 这 个就是第二个虚拟控制台. 一般新安装的Linux有四个虚拟控 制台, 可以用Alt+F1~Alt+F4来访问. 虚拟控制台最有用的时 候是当一个程序出错锁住输入时可以切换到其他虚拟控制台 ?

      2. 拷贝与粘贴  

      字符界面: 不管是Slackware 还是RedHat 安装后每次启 动时都会自动运行一个叫gpm的程序, 该程序运行后就可以用 鼠标来拷贝与粘贴了. 具体做法是按住鼠标左键拖动使要拷贝的地方反白, 这时反白的区域已经被拷贝, 再按鼠标右键拷贝的内容就会被粘贴在光标所在位置了. X-Window下: 拷贝的操作与字符界面下一样, 三键鼠标的话 按中键粘贴, 两键鼠标的话同时按左右键粘贴(须在配置XF86 时在鼠标的设置里选择 Emulate 3 Button).

      3. 快速进入某些目录

      键入 cd ~ 可进入用户的home目录. 键入 cd - 可进入上一个进入的目录.

      4. 软驱的使用

      如果是Linux 的ext2文件系统用如下命令: #mount -t ext2 /dev/fd0 /mnt dos格式的软盘则用命令: #mount -t msdos /dev/fd0 /mnt 然后就可以在/mnt里访问软盘的内容了, 注意在取出软盘之 前要先卸掉软盘上的文件系统, #umount /mnt 否则会导致信息丢失. 在软盘上建立文件系统可用如下命令: #mke2fs /dev/fd0 1440

      5. RedHat下显示彩色目录列表   

      打开/etc/bashrc, 加入如下一行: alias ls="ls --color" 下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下: 蓝色-->目录 绿色-->可执行文件红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件

      6. 显示文件的类型   

      用命令 file 可以使你知道某个文件究竟是ELF格式的可执行文件, 还是shell scrīpt文件或是其他的什么格式 例如: #file startx

    初用Linux时可能有处处不方便的感觉, 可是等使用一段 时间掌握了一些技巧后就会感到越来越顺手了. 以下就是我 使用Linux以来积累的一些经验与技巧, 相信对初学者会有所帮助的.

      1. 使用虚拟控制台   

      登录后按Alt+F2键这时又可以看到"login:"提示符, 这 个就是第二个虚拟控制台. 一般新安装的Linux有四个虚拟控 制台, 可以用Alt+F1~Alt+F4来访问. 虚拟控制台最有用的时 候是当一个程序出错锁住输入时可以切换到其他虚拟控制台 ?

      2. 拷贝与粘贴  

      字符界面: 不管是Slackware 还是RedHat 安装后每次启 动时都会自动运行一个叫gpm的程序, 该程序运行后就可以用 鼠标来拷贝与粘贴了. 具体做法是按住鼠标左键拖动使要拷贝的地方反白, 这时反白的区域已经被拷贝, 再按鼠标右键拷贝的内容就会被粘贴在光标所在位置了. X-Window下: 拷贝的操作与字符界面下一样, 三键鼠标的话 按中键粘贴, 两键鼠标的话同时按左右键粘贴(须在配置XF86 时在鼠标的设置里选择 Emulate 3 Button).

      3. 快速进入某些目录

      键入 cd ~ 可进入用户的home目录. 键入 cd - 可进入上一个进入的目录.

      4. 软驱的使用

      如果是Linux 的ext2文件系统用如下命令: #mount -t ext2 /dev/fd0 /mnt dos格式的软盘则用命令: #mount -t msdos /dev/fd0 /mnt 然后就可以在/mnt里访问软盘的内容了, 注意在取出软盘之 前要先卸掉软盘上的文件系统, #umount /mnt 否则会导致信息丢失. 在软盘上建立文件系统可用如下命令: #mke2fs /dev/fd0 1440

      5. RedHat下显示彩色目录列表   

      打开/etc/bashrc, 加入如下一行: alias ls="ls --color" 下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下: 蓝色-->目录 绿色-->可执行文件红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件

      6. 显示文件的类型   

      用命令 file 可以使你知道某个文件究竟是ELF格式的可执行文件, 还是shell scrīpt文件或是其他的什么格式 例如: #file startx

     7 .命令文件的路径   

      当你键入一些命令如find, shutdown, mount, startx时是否 想过要知道这些文件究竟放在哪个目录里? 用命令 whereis 可以实现,如 #whereis startx

      8. 查找文件

      find 命令要加一些参数才能查到文件, 如: #find /usr -name XF86Setup -print 在/usr里查找文件XF86Setup.

      9. 删除无用的core文件

      程序运行出后有时候会产生一个名为core的文件, 这个文件一般很大而且没什么用, 可以删除掉以释放空间.

      10. 一次解开.tar.gz文件

      解开.tar.gz文件一般要先用gunzip解压再用tar解包, 在Linux下可以一次完成, 如: #tar zxpvf sample.tar.gz

      11. 显示win95分区里的长文件名   

      如果你发现win95分区里的长文件命不能显示, 可以重新 用vfat方式来mount. 对于启动时就mount的分区可以修改文 件/etc/fstab, 将里面的msdos字样改为vfat. 如果无法用 vfat mount, 则要重新编译一下核心, 加入对vfat的支持.

      12. Linux 里的Norton Commander   

      在提示符下键入命令mc后你就会看到一个与Norton Commander很相似的界面, 实际上功能也很相似甚至更强大, 比如可以直接对.tar.gz 压缩包里的文件进行操作(有点像 ZipMagic).

      13. 启动后直接进入X

      编辑/etc/inittab文件, 把id:3:initdefautl改为 id:4:initdefautl. 不过搜索路径可能会有些问题, 关机时 你得直接进入/sbin 里去执行 shutdown.

      14. 后台运行 X 程序

      执行一个X程序时别忘了在后面加一个&号,如 #netscape & 否则的话在你推出执行的程序之前再无法在那个终端窗口里输入命盍?

      15. 强行退出 X

      有时候在 X 里由于程序出错鼠标键盘都不起作用, 这时 候不用着急, 因为在Linux下几乎不会像在Win95里那样恶性 死机, 你只须键入Ctrl+Alt+BackSpace键就可以回到字符界 面下了.

     16. 重装Win9x后lilo失效无法启动Linux  

      只须先用软盘启动Linux然后运行一次lilo即可。对于 RedHat可以用命令mkbootdisk来制作启动盘,例如: mkbootdisk --devices /dev/fd0 2.0.34-1 其中2.0.34-1是 /lib/modules下的一个目录。

      17. 把dos/windows改为缺省启动的OS  

      RedHat把Linux作为lilo缺省启动的OS,即出现 boot: 提示符后直接回车启动Linux。如果想改为dos/Windows,修 改文件/etc/lilo.conf,把有关启动dos的部分放在前面,再 运行一次lilo即可。例如把lilo.conf从: boot=/dev/hda

      map=/boot/map

      install=/boot/boot.b

      prompt

      timeout=50

      image=/boot/vmlinuz-2.0.34-1

      label=linux

      root=/dev/hdc5

      read-only

      other=/dev/hda1

      label=dos

      table=/dev/hda

      改为:

      boot=/dev/hda

      map=/boot/map

      install=/boot/boot.b

      prompt

      timeout=50

      other=/dev/hda1

      label=dos

      table=/dev/hda

      image=/boot/vmlinuz-2.0.34-1

      label=linux

      root=/dev/hdc5

      read-only

      18. 去掉引导区内的lilo信息

      安装lilo后如果硬盘数量或分区情况有改变的话将导致硬盘不能启动,这时只须用软盘启动dos再运行 fdisk/mbr 即可。(这个方法还可清除任何引导区病毒)

      19. 让 X 支持 AGP 显卡

      下载一个 AX 4.1 即 AcceleratedX 4.1 , 一个商业版 的 X Server 。除 AGP 显卡外 AX 还支持很多牌号的显卡。 另外还可以用AX 带的设置程序 Xsetup 方便的对分辨率,刷 新率等参数进行设置。不过我也不知道用AGP卡效果如何,因 为我现在还在用老掉牙的 S3 765 。

     20. 把 man 或 info 的信息存为文本文件

      以 tcsh 为例: man tcsh   col -b > tcsh.txt info tcsh -o tcsh.txt -s

      21. 用当前路径作提示符

      对 bash 来说,在 .bashrc 里加一行: PS1="\$PWD\\$" 对 tcsh 来说,在 .tcshrc 里加一行: set prompt="%/>"

      22. 压缩可执行文件

      Linux 下有一个类似 dos 里的 pklite 和 lzexe 的命 令 -- gzexe 。而且压缩率一般都可以超过 50% ,在空间紧 张时很有用。比如:

      /dosc/temp# ls -al

      total 148

      -rwxr-xr-x 1 root root 149564 Dec 8 15:33 gawk

      /dosc/temp# gzexe

      gawk gawk: 54.5%

      /dosc/temp# ls -al

      total 216

      -rwxr-xr-x 1 root root 68710 Dec 8 15:36 gawk

      -rwxr-xr-x 1 root root 149564 Dec 8 15:33 gawk

      /dosc/temp#

      23. 查看 Linux 启动时的信息  

      Linux 启动时屏幕显示的信息来不及看清就一闪而过, 如果对这些信息感兴趣的话可以在启动完后用命令 dmesg 查看。

      24. 处理文件名内含有特殊字符的文件  

      如果有一个文件名叫 -file 如果想删除它,键入 rm -file 会显示 invalid option ,原来由于文件名的第一个字符为 - , Linux 把文件名当作选项了,可以加 -- 解决 这个问题, 如 rm -- -file 。如果是其他特殊字符的话可 以在特殊字符前加一个 \ ,或者用双引号把整个文件名括起来。

      25. 一次处理一整个目录

      Linux/UNIX 的很多常用命令如 rm , cp 等都有一个参 数---- -r , 是递归的意思, 命令里加了参数 -r 就可以对目标目录及其下所有子目录进行操作,如: rm -rf /test (f 是 force 意为强行) , 该命令完全删除 根目录下的子目录 test ,作用类似于 dos 下的 deltree ,当然使用这个命令时要特别小心。再如: cp -r /test /test1 有类似 dos 下 xcopy /s 的作用。

      26. 修改登录画面

      对本机: 先修改文件 /etc/issue 改为相要显示的内容, 再修改文件 /etc/rc.d/rc.local(RedHat) 或 /etc/rc.d/rc.S(Slackware) 把下面几句注释掉:

      # This will overwrite /etc/issue at every boot. So, make any changes you

      # want to make to /etc/issue here or you will lose them when you reboot.

      echo "" > /etc/issue

      echo "Red Hat Linux $R" >> /etc/issue

      echo "Kernel $(uname -r) on $a $(uname -m)" >> /etc/issue  

      cp -f /etc/issue /etc/issue.net

      echo >> /etc/issue

      不然的话每次重新启动 /etc/issue 都会被更改。

      对 telnet 的远地机器: 先把文件 /etc/usr/sbin/in.telnetd 改名,如改为 in.telnetd.exe ,再编一个名为 in.telnetd 的 shell 脚 本, 在显示完需要的内容后再调用 in.telnetd.exe 。如:  

      #!/bin/sh cat /etc/login.banner #需要在登录提示符前显示的内容 echo -n "" exec /usr/sbin/in.telnetd.exe

      27. 几个有用的别名

      几个能方便操作和减少误操作的别名,建议把它们放到启动 文件里, 如 /etc/bashrc 。   

      alias rm='rm -i'

      alias cp='cp -i'

      alias mv='mv -i'

      #前三个别名的作用是在删除、覆盖文件之前先提示确认, RedHat已经自动 #加上了,强烈建议Slackware的用户也加上,因为 Linux/UNIX下文件一旦删 #除就再也无法恢复了。  

      alias l='ls -l'

      alias cd..='cd ..'

      alias utar='tar xvfz' #解 *.tar.gz 文件

      alias inforpm='rpm -qpi' #显示rpm包的信息

      alias instrpm='rpm -Uhv' #安装rpm包

      alias listrpm='rpm -qpl' #列rpm包内的文件

      alias uistrpm='rpm -e' #反安装rpm包

      28. 使用命令补齐

      所谓命令补齐(Command-Line Completion)是指当键入的 字符足以确定目录下一个唯一的文件时只须按 Tab 键就可以 自动补齐该文件名的剩下部分,例如要把目录 /freesoft 下 的文件 gcc-2.8.1.tar.gz 解包,当键入到 tar xvfz /freesoft/g 时如果该文件是该目录下唯一以 g 起头的文件 的话就可以按下 Tab 键,这时命令会被自动补齐为:tar xvfz /freesoft/gcc-2.8.1.tar.gz ,非常方便。

      29. 最后一条技巧  

      有时间的话多看看系统提供的FAQ文件,因为通常遇到的 问题大多数都能在里面找到答案。

  • Linux新手系列之一

    2007-05-23 11:45:03

     那么Linux是什么呢?Linux是基于PC(其它平台也有的支持)的UNIX兼容系统,在跟UNIX的关系上,它不比任何其它UNIX兼容系统远

       OK,你的第一个问题是:什么是Linux,它和UNIX有什么区别?问这个问题的原因呢,多半是你还在大一的时候一次去实验室,看到高年纪学生在一个特大屏幕的机器上作题,你羡慕的看着他,问:"这是什么计算机啊,这么高级?"而他不无骄傲的说,"这是UNIX"。后来你懂的多了,知道那是SUN工作站,上面运行着Solaris,就是UNIX。现在你又听说Linux也是UNIX,是怎么回事呢?

      short answer:去看书,街上很多Linux的书第一章就是讲他们的历史和亲属关系的。

      long answer: UNIX是一个20还是30年前由几个研究生在实验室里开始后来一个大公司把它商业化了的一个操作系统。一来二去,它成长并且占领了市场。当时它只是运行在只有大学才买得起一两台的昂贵机器上。后来机器多了,公司多了,懂得人也多了,就分家了,而"UNIX"这个名字由于法律关系,谁也不能说自己的操作系统是"UNIX"而只能说是"UNIX兼容"系统了。所以现在"UNIX"系统是不存在的,存在的只是一个遥远的传说。那么现在那些Solaris,AIX,IRIS都是什么呢?那些都是各公司在他们硬件平提上作的商业UNIX,这些系统都遵循一个叫POSIX的古怪标准,对了,这个标准呢,是后来UNIX太多太乱,大家编程接口甚至命令都不一样了所以没办法座下来商量的一个协议。

      那么Linux是什么呢?Linux是基于PC(其它平台也有的支持)的UNIX兼容系统,在跟UNIX的关系上,它不比任何其它UNIX兼容系统远。所以如果你有"Solaris才是正统UNIX,Linux只是兼容"的想法,对不起你错了,起码你得把支持AIX的人打败才行,他们还认为AIX才是正统UNIX呢。所以用Linux你可以学到有关UNIX的知识,这些知识绝大部分在其它商业UNIX上可以用得上。当然,其核心思想绝对是相同的。那么在三年前只有你的读博士的辅导员才有机会在实验室那台宝贝SUN上学的知识,你现在在PC机上就可以实践了,这难道不是很妙的一件事情么? 

     第二个问题:我想装一个Linux,最新的是哪个版本,我听说过xxxlinux,yyylinux,还有国内某个公司鼎力推出的zzzlinux,到底哪个更好呢?

      首先你需要明白,Linux不是windows,它不是一个由一家商业公司维护的软件,只有一个包装。Linux是可以任意包装自由配置的东西。任何一个人,一家公司都可以按照自己的想法,比如加一点功能,加中文支持,作一个Linux出来。这些Linux虽然核心部分都一样,但是他们所带的各种软件,缺省的配置都不一样。区别是用一种Linux 发布 (不同的Linux我们叫做不同的发布)也许硬件很好配置,各种软件也好安装,用另外一种也许速度快,再一种也许支持中文比较好。总之没有白吃的午餐,在windows下想当然的东西在linux下也许需要你熬夜才能得到。所以从一开始选择distribution就必须非常小心,否则因为自己刚好随某个杂志得到一个Linux发布就以为所有的都一样就开始安装,等硬盘数据毁了,或者网络哭天跄地也配不出来的时候,就晚了。不是开玩笑,我知道windows下安装驱动程序就是鼠标点几下,可是在Linux下,为了驱动一个网卡,折腾一夜是不希奇的--当然,我觉得这是值得的。

      所以,面对那么多Linux distribution,你应当选择哪个呢?

      比较著名的Linux distribution有:

      RedHat:最新版本6.2, 7.0beta。由于RedHat公司已经上市,获得了很多商业的支持,所以它在硬件软件兼容性上很好。实际上它已经是Linux的工业标准。想象一下如果你是一个比如Oracle这样厂商的老板,你需要为Linux开发一个版本,而不同的Linux dist需要单独开发维护,为成本考虑你自然会只认准一个Linux。

      Slackware(7.1)。很早就有的Linux,有很多老的忠实用户,但现在越来越不行了。

      SuSe Linux,德国人做的,在欧洲很流行,有一些驱动上的优势。

      另外还有Debian,CorelLinux等dist,不一一介绍了。

      还有你会看到国内媒体上吹捧的各种“中文Linux”,他们的优势主要是有中文处理。但是如前一篇文章提到的,想用中文,用windows 2000最好。实际上我觉得一个老7字班的前辈跟我说的一句话很好:“(对我们来说)在计算机上看到中文本身就是一件很古怪的事情”。如果你是抱着学习计算机的目的而来,那么你不可能避免阅读英文文档。即使是microsoft的文档,有关编程的文档,最新的也全是英文。当然,要上BBS,看中文网页等,用英文的dist一样能做到。

      作为我个人(个人观点,你不必相信我),我只用RedHat,因为我需要它作为一个操作系统能让我更快的掌握并且学习我想学习的知识,而不是跟愚蠢的网卡,声卡作斗争。尽管这些斗争对于学习Linux来说也是很有益的,但是对于一个新手来说,如果连系统都安装不上,无法配置,又怎么谈如何学习呢?

      Again,this is only my own opnion, and I could be wrong。

      在这个系列里,我会围绕RedHat 6.2来讲。

      

Open Toolbar