Skip to content

Commit

Permalink
/p/49: Update file path for PVE 8
Browse files Browse the repository at this point in the history
  • Loading branch information
iBug committed Nov 6, 2024
1 parent f55dafa commit 51311dd
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 8 deletions.
1 change: 1 addition & 0 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,7 @@ exclude:
- .sass-cache
- .travis.yml
- .vscode
- _site/
- assets/js/plugins
- assets/js/_main.js
- assets/js/vendor
Expand Down
12 changes: 4 additions & 8 deletions _posts/2022/2022-03-01-install-proxmox-ve-emmc.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,20 +17,15 @@ Unable to get device for partition 1 on device /dev/mmcblk0

## Solution

The Proxmox VE forum is *completely unhelpful* this time ([1][1], [2][2]) with staff keeping on saying "it's not supported", so I had to look around for alternatives. Fortunately this article is right there:
The Proxmox VE forum is *completely unhelpful* this time ([1][1], [2][2]) with staff keeping on saying "it's not supported", so I had to look around for alternatives. Fortunately this article is right there (for Proxmox VE 7):

- [解决 Proxmox VE 无法安装到 eMMC 上的问题 - lookas2001](https://lookas2001.com/%E8%A7%A3%E5%86%B3-proxmox-ve-%E6%97%A0%E6%B3%95%E5%AE%89%E8%A3%85%E5%88%B0-emmc-%E4%B8%8A%E7%9A%84%E9%97%AE%E9%A2%98/)

Turns out it's hard-coded into Proxmox VE's Perl installer script, so all you have to do is to patch it:

1. Boot the installer ISO to the first menu, select the second option `Install Proxmox VE (Debug mode)`
2. The first time you're present with a command-line prompt, type `exit` and Enter to skip it. This is a very early stage and you can't do much here.
3. The second time you have a shell, locate `/usr/bin/proxinstall` and open it. Text editors such as `vi` and `nano` are available.

<div class="notice notice--primary" markdown="1">
**For Proxmox VE 8 installer**, the file you're going for is `/usr/share/perl5/Proxmox/Sys/Block.pm`.
</div>

3. The second time you have a shell, locate `/usr/share/perl5/Proxmox/Sys/Block.pm`[^pve-7] (for Proxmox VE 8) and open it. Text editors such as `vi` and `nano` are available.
4. Search for `unable to get device` and you should find some code like this:

```perl
Expand All @@ -43,7 +38,7 @@ Turns out it's hard-coded into Proxmox VE's Perl installer script, so all you ha
}
```

The full code can be found [on GitHub](https://github.com/proxmox/pve-installer/blob/b04864ece2654c6ecf794f9c3ad1cedede351532/proxinstall#L729) if you'd like.
The full code can be found [on GitHub](https://github.com/proxmox/pve-installer/blob/3e40eefada905f62635ef3315e02959c93e3f7b2/Proxmox/Sys/Block.pm#L156) if you'd like.

5. See how different kinds of storage devices are enumerated? Now add `/dev/mmcblk` to the list like this:

Expand All @@ -68,6 +63,7 @@ While it's possible to install Proxmox VE on top of a matching version of Debian

It's also possible to modify the installer script beforehand, but you need to unpack `pve-installer.squashfs` and re-pack it into the ISO. You should think more seriously if you want to install PVE on a lot of eMMC devices.
[^pve-7]: For Proxmox VE 7, you should go for `/usr/bin/proxinstall` instead.
[1]: https://forum.proxmox.com/threads/unable-to-get-device-for-partition-1-on-device-dev-mmcblk0.42348/
[2]: https://forum.proxmox.com/threads/unable-to-get-device-for-partition-1.43234/

0 comments on commit 51311dd

Please sign in to comment.