pop-os / iso

Pop!_OS ISO production
Other
495 stars 65 forks source link

Can not istall (OS Error 2) #224

Closed russehansen closed 5 years ago

russehansen commented 5 years ago

Hello I am trying to install POP OS on a ssd custom build computer using YUMI multiboot. here is the terminal after the installer says it failed.

INFO: Starting installation INFO: getting device at /dev/sda INFO: obtaining disk information from /dev/sda INFO: obtaining serial model from /dev/sda INFO: opening disk at /dev/sda INFO: obtaining partition information from /dev/sda1 INFO: specifying to write new table on /dev/sda INFO: unmount all partitions on /dev/sda INFO: checking if 4096:968380463 overlaps INFO: checking if 968380464:976769071 overlaps ERROR: libdistinst: pointer in FFI is null ERROR: libdistinst: pointer in FFI is null ERROR: libdistinst: pointer in FFI is null INFO: starting initializing step INFO: Initializing INFO: getting device at /dev/sda INFO: verifying if keyfiles have paths INFO: obtaining disk information from /dev/sda ERROR: config.remove: unable to open file at "/cdrom/casper/filesystem.manifest-remove": No such file or directory (os error 2) INFO: obtaining serial model from /dev/sda ERROR: config.squashfs: No such file or directory (os error 2) INFO: opening disk at /dev/sda INFO: obtaining partition information from /dev/sda1 INFO: devices to modify: ["/dev/sda1"] INFO: obtaining list of physical volumes INFO: volume map: {} INFO: searching for device maps to deactivate INFO: pvs: [] INFO: unmounting devices ERROR: initializing error: unable to open file at "/cdrom/casper/filesystem.manifest-remove": No such file or directory (os error 2) ERROR: errored while installing system: unable to open file at "/cdrom/casper/filesystem.manifest-remove": No such file or directory (os error 2) INFO: Install error: unable to open file at "/cdrom/casper/filesystem.manifest-remove": No such file or directory (os error 2)

mmstick commented 5 years ago

Was the USB drive disconnected at any point? It's claiming that it's not able to find the installer's files on the live image. What's the output of lsblk -f and ls /cdrom/casper?

coreagile commented 5 years ago

I'm having this exact problem trying to install 18.10. As the installer was progressing I heard a clicking sound (that the OS makes when a USB device is ejected). But I didn't tell it to eject. I also saw a notification of the device being re-inserted. Very strange.

Here's a full log of my installation process: https://gist.github.com/coreagile/c2dd07e79a6c7b1b2abe63ec86dfd1f2

mmstick commented 5 years ago

@coreagile Never heard a clicking sound for a USB device being safely removed before. There's no code in the installer to remove USB devices. Looking at your log, your error seems to be the inability to fetch some packages, which must mean that you connected to the Internet at some point and package lists were updated. The installer is designed for offline installs, so it should only be fetching packages locally (provided the package lists haven't been updated).

FoXXySausage commented 5 years ago

So, at this point, I would have to assume that the original poster has figured out the issue, being that it's been several months, but I just recently had the same issue and have come to post my solution. It all has to do with Yumi Multiboot. I do not exactly know why Pop-Os seems to be unable to install when booting from a USB that has been set up with Yumi (or possibly even any multiboot system) but once I formatted the drive and instead used Rufus to make the drive bootable, everything went swimmingly. I hope that this might help anyone that comes across this, as well as help the dev team make everyone's life easier by improving an already wonderful operating system.

tshelley commented 5 years ago

@FoXXySausage Thank you for your comment. I’m spent over a week trying to figure this issue out. I was thinking it was a hardware issue. 👍🏼👍🏼

FoXXySausage commented 5 years ago

@tshelley Happy that I could help out!

angrykoala commented 5 years ago

Having the same problem with 19.04 when installing from an usb formatted with multibootusb

FoXXySausage commented 5 years ago

@angrykoala I can only assume that the issue has to do with all “multiboot” style programs. Until the devs fix the issue it looks like we’ll be stuck using a whole usb for PopOS. Try using a program like Rufus to mount the iso to your usb drive.

angrykoala commented 5 years ago

Yep, I formatted my usb with only Pop_Os image (using the same multiboot program even) and it worked like a charm, so it looks like that

tshelley commented 5 years ago

@angrykoala I tried using the same multiboot system also, but had to switch to Rufus. It’s interesting that you were able to get it with solely pop! Os though. I tried and it was still giving me problems.

FoXXySausage commented 5 years ago

@angrykoala Interesting, I guess multiboot style programs only sometimes cause a problem, as @tshelley said he still had issues. Odd. I guess we can only wait for an explanation from the dev team, otherwise, personally, I would just avoid using a multiboot program. Congrats on getting it to work btw, I'm glad I could help.

angrykoala commented 5 years ago

The program in question had 2 ways of creating the image, multiboot or single. I assume single mode just flashes the image like any other non-multiboot program would do (tbh, I don't know anything about how these things work, sorry if I'm not making sense)

I guess it is not a huge priority but making Pop_Os work with multiboot systems would be a nice to have :)

mmstick commented 5 years ago

The multi-boot program would need to be updated to handle Pop!_OS's setup.

jorisrietveld commented 5 years ago

@russehansen @FoXXySausage @tshelley Normally when you directly copy the pop os iso to a disk and boot from it, its mounted under /cdrom/ so when the installer tries to access the installation files (like the file that is reported missing in the installation.log: /cdrom/casper/filesystem.manifest-remove) it can't find it because its located in /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/casper/filesystem.manifest-remove.

You can simply fix this by binding the /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ directory to /cdrom/ so that the installer can use the normal paths.

Step 1, find the name

Find the name of the multiboot usb partition you could use sudo fdisk -l or search for usb specificly:

# The easiest way, by listing all disks that have a id that starts with usb:
ls -l /dev/disk/by-id/usb-*
# Or the label
ls -l /dev/disk/by-label/

My usb is called sdb so the partition that contains multibootusb is /dev/sdb1

Step 2, mount the usb

then I created a temporary directory in /mnt and mounted the entire partition.

sudo mkdir /mnt/tmp_usb
# Mount the multibootusb partition, so replace sdb1 with the name of your partition.
sudo mount /dev/sdb1 /mnt/tmp_usb

I quickly checked if it mounted correctly using ls -la /mnt/tmp_usb/*, this shows the directory multibootusb, inside are directories for each os installed, I had pop os installed under: /mnt/tmp_usb/multibootusb/pop-os_19.04_amd64_nvidia_4/ so thats the directory we need to bind.

Step 3, bind the pop folder to cdrom

Now bind the folder that contains the installation files to /cdrom/ so that the installer can find them.

# Where the /mnt/
$ sudo mount -o bind /mnt/pop_disk/multibootusb/pop-os_19.04_amd64_nvidia_4/ /cdrom

Done!

Now you can open de installer again and it should run with no problems. While I was typing this I figured that it would propabilly also work if you just bind the /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ to /cdrom/ this would be much shorter if it works (not tested):

sudo mount -o bind /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ /cdrom/

I think would be possible is to implement a solution that lets the installer search for the iso's root folder and set the paths dynamically, I think that I found the file responsible for mounting the disk and will take a look if I have some spare time but I never used rust. I do really like the looks of it, its like a mix of C/C++ and javascript, there goes my weekend... :)

Jonathan-Alex commented 4 years ago

Hello, folks. I've come with my solution for this issue. Mostly, this error occurs because of the fragmentation of the ISO file, so, before adding it to YUMI to create the bootable USB drive, defragment it with this tool called wincontig.

After defragmenting it (the tool really does it fast. It's so fast you even doubt whether that worked or not), just do the normal steps in YUMI, boot from your flash drive and voilá. It has just worked for me here, like a charm!

tjguill commented 3 years ago

Using YUMI Multiboot USB I had this issue with PopOS

The above command fixed the issue for me

sudo mount -o bind /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ /cdrom/
zachariahkral commented 3 years ago

So, please excuse me if this is a dumb question, but where do I do this binding? Am I already in a booted linux configuration, and mounting the usb stick that I want to live multiboot off of in that linux, and then binding it from there? Is that persistent to the USB stick then? Where does it store that bind info on the USB stick?

I'm not fully understanding how bind configurations are stored, so how they would be persistent on the USB stick once I reboot the computer and actually boot off of the USB stick instead of a local installed OS.

I actually run Windows (not having used Linux in the last 10 years or so), so to have a Linux system to boot into first to do this mount bind command, I would have to first make another separate liveboot USB stick.

Please advise :)

@russehansen @FoXXySausage @tshelley Normally when you directly copy the pop os iso to a disk and boot from it, its mounted under /cdrom/ so when the installer tries to access the installation files (like the file that is reported missing in the installation.log: /cdrom/casper/filesystem.manifest-remove) it can't find it because its located in /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/casper/filesystem.manifest-remove.

You can simply fix this by binding the /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ directory to /cdrom/ so that the installer can use the normal paths.

Step 1, find the name

Find the name of the multiboot usb partition you could use sudo fdisk -l or search for usb specificly:

# The easiest way, by listing all disks that have a id that starts with usb:
ls -l /dev/disk/by-id/usb-*
# Or the label
ls -l /dev/disk/by-label/

My usb is called sdb so the partition that contains multibootusb is /dev/sdb1

Step 2, mount the usb

then I created a temporary directory in /mnt and mounted the entire partition.

sudo mkdir /mnt/tmp_usb
# Mount the multibootusb partition, so replace sdb1 with the name of your partition.
sudo mount /dev/sdb1 /mnt/tmp_usb

I quickly checked if it mounted correctly using ls -la /mnt/tmp_usb/*, this shows the directory multibootusb, inside are directories for each os installed, I had pop os installed under: /mnt/tmp_usb/multibootusb/pop-os_19.04_amd64_nvidia_4/ so thats the directory we need to bind.

Step 3, bind the pop folder to cdrom

Now bind the folder that contains the installation files to /cdrom/ so that the installer can find them.

# Where the /mnt/
$ sudo mount -o bind /mnt/pop_disk/multibootusb/pop-os_19.04_amd64_nvidia_4/ /cdrom

Done!

Now you can open de installer again and it should run with no problems. While I was typing this I figured that it would propabilly also work if you just bind the /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ to /cdrom/ this would be much shorter if it works (not tested):

sudo mount -o bind /cdrom/multibootusb/pop-os_19.04_amd64_nvidia_4/ /cdrom/

I think would be possible is to implement a solution that lets the installer search for the iso's root folder and set the paths dynamically, I think that I found the file responsible for mounting the disk and will take a look if I have some spare time but I never used rust. I do really like the looks of it, its like a mix of C/C++ and javascript, there goes my weekend... :)

akelsch commented 2 years ago

For 21.04 I had to also copy the casper directory before mounting to /cdrom to avoid some recovery partition related issues:

sudo mount -o remount,rw /cdrom
cd /cdrom
sudo cp -r ./casper_pop-os_21.04_amd64_nvidia_debug_25/ casper/
# reboot because I could not install when mounted with rw
sudo mount -o bind /cdrom/multiboot/pop-os_21.04_amd64_nvidia_10/ /cdrom/

See this Reddit comment: https://www.reddit.com/r/pop_os/comments/bw2hln/comment/eqibydz/?utm_source=reddit&utm_medium=web2x&context=3

mindtheegab commented 1 year ago

still impossible to install pop os via netboot, cdrom folder is empty

kfsone commented 10 months ago

Should probably tell the netboot.xyz people to remove pop OS from the default netboot distros since pop os can't handle it whether you install from live or network install, I actually got here because I'd tried net-installing popos via netboot.xyz, thought the usb version of netboot.xyz might fix it, and it still didn't work.