-
在Ubuntu 20.04上搭建Chipyard环境时,执行build-setup.sh并安装RISC-V工具链过程中可能会遇到一些问题。以下是一个详细的步骤和解决方法:前提条件确保系统已更新并安装了必要的软件包。检查是否有较新的依赖库或工具。确保网络连接稳定。安装基本依赖包首先,确保所有必需的依赖包都已正确安装。sudo apt update sudo apt upgrade -y sudo apt install -y git autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev libexpat-dev下载并配置Chipyard然后,下载Chipyard仓库并进入目录。git clone https://github.com/ucb-bar/chipyard.git cd chipyard git checkout <version> # 替换<version>为你使用的版本,如1.8.0或1.11.0 ./scripts/init-submodules-no-riscv-tools.sh执行build-setup.sh脚本接下来,执行脚本进行设置。如果遇到错误,请根据以下常见错误及其解决方案进行处理:./scripts/build-setup.sh riscv-tools常见错误及解决方案1. Error: GHC not found or Version mismatchGHC(The Glasgow Haskell Compiler)的版本可能不匹配或未找到。可以安装适当的版本。sudo apt install ghc或者使用更高版本的ghcup来管理GHC版本:curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh ghcup install ghc <version> # 替换<version>为所需的GHC版本 ghcup set ghc <version>2. Permission Denied Errors这些错误通常与权限问题有关,确保你有足够的权限运行脚本和访问文件。sudo chmod +x ./scripts/build-setup.sh如果问题依然存在,可以尝试以超级用户身份运行:sudo ./scripts/build-setup.sh riscv-tools3. Network Connectivity Issues由于网络波动,脚本可能下载失败。这种情况下可以手动下载需要的文件,并放置在相应目录中,然后重新执行脚本。4. Unsupported riscv-tools repository or branch确保你使用的riscv-tools仓库和分支是支持的。cd toolchains/riscv-tools git checkout master # 或者用适合的分支 git pull手动构建RISC-V工具链如果自动构建仍然失败,可以尝试手动构建RISC-V工具链:git clone --recursive https://github.com/riscv/riscv-gnu-toolchain cd riscv-gnu-toolchain ./configure --prefix=/opt/riscv make将生成的工具链添加到环境变量中:echo 'export PATH=/opt/riscv/bin:$PATH' >> ~/.bashrc source ~/.bashrc最终检查成功完成后,验证工具链是否正确安装:which riscv64-unknown-elf-gcc riscv64-unknown-elf-gcc --version如果没有错误输出,则表示工具链已正确安装并配置。总结通过上述步骤,你应该能够在Ubuntu 20.04上成功搭建Chipyard环境并安装RISC-V工具链。
-
1. Obtain the ISO File of UbuntuSupport versionUbuntu-18.04-desktop-amd64Ubuntu-20.04-desktop-amd64 2. Preparing Ubuntu ECSsSTEP 1 Upload the ISO image to OBS bucket and import Image.STEP 2 Use the Ubuntu image to create an ECSSTEP 3 Complete Ubuntu installationvideovideovideoSTEP 4 (Optional) Open termianl and enable sshsudo susudu apt install openssh-serversudo systemctl start sshsudo systemctl enable ssh3. Configure3.1 Videovideovideovideovideo3.3 STEPSSTEP 1 Prevent the system from entering suspend modesudo susudo systemctl mask suspend.targetSTEP 2 Install vim, libxcb-xinerama0, gawksudo suapt updateapt install vimsudo apt-get install libxcb-xinerama0sudo apt install gawkSTEP 3 Install the Linux Kernel (For Ubuntu 20.04 Only)sudo apt-get install linux-image-5.15.0-72-generic linux-headers-5.15.0-72-generic linux-modules-extra-5.15.0-72-genericgrep menuentry /boot/grub/grub.cfgRecord the location of the 5.15.0-72 version, as shown in the figure for kernel 2.sudo vim /etc/default/grubChange the value of "GRUB_DEFAULT" to "1 > 2", where 2 is the location of the 5.15.0-72 version, and add "GRUB_SAVEDEFAULT=true".Update configurationssudo update-grubsudo rebootSTEP 4 Install sshapt updateapt install openssh-serverservice sshd startSTEP 5 Config sshd_configvim /etc/ssh/sshd_configChange the value of "ChallengeResponseAuthentication" in the "sshd_config" file to "yes".STEP 6 Install pythonpython3 --versionapt install python3STEP 7 Install Cloud-initapt updateapt install cloud-initSTEP 8 Config Cloud-initvim /etc/cloud/cloud.cfgAdd the following configuration to the last linedatasource_list: [ OpenStack ] datasource: OpenStack: metadata_urls: ['http://169.254.169.254'] max_wait: 120 timeout: 5network: config: disabled Change the value of "disable_root" to "false":Find the "cloud_config_modules" configuration item list and delete the "- locale" configuration itemFind the "cloud_init_modules" configuration item list and move "- ssh" from the last to the firstSTEP 9 Check Cloud-Init configurationscloud-init init --localSTEP 10 Install KVMvim /etc/initramfs-tools/modulesAdd the Virtio driver to the "/etc/initramfs-tools/modules" file.# Examples: # # raid1 # sd_mOd virtio_blkvirtio_scsivirtio_netvirtio_pcivirtio_ringvirtioRegenerate initrdupdate-initramfs -uSTEP 11 Obtaining Huawei Delivery Agent (HDA) Packagewget https://workspace-hdp-gray-cn-south-1.obs.cn-south-1.myhuaweicloud.com/WorkspaceHDP/HDPAgent/23.8.2/Workspace_HDP_LinuxDesktop_23.8.2.1117.isocp Workspace_HDP_LinuxDesktop_23.8.2.1117.iso /tmpSTEP 12 Install HDAmount /tmp/Workspace_HDP_LinuxDesktop_23.8.2.1117.iso /mntcd /mnt/bin/bash autorun.shThe system will restartSTEP 13 Check HDA versioncat /usr/local/hdpserver/version.txtsudo apt-mark hold `uname -r`STEP 14 Disable animations in the GNOME desktop environmentsudo vi /etc/profileAdd the following configuration at the last line of the file:gsettings set org.gnome.desktop.interface enable-animations falseSTEP 15 Setting button-layoutsudo touch /usr/share/glib-2.0/schemas/19_mysettings.gschema.overridesudo vi /usr/share/glib-2.0/schemas/19_mysettings.gschema.overrideAdd the following configuration to the file:[org.gnome.desktop.wm.preferences]button-layout=':minimize,maximize,close'STEP 16 Reload the configuration filesudo glib-compile-schemas /usr/share/glib-2.0/schemasSTEP 17 Obtain and install Sysagentwget https://workspace-hdp-gray-cn-east-3.obs.cn-east-3.myhuaweicloud.com/WorkspaceHDP/HDPSysAgent/24.2.0/HDPSysAgentPackage_Linux-x86_64_Server_Release.zipmv HDPSysAgentPackage_Linux-x86_64_Server_Release.zip /tmpcd /tmpunzip HDPSysAgentPackage_Linux-x86_64_Server_Release.zip -d HDPSysAgentFirstcd HDPSysAgentFirstunzip HDPSysAgent_Linux_Server.zip -d HDPSysAgentSecondcd HDPSysAgentSecondbash install.shSuccess prompt: “----------------install HDPSysAgent success----------”STEP 18 Clean cachecd /usr/local/hdpserver/hwsysagent/scripts20bash cleanCache.shSTEP 19 Remove Software Update Notifiersudo apt-get updatesudo apt-get remove update-notifier4. Creating imageSTEP 1 Stopping the ECSSTEP 2 Create image
-
运行了MDC300sample-1.0.107.2中的Ascendcl_sample,模型推理和编译都没有问题,把最终生成的编译文件bin,模型文件model,图片image发到mini上面运行,结果报错。
-
介绍 DNS,即域名系统,在学习如何配置网站和服务器时,通常是一个难以正确配置的组件。虽然大多数人可能会选择使用由其托管公司或域名注册商提供的DNS服务器,但自己创建DNS服务器也有一些优势。 在本指南中,我们将讨论如何在Ubuntu 14.04机器上安装和配置Bind9 DNS服务器作为缓存或转发DNS服务器。这两种配置在为机器网络提供服务时都有优势。 先决条件和目标 要完成本指南,您首先需要熟悉一些常见的DNS术语。查看本指南以了解我们将在本指南中实施的一些概念。 我们将演示两种实现类似目标的单独配置:缓存和转发DNS服务器。 要跟随操作,您需要访问两台计算机(至少一台应为Ubuntu 14.04服务器)。一台将充当客户端,另一台将配置为DNS服务器。我们示例配置的详细信息如下: 角色 IP地址 DNS服务器 192.0.2.1 客户端 192.0.2.100 我们将向您展示如何配置客户端机器以使用DNS服务器进行查询。我们将向您展示如何根据您的需求在DNS服务器上配置两种不同的配置。 缓存DNS服务器 第一个配置将是缓存DNS服务器。这种类型的服务器也被称为解析器,因为它处理递归查询,并通常可以处理从其他服务器获取DNS数据的繁重工作。 当缓存DNS服务器找到客户端查询的答案时,它将答案返回给客户端。但它还将在其缓存中存储答案,存储时间由记录的TTL值决定。然后可以将缓存用作后续请求的来源,以加快总往返时间。 您在网络配置中可能拥有的几乎所有DNS服务器都将是缓存DNS服务器。这些服务器弥补了大多数客户机上实现的不足的DNS解析器库。缓存DNS服务器对许多情况都是一个不错的选择。如果您不希望依赖于您的ISP的DNS或其他公共可用的DNS服务器,那么制作自己的缓存服务器是一个不错的选择。如果它与客户机在物理上很近,它也很可能提高DNS查询时间。 转发DNS服务器 我们将演示的第二个配置是转发DNS服务器。从客户端的角度来看,转发DNS服务器看起来几乎与缓存服务器相同,但机制和工作负载是完全不同的。 转发DNS服务器提供了与维护缓存以改善客户端DNS解析时间相同的优势。但它实际上并不执行递归查询。相反,它将所有请求转发到外部解析服务器,然后缓存结果以供以后的查询使用。 这使得转发服务器可以从其缓存中响应,而无需执行所有递归查询的工作。这允许服务器仅进行单个请求(转发的客户端请求),而无需执行整个递归例程。这在外部带宽传输昂贵的环境中可能是一个优势,在这种环境中,您的缓存服务器可能需要经常更改,或者当您希望将本地查询转发到一个服务器,将外部查询转发到另一个服务器时。 在DNS服务器上安装Bind 无论您希望使用哪种配置选择,实施Bind DNS服务器的第一步是安装实际软件。 Bind软件可在Ubuntu的默认存储库中找到,因此我们只需要更新本地软件包索引,并使用apt安装软件。我们还将包括文档和一些常用实用程序: sudo apt-get update sudo apt-get install bind9 bind9utils bind9-doc 现在Bind组件已安装,我们可以开始配置服务器。转发服务器将使用缓存服务器配置作为起点,因此无论您的最终目标是什么,首先将服务器配置为缓存服务器。 配置为缓存DNS服务器 首先,我们将介绍如何配置Bind以充当缓存DNS服务器。此配置将强制服务器在客户端发出查询时递归地寻找其他DNS服务器的答案。这意味着它正在依次查询每个相关的DNS服务器,直到找到整个响应。 默认情况下,Bind配置文件保存在/etc/bind目录中。现在进入该目录: cd /etc/bind 我们不会关心该目录中的大多数文件。主配置文件称为named.conf(named和bind是同一应用程序的两个名称)。此文件简单地引用named.conf.options文件,named.conf.local文件和named.conf.default-zones文件。 对于缓存DNS服务器,我们只会修改named.conf.options文件。使用sudo权限在文本编辑器中打开此文件: sudo nano named.conf.options 去除注释以提高可读性后,文件如下所示: options { directory "/var/cache/bind"; dnssec-validation auto; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { any; }; }; 要配置缓存,第一步是设置访问控制列表(ACL)。 作为用于解析递归查询的DNS服务器,我们不希望DNS服务器被恶意用户滥用。一种称为DNS放大攻击的攻击尤其麻烦,因为它可能导致您的服务器参与分布式拒绝服务攻击。 DNS放大攻击是恶意用户试图使互联网上的服务器或站点宕机的一种方式。为此,他们尝试找到将解析递归查询的公共DNS服务器。他们伪造受害者的IP地址并发送一个将向DNS服务器返回大型响应的查询。这样一来,DNS服务器会用大负载响应针对受害者服务器的小请求,有效地放大了攻击者的可用带宽。 托管公共递归DNS服务器需要大量特殊配置和管理。为了避免您的服务器被用于恶意目的的可能性,我们将配置一个我们信任的IP地址或网络范围的列表。 在options块之上,我们将创建一个名为acl的新块。为您正在配置的ACL组创建一个标签。在本指南中,我们将称该组为goodclients。 acl goodclients { }; 在此块中,列出应允许使用此DNS服务器的IP地址或网络。由于我们的服务器和客户端都在同一个/24子网中运行,我们将将示例限制为此网络。我们还将添加localhost和localnets,它们将尝试自动执行此操作: acl goodclients { 192.0.2.0/24; localhost; localnets; }; 现在我们有了一个我们希望解析请求的客户端的ACL,我们可以在options块中配置这些功能。在此块中,添加以下行: options { directory "/var/cache/bind"; recursion yes; allow-query { goodclients; }; . . . 我们明确打开了递归,并配置了allow-query参数以使用我们的ACL规范。我们也可以使用不同的参数,比如allow-recursion来引用我们的ACL组。如果存在且递归打开,则allow-recursion将指示可以使用递归服务的客户端列表。 但是,如果未设置allow-recursion,则Bind将退回到allow-query-cache列表,然后是allow-query列表,最后是默认的localnets和localhost。由于我们正在配置仅缓存服务器(它没有自己的权威区域,也不转发请求),allow-query列表将始终仅适用于递归。我们使用它是因为这是指定ACL的最一般方式。 完成这些更改后,保存并关闭文件。 实际上,这就是缓存DNS服务器所需的全部内容。如果您决定使用此服务器类型,请随时跳转到后面了解如何检查配置文件、重新启动服务和实施客户端配置。 否则,请继续阅读,了解如何设置转发DNS服务器。 配置为转发 DNS 服务器 如果转发 DNS 服务器更适合您的基础架构,我们可以轻松地进行设置。 我们将从缓存服务器配置中离开的配置开始。named.conf.options 文件应该如下所示: acl goodclients { 192.0.2.0/24; localhost; localnets; }; options { directory "/var/cache/bind"; recursion yes; allow-query { goodclients; }; dnssec-validation auto; auth-nxdomain no; # 符合 RFC1035 listen-on-v6 { any; }; }; 我们将使用相同的 ACL 列表来限制我们的 DNS 服务器只能为特定的客户端提供服务。但是,我们需要更改配置,以便服务器不再尝试执行递归查询。 为此,我们不将 recursion 更改为 no。转发服务器仍然通过回答非权威区域的查询来提供递归服务。相反,我们需要设置一个缓存服务器列表,将我们的请求转发到这些服务器。 这将在 options {} 块内完成。首先,我们创建一个名为 forwarders 的块,其中包含我们要转发请求的递归名称服务器的 IP 地址。在我们的指南中,我们将使用 Google 的公共 DNS 服务器(8.8.8.8 和 8.8.4.4): . . . options { directory "/var/cache/bind"; recursion yes; allow-query { goodclients; }; forwarders { 8.8.8.8; 8.8.4.4; }; . . . 之后,我们应该将 forward 指令设置为 “only”,因为此服务器将转发所有请求,不应尝试自行解析请求。 完成后,配置文件将如下所示: acl goodclients { 192.0.2.0/24; localhost; localnets; }; options { directory "/var/cache/bind"; recursion yes; allow-query { goodclients; }; forwarders { 8.8.8.8; 8.8.4.4; }; forward only; dnssec-validation auto; auth-nxdomain no; # 符合 RFC1035 listen-on-v6 { any; }; }; 我们应该做的最后一项更改是 dnssec 参数。根据当前的配置,根据转发的 DNS 服务器的配置,您可能会在日志中看到以下类似的错误: Jun 25 15:03:29 cache named[2512]: error (chase DS servers) resolving 'in-addr.arpa/DS/IN': 8.8.8.8#53 Jun 25 15:03:29 cache named[2512]: error (no valid DS) resolving '111.111.111.111.in-addr.arpa/PTR/IN': 8.8.4.4#53 为了避免这种情况,将 dnssec-validation 设置为 “yes” 并显式启用 dnssec: . . . forward only; dnssec-enable yes; dnssec-validation yes; auth-nxdomain no; # 符合 RFC1035 . . . 完成后保存并关闭文件。现在您应该已经设置了一个转发 DNS 服务器。继续下一节以验证您的配置文件并重新启动守护程序。 测试您的配置并重新启动 Bind 现在您已经将 Bind 服务器配置为缓存 DNS 服务器或转发 DNS 服务器,我们准备实施我们的更改。 在我们在系统上重新启动 Bind 服务器之前,我们应该使用 Bind 提供的工具来检查我们的配置文件的语法。 您可以通过输入以下命令轻松地执行此操作: sudo named-checkconf 1 如果您的配置中没有语法错误,shell 提示符将立即返回,而不显示任何输出。 如果您的配置文件中存在语法错误,您将收到有关错误及其发生的行号的警告。如果发生这种情况,请返回并检查文件中的错误。 当您验证配置文件没有任何语法错误时,重新启动 Bind 守护程序以实施更改: sudo service bind9 restart 之后,当您设置客户端机器时,请在服务器上监视服务器日志,以确保一切顺利。在服务器上保持此运行: sudo tail -f /var/log/syslog 现在,打开一个新的终端窗口来配置您的客户端机器。 配置客户端机器 现在您的服务器已经运行起来,您可以配置客户端机器以使用此 DNS 服务器进行查询。 登录到您的客户端机器。确保您使用的客户端已在您为 DNS 服务器设置的 ACL 组中指定。否则,DNS 服务器将拒绝为客户端提供服务。 我们需要编辑 /etc/resolv.conf 文件,将我们的服务器指向名称服务器。在这里所做的更改将只持续到重新启动,这对于测试来说非常好。如果我们对测试结果满意,我们可以使这些更改永久生效。 使用具有 sudo 权限的文本编辑器打开文件: sudo nano /etc/resolv.conf 该文件将通过设置 nameserver 指令列出要用于解析查询的 DNS 服务器。注释掉所有当前条目,并添加一个 nameserver 行,将其指向您的 DNS 服务器: nameserver 192.0.2.1 # nameserver 8.8.4.4 # nameserver 8.8.8.8 # nameserver 209.244.0.3 保存并关闭文件。 现在,您可以使用一些常见的工具来测试查询是否可以正确解析。 您可以使用 ping 来测试是否可以连接到域: ping -c 1 google.com PING google.com (173.194.33.1) 56(84) bytes of data. 64 bytes from sea09s01-in-f1.1e100.net (173.194.33.1): icmp_seq=1 ttl=55 time=63.8 ms --- google.com ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 63.807/63.807/63.807/0.000 ms 这意味着我们的客户端可以使用我们的 DNS 服务器连接到 google.com。 您可以使用 dig 等专用于 DNS 的工具来获取更详细的信息。这次尝试不同的域: dig linuxfoundation.org ; <<>> DiG 9.9.5-3-Ubuntu <<>> linuxfoundation.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35417 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;linuxfoundation.org. IN A ;; ANSWER SECTION: linuxfoundation.org. 6017 IN A 140.211.169.4 ;; Query time: 36 msec ;; SERVER: 192.0.2.1#53(192.0.2.1) ;; WHEN: Wed Jun 25 15:45:57 EDT 2014 ;; MSG SIZE rcvd: 64 您可以看到查询花费了 36 毫秒。如果我们再次发出请求,服务器应该从其缓存中获取数据,从而减少响应时间: dig linuxfoundation.org 1 ; <<>> DiG 9.9.5-3-Ubuntu <<>> linuxfoundation.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18275 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;linuxfoundation.org. IN A ;; ANSWER SECTION: linuxfoundation.org. 6012 IN A 140.211.169.4 ;; Query time: 1 msec ;; SERVER: 192.0.2.1#53(192.0.2.1) ;; WHEN: Wed Jun 25 15:46:02 EDT 2014 ;; MSG SIZE rcvd: 64 如您所见,缓存的响应速度明显更快。 我们还可以使用 IP 地址进行反向查找,使用 dig 的 -x 选项: dig -x 140.211.169.4 1 ; <<>> DiG 9.9.5-3-Ubuntu <<>> -x 140.211.169.4 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 61516 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ;; QUESTION SECTION: ;4.169.211.140.in-addr.arpa. IN PTR ;; ANSWER SECTION: 4.169.211.140.in-addr.arpa. 3402 IN CNAME 4.0-63.169.211.140.in-addr.arpa. 4.0-63.169.211.140.in-addr.arpa. 998 IN PTR load1a.linux-foundation.org. ;; Query time: 31 msec ;; SERVER: 192.0.2.1#53(192.0.2.1) ;; WHEN: Wed Jun 25 15:51:23 EDT 2014 ;; MSG SIZE rcvd: 117 如您所见,反向查找也成功了。 回到您的 DNS 服务器,您应该查看在测试期间是否记录了任何错误。可能出现的一个常见错误如下所示: . . . Jun 25 13:16:22 cache named[2004]: error (network unreachable) resolving 'ns4.apnic.net/A/IN': 2001:dc0:4001:1:0:1836:0:140#53 Jun 25 13:16:22 cache named[2004]: error (network unreachable) resolving 'ns4.apnic.com/A/IN': 2001:503:a83e::2:30#53 Jun 25 13:16:23 cache named[2004]: error (network unreachable) resolving 'sns-pb.isc.org/AAAA/IN': 2001:500:f::1#53 Jun 25 13:16:23 cache named[2004]: error (network unreachable) resolving 'ns3.nic.fr/A/IN': 2a00:d78:0:102:193:176:144:22#53 这些指示服务器正在尝试解析 IPv6 信息,但服务器未配置为使用 IPv6。您可以通过告知 Bind 仅使用 IPv4 来解决此问题。 为此,使用具有 sudo 权限的文本编辑器打开 /etc/default/bind9 文件: sudo nano /etc/default/bind9 在其中,修改 OPTIONS 参数以包含 -4 标志,以强制仅使用 IPv4: OPTIONS="-u bind -4" 保存并关闭文件。 重新启动服务器: sudo service bind9 restart 您将不会再在日志中看到这些错误。 使客户端 DNS 设置永久生效 如前所述,将客户端机器指向我们的 DNS 服务器的 /etc/resolv.conf 设置在重启后将不会保留。为了使更改持久化,我们需要修改用于生成此文件的文件。 如果客户端机器正在运行 Debian 或 Ubuntu,请使用 sudo 权限打开 /etc/network/interfaces 文件: sudo nano /etc/network/interfaces 查找 dns-nameservers 参数。您可以删除现有条目并用您的 DNS 服务器替换它们,或者只需将您的 DNS 服务器添加为选项之一: . . . iface eth0 inet static address 111.111.111.111 netmask 255.255.255.0 gateway 111.111.0.1 dns-nameservers 192.0.2.1 . . . 完成后保存并关闭文件。下次启动时,您的设置将被应用。 如果客户端正在运行 CentOS 或 Fedora,则需要打开 /etc/sysconfig/network/network-scripts/ifcfg-eth0 文件: sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 在文件中查找以 DNS 开头的行。将 DNS1 更改为您的 DNS 服务器。如果您不希望使用其他 DNS 服务器作为备用,可以删除其他条目: DNS1=192.0.2.1 完成后保存并关闭文件。下次启动时,您的客户端应该使用这些设置。 结论 您现在应该配置了一个用于为客户端提供缓存或转发 DNS 服务器。这可以是加快您正在管理的机器的 DNS 查询速度的好方法。 如果您想创建一个为您自己的域区域授权的 DNS 服务器,您可以配置一个仅授权的 DNS 服务器或结合这些解决方案。 ———————————————— 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文链接:https://blog.csdn.net/rubys007/article/details/137722785
-
使用MDC 510技术文档中的《AI开发-ATC模型转换-快速开始》的Resnet50转换失败输入:atc --model=/home/kjhu/桌面/resnet50_official.onnx --framework=5 --output=$HOME/module/out/onnx_resnet50 --soc_version=AS31XM1X输出:ATC run failed, Please check the detail log, Try 'atc --help' for more informationE40001: Value [/usr/local/python3.7.5] for environment variable [ld_library_path or ldconfig] is invalid when load python dynamic library. Solution: Reset the environment variable by referring to the installation guide. TraceBack (most recent call last): [GraphOpt][InitializeInner][InitTbeFunc] Failed to init tbe.[FUNC:InitializeInner][FILE:tbe_op_store_adapter.cc][LINE:1623] [SubGraphOpt][PreCompileOp][InitAdapter] InitializeAdapter adapter [tbe_op_adapter] failed! Ret [4294967295][FUNC:InitializeAdapter][FILE:op_store_adapter_manager.cc][LINE:84] [SubGraphOpt][PreCompileOp][Init] Initialize op store adapter failed, OpsStoreName[tbe-custom].[FUNC:Initialize][FILE:op_store_adapter_manager.cc][LINE:125] [FusionMngr][Init] Op store adapter manager init failed.[FUNC:Initialize][FILE:fusion_manager.cc][LINE:124] PluginManager InvokeAll failed.[FUNC:Initialize][FILE:ops_kernel_manager.cc][LINE:96] OpsManager initialize failed.[FUNC:InnerInitialize][FILE:gelib.cc][LINE:235] GELib::InnerInitialize failed.[FUNC:Initialize][FILE:gelib.cc][LINE:163]
-
linux下pycharm运行无问题,5s内会返回ok,可本地判题器返回初始化超时,没有引用无用文件,为啥会超时在判题器目录下输入这个。python源码全部放在了sdk文件夹下的python文件夹中。./PreliminaryJudge -f 15 -m ./maps/map1.txt -d ./output.txt "python main.py"
-
在ubantu系统的pycharm里验证minds pore是否安装成功,报错,但是在终端中显示正常,是否是因为pycharm里没有GPU环境,怎么解决?[WARNING] ME(43563,7f57be091740,python):2023-12-14-16:38:47.946.307 [mindspore/ccsrc/runtime/hardware/device_context_manager.cc:65] GetNvccRealPath] Invalid environment variable CUDA_HOME [:/usr/local/cuda], can not find nvcc file [:/usr/local/cuda/bin/nvcc], please check the CUDA_HOME.[ERROR] ME(43563:140014827149120,MainProcess):2023-12-14-16:38:48.323.567 [mindspore/run_check/_check_version.py:219] libcuda.so (need by mindspore-gpu) is not found. Please confirm that libmindspore_gpu.so is in directory:/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/run_check/../lib/plugin and the correct cuda version has been installed, you can refer to the installation guidelines: https://www.mindspore.cn/install[ERROR] ME(43563:140014827149120,MainProcess):2023-12-14-16:38:48.323.687 [mindspore/run_check/_check_version.py:219] libcudnn.so (need by mindspore-gpu) is not found. Please confirm that libmindspore_gpu.so is in directory:/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/run_check/../lib/plugin and the correct cuda version has been installed, you can refer to the installation guidelines: https://www.mindspore.cn/installTraceback (most recent call last): File "/home/robot/桌面/Command/test/try/try.py", line 5, in <module> ms.set_context(device_target="GPU") File "/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/_checkparam.py", line 1313, in wrapper return func(*args, **kwargs) File "/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/context.py", line 1454, in set_context ctx.set_device_target(kwargs['device_target']) File "/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/context.py", line 381, in set_device_target self.set_param(ms_ctx_param.device_target, target) File "/home/robot/anaconda3/envs/mindspore_py39/lib/python3.9/site-packages/mindspore/context.py", line 175, in set_param self._context_handle.set_param(param, value)RuntimeError: Unsupported device target GPU. This process only supports one of the ['CPU']. Please check whether the GPU environment is installed and configured correctly, and check whether current mindspore wheel package was built with "-e GPU". For details, please refer to "Device load error message".----------------------------------------------------- Device load error message:----------------------------------------------------Load dynamic library: libmindspore_ascend.so.2 failed. libge_runner.so: cannot open shared object file: No such file or directoryLoad dynamic library: libmindspore_ascend.so.1 failed. libge_runner.so: cannot open shared object file: No such file or directory----------------------------------------------------- C++ Call Stack: (For framework developers)----------------------------------------------------mindspore/core/utils/ms_context.cc:355 SetDeviceTargetFromInner
-
相关信息:Atlas 200DK(新板VDMB)驱动:1.0.10 CANN:5.0.2alpha003 已安装的库:ffmpeg,opencv,atlasutil,Presenter Agent运行gitee上的Ascend/samples/摄像头案例,发现摄像头工作有问题,Status:3,如图:摄像头连接图:上一次很顺利就跑通了摄像头,但这次登陆不知为什么会报错,求助!!!
-
操作系统是ubuntu16.04,docker版本18.09.7参考《npu-smi命令介绍》在主机侧安装软件加载驱动后能成功复位标卡。文档中相关介绍在主机侧执行结果创建容器在容器中能够查看npu信息容器中也安装了ipmitool,加载模型也没有报错在容器中执行复位标卡的命令时报错
-
一:介绍作为一个网络工程师,熟悉多种不同的系统是有必要的,而在开发和调试中经常会用到Ubuntu来作为一个服务器端去开发 一些基本的设备信息,本次我们就来介绍下ubuntu下安装android应用和通过PPA安装oracle jdk二:安装步骤在ubuntu系统中安装新版本的openjdk和oraclejdk使用 update-alternatives 实现 Java 版本的切换。 在 Ubuntu 系统上安装 Eclipse,使用 Eclipse 创建一个 Java 项目,再创建一个 Java 类,并进行测试。 在 Ubuntu 上通过 Snap 包安装 Anroid Studio,配置管理 Android SDK,创建一个 Android项目,并配置 Android 模拟器进行测试。 代码:sudo snap install android-studio –classic 熟悉ppa安装方式 手动安装oraclejdk(*)注意 Oracle Java 11 不再能直接从 Oracle 官网上下载,必须先登录官网并手动下载 Java 包,并替换/var/cache/oracle-jdk11-installer-local 目录中的文件。 代码:执行 sudo add-apt-repository ppa:linuxuprising/java 命令添加 PPA 安装源。 将下载好的 jdk-11.0.4_linux-x64_bin.tar.gz 包(实验过程中下载的版本可能更新。)复制到/var/cache/oracle-jdk11-installer-local 目录。 执行 sudo apt-get install oracle-java11-installer-local 命令安装 Java 11。 安装完毕设置 Java 11 环境变量。PPA 库提供一个软件包用于设置环境变量,可以执行sudo apt-get install oracle-java11-set-default-local 命令来安装它。 如果要卸载 Oracle Java 11,执行 sudo apt remove oracle-java11-set-default-local 命令删除相应的安装脚本。然后打开“软件和更新”(Software & Updates)应用程序,切换到“其他软件”(Other Software)选项卡,删除以下安装源即可。 http://ppa.launchpad.net/linuxuprising/java/ubuntu bionic/main http://ppa.launchpad.net/eugenesan/java/ubuntu bionic/main 上述中我们都用到了java版本的使用 那怎么在Ubuntu下去切换java版本呢? 确认已安装多个 JDK 版本。 执行 sudo update-alternatives --install 命令为不同 JDK 版本创建候选项。 查看/var/lib/dpkg/alternatives/java 配置文件以验证 update-alternatives 实现机制。 通过 sudo update-alternatives --config java 命令手动选择候选项(要切换的版本)。
-
已经将 PC 和 MDC 设备在同一网段(192.168.30.42),MTB 310和MDC已经连接,12V供电。电脑和MTB通过网口相连。192.168.30.42可以ping通,但是SSH登录不上MDC 210,截图如下。请问是哪里出的问题
-
在跑疲劳驾驶识别的demo时,根据readme文件的步骤要求,在onnx文件转换成om文件时报如上错误,环境变量也设置了,cann版本是5.0.4,不懂出现了什么问题
-
在centos7,RTC支持参数wakealarm(/sys/class/rtc/rtc0/wakealarm),可设置定时开关机。但是鲲鹏的/sys/class/rtc/rtc0/下没有wakealarm参数,是否不支持?
-
简介:libvirt提供了一个用来管理虚拟机的抽象层。它包含如下部分:一组C API;各种编程语言的绑定;一个daemon进程(libvirtd)和一个命令行工具(virsh)。结构如下图所示:virt-manager是一个管理虚拟机的图形化工具,它类似于VirtualBox。另外,virt-manager还提供了virt-clone等命令行工具。实验:查看系统的libvirtd服务是否已经启动命令:system status libvirted3:安装virt-manager4:使用virt-manager 创建一台客户虚拟机5:使用virt-manager 管理客户虚拟机:启动、暂停和关闭一个客户机。查看和修改客户机的详细配置使用virt-manager 复制客户虚拟机总结:结果:本次实验介绍了图形化界面管理虚拟机的实现克隆和远程链接等方法,对virt-manager的基本用法操作和实现比如 关机 开启 查看cpu等等实验开始之前要回到上次实验修改配置文件之前的操作还好拍了快照 哈哈哈回去以后首先查看当前状态status然后安装上virt-manager图形化操作并扩展磁盘大小进行clone操作!
-
我的电脑在虚拟机上运行Ubuntu十分卡顿,所以我采取了双系统的方式运行Ubuntu,但官方文档中"配置网络连接"这一步是在虚拟机上完成的,我在在双系统上操作时发现操作逻辑非常不同,请问怎么单纯在Ubuntu系统下完成这一步?
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签