{"id":423,"date":"2019-05-25T05:04:21","date_gmt":"2019-05-25T10:04:21","guid":{"rendered":"https:\/\/tanzeelkazi.com\/blog\/?p=423"},"modified":"2019-05-25T17:19:03","modified_gmt":"2019-05-25T22:19:03","slug":"proxmox-ve-installer-with-multibootusb","status":"publish","type":"post","link":"https:\/\/tanzeelkazi.com\/blog\/2019\/05\/25\/proxmox-ve-installer-with-multibootusb\/","title":{"rendered":"Proxmox VE installer with MultiBootUSB"},"content":{"rendered":"\n<p><strong>tl;dr<\/strong> <em>I have <a href=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/\">uploaded a mod<\/a> for Proxmox+multibootusb to make Proxmox handle ISO install images.<\/em><\/p>\n\n\n\n<p><em>This article is a brief look at my troubles with getting the Proxmox installer to work with MultiBootUSB, and, a solution that I cooked up to resolve it.<\/em><\/p>\n\n\n\n<p>The conventional process of using the Proxmox VE installer ISO is to either burn it to an optical disk (guaranteed to work), or, use a tool like <code>dd<\/code> in linux to write the ISO image directly to a USB disk, and, hope it works.<\/p>\n\n\n\n<p>I like using USB disks because they are compact, and, have faster reads, which means a faster installation. But, I don&#8217;t like the idea of using an entire drive dedicated to just the installer.<\/p>\n\n\n\n<p>So, in comes <a href=\"http:\/\/multibootusb.org\">MultiBootUSB<\/a>. I use it because it is designed to help with this specific problem, except&#8230; nothing is easy.<\/p>\n\n\n\n<!--more-->\n\n\n\n<h2 class=\"wp-block-heading\">Proxmox installer on USB drives<\/h2>\n\n\n\n<p>If you google &#8220;using the Proxmox installer on USB&#8221;, there are a lot of results, many of which are questions from people asking why it doesn&#8217;t work right.<\/p>\n\n\n\n<p>Consolidate the search results, and, the general rule of thumb that is revealed is, that, you need to use <code>dd<\/code> to write the image to the entire USB drive. An image that is only ~688MiB. What a waste of drive-space, and, a waste of an entire drive! Another caveat to this is that the drive has to be detected as <code>removable<\/code> during the initialization process, or you are going to have a bad time.<\/p>\n\n\n\n<p>Trying to add the ISO using MultiBootUSB&#8217;s conventional steps, got me nowhere. The Proxmox installer would abort on boot, complaining about a modified kernel.<\/p>\n\n\n\n<p>I like MultiBootUSB, and, I wanted to try and stick with it; so deep into the rabbit hole I went.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The <code>\/multibootusb\/iso<\/code> fallback<\/h2>\n\n\n\n<p>MultiBootUSB has a nifty fallback to try loading weird ISO images. You copy them to the <code>\/multibootusb\/iso\/<\/code> directory of your USB drive. There also needs to be the correct grub configuration files under <code>\/multibootusb\/grub\/menus\/<\/code> for your platform. Incidentally, MultiBootUSB does NOT have the menus pre-configured for the Proxmox ISOs.<\/p>\n\n\n\n<p>I would soon realize, that creating the new grub menu configs for Proxmox would be the easy part. Even with the menus configured to load the ISO image, Proxmox was hell bent on <code>testing for cdrom<\/code>. That&#8217;s the message you see verbatim from the console. I still had got some more head-scratching to do.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The initial RAM disk, for Proxmox<\/h2>\n\n\n\n<p>The initial RAM disk is responsible for detecting the correct installation medium and kicking off the actual install process.<\/p>\n\n\n\n<p>The <code>initrd.img<\/code> used by Proxmox specifically looks for block devices, and, also filters them by <code>removable<\/code> devices. This presented a few problems for me, which I could only resolve by modifying the <code>initrd<\/code> image.<\/p>\n\n\n\n<p>When the initial RAM disk loads, it is like a blank slate. No devices are auto-mounted (except the RAM disk itself), and, it only has the kernel boot parameters to go by to load correctly.<\/p>\n\n\n\n<p>First, I had to check every block device that could potentially contain the ISO file. I did NOT want to filter by <code>removable<\/code> for the device.<\/p>\n\n\n\n<p>Second, once I had the correct drive, I also needed a path for the ISO on the filesystem.<\/p>\n\n\n\n<p>I solved both problems by adding a new boot parameter <code>isopath<\/code>, that gets passed to the kernel from the <code>grub<\/code> menu.<\/p>\n\n\n\n<p>I coded it so that, when the initial RAM disk encounters the <code>isopath<\/code> parameter, it branches off into a separate code-block. The code-block searches through all the block devices detected on the system (removable or otherwise).<\/p>\n\n\n\n<p>Once a match for <code>isopath<\/code> is found on a device, it is mounted to <code>\/mnt<\/code> first. It is then tested to see if it is a valid PVE installer. If everything checks out, the installation proceeds as it normally would. If not, the ISO is unmounted, and the script proceeds to the next device to continue looking for the correct file.<\/p>\n\n\n\n<p>Eureka! It works!<\/p>\n\n\n\n<ul class=\"wp-block-gallery columns-3 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" data-attachment-id=\"430\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/load_grub2_bootmanager_25_05_2019_02_54_59\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Load GRUB2 BootManager\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?fit=640%2C480&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?resize=640%2C480&#038;ssl=1\" alt=\"\" data-id=\"430\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/load_grub2_bootmanager_25_05_2019_02_54_59\/\" class=\"wp-image-430\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/load_grub2_bootmanager_25_05_2019_02_54_59.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" data-attachment-id=\"433\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/scan_and_boot_isos_25_05_2019_02_56_31\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Scan and boot ISOs\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?fit=640%2C480&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?resize=640%2C480&#038;ssl=1\" alt=\"\" data-id=\"433\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/scan_and_boot_isos_25_05_2019_02_56_31\/\" class=\"wp-image-433\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/scan_and_boot_isos_25_05_2019_02_56_31.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" data-attachment-id=\"436\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox-ve_5-4-1_iso_25_05_2019_02_57_14\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"proxmox-ve_5.4-1.iso\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?fit=640%2C480&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?resize=640%2C480&#038;ssl=1\" alt=\"\" data-id=\"436\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox-ve_5-4-1_iso_25_05_2019_02_57_14\/\" class=\"wp-image-436\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox-ve_5.4-1_iso_25_05_2019_02_57_14.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" data-attachment-id=\"438\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/really_boot_iso_25_05_2019_02_58_40\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Really boot iso?\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?fit=640%2C480&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?resize=640%2C480&#038;ssl=1\" alt=\"\" data-id=\"438\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/really_boot_iso_25_05_2019_02_58_40\/\" class=\"wp-image-438\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/really_boot_iso_25_05_2019_02_58_40.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" data-attachment-id=\"439\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox_install_modded_splash_25_05_2019_03_00_22\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?fit=640%2C480&amp;ssl=1\" data-orig-size=\"640,480\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Proxmox install modded splash\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?fit=640%2C480&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?resize=640%2C480&#038;ssl=1\" alt=\"\" data-id=\"439\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox_install_modded_splash_25_05_2019_03_00_22\/\" class=\"wp-image-439\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?w=640&amp;ssl=1 640w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"540\" data-attachment-id=\"441\" data-permalink=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox_installation_eula_25_05_2019_03_17_17\/\" data-orig-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?fit=1024%2C768&amp;ssl=1\" data-orig-size=\"1024,768\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Proxmox installation EULA\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?fit=720%2C540&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?resize=720%2C540&#038;ssl=1\" alt=\"\" data-id=\"441\" data-link=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/proxmox_installation_eula_25_05_2019_03_17_17\/\" class=\"wp-image-441\" srcset=\"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?w=1024&amp;ssl=1 1024w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?resize=300%2C225&amp;ssl=1 300w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?resize=768%2C576&amp;ssl=1 768w, https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_installation_eula_25_05_2019_03_17_17.png?resize=50%2C38&amp;ssl=1 50w\" sizes=\"auto, (max-width: 720px) 100vw, 720px\" \/><\/figure><\/li><\/ul>\n\n\n\n<p>No more slow-clunky optical-media, or, space-wasting proxmox-only USB disks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The mod<\/h2>\n\n\n\n<p>The mod is available for download from my <a href=\"https:\/\/tanzeelkazi.com\/blog\/portfolio\/proxmox-ve-installer-with-multibootusb\/\">project page<\/a>. Instructions for installation, and, usage are available on that page.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>This was an interesting exercise for me to look at and modify <code>initrd<\/code>. It gave me some clarity, and, also respect for the minds behind the concept of initial RAM disks on boot.<\/p>\n\n\n\n<p>I hope somebody else finds my work useful. Please leave a comment or feedback if you do.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>tl;dr I have uploaded a mod for Proxmox+multibootusb to make Proxmox handle ISO install images. This article is a brief look at my troubles with getting the Proxmox installer to work with MultiBootUSB, and, a solution that I cooked up to resolve it. The conventional process of using the Proxmox VE installer ISO is to [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":439,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[37,6],"tags":[41,42,39,38],"class_list":["post-423","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mods","category-tech","tag-homelab","tag-mods","tag-multibootusb","tag-proxmox"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/tanzeelkazi.com\/blog\/wp-content\/uploads\/2019\/05\/proxmox_install_modded_splash_25_05_2019_03_00_22.png?fit=640%2C480&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/posts\/423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/comments?post=423"}],"version-history":[{"count":12,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/posts\/423\/revisions"}],"predecessor-version":[{"id":455,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/posts\/423\/revisions\/455"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/media\/439"}],"wp:attachment":[{"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/media?parent=423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/categories?post=423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tanzeelkazi.com\/blog\/wp-json\/wp\/v2\/tags?post=423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}