Bug 1301121 - Upgrading from Rhel 6 to Rhel 7 results in failure to boot. "/sysroot does not seem to be an OS tree. /etc/os-release is missing."
Upgrading from Rhel 6 to Rhel 7 results in failure to boot. "/sysroot does no...
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: redhat-upgrade-tool (Show other bugs)
6.8
x86_64 Linux
high Severity high
: rc
: ---
Assigned To: Michal Bocek
Release Test Team
: Extras
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2016-01-22 11:11 EST by jcastran
Modified: 2016-08-03 13:48 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-08-03 13:48:58 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
tar of the case attachments. rdsosreport, journal.txt, result.txt, and Screenshots (441.75 KB, application/x-xz)
2016-01-22 11:11 EST, jcastran
no flags Details
system-upgrade-release contents (159.50 KB, image/png)
2016-01-22 16:30 EST, jcastran
no flags Details
menu.lst (1.73 KB, text/plain)
2016-01-25 18:35 EST, Taylor Frazier
no flags Details

  None (edit)
Description jcastran 2016-01-22 11:11:10 EST
Created attachment 1117287 [details]
tar of the case attachments. rdsosreport, journal.txt, result.txt, and Screenshots

Description of problem:
During the upgrade process. The system is unable to identify the /etc/os-release file in the chroot environment and fails to continue.

Error (rdsosreport):
   "/sysroot does not seem to be an OS tree. /etc/os-release is missing."


Version-Release number of selected component (if applicable):


Actual results:
Upgrade halts

Expected results:
Upgrade completes successfully

Additional info:
This is similar to Fedora Bug 1033764
Customer was able to successfully install Rhel 7.1. Simply can not upgrade from 6->7
Comment 2 David Shea 2016-01-22 14:12:16 EST
What version of redhat-upgrade-tool was used? What was used as the upgrade source? (network, DVD, Workstation/Server/etc) Does /etc/system-upgrade-release exist in the dracut emergency shell? Please attach /var/log/redhat-upgrade-tool.log.
Comment 3 David Shea 2016-01-22 14:35:53 EST
Resetting the needinfo flag for the information requested in comment 2.
Comment 4 jcastran 2016-01-22 16:29:57 EST
Hello,


redhat-upgrade-tool-0.7.43-1.el6.noarch
--iso=/var/tmp/rhel-server-7.1-x86_64-dvd.iso

Also I am attaching an additional screenshot of the contents of system-upgrade-release contents and the "redhat-upgrade-tool-log"
Comment 5 jcastran 2016-01-22 16:30 EST
Created attachment 1117338 [details]
system-upgrade-release contents
Comment 6 jcastran 2016-01-22 16:45:58 EST
Hmm. File is too large. Here is a link to the attachment in the case.

https://api.access.redhat.com/rs/cases/01538770/attachments/f9500634-1aec-43ac-a724-7cbe4cbc8504
Comment 7 David Shea 2016-01-25 11:59:50 EST
Can you attach /boot/grub/menu.lst after redhat-upgrade-tool is run? Was the boot command line modified between running redhat-upgrade-tool and booting into the upgrade environment?

It looks like the boot command line is truncated to 256 characters. The rdsosreport log files indicate the system was booted with the following arguments:

root=/dev/VolGroup00/LogVol00 ro rd.luks=0 rd.locale.LANG=en_US.UTF-8 rd.md=0 vconsole.font=latarcyrheb-sun16 KEYBOARDTYPE=pc vconsole.keymap=us rd.dm=0 biosdevname=0 rd.driver.pre=scsi_dh_rdac console=ttyS2,57600n8 crashkernel=auto console=tty0 upgrade i

where the "i" at the end should actually be "init=/usr/libexec/upgrade-init", which is shown in the redhat_upgrade_tool.log file. Since the init= argument was missing, systemd attempted to boot the system normally, as if it were an upgraded RHEL 7 environment, instead of the upgrade-init script being used to start the upgrade process.
Comment 8 Taylor Frazier 2016-01-25 18:35 EST
Created attachment 1118270 [details]
menu.lst
Comment 9 David Shea 2016-01-26 16:46:17 EST
The command line is correct in menu.lst, and the upgrade will boot into a RHEL 7 kernel, which leads me to suspect that grub is what is truncating the command line. Is it possible that grub is out of date? Even if the package has been updated, the files used to boot may not have been updated.

I'm not sure exactly which versions of grub would exhibit this problem, but the knowledge base article at https://access.redhat.com/solutions/1268103 indicates that this has been a problem at some point in RHEL 6. Could you try updating the bootloader and boot the System Upgrade entry again?
Comment 12 Michal Bocek 2016-07-29 05:13:22 EDT
pstodulk, wouldn't it be viable to add a check for this issue to preupgrade-assistant? It would require some investigation because:
1) We currently don't know what version of grub fixed this truncating.
2) It could happen that yum updated the grub package but the original boot loader remained (grub-install wasn't run afterwards). Thus simple check of grub package version wouldn't suffice.
Comment 14 Michal Bocek 2016-08-03 13:48:58 EDT
This issue was fixed in version 0.97-37 of grub [1]. However RHEL 6.0 GA has been shipped with grub-0.97-68.

That means that the bootloader must have been installed prior the RHEL 6 installation. There is no supported way of obtaining RHEL 6 other than clean install.
Also when reading the closed customer case, the customer tried reinstalling the bootloader and then they were able to successfully upgrade to RHEL 7.

There is nothing to fix in redhat-upgrade-tool so I'm closing this bug as NOTABUG.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=477327

Note You need to log in before you can comment on or make changes to this bug.