站内文章搜索
您现在的位置: IT坊资讯网 >> Linux时代 >> 新手入门 >> 硬件基础 >> 文章正文 立即注册会员投稿
Linux硬件FAQ
作者:admin 文章来源:互联网 更新时间:2006-11-16 12:39:35           ★★★
类型:硬件——外存--软盘 (Genius)

Q:如何从软盘读取DOS系统的文件

A:有两种方法,
一种是将含DOS文件的系统挂到Linux的文件系统上,通过mount命令来实现,mount命令的语法是:
mount device mount-point
device是指要挂上的设备,如果是软盘的话,一般是/dev/fd0或者 /dev/fd1表示第一个软驱或第二个。mount-point是希望将文件系统挂上的目录,这个目录必须是在mount之前已经存在,并且一定要空
目录。比如要将系统的第一个软驱中的软盘挂到Linux文件系统中, 可以打入如下命令:

xxx@xxx.xxx root> mount /dev/fd0 /mnt/floppy

然后就可以通过对/mnt/floppy这个目录来访问软盘了。对于mount 命令的具体用法,可以参考手册:man mount

第二种方法是通过Linux提供的mtool工具来实现的。这些命令使你不需要mount也能访问DOS的文件系统,这样的命令都以m开头,如mdir,mformat,mdel等等,具体的可以参考手册。

注:第一种方法适合所有Linux支持的文件体统,包括光驱等其他一些设备,可以用-t指明想要的文件系统类型。

------------------------------------------
类型:硬件——外存——光驱 (genius)

Q:为什么光驱mount以后出不出来了?

A:Linux是一个多用户操作系统,挂上去的文件系统是共享的,出于可靠性,是不能随便拆除的。必须先umount文件系统,如果有人在使用这个文件系统,就会向你提示。如果是超级用户的话,也可以强制卸下文件系统,不过可能造成数据丢失。光驱的文件系统也同样如此,mount上去以后,不能随便取出,必须卸下之后才可以取出。

----------------------------------------------
FAQ类型:硬件---外存--IDE光驱 (老笨)

Q: 如何手动insmod isofs,解决RedHat 5.1安装后kernel don't support fs type iso9660的问题

A: 先运行 cat /proc/filesystems,看看有没有 iso9660. 如果有,那就是你的光驱有问题, 是不是买的宏棋acer的? (顺便说一下,那个字不念基,念棋)再运行一次 /sbin/modprobe -c | grep iso 看看有没有这一行:alias iso9660 isofs 如果有,而且有/lib/modules/preferred/fs/isofs.o, 还是光驱的问题。 如没有那个文件,天知道你是怎么装的? 如果没有那一行alias, 那么就在/etc/conf.modules里把它加进去。实在不行, 自己编译一次核心。

--------------------------------------------------
FAQ类型:硬件--外存--IDE光驱 (姚飞)

Q:有关module

    启动LINUX时,显示modprobe报告:Can not locate module block-major-22,     然后显示/dev/hdc不是block设备,光驱自然无法MOUNT,这是什么原因?会是光驱型号问题吗?我记得宫博士说过ACER24X光驱不好用。     启动时还显示can not locate module char-major-10-135,但使用时没发现有什么问题,这是怎么回事?     LINUX启动时显示一些原先装过,后来弃用的MODULES找不到(unresolved symbol,如3c509.o),     怎么才能不让LINUX找这些MODULES?

A: block-major-22是指Mitsumi CDROM , 如果你用的是IDE光驱,不应该出现这个的,你 显然用错了核心。如果你是Slackware的话,用bare.i最好。 char-major-10-135是和Watch Dog Timer有关的,平时根本没用,你显然又配置错了核心。 重新编译核心时,如果某个模块在旧的配置中有,而新的配置中被去掉了,然而在/lib/modules目录中的.o文件没有被删掉的话,depmod时就会出这些问题。没办法,重新配置核心。

--------------------------------------------------
FAQ类型:硬件--外存--SCSI光驱 (姚飞)

Q: 多碟CD-ROM

    我的机上安装了两个CDROM,一个CDR,CDR由于SCSI卡无法识别,所以就找不到了.还有一个CDROM是CARMATE CD-RA4,     这是个能装5张碟的光驱,在WIN95/98下通过软件来更换当前CDROM的碟片,不知道LINUX有没有换碟的软件?

A: 看看/usr/src/linux-2.0.35/Documentation/cdrom, 里面有一个cdchange.c 编译以后,就可以换片了.

---------------------------------------------------------
FAQ类型:硬件--SCSI系统安装 (姚飞)

Q:安装Red Hat 4.1的问题

    Red Hat 4.1不认识我的AHA 1542B的SCSI卡,愣说找不到,     我的1542B上接的PlexWriter(CDR)自然也找不到了. :(

A:RH4.1绝对能够认识AHA 1542B!我有一台机器就在用。有以下的因素能造成麻烦:

1, 你的AHA 1542B没有使用0x300的IO地址,或者你有声卡也使用0x300的地址。
2, 所使用的中断11和其他设备冲突。
3, 所使用的共享内存地址空间冲突或者没你的BIOS所阴影和缓存了。这大多会和SMC/WD 的网卡冲突。
4, DMA冲突,这大多会和SB声卡冲突。

如果你能够确认BIOS设置没问题,并且也没有冲突的问题那么请你检查你设置的ISA总线速度。

AHA-1542B是一块非常老的SCSI卡,对386、486来说非常好用,但是你的CPU那么快,如果ISA 总线速度超过7.16MHz就会有很多卡不工作。我见过的有速度问题的卡就包括AHA1542(B,C,CF,CP)、 基于ESS-1868的PnP声卡等等。

AHA-1542C以上的卡的rom中带有一个设置和检查程序,B卡好象没有,但是你最好找出原来带的盘来(好象是什么EZSCSI),用它自己的诊断程序在你的机器上跑,看看是否通过。我们的AHA1542C以上的卡在没仔细配参数前在快机器上都通不过自检,DMA传输到某个地址就死了。等到他不死了,能气死你,机器象乌龟。

唉,最好换一块NCR53C8xx的PCI总线SCSI卡,又便宜又好用。

对了,想起来了,还有,如果都不是以上问题的话,还有一个只有RH才有的特殊问题。那就是如果你有SCSI卡,没有SCSI盘的话,那个安装程序会错误地认为它发现不了卡,其实卡是发现了,但是没盘,有余RH的特殊性,有卡无盘它不知道该怎么办,究竟用还是不用initrd?这不是 Linux的毛病而是RH的毛病。解决的办法有:

1, 懒办法:

  在安装时找一块SCSI盘接上,这时安装程序就认你的卡了,但是在分区时和指定文件系统时完全不用这块盘。安装完了,将这盘拆卸下来就行了,你的CDR也就能够使用了。

2, 勤快办法或实在没有可借用的SCSI盘的办法:

  试着说modprobe aha1542,如果成功的话你就在/etc/conf.modules文件的头上加入以下
的内容,     alias scsi_hostadapter aha1542 这时候kerneld应该会在相同需要的时候自动加载这个模块。

> 俺的BIOS设置确实没问题,俺的声卡是Creative SB AWE64Gold,用DMA1和5,
> 这SCSI卡的Addr:134, IRQ:11, DMA:7,而且同样的外设在WIN98下全部都能
> 正常工作(为了让俺所有的硬件跑起来,俺折腾了三天的WIN98)
> 我用的主板是Micronics造的,这家主板制造商很注重系统的兼容性和稳定性,
> 所以这块1542B能在我的DOS&95&98下工作.

对于1542x来说W95下能正常工作并不能说明没有问题,我就碰到过自检通不过但是W95/NT能工作的。自检的问题是DMA传送到了某个地址就死了,如果 W95下驱动程序的DOUBLE BUFFER没用到这个地址它是没问题的,但是如果 Linux的驱动程序用到这个地址就会死机的。建议你最好找出自检程序确认一下, 不然以后有问题非常讨厌。

---------------------------------------------------------
FAQ: 硬件--外存--硬盘 (iMCP)
Q: 安装RH5.0时有growable一项,AIX也支持growable,但它到底是怎么会事?

A: 据"Offical RedHat Installation Manual"中说,growable选项的意思是:如果你划分出一个100M的分区,而如果此时硬盘的剩余空间大于100M的话,这个分区所获得空间可能大于100M,即硬盘的剩余空间可能会全部分配给该分区,即该分区的空间是“可增长的”。 更具体的解释你可参照安装盘的/doc/Manual目录下的HTML文档。

-------------------------------------------------------------
FAQ类型:硬件--外存--硬盘 (老笨)

Q: 买了一个Seagate的ST34342A的4.3G的硬盘,可这个BIOS有2.1G的限制,所以我只能 用了Seagate提供的DiscWizard来安装,对于有BIOS限制的机器,它会加入一个 DDO(Dynamic Drive Overlay)来支持大容量的硬盘。我装完WIN95后装LINUX,将LILO写在了第一个硬盘(原来的硬盘)的主引导区。可到机器启动的时候只出现了LI后LILO就死掉了,然后我只能CTRL+ALT+DEL。我估计这个DDO是写在MBR中的,如果我FDISK /MBR, 再装LILO的话,应该可以的。但这样一来WIN95下就不能访问我的大盘了。有没有两全的办法呢?

A: 我想较好的解决办法是重新分区,在硬盘开头给linux分一个64M的分区,将来作为 linux的根(64M足够了),然后其他分区随便

----------------------------------------------------------
FAQ:硬件--外存--硬盘 (Jerry Lee)

Q: 安装 Linux 要占用多少硬盘空间?

A: 这要看你要安装什麽套装分发(distribution)的 Linux 及你要装入多少应用程序(部分或全部), 是否安装原代码等.

若是安装RedHat5.1, 最小化安装(仅仅最基本的系统)大约需要60M, 缺省安装大约要250M左右, 若是包括原代码, X-windows, 一些常用的工具, 应用程序 并且留有一定的spool空间的话, 大约要450~500M左右.

其他套装分发, 如Slackware, Debian等, 我自己没装过, 不过, 我想应该大小都差不多吧.

-----------------------------------------------------------------
FAQ类型:硬件--外存--硬盘 (Jerry Lee)

Q: 我的QUANTUM大脚硬盘总是出现下列故障, 为什麽?
Partition Check:
    hda:hda:status time out
    hda:drive not ready for command unable to read partition table
    Kernel Panic:VFS:Unable to mount root fs on 03:03

A: 一种可能的原因就是你的主板支持 DMA , 但是你的 QT 大脚硬盘不能很好的支持 DMA . 在机器启动出现 lilo 提示符时, 键入 linux hda=noautotune , 如果工作正常的话, 将下行append = "hda=noautotune"
加入到你的 /etc/lilo.conf 中,重新做一次 lilo 就好了. 有些主板需要在启动时禁止使用 DMA , 在系统启动后工作正常后再使用 DMA . 可以使用 hdparm 命令来打开或禁止 DMA, 如下
    hdparm -d1 -X34 /dev/hda     使用DMA
    hdparm -d0 -X34 /dev/hda    禁止DMA
顺便说一句, 还可以使用 hdparm 来调整硬盘的挂起(suspend)时间, 用时间(秒)来代替下面名令中的 n hdparm -Sn /dev/hda

--------------------------------------------------------------
FAQ:硬件--外存--硬盘 (Jerry Lee) (SLUG Recommend)

Q: 我的硬盘是 Seagate ST32140A (2.1G), 在安装 redhat-5.1 时, 一路都很顺利, 但系统安装完成,重新启动时, 荧幕显示 "LI" 就再也不动了, 我该怎麽办?

A: 由于历史的原因, BIOS的INT13磁盘功能调用里的柱面(cylinder)只有10bit, 2^10 = 1024, 也即柱面参数只能是0-1023. 对于大于520M的硬盘, 因磁头数限为16, 扇区数限为63, 柱面数将大于1024. 为解决这个问题, BIOS采用了逻辑块寻址方式(LBA, Logical Block Addres), BIOS将硬盘加以伪装, 使柱面数小于1024. 例如,540M的硬盘在LBA下将变成:
    cyl=524
    head=32
    sect=63
而实际是:
    cyl=1048
    head=16
    sect=63

在LBA模式下, BIOS对INT13的参数进行重新影射, 使之符合真正的硬盘情况.对于Linux而言, INT13的任何限制都不重要, 因为Linux自己有磁盘驱动程序, 并不通过INT13进行I/O. BIOS设置成硬盘的实际参数, Linux将正确无误的进行I/O. 问题出在以下两个方面:

1) 若硬盘上同时有DOS分区, 则该分区将限于前520M空间内.
2) Linux的Boot程序LILO(Linux Loader)也受到极大限制. LILO对磁盘的操作是基于BIOS的. LILO负责将Linux的kernel读入内存, 并将控制权交给kernel. 这就使的kernel必须也在硬盘的前520M空间内. 实际上,kernel在Linux的文件系统中一般在根目录下, 称为vmlinuz. 很难限定其物理位置. 如果不想牺牲520M以后的硬盘空间, 我们必须解决这一问题. 方法如下(以1G硬盘为例,其物理参数为: cyl=2100; sect=63; head=16; LBA下参数为: cyl=505; sect=63; head=64):

1)在BIOS中, 将硬盘设为LBA模式
2)用DOS的FDISK开一个DOS分区(不开也可, 大小自定)
3)用Linux的BOOT安装盘启动计算机, 在boot提示出现后, 敲入硬盘的实际物理参数, ramdisk hd=2100,16,63 这样Linux的kernel就将该参数作为硬盘的实际参数
4)根据提示插入root盘
5)用root登录
6)对硬盘的进行分区, fdisk /dev/hda 敲入p, (print partition table), 若以有DOS分区, 就会出现一大堆错误提示, 不理它. 敲入x, 进入expert模式, 将柱面数设为505, 磁头数设为64, 退出expert模式, 敲入p, 以前的错误提示不再出现. 下面就进行正常分区.
7)用setup安装所需软件. 在安装LILO时, 使之装在硬盘的MBR区(MainBoot Record), 以便启动Linux和装在其它分区的OS, 如DOS,OS/2等
8)编辑/etc/lilo.conf, 在文件头加入以下两行:
append="hd=2100,16,63" linear
9)运行/sbin/lilo, 重新生成LILO数据.
10)reboot系统--

----------------------------------------------------------
FAQ类型:硬件--外存--硬盘 (姚飞)

Q:[fat32]strange partition ID

    我的机器上有两个硬盘,第二个硬盘4G,分为两个2G分区,均格式化为FAT32,第一个分区(primary)在RED HAT5.1下可MOUNT,第二个分区(logical)无法MOUNT,经检查其分区代码为0F,而不是FAT32的0D,难道WIN95的FAT32还带有未公布的分区格式吗?

A:你的第二个分区是个扩展分区,在那个扩展分区中建立的逻辑盘。对吗?

如果是这样的话你mount的是哪个设备?/dev/hd?2是不行的,你得说/dev/hd?5。 第一个扩展分区中的分区从5到8,第二个扩展分区从9到12,第三个扩展分区从13到16。用Linux你可以在一个盘上建立多个DOS Primary分区并且M$会认的,你还可以建立多个扩展分区。


宫博士说的对,跟M$实在没法将道理,FDISK都有BUG,我建的逻辑盘居然物理结束位置和
逻辑结束位置不一致!整整差了一个磁道!造成LINUX无法辨认逻辑盘,自然无法看
到/dev/hdb5了。我干脆删了逻辑盘,用LINUX的FDISK建了一个PRIMARY盘,目前运行一切
正常,要不是工作的原因,我非把WIN95 KILL..................

======网络硬件======
类型:硬件——网络硬件——网卡 (genius)

Q:如何配置Accton PNP网卡?

A:用NE2000的驱动程序来驱动Accton PNP网卡,修改/etc/conf.modules
(如果没有就创建一个),并添加如下内容:

alias eth0 ne
options ne io=0x300

或者在lilo.conf中添加如下内容:

append="ether=10,0x300,eth0"

---------------------------------------------------------------------------
类型:硬件——网络硬件——网卡 (genius)

Q:为什么Linux启动后找不到NE2000网卡呢?

A:NE2000的网卡LINUX不能自动检测,需要手工设置。使用网卡带
的驱动盘找出网卡的中断和IO,修改/etc/conf.modules,并添
加如下内容:

alias eth0 ne
options ne io=0x300

或者在lilo.conf中添加如下内容:

append="ether=10,0x300,eth0"

--------------------------------------------------------------------
FAQ类型:硬件——网络硬件——网卡 (iMCP)

Q: 如何在 redhat5.0下安装 3C905卡?

A:第一步: 到http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html
下载 3c59x.c
第二步: 编译:
gcc -DMODVERSIONS -DMODULE -D__KERNEL__ _I/usr/src/linux/net/inet -06 -c
3c59x.c ,或使用 3c59x.c 中介绍的方法。
第三步: inst

[1] [2] [3] [4] 下一页

  • 上一篇文章: 没有了

  • 下一篇文章:
  • 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    看本文的网友还看了:
    网友看的热门文章:
     
    招商信息
    视觉焦点
    新闻排行
  • 没有文章
  • 设为首页 - 加入收藏 - 关于我们 - 广告合作 - 友情链接 - 投稿与建议 - 版权申明 - 帮助中心

    Copyright©2004--2007 www.ithov.com IT坊资讯网版权所有
    网站客服QQ群 ①群15569476 ②群19439244 ③群20730522 ④群31220781 ⑤群7190232
    未经授权禁止转载、摘编、复制、盗链或建立镜像.如有违反,追究法律责任.
    鄂ICP备05000249号
    本站提供的所有资源均来自互联网,下载纯属学习交流之用,如侵犯您的版权请与我们联系,我们会尽快改正!请在下载24小时后删除