18、FreeNAS系统诊断与故障排除全面指南

FreeNAS系统诊断与故障排除全面指南

1. 系统日志解析

系统日志页面是所有日志页面中最为复杂的。在这个页面上,FreeBSD会记录系统、硬件以及启动过程的相关信息。起初,这个页面可能让人望而生畏,但在适当的帮助下,它对于追踪硬件或驱动相关问题非常有帮助。

默认情况下,诊断日志页面显示的日志条目数量为50条。在大多数情况下,这已经足够,但有时可能不够。例如,在诊断日志的系统标签中,启动过程中生成的日志条目总数可能超过50条。如果你想查看FreeBSD识别的系统内存量,在标准的50条条目中可能找不到。解决方法是在诊断日志的设置标签中增加“显示的日志条目数量”参数。

以下是一些不同的日志条目示例,包括关于CPU、内存、磁盘和磁盘控制器的日志:
- kernel: FreeBSD 6.2-RELEASE-p11 #0: Wed Mar 12 18:17:49 CET 2008 :此条目显示了FreeNAS服务器的基础版本,这里使用的是FreeBSD 6.2。
- kernel: CPU: Intel(R) Xeon(TM) CPU 1.70GHz (1680.52-MHz 686-class CPU) :显示FreeBSD检测到的CPU类型,这里是运行频率为1.7GHz的Intel Xeon CPU。
- kernel: FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs :如果系统有多个CPU或为双核机器,日志中会有这样的条目识别第二个CPU。如果机器支持超线程技术,第二个逻辑处理器会这样报告: Logical CPUs per core: 2
- Apr 1 11:06:00 kernel: real memory = 268435456 (256 MB) Apr 1 11:06:00 kernel: avail memory = 252907520 (241 MB) :这些条目显示系统检测到的内存量,实际内存和可用内存的差值是计算机中物理安装的RAM量与加载FreeBSD内核后剩余的内存量之间的差值。

磁盘要在FreeNAS服务器上正常工作,需要磁盘控制器,可能是标准的ATA/IDE控制器、SATA控制器或SCSI控制器。以下是一些相关日志示例:
|设备类型|日志示例|
| ---- | ---- |
|ATA控制器| kernel: atapci0: <Intel PIIX4 UDMA33 controller> port 0x1f0 - 0x1f7,0x3f6,0x170 - 0x177,0x376,0x1050 - 0x105f at device 7.1 on pci0
kernel: ata0: <ATA channel 0> on atapci0
kernel: ata1: <ATA channel 1> on atapci0 |
|SATA控制器| kernel: atapci1: <SiS 181 SATA150 controller> irq 17 at device 5.0 on pci0
kernel: ata2: <ATA channel 0> on atapci1
kernel: ata3: <ATA channel 1> on atapci1 |
|SCSI控制器| kernel: mpt0: <LSILogic 1030 Ultra4 Adapter> irq 17 at device 16.0 on pci0 |
|硬盘| kernel: ad0: 476940MB <WDC WD5000AAJB - 00YRA0 12.01C02> at ata0 - master UDMA100
kernel: ad4: 476940MB <Seagate ST3500320AS SD04> at ata2 - master SATA150 |
|CDROM| acd0: CDROM <TOSHIBA CD - ROM XM - 7002B/1005> at ata1 as master UDMA33 |
|SCSI硬盘| kernel: da0 at ahd0 bus 0 target 0 lun 0
kernel: da0: <MAXTOR ATLAS10K4_73WLS DFL0> Fixed Direct Access SCSI - 3 device
kernel: da0: 320.000MB/s transfers (160.000MHz, offset 127, 16bit), Tagged Queueing Enabled
kernel: da0: 70149MB (143666192 512 byte sectors: 255H 63S/T 8942C) |
|USB闪存盘| kernel: da0 at umass - sim0 bus 0 target 0 lun 0
kernel: da0: <Verbatim Store 'n' Go 1.30> Removable Direct Access SCSI - 2 device
kernel: da0: 40.000MB/s transfers
kernel: da0: 963MB (1974271 512 byte sectors: 64H 32S/T 963C) |
|网卡| kernel: lnc0: <PCNet/PCI Ethernet adapter> irq 18 at device 17.0 on pci0
kernel: lnc0: Ethernet address: 00:0c:29:a5:9a:28 |

2. 设备名称与实际设备的转换

在SCSI示例中,SCSI控制器显示为ahd0。要更好地理解这些日志条目,需要知道如何解释设备名称ahd0。ahd0表示它是使用ahd驱动的设备,并且是系统中的第一个(编号从0开始)。要了解ahd是什么,可以在日志文件中查找类似这样的条目:

kernel: ahd0: <Adaptec 39320 Ultra320 SCSI adapter> irq 11 at device 1.0 on pci2

这表明该设备是Adaptec 39320 SCSI 3控制器。你还可以在 http://www.freebsd.org/releases/6.2R/hardware - i386.html 上查找更多关于ahd驱动(以及所有FreeBSD驱动)的信息。当FreeNAS迁移到FreeBSD 7时,相关网页将是 http://www.freebsd.org/releases/7.0R/hardware.html

3. 网络问题排查

网络连接对于网络附加存储至关重要。网络问题一般可分为两类:物理问题和软件问题。物理问题包括电缆损坏和硬件故障,软件问题包括设备驱动问题和网络配置错误。

3.1 一般连接问题

启动FreeNAS服务器后,首先要配置网络。假设已经完成网络配置,下一步是使用网页浏览器连接到FreeNAS服务器。如果浏览器连接失败,需要按以下步骤排查:
1. 测试浏览器所在的计算机是否正常工作,确保它可以访问互联网以及网络中的其他机器或设备。
2. 如果浏览器所在的计算机正常,问题可能出在FreeNAS服务器上,使用以下检查表确保一切正常:
- 检查电缆是否正确插入FreeNAS服务器的网卡,同时检查FreeNAS服务器和连接的交换机或集线器上的链路LED灯是否亮起。
- 检查FreeNAS服务器在启动过程中是否识别了网络,由于无法访问网页界面,需要在控制台进行检查。
- 如果网络卡未被找到,可能意味着该网卡不被FreeNAS或FreeBSD支持,可查看 http://www.freebsd.org/releases/6.2R/hardware - i386.html 获取更多信息。
- 检查网络设置,最常见的错误是子网掩码设置错误。子网掩码决定了机器所在的网络,如果设置的子网掩码与浏览器所在计算机不同,可能会导致连接丢失。
- 确保IP地址唯一且正确,如果两台机器分配了相同的IP地址,会出现奇怪的问题。
- 如果使用DHCP,确保DHCP服务器正常运行且有可用的IP地址。如果FreeNAS服务器的IP地址为0.0.0.0,意味着它无法从DHCP服务器获取IP地址。

graph TD;
    A[启动FreeNAS服务器] --> B[配置网络];
    B --> C[使用浏览器连接FreeNAS服务器];
    C -->|连接失败| D[测试浏览器所在计算机];
    D -->|正常| E[检查FreeNAS服务器];
    E --> F[检查电缆连接];
    E --> G[检查网络识别情况];
    E --> H[检查子网掩码设置];
    E --> I[检查IP地址唯一性];
    E --> J[检查DHCP服务器];
    D -->|异常| K[排查浏览器所在计算机问题];
4. 使用Ping工具进行网络测试

大多数操作系统(如Windows、Linux和OS X)都有一个名为ping的工具,可用于测试两台机器之间的底层连接性。

4.1 在Windows XP上使用Ping

在Windows XP上运行ping,可按以下步骤操作:
1. 点击“运行”。
2. 在对话框中输入“cmd”并按回车键,会弹出一个黑色的命令提示符窗口。
3. 在命令提示符中输入“ping”,后面跟上要测试的IP地址。例如,要ping FreeNAS服务器的标准地址192.168.1.250,可输入:

ping 192.168.1.250

如果一切正常,FreeNAS服务器会进行响应,输出结果类似如下:

Pinging 192.168.1.250 with 32 bytes of data:
Reply from 192.168.1.250: bytes=32 time<1ms TTL=128
Reply from 192.168.1.250: bytes=32 time<1ms TTL=128
Reply from 192.168.1.250: bytes=32 time<1ms TTL=128
Reply from 192.168.1.250: bytes=32 time<1ms TTL=128

Ping statistics for 192.168.1.250:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

如果PC无法联系到FreeNAS服务器,会报告“Request timed out”错误。

4.2 从FreeNAS服务器使用Ping

从FreeNAS服务器的控制台选择选项5,然后输入要ping的另一台机器的IP地址。例如,输入地址后按回车键,输出结果可能如下:

PING 192.168.1.110 (192.168.1.110): 56 data bytes
64 bytes from 192.168.1.110: icmp_seq=0 ttl=64 time=1.148 ms
64 bytes from 192.168.1.110: icmp_seq=1 ttl=64 time=0.697 ms
64 bytes from 192.168.1.110: icmp_seq=2 ttl=64 time=0.638 ms
--- 192.168.1.110 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 0.638/0.828/1.148/0.228 ms

如果ping失败,输出结果会显示100%的数据包丢失,例如:

PING 192.168.1.100 (192.168.1.100): 56 data bytes
--- 192.168.1.100 ping statistics ---
3 packets transmitted, 0 packets received, 100% packet loss
4.3 在Web界面中使用Ping

如果可以访问FreeNAS服务器的Web界面,要ping另一台机器,可按以下步骤操作:
1. 进入“Diagnostics: Ping”页面。
2. 在“Host”中输入要ping的机器的IP地址。
3. 点击“Ping”按钮。

4.4 多网卡情况下的Ping

如果机器有多个网卡,可以在“Interface”下拉框中选择要使用的网卡,这在检查第二个以太网接口卡的连接性时非常有用。

5. 使用ARP表解决网络问题

以太网内部有一个名为ARP(地址解析协议)的机制。当只知道主机的IP地址时,ARP用于查找该主机的硬件地址(即MAC地址)。网络软件要向一个IP地址发送数据包,需要知道服务该IP地址的网卡的物理地址,为此它会发送ARP请求并接收包含MAC地址的ARP响应。

在“Diagnostics: ARP tables”页面,有一个表格列出了FreeNAS服务器已知的所有MAC地址及其对应的IP地址。这个表格有以下作用:
- 查看FreeNAS服务器的网络层是否能够发现远程服务器/PC的MAC地址。如果知道MAC地址但ping失败,问题可能是防火墙。
- 确保两台机器不会误分配相同的IP地址。可以通过对比IP地址和MAC地址来确定是否联系到了正确的服务器。

MAC地址(媒体访问控制地址或以太网地址)是制造商附在大多数网络适配器上的全球唯一标识符,类似于房屋的邮政地址,具有唯一性。例如“00:0c:29:a5:9a:28”就是一个MAC地址。可以通过 http://www.coffer.com/mac_find/ 网站查找任何给定MAC地址的制造商。

6. 千兆传输速度慢的问题

千兆网络并非如一些人所想的那样能达到理想的传输速度,在FreeNAS和PC之间很难实现125MB/s(1000除以8)的传输速率。要在千兆以太网上实现最佳传输速率,可考虑以下几点:
|优化点|具体操作|
| ---- | ---- |
|启用内核变量调整|在“System: Advanced: Advanced Setup”页面,勾选“Tuning”框并保存设置。|
|支持巨型帧|确保千兆以太网交换机和千兆以太网卡能够处理巨型帧。没有巨型帧支持,相比100Mb/s网络的提升将很有限。|
|使用PCI Express网卡|尽可能使用PCI Express千兆网卡。|
|确保CPU性能|确保CPU能够处理网络和磁盘活动带来的负载。|
|优化磁盘配置|为了实现最佳的速度吞吐量,需要使用某种RAID(硬件或软件)。|

7. 通过CIFS连接共享时的问题

通过Windows协议CIFS连接到FreeNAS服务器是一种常见的方式,但在不同版本的Windows系统中可能会遇到一些问题。

7.1 Windows Vista要求输入匿名共享的用户名和密码

当在“Services: CIFS/SMB”页面的高级设置部分启用了“Null passwords”字段时,可能会出现此问题。解决方法是禁用“Null passwords”字段。

7.2 网络中有两个FreeNAS服务器,但Windows只能看到一个

在配置这两个FreeNAS服务器时,除了确保每台机器有自己的IP地址和主机名外,还需要确保FreeNAS中CIFS服务器的默认名称不同。解决步骤如下:
1. 进入“Services: CIFS/SMB”页面。
2. 为每个服务器设置唯一的“NetBiosName”。

7.3 启用日志记录解决Windows网络问题

如果遇到无法解决的Windows网络(CIFS)问题,可以尝试为Windows网络服务器(Samba)启用更多日志记录,查看日志文件是否能提供问题线索。操作步骤如下:
1. 进入“Services: CIFS/SMB”页面。
2. 将“Log Level”设置为“Normal”而不是“Minimal”。Samba生成的日志将在“Diagnostics: Logs”页面的“Daemon”标签下可见。以“smbd”开头的条目是关于Windows网络服务器的,以“nmdb”开头的条目是关于Windows网络名称服务的。
3. 如果“Normal”日志级别没有帮助,可以尝试“Full”级别甚至“Debug”级别,但这些级别会产生大量难以理解的输出。
4. 如果日志产生了大量条目,可参考前面提到的增加日志条目数量的方法。同时,可随时通过点击“Diagnostics: Logs”页面上的“Clear log”按钮清除日志。
5. 问题解决后,将日志级别调回“Minimal”。

graph TD;
    A[遇到Windows网络问题] --> B[启用更多日志记录];
    B --> C[设置Log Level为Normal];
    C --> D[查看Diagnostics: Logs的Daemon标签];
    D -->|无帮助| E[设置Log Level为Full或Debug];
    D -->|有帮助| F[根据日志排查问题];
    F --> G[问题解决后调回Log Level为Minimal];
【无人机】基于改进粒子群算法的无人机路径规划研究[和遗传算法、粒子群算法进行比较](Matlab代码实现)内容概要:本文围绕基于改进粒子群算法的无人机路径规划展开研究,重点探讨了在复杂环境中利用改进粒子群算法(PSO)实现无人机三维路径规划的方法,并将其遗传算法(GA)、标准粒子群算法等传统优化算法进行对比分析。研究内容涵盖路径规划的多目标优化、避障策略、航路点约束以及算法收敛性和寻优能力的评估,所有实验均通过Matlab代码实现,提供了完整的仿真验证流程。文章还提到了多种智能优化算法在无人机路径规划中的应用比较,突出了改进PSO在收敛速度和全局寻优方面的优势。; 适合人群:具备一定Matlab编程基础和优化算法知识的研究生、科研人员及从事无人机路径规划、智能优化算法研究的相关技术人员。; 使用场景及目标:①用于无人机在复杂地形或动态环境下的三维路径规划仿真研究;②比较不同智能优化算法(如PSO、GA、蚁群算法、RRT等)在路径规划中的性能差异;③为多目标优化问题提供算法选型和改进思路。; 阅读建议:建议读者结合文中提供的Matlab代码进行实践操作,重点关注算法的参数设置、适应度函数设计及路径约束处理方式,同时可参考文中提到的多种算法对比思路,拓展到其他智能优化算法的研究改进中。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值