<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>MiLog</title><link>https://migege.com</link><description>- Yet Another GoLang Project Demo</description><pubDate>Wed, 11 Mar 2026 14:15:50 CST</pubDate><atom:link href="https://migege.com/rss" rel="self" type="application/rss+xml"></atom:link><item><title>Linux LVM-based Multiple Disks System/Data Migration</title><link>https://migege.com/post/linux-lvm-multiple-disks-migration</link><description>&lt;h2 id=&#34;what-i-have&#34;&gt;What I Have&lt;/h2&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;&lt;p&gt;Current Setup&lt;/p&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Disk&lt;/strong&gt; /dev/nvme0n1:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Partition 1 (/dev/nvme0n1p1): EFI System, mounted as /boot/efi.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Partition 2 (/dev/nvme0n1p2): Linux FileSystem, mounted as /boot.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Partition 3 (/dev/nvme0n1p3): LVM, part of ubuntu-vg Volume Group, mounted as /.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Disk&lt;/strong&gt; /dev/nvme2n1:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Entire disk is an LVM Physical Volume, also part of ubuntu-vg.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;p&gt;Output of &lt;code&gt;sudo pvs&lt;/code&gt;:&lt;/p&gt;&#xD;&#xA;&lt;pre&gt;&lt;code&gt;PV             VG        Fmt  Attr PSize    PFree&#xD;&#xA;/dev/nvme0n1p3 ubuntu-vg lvm2 a--  &amp;lt;473.89g    0&#xD;&#xA;/dev/nvme2n1   ubuntu-vg lvm2 a--  &amp;lt;476.94g    0&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;New Disk&lt;/strong&gt; /dev/nvme1n1:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Empty, unformatted disk.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;To be partitioned and used to replace /dev/nvme0n1 and /dev/nvme2n1.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h2 id=&#34;what-i-want&#34;&gt;What I Want&lt;/h2&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Disk&lt;/strong&gt; /dev/nvme1n1 &lt;strong&gt;Setup:&lt;/strong&gt;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Partition 1 (/dev/nvme1n1p1): EFI System, 1 GiB, formatted as vfat, mounted as /boot/efi.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Partition 2 (/dev/nvme1n1p2): Linux FileSystem, 2 GiB, formatted as ext4, mounted as /boot.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Partition 3 (/dev/nvme1n1p3): LVM, occupies the remaining space, part of ubuntu-vg, mounted as /.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Complete Migration:&lt;/strong&gt;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;All data (including /boot, /boot/efi, and /) migrated to /dev/nvme1n1.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;GRUB configured to boot from /dev/nvme1n1.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;/dev/nvme0n1 and /dev/nvme2n1 removed after migration.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h2 id=&#34;what-i-do&#34;&gt;What I Do&lt;/h2&gt;&#xD;&#xA;&lt;h3 id=&#34;step-1-partition-the-new-disk&#34;&gt;Step 1: Partition the New Disk&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Launch &lt;code&gt;fdisk&lt;/code&gt; to partition /dev/nvme1n1:&lt;pre&gt;&lt;code&gt;sudo fdisk /dev/nvme1n1&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Create partitions:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Partition 1&lt;/strong&gt;:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Size: 1 GiB.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Type: EFI System (t, code 1).&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Partition 2&lt;/strong&gt;:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Size: 2 GiB.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Type: Linux FileSystem.&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;&lt;strong&gt;Partition 3&lt;/strong&gt;:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Size: Remaining space.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Type: Linux LVM (t, code 8e).&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Save and exit fdisk (w).&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Format the partitions:&lt;pre&gt;&lt;code&gt;sudo mkfs.vfat -F32 /dev/nvme1n1p1&#xD;&#xA;sudo mkfs.ext4 /dev/nvme1n1p2&#xD;&#xA;sudo pvcreate /dev/nvme1n1p3&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Add /dev/nvme1n1p3 to the volume group:&lt;pre&gt;&lt;code&gt;sudo vgextend ubuntu-vg /dev/nvme1n1p3&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-2-migrate-lvm-data&#34;&gt;Step 2: Migrate LVM Data&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Move LVM data from old disks to the new disk:&lt;pre&gt;&lt;code&gt;sudo pvmove /dev/nvme0n1p3 /dev/nvme1n1p3&#xD;&#xA;sudo pvmove /dev/nvme2n1 /dev/nvme1n1p3&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Remove old Physical Volumes:&lt;pre&gt;&lt;code&gt;sudo vgreduce ubuntu-vg /dev/nvme0n1p3&#xD;&#xA;sudo vgreduce ubuntu-vg /dev/nvme2n1&#xD;&#xA;sudo pvremove /dev/nvme0n1p3&#xD;&#xA;sudo pvremove /dev/nvme2n1&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-3-migrate-boot-data&#34;&gt;Step 3: Migrate Boot Data&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Mount new partitions&lt;pre&gt;&lt;code&gt;sudo mount /dev/nvme1n1p2 /mnt/target_p2&#xD;&#xA;sudo mkdir -p /mnt/target_p2/boot/efi&#xD;&#xA;sudo mount /dev/nvme1n1p1 /mnt/target_p2/boot/efi&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Copy data from old /boot and /boot/efi:&lt;pre&gt;&lt;code&gt;sudo rsync -avh /boot/ /mnt/target_p2/&#xD;&#xA;sudo rsync -avh /boot/efi/ /mnt/target_p2/boot/efi/&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-4-update-etc-fstab&#34;&gt;Step 4: Update /etc/fstab&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Mount the new root Logical Volume:&lt;pre&gt;&lt;code&gt;sudo mount /dev/mapper/ubuntu--vg-root /mnt/target_root&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Bind /boot and /boot/efi to the new root:&lt;pre&gt;&lt;code&gt;sudo mount --bind /mnt/target_p2 /mnt/target_root/boot&#xD;&#xA;sudo mount --bind /mnt/target_p2/boot/efi /mnt/target_root/boot/efi&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Edit /mnt/target_root/etc/fstab:&lt;ul&gt;&#xD;&#xA;&lt;li&gt;Update UUIDs for /boot/efi, /boot, and / using blkid:&lt;pre&gt;&lt;code&gt;sudo blkid&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;Example /etc/fstab:&lt;pre&gt;&lt;code&gt;UUID=&amp;lt;new-efi-uuid&amp;gt; /boot/efi vfat defaults 0 1&#xD;&#xA;UUID=&amp;lt;new-boot-uuid&amp;gt; /boot ext4 defaults 0 2&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-5-install-grub&#34;&gt;Step 5: Install GRUB&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Enter a chroot environment:&lt;pre&gt;&lt;code&gt;sudo mount --bind /dev /mnt/target_root/dev&#xD;&#xA;sudo mount --bind /proc /mnt/target_root/proc&#xD;&#xA;sudo mount --bind /sys /mnt/target_root/sys&#xD;&#xA;sudo mount --bind /sys/firmware/efi/efivars /mnt/target_root/sys/firmware/efi/efivars&#xD;&#xA;sudo chroot /mnt/target_root&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Install GRUB:&lt;pre&gt;&lt;code&gt;grub-install&#xD;&#xA;update-grub&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Exit chroot:&lt;pre&gt;&lt;code&gt;exit&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-6-verify-and-test&#34;&gt;Step 6: Verify and Test&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Set /dev/nvme1n1 as the boot device in your BIOS/UEFI settings.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Remove /dev/nvme0n1 and /dev/nvme2n1 from the machine.&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Boot into the system and verify:&lt;pre&gt;&lt;code&gt;lsblk&#xD;&#xA;cat /etc/fstab&#xD;&#xA;df -h&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h3 id=&#34;step-7-resize-the-new-volume&#34;&gt;Step 7: Resize the New Volume&lt;/h3&gt;&#xD;&#xA;&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Extend the LV:&lt;pre&gt;&lt;code&gt;sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Resize the Filesystem&lt;pre&gt;&lt;code&gt;sudo resize2fs /dev/ubuntu-vg/ubuntu-lv&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;&lt;h2 id=&#34;-done-&#34;&gt;- DONE -&lt;/h2&gt;&#xD;&#xA;</description><pubDate>Tue, 10 Dec 2024 11:05:44 CST</pubDate><guid>https://migege.com/post/linux-lvm-multiple-disks-migration</guid></item><item><title>Warp Terminal Automatically Warpify Subshells</title><link>https://migege.com/post/warp-terminal-automatically-warpify-subshells</link><description>&lt;pre&gt;&lt;code&gt;# For zsh subshells, add to ~/.zshrc.&#xD;&#xA;printf &#39;\eP$f{&#34;hook&#34;: &#34;SourcedRcFileForWarp&#34;, &#34;value&#34;: { &#34;shell&#34;: &#34;zsh&#34;}}\x9c&#39;&#xD;&#xA;&#xD;&#xA;# For bash subshells, add to ~/.bashrc or ~/.bash_profile.&#xD;&#xA;printf &#39;\eP$f{&#34;hook&#34;: &#34;SourcedRcFileForWarp&#34;, &#34;value&#34;: { &#34;shell&#34;: &#34;bash&#34;}}\x9c&#39;&#xD;&#xA;&#xD;&#xA;# For fish subshells, add to ~/.config/fish/config.fish.&#xD;&#xA;if status is-interactive&#xD;&#xA;  printf &#39;\eP$f{&#34;hook&#34;: &#34;SourcedRcFileForWarp&#34;, &#34;value&#34;: { &#34;shell&#34;: &#34;fish&#34;}}\x9c&#39;&#xD;&#xA;end&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://docs.warp.dev/features/subshells#automatically-warpify-subshells&#34;&gt;via&lt;/a&gt;&lt;/p&gt;&#xD;&#xA;</description><pubDate>Wed, 30 Oct 2024 16:01:22 CST</pubDate><guid>https://migege.com/post/warp-terminal-automatically-warpify-subshells</guid></item><item><title>Go-compiled binary running on alpine</title><link>https://migege.com/post/go-compiled-binary-running-on-alpine</link><description>&lt;p&gt;&lt;em&gt;One command is all you need:&lt;/em&gt;&lt;/p&gt;&#xD;&#xA;&lt;pre&gt;&lt;code&gt;apk add libc6-compat&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://stackoverflow.com/questions/36279253/go-compiled-binary-wont-run-in-an-alpine-docker-container-on-ubuntu-host&#34;&gt;via&lt;/a&gt;&lt;/p&gt;&#xD;&#xA;</description><pubDate>Mon, 25 Sep 2023 16:10:43 CST</pubDate><guid>https://migege.com/post/go-compiled-binary-running-on-alpine</guid></item><item><title>SuperMicro X10SRL-F 主板 OOB per Node License 生成方法</title><link>https://migege.com/post/generate-supermicro-ipmi-oob-per-node-license</link><description>&lt;h2 id=&#34;-license-&#34;&gt;这个 License 的用途：&lt;/h2&gt;&#xD;&#xA;&lt;p&gt;激活后，可通过 IPMI Web 页面直接做 BIOS Update 或 RAID Management 操作；据说该方法对 X9/X10/X11 系列均适用&lt;/p&gt;&#xD;&#xA;&lt;h2 id=&#34;-&#34;&gt;生成方法：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;在 IPMI Web 首页上复制 BMC MAC 地址&lt;/li&gt;&#xD;&#xA;&lt;li&gt;执行命令：&lt;code&gt;echo -n &#39;&amp;lt;BMC_MAC&amp;gt;&#39; | xxd -r -p | openssl dgst -sha1 -mac HMAC -macopt hexkey:8544E3B47ECA58F9583043F8 | awk &#39;{print $2}&#39; | cut -c 1-24&lt;/code&gt;&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;h2 id=&#34;-&#34;&gt;激活方法：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;将上一步生成的 License 分段填入点激活即可&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;p&gt;&lt;a href=&#34;https://techblog.jeppson.org/2018/12/generate-supermicro-ipmi-license/&#34;&gt;via&lt;/a&gt;&lt;/p&gt;&#xD;&#xA;</description><pubDate>Sat, 08 Apr 2023 17:22:25 CST</pubDate><guid>https://migege.com/post/generate-supermicro-ipmi-oob-per-node-license</guid></item><item><title>Ubuntu Server 22.04.2 LTS 启动卡在 A start job is running for wait for network to be configured</title><link>https://migege.com/post/ubuntu-server-a-start-job-is-running-for-wait-for-network-to-be-configured</link><description>&lt;h3 id=&#34;-&#34;&gt;解决方法&lt;/h3&gt;&#xD;&#xA;&lt;pre&gt;&lt;code&gt;sudo systemctl disable systemd-networkd-wait-online.service&#xD;&#xA;sudo systemctl mask systemd-networkd-wait-online.service&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;a href=&#34;https://askubuntu.com/questions/972215/a-start-job-is-running-for-wait-for-network-to-be-configured-ubuntu-server-17-1&#34;&gt;ref&lt;/a&gt;&lt;/p&gt;&#xD;&#xA;</description><pubDate>Fri, 07 Apr 2023 17:26:47 CST</pubDate><guid>https://migege.com/post/ubuntu-server-a-start-job-is-running-for-wait-for-network-to-be-configured</guid></item><item><title>NVIDIA Tesla P40 显卡 BIOS 报错 PCI OUT OF RESOURCES</title><link>https://migege.com/post/nvidia-tesla-p40-error-pci-out-of-resources</link><description>&lt;h3 id=&#34;-&#34;&gt;报错如下：&lt;/h3&gt;&#xD;&#xA;&lt;pre&gt;&lt;code&gt;!!!!PCI Resource ERROR!!!!&#xD;&#xA;&#xD;&#xA;PCI OUT OF RESOURCES CONDITION:&#xD;&#xA;&#xD;&#xA;Error: Insufficient PCI Resources Detected!!!&#xD;&#xA;&#xD;&#xA;System is running with Insufficient PCI Resources!&#xD;&#xA;In order to display this message some&#xD;&#xA;PCI devices were set to disabled state!&#xD;&#xA;It is strongly recommended to Power Off the system and remove some PCI/PCI Express cards from the system!&#xD;&#xA;To continue booting, proceed to Menu Option and select Boot Device or .&#xD;&#xA;&#xD;&#xA;WARNING: If you choose to continue booting some Operating&#xD;&#xA;Systems might not be able to complete boot correctly!&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h3 id=&#34;-&#34;&gt;解决方法：&lt;/h3&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;开机进入 BIOS 设置&lt;/li&gt;&#xD;&#xA;&lt;li&gt;找到设置项：BIOS &amp;gt; Advanced &amp;gt; PCIe/PCI/PnP Configuration &amp;gt; Above 4G Decoding&lt;/li&gt;&#xD;&#xA;&lt;li&gt;设为 Enabled&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.supermicro.org.cn/support/faqs/faq.cfm?faq=15556&#34;&gt;ref&lt;/a&gt;&lt;/p&gt;&#xD;&#xA;</description><pubDate>Fri, 07 Apr 2023 17:23:18 CST</pubDate><guid>https://migege.com/post/nvidia-tesla-p40-error-pci-out-of-resources</guid></item><item><title>ESXi vm 自动启动不起作用的解决方法</title><link>https://migege.com/post/esxi-vm-autostart-not-working</link><description>&lt;ol&gt;&#xD;&#xA;&lt;li&gt;Navigator -&amp;gt; Manage -&amp;gt; System -&amp;gt; Autostart&lt;/li&gt;&#xD;&#xA;&lt;li&gt;Edit settings -&amp;gt; Enabled -&amp;gt; Yes&lt;/li&gt;&#xD;&#xA;&lt;/ol&gt;&#xD;&#xA;</description><pubDate>Wed, 22 Mar 2023 15:03:23 CST</pubDate><guid>https://migege.com/post/esxi-vm-autostart-not-working</guid></item><item><title>ESXi VM 使用 vmdk 文件虚拟 USB 安装/引导盘的方法</title><link>https://migege.com/post/emulating-virtual-usb-disk-to-esxi-vm</link><description>&lt;h2 id=&#34;-&#34;&gt;要点如下：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;在 VM 的数据目录下新建一个空白 vmdk 文件：&lt;code&gt;vmkfstools -c 8G &amp;lt;path-to-vmdk-file&amp;gt;&lt;/code&gt;，注意替换尖括号里的文件名，假设就叫 &lt;code&gt;usb.vmdk&lt;/code&gt;，下同&lt;/li&gt;&#xD;&#xA;&lt;li&gt;使用 &lt;code&gt;dd&lt;/code&gt; 命令将可引导的 iso 或 img 写入 vmdk 文件：&lt;code&gt;dd if=&amp;lt;path-to-iso-or-img-file&amp;gt; of=&amp;lt;path-to-vmdk-file&amp;gt; bs=1M conv=notrunc&lt;/code&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;修改 vmx 文件，添加以下配置：&lt;pre&gt;&lt;code&gt;usb_xhci:0.present = &#34;TRUE&#34;&#xD;&#xA;usb_xhci:0.deviceType = &#34;disk&#34;&#xD;&#xA;usb_xhci:0.fileName = &#34;usb.vmdk&#34;&#xD;&#xA;usb_xhci:0.readOnly = &#34;FALSE&#34;&#xD;&#xA;usb_xhci:0.speed = &#34;16&#34;&#xD;&#xA;usb_xhci:0.parent = &#34;-1&#34;&#xD;&#xA;usb_xhci:0.port = &#34;0&#34;&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;使用 &lt;code&gt;vim-cmd&lt;/code&gt; 命令重新加载虚拟机配置：&lt;code&gt;vim-cmd vmsvc/reload $(vim-cmd vmsvc/getallvms | grep &#39;&amp;lt;你的虚拟机名称&amp;gt;&#39; | awk &#39;{print $1}&#39;)&lt;/code&gt;&lt;/li&gt;&#xD;&#xA;&lt;li&gt;启动！&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;</description><pubDate>Sat, 18 Mar 2023 23:20:35 CST</pubDate><guid>https://migege.com/post/emulating-virtual-usb-disk-to-esxi-vm</guid></item><item><title>CentOS 7 从 Unraid VM 迁移到 ESXi 无法启动的解决方法</title><link>https://migege.com/post/centos-vm-boot-failure-after-migrating-from-unraid-to-esxi</link><description>&lt;h2 id=&#34;-&#34;&gt;要点如下：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;将硬盘的控制器修改为 IDE&lt;/li&gt;&#xD;&#xA;&lt;li&gt;进入系统&lt;/li&gt;&#xD;&#xA;&lt;li&gt;dracut --force --no-hostonly&lt;/li&gt;&#xD;&#xA;&lt;li&gt;关闭 vm&lt;/li&gt;&#xD;&#xA;&lt;li&gt;将硬盘的控制器修改为你想要的&lt;/li&gt;&#xD;&#xA;&lt;li&gt;进入系统&lt;/li&gt;&#xD;&#xA;&lt;li&gt;dracut --force&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;</description><pubDate>Sat, 18 Mar 2023 23:10:31 CST</pubDate><guid>https://migege.com/post/centos-vm-boot-failure-after-migrating-from-unraid-to-esxi</guid></item><item><title>Dell OptiPlex 7080mff 安装 ESXi 7.x 不识别 HP EX950 M.2 nvme 硬盘的解决方法</title><link>https://migege.com/post/dell-optiplex-7080mff-esxi-7-hp-ex950-m2-nvme-ssd</link><description>&lt;h2 id=&#34;-2023-03-16-&#34;&gt;先说结论（2023-03-16）：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;用这个方法也只能安装 ESXi 7.0u3，8.0b 仍然无法安装。&lt;/li&gt;&#xD;&#xA;&lt;li&gt;为什么不直接安装 ESXi 6.5，因为 6.5 又缺少网卡驱动，而且版本太旧&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;&lt;h2 id=&#34;-&#34;&gt;解决方法：&lt;/h2&gt;&#xD;&#xA;&lt;ul&gt;&#xD;&#xA;&lt;li&gt;根本原因，ESXi 7.0 缺少一些 M.2 nvme 硬盘的驱动，据说是从 ESXi 6.7 开始干掉的&lt;/li&gt;&#xD;&#xA;&lt;li&gt;下载 ESXi 6.5u2 的 iso，打开&lt;/li&gt;&#xD;&#xA;&lt;li&gt;提取出 NVME.V00 文件，改名为 NVME_PCI.V00&lt;/li&gt;&#xD;&#xA;&lt;li&gt;打开 ESXi 7.0 的 iso，把 NVME_PCI.V00 改名为 NVME_PCI.V00.OLD&lt;/li&gt;&#xD;&#xA;&lt;li&gt;把之前提取出来的 NVME_PCI.V00 覆盖进来，保存&lt;/li&gt;&#xD;&#xA;&lt;li&gt;用修改过的 iso 安装即可&lt;/li&gt;&#xD;&#xA;&lt;/ul&gt;&#xD;&#xA;</description><pubDate>Fri, 17 Mar 2023 18:04:35 CST</pubDate><guid>https://migege.com/post/dell-optiplex-7080mff-esxi-7-hp-ex950-m2-nvme-ssd</guid></item></channel></rss>