FlashBoot中文版(华为交换机忘了密码如何恢复?)
2022-12-28 07:50:31 小编:网络整理 我要评论
flashboot中文版文章列表:
- 1、华为交换机忘了密码如何恢复?
- 2、HP GEN8 BIOS详细说明适合萌新
- 3、ESP8266 引脚分配参考:您应该使用哪些 GPIO 引脚?
- 4、如何构建一台网络引导服务器一
- 5、国产音频芯片到底怎么样?这款芯片不负你期望,支持下国产
华为交换机忘了密码如何恢复?
S系列交换机(S1700除外)BootROM密码缺省情况如下:
S盒式交换机在V100R006C03之前的版本BootROM默认密码为huawei,在V100R006C03及之后的版本默认密码为Admin@huawei.com。
S框式交换机在V100R006C00及之前的版本BootROM默认密码为9300,在V100R006C00之后的版本默认密码为Admin@huawei.com。
盒式V100R002/V100R003恢复Console密码
1. 重启交换机进入BootRoM菜单后选择“5.Enter filesystem submenu”进入文件系统子菜单。
2. 进入文件系统子菜单后选择“4.Rename file from flash”把默认配置文件vrpcfg.zip改为其他名称例如vrptest.zip。
3. 重启后进入交换机此时交换机恢复为出厂的默认配置。
4. 把改名后的文件vrptest.zip解压缩为vrpcfg.bat。<Quidway> unzip vrptest.zip vrpcfg.bat
5. 执行execute命令把原有的配置调用出来在此基础上可把console的密码去掉。
<Quidway> system-view
[Quidway] execute vrpcfg.bat
[Quidway] user-interface console 0
[Quidway-ui-console0] undo authentication-mode
6. 保存配置为vrpcfg.zip。
<Quidway> save
The current configuration will be written to the device.
Continue? [Y/N]:y
Info: Please input the file name(*.cfg,*.zip)[vrpcfg.zip]:
Jun 25 2010 11:41:59 Quidway /4/SAVE(l): The user chose Y when deciding whether to save the configuration to the device. vrpcfg.zip //这里要输入正确的默认配置文件名称 vrpcfg.zip
盒式V100R005/V200R001/V200R002/V200R003恢复Console密码
设备启动过程中首先加载BootROM程序然后再加载系统软件。当界面出现如下提示信息时两秒内按下快捷键Ctrl B进入BootROM主菜单。
BIOS LOADING ...
Copyright (c) 2008-2010 HUAWEI TECH CO., LTD.
CX22EFFE (Ver124, Jun 9 2010, 17:41:46)
Press Ctrl B to enter BOOTROM menu ... 0
password: //输入BootROM密码缺省密码是 Admin@huawei.com
输入正确的BootROM密码后显示的BootROM菜单如下
BOOTROM MENU
1. Boot with default mode
2. Enter serial submenu
3. Enter startup submenu
4. Enter ethernet submenu
5. Enter filesystem submenu
6. Modify BOOTROM password
7. Clear password for console user
8. Reboot
Enter your choice(1-8): 7
Note: Clear password for console user? Yes or No(Y/N): y
Clear password for console user successfully. Choose "1" to boot, then set a new password
Note: Do not choose "Reboot" or power off the device, otherwise this operation will not take effect
选择7 .Clear password for console user然后选择1. Boot with default mode即可以恢复Console密码。
注意
清除Console密码后注意选择BootROM主菜单下的“1. Boot with default mode”进行启动不能选择“8. Reboot”也不能掉电否则配置将会失效。
如果是双主控环境的S系列框式交换机,则需要在执行以下操作前将备用主控板拔下,待执行完以下操作后再插上备用主控板,再执行save命令以保证主用主控板和备用主控板配置一致。
框式V100R001/V100R002/V100R003恢复Console密码
1. 重启交换机进入BootROM菜单后按CTRL Z进入隐含菜单。
2. 选择8-Rename file in CFCard把默认配置文件vrpcfg.zip改为其他名称例如vrptest.zip。
3. 重启后进入交换机此时交换机恢复为出厂的默认配置。
4. 把改名后的文件vrptest.zip解压缩为vrpcfg.bat。<Quidway> unzip vrptest.zip vrpcfg.bat
5. 执行execute命令把原有的配置调用出来在此基础上可把console的密码去掉。
<Quidway> system-view
[Quidway] execute vrpcfg.bat
[Quidway] user-interface console 0[Quidway-ui-console0] undo authentication-mode
6. 保存配置为vrpcfg.zip 。
<Quidway> save
The current configuration will be written to the device. Continue? [Y/N]:y
Info: Please input the file name(*.cfg,*.zip)[vrpcfg.zip]:
Jun 25 2010 11:41:59 Quidway /4/SAVE(l): The user chose Y when deciding whether to save the configuration to the device. vrpcfg.zip //这里要输入正确的默认配置文件名称 vrpcfg.zip
框式V100R006/V200R001/V200R002/V200R003恢复Console密码
一台新设备上电启动首次通过Console登录会提示输入Console登录密码也可以在Console口用户界面通过set authentication password [ cipher password ]命令设定。如果用户忘记Telnet登录和Console登录密码此时会导致设备始终无法登录。为此设置了保险措施在BootROM菜单下提供清除Console登录密码功能。操作步骤如下启动过程中提示按Ctrl B输入密码进入BootROM在BootROM主菜单下选择8进行Console密码清除。
MAIN MENU
1. Boot with default mode
2. Boot from Flash
3. Boot from CFCard
4. Enter serial submenu
5. Enter ethernet submenu
6. Modify Flash description area
7. Modify BootROM password
8. Clear password for console user
9. Reboot
Enter your choice(1-9):8
Note: Clear password for console user? Yes or No(Y/N): y
Clear password for console user successfully. Choose "1" to boot, then set a new password
Note: Do not choose "Reboot" or power off the device, otherwise this operation will not take effect
注意
清除Console密码后注意选择BootROM主菜单下的“1. Boot with default mode”进行启动不能选择“9. Reboot”也不能掉电否则配置将会失效。
HP GEN8 BIOS详细说明适合萌新
开机自检的时候按F9进入BIOS主界面,以下是BIOS主界面截图以及BIOS各个选项的详解:
1. System Options(系统选项)
a. Serial Port Options(串行端口选项)
i. Embedded Serial Port(在这里可以跳过OS层面联合硬件资源,分配逻辑串口数值)
ii. Virtual Serial Port(采用VSP技术,能够在BIOS和OS平台上,使ILO管理控制一个物理串口)
b. Embedded NICs(选择哪一个网口作为网络引导)
i. NIC 1 Boot Options
ii. NIC 2 Boot Options
iii. NIC 3 Boot Options
iv. NIC 4 Boot Options
c. Advanced Memory Protection(高级内存保护技术的选择)
i. Advanced ECC Support
ii. Online Spare with Advanced ECC Support
iii. Mirrored Memory with Advanced ECC Support
iv. Lockstep Mode with Advanced ECC Support
d. USB Options(USB 选项)
i. USB Control(USB 控制)
USB Enable
USB Disable
Legacy USB Disabled(在支持 USB 的操作系统下,所有的 USB 口都被启用,但是 USB 设备在加电自检过程中以及 RBSU 里面不被支持。)
External USB Port Disabled(禁用外部 USB 口的时候,外部 USB 接口被禁用,但是集成的 USB 设备仍然 RBSU 及操作系统下被支持。)
ii. USB 2.0 Controller(USB 2.0 控制)
iii. Removable Flash Media Boot Sequence(调整此顺序不会影响StandardBoot Order (IPL) opt
e. Processor Options
i. No-Execute Memory Protection(非执行内存保护- 开启功能后,系统下,特定的内存被标志为不可执行。病毒如果攻击这部分内存,执行代码,将被阻截。)
ii. Intel(R) Virtualization Technology(虚拟技术的开启)
iii. Intel(R) Hyperthreading Options(超线程技术的开启)
iv. Processor Core Disable(处理器内核的禁用)
v. Intel(R) Turbo Boost Technology(因特尔turbo boost技术的开启)
vi. Intel(R) VT-d (因特尔VT开启)
f. NUMLOCK Power-On(此选项是一个简单的开关,用来设置开机时 NUMLOCK 键的状态。当它被启用的时候, NUMLOCK 键会随着机器电源的打开而被激活。)
g. SATA Controller Options(主板集成阵列卡的开启)
i. Embedded SATA Configuration
ii. Drive Write Cache
2. Power Management Options
a. HP Power Profile(HP电源模式)
i. Balanced Power and Performance(平衡功率和性能提供了最佳的设置,以最大限度地降低功耗,使对大多数操作系统和应用程序性能的影响最小。(均衡模式))
ii. Minimum Power Usage(最小电源使用,功耗降低的机制,可能会影响性能。这种模式保证了该系统所使用的最大功率较低。(最小电源模式))
iii. Maximum Performance(最大性能禁用所有电源管理选项,可能对性能产生负面影响。)
iv. custom
b. HP Power Regulator(HP电源调整)
i. HP Dynamic Power Savings Mode(动态节电模式:基于CPU使用情况自动调整CPU速率和电源使用,减少整体电源损耗,对服务器性能影响很小或者几乎没有影响,需要操作系统支持)
ii. HP Static Low Power Mode(静态低电模式:降低CPU速率和电源使用,保证了为操作系统提供较低的最大电源使用,当CPU使用率比较高时,对性能的影响比较大)
iii. HP Static High Performance Mode(静态高性能模式:处理器运行在最大功率和性能状态,与操作系统无关)
iv. OS Control Mode(系统控制模式:除非操作系统实现了电源管理政策,处理器运行在最大功率和性能状态 )
c. Redundant Power Supply Mode(冗余电源模式)
i. Balanced Mode(电源功率所有电源均分)
ii. High Efficiency Mode (Auto)
iii. High Efficiency Mode (Odd Supply Standby)(选择奇偶电源备用)
iv. High efficiency mode (even supply standby) (高效能模式 保证一半的power standby,以低电压模式工作。)
d. Advanced Power Management Options(高级电源管理选项)
i. Intel QPI Link Power Management(开启此项功能,可以在不使用QPI时,使系统处于低电模式。减少用电量,不影响性能)
ii. Minimum Processor Idle Power State(最低处理器空闲电源状态)
iii. Maximum Memory Bus Frequency(这项配置使系统内存运行在一个相对较低的最大速率)
iv. Memory Inter Leaving
v. PCI Express Generation 2.0 Support(PCI接口的模式支持)
vi. Dynamic Power Saving Mode Response vii. Collaborative Power Control
viii. Turbo Boost Optimization
3. PCI IRQ Settings(设备的终端设置)
4. PCI Device Enable/Disable (PCI设备的开启和禁用)
5. Standard Boot Order(IPL)(开机引导顺序的选择)
6. Boot Controller Order(开机阵列卡的选择)
7. Date and Time(时间日期)
8. Server Availability(服务器功能)
a. ASR Status(ASR状态)
b. ASR Timeout(当服务器在一定时间段内没有响应,重启服务器)
c. Thermal Shutdown(过热保护)
d. Wake-on LAN(网络唤醒是通过装有远程网络管理软件的服务器向客户端机器发唤醒包或帧来工作的。在客户端装有支持网络唤醒的网卡,当网卡收到唤醒帧时,计算机就会开启,例行任务就可以开始执行了。网卡必须支持,BIOS必须支持)
e. POST F1 Prompt Power button(开启:系统下按一下电源按钮的功能不起作用,持续按电源功能不影响(4秒))
f. Automatic Power-on(开启: 电源加电时,服务器自动开启)
g. Power-on Delay(开机延时)
9. Server Security
a. Set Power-on Password(开机提示输入Power-On 密码,此时屏幕上面显示乱码的位置正常在服务器上的显示是一把锁和一个钥匙,此时必须输入密码才能继续进行)
b. Set Admin Password(设置管理密码)
10. BIOS Serial Console & EMS
11. Server Asset Text
12. Advance Options(高级选项)
a. Advanced System ROM Options
i. MPS Table Mode
ii. ROM Selection
iii. NMI Debug Button(系统发生重大故障,蓝屏,灾难性故障时手动收集dump日志。)
iv. Virtual Install Disk(虚拟磁盘:含有安装Windows 2003时所需引导设备驱动;开启此功能,在安装系统时,OS会自动加载阵列卡驱动。安装系统后,及时更新阵列卡驱动。)
v. PCI Bus Padding Options
vi. Power-On Logo
vii. F11 Boot Menu Prompt
b. Video Options
c. Thermal Configuration
i. Optimal Cooling(通过配置风扇速度到最小的需要,提供恰当的降温以提供最高效的方案。)
ii. Increased Cooling(配置风扇以更高速运转)
iii. Maximum Cooling(最大模式的风扇运转)
d. Service Options
e. Advanced Performance Tuning Options
i. HW Prefetcher(预取技术是:在处理器处理指令与/或数据之前,它将这些指令和/或数据从内存预取到缓存中,借此缩短加载到使用延迟,帮助消除潜在的瓶颈。)
ii. Adjacent Sector Prefetch
iii. DCU Prefetcher
iv. Data Reuse
v. Node Interleaving
vi. 1333 MHz Support for 3DPC PC3-10600H HP SmartMemory
vii. Memory Channel Mode
f. Asset Tag Protection
13. System Default Options(系统默认选项)
a. Restore Default System Settings(恢复所有配置信息到出厂值,RBSU的所有更改信息丢失)
b. Restore Settings/Erase Boot Disk(恢复所有配置信息,时间日期,RBSU所有更改。同时擦除引导磁盘的信息)
c. User Default Options(此功能允许用户自定义默认的配置信息。当默认加载配置信息时,加载的是用户自定义的默认配置,而不是出厂配置。为了保存配置信息为默认信息, 配置系统然后开启这个选项。)
14. Utility Language(语言选择)
a. English
b. Japanese
ESP8266 引脚分配参考:您应该使用哪些 GPIO 引脚?
ESP8266 引脚分配参考:您应该使用哪些 GPIO 引脚?
本文是 ESP8266 GPIO 的指南:引脚图、它们的功能以及如何使用它们。
ESP8266 12-E 芯片带有 17 个 GPIO 引脚。并不是所有的 ESP8266 开发板都暴露了所有的 GPIO,有些 GPIO 是不推荐使用的,还有一些有非常特殊的功能。
通过本指南,您将了解如何正确使用 ESP8266 GPIO,并通过为您的项目使用最合适的引脚来避免数小时的挫败感。
我们还有一份 ESP32 GPIO 指南:ESP32 引脚参考:您应该使用哪些 GPIO 引脚?
ESP8266 12-E 芯片引脚
下图说明了 ESP8266 12-E 芯片的引脚排列。如果您在项目中使用 ESP8266 裸芯片,请使用此图。
注意:并非所有 GPIO 都可以在所有开发板中访问,但无论您使用哪种开发板,每个特定 GPIO 都以相同的方式工作。如果您刚刚开始使用 ESP8266,我们建议您阅读我们的指南:ESP8266 入门。
目前,带有 ESP8266 芯片的开发板种类繁多,在可访问 GPIO 的数量、尺寸、外形等方面有所不同……
使用最广泛的 ESP8266 板是ESP-01、ESP8266-12E NodeMCU Kit和Wemos D1 Mini。有关这些板的比较,您可以阅读本指南:ESP8266 Wi-Fi 开发板比较。
ESP8266-01 引脚排列
如果您使用的是 ESP8266-01 板,您可以使用以下 GPIO 图作为参考。
ESP8266 12-E NodeMCU 套件
ESP8266 12-E NodeMCU 套件引脚图如下所示。
Wemos D1 迷你引脚分配
下图显示了 WeMos D1 Mini 引脚排列。
下载带有 ESP8266 引脚图的 PDF
我们整理了一份方便的 PDF 文件,您可以下载和打印,因此您身边总是有 ESP8266 图表:
下载 PDF 引脚图 »
ESP8266 外设
ESP8266 外设包括:
17 个 GPIO
SPI
I2C(在软件上实现)
与 DMA 的 I2S 接口
UART
10 位 ADC
最佳使用引脚——ESP8266
关于 ESP8266 需要注意的一件重要事情是 GPIO 编号与板上丝印上的标签不匹配。例如,D0 对应 GPIO16,D1 对应 GPIO5。
下表显示了丝印上的标签与GPIO编号的对应关系,以及在您的项目中最好使用哪些管脚,需要注意哪些管脚。
以绿色突出显示的引脚可以使用。黄色突出显示的可以使用,但您需要注意,因为它们可能主要在启动时出现意外行为。不建议将红色突出显示的引脚用作输入或输出。
标签 | 通用输入输出接口 | 输入 | 输出 | 笔记 |
D0 | GPIO16 | 没有中断 | 不支持 PWM 或 I2C | 开机时高 习惯于从深度睡眠中醒来 |
D1 | GPIO5 | 行 | 行 | 经常用作SCL(I2C) |
D2 | GPIO4 | 行 | 行 | 经常用作SDA(I2C) |
D3 | GPIO0 | 拉上来 | 行 | 连接到 FLASH 按钮,如果拉低,则启动失败 |
D4 | GPIO2 | 拉上来 | 行 | 开机时高 连接到板载 LED,如果拉低,则启动失败 |
D5 | GPIO14 | 行 | 行 | SPI(SCLK) |
D6 | GPIO12 | 行 | 行 | SPI(味噌) |
D7 | GPIO13 | 行 | 行 | SPI(莫西) |
D8 | GPIO15 | 拉到GND | 行 | SPI(CS) 如果拉高,则启动失败 |
接收 | GPIO3 | 行 | 接收引脚 | 开机时高 |
德克萨斯州 | GPIO1 | 发送引脚 | 行 | 开机时高 启动时调试输出,如果拉低则启动失败 |
A0 | ADC0 | 模拟输入 | X |
继续阅读对 ESP8266 GPIO 及其功能的更详细和深入的分析。
连接到闪存芯片的 GPIO
GPIO6 到 GPIO11 通常连接到 ESP8266 板上的 flash 芯片。因此,不建议使用这些引脚。
引导期间使用的引脚
如果某些引脚被拉低或拉高,则可以防止 ESP8266 启动。以下列表显示了 BOOT 上以下引脚的状态:
GPIO16: BOOT 引脚为高电平
GPIO0:如果拉低,则启动失败
GPIO2:BOOT 引脚为高电平,如果拉低则启动失败
GPIO15:如果拉高,则启动失败
GPIO3:BOOT 引脚为高电平
GPIO1:BOOT 引脚为高电平,如果拉低则启动失败
GPIO10:BOOT 引脚为高电平
GPIO9:BOOT 引脚为高电平
引导时引脚为高电平
当 ESP8266 启动时,某些引脚会输出 3.3V 信号。如果您将继电器或其他外围设备连接到这些 GPIO,这可能会出现问题。以下 GPIO 在启动时输出 HIGH 信号:
GPIO16
GPIO3
GPIO1
GPIO10
GPIO9
此外,除 GPIO5 和 GPIO4 外,其他 GPIO 可以在启动时输出低电压信号,如果这些 GPIO 连接到晶体管或继电器,则可能会出现问题。您可以阅读这篇调查每个 GPIO 在启动时的状态和行为的文章。
如果要操作继电器,GPIO4 和 GPIO5 是最安全的 GPIO。
模拟输入
ESP8266 仅支持一个 GPIO 中的模拟读取。该 GPIO 称为ADC0,通常在丝印上标记为A0。
如果您使用的是 ESP8266 裸芯片,ADC0 引脚的最大输入电压为 0 到 1V。如果您使用的是 ESP8266 12-E NodeMCU 套件等开发板,则电压输入范围为 0 至 3.3V,因为这些板包含内部分压器。
您可以通过以下指南了解如何使用 ESP8266 进行模拟阅读:
ESP8266 ADC – 使用 Arduino IDE、MicroPython 和 Lua 读取模拟值
板载 LED
大多数 ESP8266 开发板都内置了 LED。该 LED 通常连接到 GPIO2。
LED 使用反转逻辑工作。发送一个 HIGH 信号将其关闭,发送一个 LOW 信号将其打开。
RST 引脚
当 RST 引脚拉低时,ESP8266 复位。这与按下板载 RESET 按钮相同。
GPIO0
当 GPIO0 被拉低时,它将 ESP8266 设置为引导加载程序模式。这与按下板载 FLASH/BOOT 按钮相同。
GPIO16
GPIO16 可用于将 ESP8266 从深度睡眠中唤醒。要将 ESP8266 从深度睡眠中唤醒,GPIO16 应连接到 RST 引脚。了解如何将 ESP8266 置于深度睡眠模式:
ESP8266 深度睡眠与 Arduino IDE
ESP8266 深度睡眠与 MicroPython
I2C
ESP8266 没有硬件 I2C 引脚,但可以用软件实现。因此,您可以将任何 GPIO 用作 I2C。通常,以下 GPIO 用作 I2C 引脚:
GPIO5:SCL
GPIO4:SDA
SPI
ESP8266 中用作 SPI 的引脚有:
GPIO12:味噌
GPIO13:MOSI
GPIO14:SCLK
GPIO15:CS
PWM 引脚
ESP8266 允许在所有 I/O 引脚中使用软件 PWM:GPIO0 到 GPIO15。ESP8266 上的 PWM 信号具有 10 位分辨率。了解如何使用 ESP8266 PWM 引脚:
ESP8266 PWM 与 Arduino IDE
ESP8266 PWM 与 MicroPython
中断引脚
ESP8266 支持任何 GPIO 中的中断,但 GPIO16 除外。
带有 Arduino IDE 的 ESP8266 中断和定时器
如何构建一台网络引导服务器一
编译自: https://fedoramagazine.org/how-to-build-a-netboot-server-part-1/
作者: Gregory Bartholomew
译者: qhwdw
有些计算机网络需要在各个物理机器上维护相同的软件和配置。学校的计算机实验室就是这样的一个环境。 网络引导 服务器能够被配置为基于网络去提供一个完整的操作系统,以便于客户端计算机从一个中央位置获取配置。本教程将向你展示构建一台网络引导服务器的一种方法。
本教程的第一部分将包括创建一台网络引导服务器和镜像。第二部分将展示如何去添加 Kerberos 验证的家目录到网络引导配置中。
初始化配置
首先去下载 Fedora 服务器的 netinst 镜像,将它刻录到一张光盘上,然后用它引导服务器来重新格式化。我们只需要一个典型的 Fedora Server 的“最小化安装”来作为我们的开端,安装完成后,我们可以使用命令行去添加我们需要的任何额外的包。
注意:本教程中我们将使用 Fedora 28。其它版本在“最小化安装”中包含的包可能略有不同。如果你使用的是不同的 Fedora 版本,如果一个预期的文件或命令不可用,你可能需要做一些调试。
最小化安装的 Fedora Server 运行起来之后,以 root 用户登入:
$ sudo -i
并设置主机名字:
$ MY_HOSTNAME=server-01.example.edu
$ hostnamectl set-hostname $MY_HOSTNAME
注意:Red Hat 建议静态和临时名字应都要与这个机器在 DNS 中的完全合格域名相匹配,比如 host.example.com( 了解主机名字 )。
注意:本指南为了方便“复制粘贴”。需要自定义的任何值都声明为一个 MY_* 变量,在你运行剩余命令之前,你可能需要调整它。如果你注销之后,变量的赋值将被清除。
注意:Fedora 28 Server 在默认情况下往往会转储大量的日志到控制台上。你可以通过运行命令:sysctl -w kernel.printk=0 去禁用控制台日志输出。
接下来,我们需要在我们的服务器上配置一个静态网络地址。运行下面的一系列命令将找到并重新配置你的默认网络连接:
$ MY_DNS1=192.0.2.91
$ MY_DNS2=192.0.2.92
$ MY_IP=192.0.2.158
$ MY_PREFIX=24
$ MY_GATEWAY=192.0.2.254
$ DEFAULT_DEV=$(ip route show default | awk '{print $5}')
$ DEFAULT_CON=$(nmcli d show $DEFAULT_DEV | sed -n '/^GENERAL.CONNECTION:/s!.*:s*!! p')
$ nohup bash << END
nmcli con mod "$DEFAULT_CON" connection.id "$DEFAULT_DEV"
nmcli con mod "$DEFAULT_DEV" connection.interface-name "$DEFAULT_DEV"
nmcli con mod "$DEFAULT_DEV" ipv4.method disabled
nmcli con up "$DEFAULT_DEV"
nmcli con add con-name br0 ifname br0 type bridge
nmcli con mod br0 bridge.stp no
nmcli con mod br0 ipv4.dns $MY_DNS1,$MY_DNS2
nmcli con mod br0 ipv4.addresses $MY_IP/$MY_PREFIX
nmcli con mod br0 ipv4.gateway $MY_GATEWAY
nmcli con mod br0 ipv4.method manual
nmcli con up br0
nmcli con add con-name br0-slave0 ifname "$DEFAULT_DEV" type bridge-slave master br0
nmcli con up br0-slave0
END
注意:上面最后的一组命令被封装到一个 nohup 脚本中,因为它将临时禁用网络。这个 nohup 命令可以让 nmcli 命令运行完成,即使你的 SSH 连接断开。注意,连接恢复可能需要 10 秒左右的时间,如果你改变了服务器 IP 地址,你将需要重新启动一个新的 SSH 连接。
注意:上面的网络配置在默认的连接之上创建了一个 网桥 ,这样我们在后面的测试中就可以直接运行一个虚拟机实例。如果你不想在这台服务器上去直接测试网络引导镜像,你可以跳过创建网桥的命令,并直接在你的默认网络连接上配置静态 IP 地址。
安装和配置 NFS4
从安装 nfs-utils 包开始:
$ dnf install -y nfs-utils
为发布 NFS 去创建一个顶级的 伪文件系统 ,然后在你的网络上共享它:
$ MY_SUBNET=192.0.2.0
$ mkdir /export
$ echo "/export -fsid=0,ro,sec=sys,root_squash $MY_SUBNET/$MY_PREFIX" > /etc/exports
selinux 会干扰网络引导服务器的运行。为它配置例外规则超出了本教程中,因此我们这里直接禁用它:
$ sed -i '/GRUB_CMDLINE_LINUX/s/"$/ audit=0 selinux=0"/' /etc/default/grub
$ grub2-mkconfig -o /boot/grub2/grub.cfg
$ sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinux
$ setenforce 0
注意:应该不需要编辑 grub 命令行,但我们在测试过程中发现,直接编辑 /etc/sysconfig/selinux 被证明重启后是无效的,因此这样做再次确保设置了 selinux=0 标志。
现在,在本地防火墙中为 NFS 服务添加一个例外规则,然后启动 NFS 服务:
$ firewall-cmd --add-service nfs
$ firewall-cmd --runtime-to-permanent
$ systemctl enable nfs-server.service
$ systemctl start nfs-server.service
创建网络引导镜像
现在我们的 NFS 服务器已经启动运行了,我们需要为它提供一个操作系统镜像,以便于它提供给客户端计算机。我们将从一个非常小的镜像开始,等一切顺利之后再添加。
首先,创建一个存放我们镜像的新目录:
$ mkdir /fc28
使用 dnf 命令在新目录下用几个基础包去构建镜像:
$ dnf -y --releasever=28 --installroot=/fc28 install fedora-release systemd passwd rootfiles sudo dracut dracut-network nfs-utils vim-minimal dnf
在上面的命令中省略了很重要的 kernel 包。在它们被安装完成之前,我们需要去调整一下 initramfs 镜像中包含的驱动程序集,kernel 首次安装时将自动构建这个镜像。尤其是,我们需要禁用 hostonly 模式,以便于 initramfs 镜像能够在各种硬件平台上正常工作,并且我们还需要添加对网络和 NFS 的支持:
$ echo 'hostonly=no' > /fc28/etc/dracut.conf.d/hostonly.conf
$ echo 'add_dracutmodules =" network nfs "' > /fc28/etc/dracut.conf.d/netboot.conf
现在,安装 kernel 包:
$ dnf -y --installroot=/fc28 install kernel
设置一个阻止 kernel 包被更新的规则:
$ echo 'exclude=kernel-*' >> /fc28/etc/dnf/dnf.conf
设置 locale:
$ echo 'LANG="en_US.UTF-8"' > /fc28/etc/locale.conf
注意:如果 locale 没有正确配置,一些程序(如 GNOME Terminal)将无法正常工作。
设置客户端的主机名字:
$ MY_CLIENT_HOSTNAME=client-01.example.edu
$ echo $MY_CLIENT_HOSTNAME > /fc28/etc/hostname
禁用控制台日志输出:
$ echo 'kernel.printk = 0 4 1 7' > /fc28/etc/sysctl.d/00-printk.conf
定义网络引导镜像中的本地 liveuser 用户:
$ echo 'liveuser:x:1000:1000::/home/liveuser:/bin/bash' >> /fc28/etc/passwd
$ echo 'liveuser::::::::' >> /fc28/etc/shadow
$ echo 'liveuser:x:1000:' >> /fc28/etc/group
$ echo 'liveuser:!::' >> /fc28/etc/gshadow
允许 liveuser 使用 sudo:
$ echo 'liveuser ALL=(ALL) NOPASSWD: ALL' > /fc28/etc/sudoers.d/liveuser
启用自动创建家目录:
$ dnf install -y --installroot=/fc28 authselect oddjob-mkhomedir
$ echo 'dirs /home' > /fc28/etc/rwtab.d/home
$ chroot /fc28 authselect select sssd with-mkhomedir --force
$ chroot /fc28 systemctl enable oddjobd.service
由于多个客户端将会同时挂载我们的镜像,我们需要去配置镜像工作在只读模式中:
$ sed -i 's/^READONLY=no$/READONLY=yes/' /fc28/etc/sysconfig/readonly-root
配置日志输出到内存而不是持久存储中:
$ sed -i 's/^#Storage=auto$/Storage=volatile/' /fc28/etc/systemd/journald.conf
配置 DNS:
$ MY_DNS1=192.0.2.91
$ MY_DNS2=192.0.2.92
$ cat << END > /fc28/etc/resolv.conf
nameserver $MY_DNS1
nameserver $MY_DNS2
END
绕开编写本教程时存在的根目录只读挂载的 bug( BZ1542567 ):
$ echo 'dirs /var/lib/gssproxy' > /fc28/etc/rwtab.d/gssproxy
$ cat << END > /fc28/etc/rwtab.d/systemd
dirs /var/lib/systemd/catalog
dirs /var/lib/systemd/coredump
END
最后,为我们镜像创建 NFS 文件系统,并将它共享到我们的子网中:
$ mkdir /export/fc28
$ echo '/fc28 /export/fc28 none bind 0 0' >> /etc/fstab
$ mount /export/fc28
$ echo "/export/fc28 -ro,sec=sys,no_root_squash $MY_SUBNET/$MY_PREFIX" > /etc/exports.d/fc28.exports
$ exportfs -vr
创建引导加载器
现在,我们已经有了可以进行网络引导的操作系统,我们需要一个引导加载器去从客户端系统上启动它。在本教程中我们使用的是 iPXE 。
注意:本节和接下来的节使用 QEMU 测试,也能在另外一台单独的计算机上来完成;它们并不需要在网络引导服务器上来运行。
安装 git 并使用它去下载 iPXE:
$ dnf install -y git
$ git clone http://git.ipxe.org/ipxe.git $HOME/ipxe
现在我们需要去为我们的引导加载器创建一个指定的启动脚本:
$ cat << 'END' > $HOME/ipxe/init.ipxe
#!ipxe
prompt --key 0x02 --timeout 2000 Press Ctrl-B for the iPXE command line... && shell ||
dhcp || exit
set prefix file:///linux
chain ${prefix}/boot.cfg || exit
END
启动 “file” 下载协议:
$ echo '#define DOWNLOAD_PROTO_FILE' > $HOME/ipxe/src/config/local/general.h
安装 C 编译器以及相关的工具和库:
$ dnf groupinstall -y "C Development Tools and Libraries"
构建引导加载器:
$ cd $HOME/ipxe/src
$ make clean
$ make bin-x86_64-efi/ipxe.efi EMBED=../init.ipxe
记下新编译的引导加载器的存储位置。我们将在接下来的节中用到它:
$ IPXE_FILE="$HOME/ipxe/src/bin-x86_64-efi/ipxe.efi"
用 QEMU 测试
这一节是可选的,但是你需要去复制下面显示在物理机器上的 EFI 系统分区 的布局,在网络引导时需要去配置它们。
注意:如果你想实现一个完全的无盘系统,你也可以复制那个文件到一个 TFTP 服务器,然后从 DHCP 上指向那台服务器。
为了使用 QEMU 去测试我们的引导加载器,我们继续去创建一个仅包含一个 EFI 系统分区和我们的启动文件的、很小的磁盘镜像。
从创建 EFI 系统分区所需要的目录布局开始,然后把我们在前面节中创建的引导加载器复制进去:
$ mkdir -p $HOME/esp/efi/boot
$ mkdir $HOME/esp/linux
$ cp $IPXE_FILE $HOME/esp/efi/boot/bootx64.efi
下面的命令将识别我们的引导加载器镜像正在使用的内核版本,并将它保存到一个变量中,以备后续的配置命令去使用它:
$ DEFAULT_VER=$(ls -c /fc28/lib/modules | head -n 1)
定义我们的客户端计算机将使用的引导配置:
$ MY_DNS1=192.0.2.91
$ MY_DNS2=192.0.2.92
$ MY_NFS4=server-01.example.edu
$ cat << END > $HOME/esp/linux/boot.cfg
#!ipxe
kernel --name kernel.efi ${prefix}/vmlinuz-$DEFAULT_VER initrd=initrd.img ro ip=dhcp rd.peerdns=0 nameserver=$MY_DNS1 nameserver=$MY_DNS2 root=nfs4:$MY_NFS4:/fc28 console=tty0 console=ttyS0,115200n8 audit=0 selinux=0 quiet
initrd --name initrd.img ${prefix}/initramfs-$DEFAULT_VER.img
boot || exit
END
注意:上面的引导脚本展示了如何使用 iPXE 去网络引导 Linux 的最小示例。还可以做更多更复杂的配置。值得注意的是,iPXE 支持交互式引导菜单,它可以让你配置默认选项和超时时间。比如,一个更高级一点 iPXE 脚本可以默认从本地磁盘引导一个操作系统,如果在倒计时结束之前用户按下了一个键,才会去网络引导一个操作系统。
复制 Linux 内核并分配 initramfs 给 EFI 系统分区:
$ cp $(find /fc28/lib/modules -maxdepth 2 -name 'vmlinuz' | grep -m 1 $DEFAULT_VER) $HOME/esp/linux/vmlinuz-$DEFAULT_VER
$ cp $(find /fc28/boot -name 'init*' | grep -m 1 $DEFAULT_VER) $HOME/esp/linux/initramfs-$DEFAULT_VER.img
我们最终的目录布局应该看起来像下面的样子:
esp
├── efi
│ └── boot
│ └── bootx64.efi
└── linux
├── boot.cfg
├── initramfs-4.18.18-200.fc28.x86_64.img
└── vmlinuz-4.18.18-200.fc28.x86_64
要让 QEMU 去使用我们的 EFI 系统分区,我们需要去创建一个小的 uefi.img 磁盘镜像来包含它,然后将它连接到 QEMU 作为主引导驱动器。
开始安装必需的工具:
$ dnf install -y parted dosfstools
现在创建 uefi.img 文件,并将 esp 目录中的文件复制进去:
$ ESP_SIZE=$(du -ks $HOME/esp | cut -f 1)
$ dd if=/dev/zero of=$HOME/uefi.img count=$((${ESP_SIZE} 5000)) bs=1KiB
$ UEFI_DEV=$(losetup --show -f $HOME/uefi.img)
$ parted ${UEFI_DEV} -s mklabel gpt mkpart EFI FAT16 1MiB 100% toggle 1 boot
$ mkfs -t msdos ${UEFI_DEV}p1
$ mkdir -p $HOME/mnt
$ mount ${UEFI_DEV}p1 $HOME/mnt
$ cp -r $HOME/esp/* $HOME/mnt
$ umount $HOME/mnt
$ losetup -d ${UEFI_DEV}
注意:在物理计算机上,你只需要从 esp 目录中复制文件到计算机上已存在的 EFI 系统分区中。你不需要使用 uefi.img 文件去引导物理计算机。
注意:在一个物理计算机上,如果文件名已存在,你可以重命名 bootx64.efi 文件,如果你重命名了它,就需要去编辑计算机的 BIOS 设置,并添加重命令后的 efi 文件到引导列表中。
接下来我们需要去安装 qemu 包:
$ dnf install -y qemu-system-x86
允许 QEMU 访问我们在本教程“初始化配置”一节中创建的网桥:
$ echo 'allow br0' > /etc/qemu/bridge.conf
创建一个 OVMF_VARS.fd 镜像的副本去保存我们虚拟机的持久 BIOS 配置:
$ cp /usr/share/edk2/ovmf/OVMF_VARS.fd $HOME
现在,启动虚拟机:
$ qemu-system-x86_64 -machine accel=kvm -nographic -m 1024 -drive if=pflash,format=raw,unit=0,file=/usr/share/edk2/ovmf/OVMF_CODE.fd,readonly=on -drive if=pflash,format=raw,unit=1,file=$HOME/OVMF_VARS.fd -drive if=ide,format=raw,file=$HOME/uefi.img -net bridge,br=br0 -net nic,model=virtio
如果一切顺利,你将看到类似下图所示的结果:
你可以使用 shutdown 命令关闭虚拟机回到我们的服务器上:
$ sudo shutdown -h now
注意:如果出现了错误或虚拟机挂住了,你可能需要启动一个新的 SSH 会话去连接服务器,使用 kill 命令去终止 qemu-system-x86_64 进程。
镜像中添加包
镜像中添加包应该是一个很简单的问题,在服务器上 chroot 进镜像,然后运行 dnf install <package_name>。
在网络引导镜像中并不限制你能安装什么包。一个完整的图形化安装应该能够完美地工作。
下面是一个如何将最小化安装的网络引导镜像变成完整的图形化安装的示例:
$ for i in dev dev/pts dev/shm proc sys run; do mount -o bind /$i /fc28/$i; done
$ chroot /fc28 /usr/bin/bash --login
$ dnf -y groupinstall "Fedora Workstation"
$ dnf -y remove gnome-initial-setup
$ systemctl disable sshd.service
$ systemctl enable gdm.service
$ systemctl set-default graphical.target
$ sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinux
$ logout
$ for i in run sys proc dev/shm dev/pts dev; do umount /fc28/$i; done
可选地,你可能希望去启用 liveuser 用户的自动登录:
$ sed -i '/daemon/a AutomaticLoginEnable=true' /fc28/etc/gdm/custom.conf
$ sed -i '/daemon/a AutomaticLogin=liveuser' /fc28/etc/gdm/custom.conf
via: https://fedoramagazine.org/how-to-build-a-netboot-server-part-1/
作者: Gregory Bartholomew 选题: lujun9972 译者: qhwdw 校对: wxy
本文由 LCTT 原创编译, Linux中国 荣誉推出
点击“了解更多”可访问文内链接
国产音频芯片到底怎么样?这款芯片不负你期望,支持下国产
国产音频芯片介绍
国产事业继续前行,国产芯片蓬勃发展,前面的文章玉京龙有给大家过电源,RTC时钟,EEPROM芯片等各种类型的国产芯片,今天继续给大家介绍一款国产的音频芯片CJC6811A,这颗芯片由武汉光华芯科技推出;下面我们先来了解下基本的特点:
CJC6811A是一款基于Cortex-MO 的MCU,专为USB耳机设计。它集成了一个32位RISC CPU与16KB SRAM, USB, UART, IIC,音频编解码器,GPIO,定时器,WDT, PWM, SPI, IIS, SPDIF, SARADC, PLL, LDO等。CJC6811A可以通过SPI接口从外部flash启动。
启动后,程序从外部闪存读取到内部SRAM执行。CJC6811A可以运行高达48MHz,设计上特别考虑到低功耗问题,同时允许灵活性达到高性能。CJC6811A可以在不同的节电模式下工作:正常,空闲,待机,下电,不同的模式有不同的时钟和电源策略。工作温度支持-25°C
- 85°C ;
系统框图
CJC6811A音频芯片的尺寸5*5mm,这个尺寸还是比较小的,PCB封装采用的是QFN32;下面我们一起来看看引脚定义:
数字引脚部分:
1PIN,UART_TX:串口发送信号;
2PIN,FLS_SO:SPI的数据信号;
3PIN,MCU_SPIB_SO :SPI的数据信号;
4PIN,MCU_SPIB_CSN :SPI的片选信号;
5PIN,FLS_SI :SPI的数据信号;
7PIN,SPIB_CLK :SPI的时钟信号;
8PIN,SPIB_SI SPI:的数据信号;
10PIN,GPIO3:可配置输出的GPIO;
14PIN,GPIO0:可配置输出PWM的GPIO;
15PIN,GPIO2 可配置输出的GPIO;
模拟引脚部分:
20PIN,MIC_BIAS:MIC的直流偏置电压;
21PIN,MIC_IN:MIC的输入信号;
22PIN,ADC_IN: 模数转换信号;
25PIN,HP_L:左声道 ;
26PIN,HP_VCOM:左右声道参考电压;
27PIN,HP_R ;右声道;
28PIN,Codec_Vmid :编码-解码器参考电压;
30PIN,USB_DM: USB2.0信号;
31PIN,USB_DP: USB2.0信号;
电源引脚部分
6PIN,VDD33: 3.3V电源;
9PIN,DVDD18: 芯片输出的1.8V电源;
29PIN,DVDD18: 芯片输出的1.8V电源;
12PIN,FLS_VDD33: 3.3V电源;
16PIN,VDD33: 3.3V电源;
32PIN,DVDD33: 3.3V电源;
18PIN,AVDD: 3.3V电压,用电感和3.3V隔离;
19PIN,AVDD_HP: 3.3V电压,用电感和3.3V隔离
24PIN,PGND:接模拟地;
17PIN,VSSIO0:接数字地;
33PIN,GND/VSS: 接数字地;
其它引脚部分:
23PIN,RESETB:复位信号,建议加复位IC;
11PIN,CLK_XTALa: 12Mhz时钟输入,可悬空处理;
13PIN,BOOTMODE :通过0R电子上拉到3.3V电源;
下面我们一起来看设计的原理图:
设计中需要注意的事项:
1.供电最好采用LDO,保证纹波较小,避免出现概率不识别问题。原创今日头条:卧龙会IT技术
2.Reset最好采用复位IC,此IC上电时序异常会导致不识别问题。音频芯片需要满足下面的时序要求:黄色线为VDD33,紫色为Resetb; VDD33电源起来20ms-200ms后Resetb才能拉高;
3.MIC_IN 默认为MIC输入,也可设置为LINEIN,为单声道输入。
4.内部FW主要有2个版本:
A.Gpio2默认输入脚,用于检测插入用,拉低时识别到设备。
B.默认识别到设备,Gpio2默认输入脚,用于检测耳机插入,Gpio0 Gpio3作为输出脚。
5.未插入耳机时,Gpio2为高,Gpio0输出高,Gpio3输出低。
6.当插入耳机后,Gpio2变低 ,Gpio0变低,Gpio3变高。
国产音频芯片CJCC6811A介绍到这里;2022新的一年,玉京龙祝各位小伙伴们,工作顺利,家庭和睦,财源滚滚。
关注下@卧龙会IT技术,感谢大家支持!
原创:卧龙会 玉京龙
卧龙会,卧虎藏龙!电子行业高手汇聚
-
命运先锋绝境手游官网官方版264MB角色扮演
-
遇见龙返利版739M角色扮演
-
武士切割战72.8M角色扮演
-
武震九州手游官方版141.48MB角色扮演
-
三国杀滑稽版反和谐美化包3.6.2版本最新地址下载839MB角色扮演
-
抖音鼠标迷宫恐怖游戏下载手机版34.25MB角色扮演
-
元梦之星手机版最新版20231.11GB | 游戏2023-09-28
-
少女前线2追放wiki公测103.23MB | 游戏2023-09-28
-
孤独战机378.51MB | 游戏2023-09-28
-
夸父追日22.98MB | 游戏2023-09-28
-
烟雨江湖v1.124.48452 | 游戏2023-09-28
-
苍之纪元v1.0.827 | 游戏2023-09-28