Results 1 to 9 of 9

Thread: OZ: Bootpage Modification for Software Update Blocking

  1. #1
    Join Date
    Feb 2009
    Posts
    74

    OZ: Bootpage Modification for Software Update Blocking

    Hi All,

    After a bit of trawling on these forums I found some posts which referred to modifying the bootpage to ensure software updates were blocked incase the tivo had a power outage.

    I ran the following command after determining my active partition was hda7
    bootpage -P "root=/dev/hda7 dsscon=true console=2,115200 upgradesoftware=false"

    Upon reboot my machine just sat at the powering up screen and went no further

    I resolved this by pulling the drive and restoring the bootpage to
    bootpage -P "root=/dev/hda7"

    So I have two questions
    1. What is the correct bootpage parameters on Series 3 Tivo's to stop the tivo applying software updates on reboot?
    2. What does this command actually achieve. Is it stopping the software from actually being installed on the other partition or is it just stopping the other partition from being made active when a software update is installed?

    Thanks

  2. #2
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,014
    Quote Originally Posted by pdd View Post
    I ran the following command after determining my active partition was hda7
    bootpage -P "root=/dev/hda7 dsscon=true console=2,115200 upgradesoftware=false"
    console=1,115200
    serial console is on ttyS1 not ttyS2

    1. What is the correct bootpage parameters on Series 3 Tivo's to stop the tivo applying software updates on reboot?
    you had it, just change the "2" to a "1".
    2. What does this command actually achieve. Is it stopping the software from actually being installed on the other partition or is it just stopping the other partition from being made active when a software update is installed?
    root=/dev/hda7 - duh...
    dsscon=true - enables debug output on the serial console
    console=1,115200 - sets console speed to 115200 baud on ttyS1
    upgradesoftware=false - when your tivo boots, it checks for software in mfs other than /SwSystem/ACTIVE. if $upgradesoftware != false, then it initiates the install of the software, otherwise it just continues booting.

    if you're not using a console cable for serial bash, then you can leave out the dsscon and console settings.
    Last edited by jt1134; 05-04-2009 at 09:43 PM.

  3. #3
    Join Date
    Feb 2009
    Posts
    74
    Quote Originally Posted by jt1134 View Post
    upgradesoftware=false - when your tivo boots, it checks for software in mfs other than /SwSystem/ACTIVE. if $upgradesoftware != false, then it initiates the install of the software, otherwise it just continues booting.
    Excellent! Thankyou for clearing that up.

    So assuming I have upgradesoftware=true (or not in there at all) and there is an updated version is sitting in MFS with my current active partition being hda4.

    Prior to reboot has this new software been installed from the MFS to hda7 or does it only happen on reboot?

    Can I patch the kernel on hda6 and add in rc.sysinit.author and all other hacks to hda7 prior to the reboot (by mounting hda7 while telnetted into tivo) to ensure I have a modded system after the software is upgraded?

    Or do I have to apply these hacks to the update files in the MFS?

    Or do I have to wait for the software to be updated then pull the drive out of the tivo and hack it manually?

    So many questions......Just preparing myself for the next update from Tivo Inc
    Last edited by pdd; 05-05-2009 at 09:51 AM.

  4. #4
    Join Date
    Jan 2005
    Posts
    997
    Quote Originally Posted by pdd View Post
    Excellent! Thankyou for clearing that up.
    One more thing to add; you need to give a device to the command string a la:
    Code:
    bootpage -P "root=/dev/hda7 dsscon=true console=1,115200 upgradesoftware=false" /dev/hda
    I think that's why you had a boot failure.
    ScanMan --> Just another Tivo hacker...
    Killhdinitrd SA S2 Monte S2 Unscramble Upgrade Tivo Software

  5. #5
    Join Date
    Jun 2006
    Location
    Dougal County
    Posts
    1,014
    Quote Originally Posted by pdd View Post
    Prior to reboot has this new software been installed from the MFS to hda7 or does it only happen on reboot?
    it's just hangin out in /SwModule in mfs. it's installed onto your new root when the install is actually initiated.

    Can I patch the kernel on hda6 and add in rc.sysinit.author and all other hacks to hda7 prior to the reboot (by mounting hda7 while telnetted into tivo) to ensure I have a modded system after the software is upgraded?
    nope, it's not there yet.

    Or do I have to apply these hacks to the update files in the MFS?
    I think some of the old-school S1 hacks like kraven's upgrade and such put munged slices into mfs, but if you read thru the sw update utils in the utils slices, you'll see there's a bit of signature checking going on with the update files, so this would be quite a hassle to do.

    Or do I have to wait for the software to be updated then pull the drive out of the tivo and hack it manually?
    that's one way. easiest way is to edit /tvbin/installSw.itcl to comment out or remove the reboot line, and run it manually to install the sw yourself. when it's done, mount your new root, copy over your hacks, fix your new kernel, and reboot into the new sw when you're done. I wrote a short script that does this for me, so an upgrade only takes a few minutes to install & rehack.

  6. #6
    Join Date
    Feb 2009
    Posts
    74
    Thanks for the information so basically.

    Commenting out reboot from /tvbin/installSw.itcl will stop the system from rebooting automatically when there is a software update.

    Adding upgradesoftware=false to bootpage will stop the software from being installed on a reboot.

    Having only the /tvbin/installSw.itcl mod and not upgradesoftware=false during a power outage will cause the software to update.

    The software is not installed to the inactive partition unless the bootpage has upgradesoftware=true (or not there at all)

    So if I was to recieve an update from Tivo Inc... I would see if sitting in the MFS. To get the software installed to the inactive partition and also hack it I would need to do the following

    1. change bootpage to upgradesoftware=true
    2. reboot (Which will install software to inactive partition but not boot to it)
    3. telnet to live tivo and copy across hacks and kernel to inactive partition.
    4. reboot to new software
    5. change bootpage back to upgradesoftware=false

    I think we will be recieving 11.1b in the next month or so. I will try it then but would prefer to know I am doing it right instead of breaking it and then trying to recover.

    This behaviour also sort of explains why two reboots appear to be required for software updates.
    1st reboot to install new software to inactive partition
    2nd reboot to actually switch bootpage to boot from inactive partition

    Thanks
    Last edited by pdd; 05-07-2009 at 01:43 AM.

  7. #7
    Join Date
    Jan 2004
    Location
    n.h. usa
    Posts
    958
    you dont need to edit your boot line and reboot.. you can just telnet in and run the installSw manually gvng it the new version as the paramenter.. make sure the reboot is commented out.. then just apply your hacks.. remember to re dd the hacked kernel to both 3 and 6 an you just cp your hacks from old to new partion..

    then reboot

  8. #8
    Join Date
    May 2004
    Posts
    247
    Quote Originally Posted by pdd View Post
    Commenting out reboot from /tvbin/installSw.itcl will stop the system from rebooting automatically when there is a software update.
    That's not quite correct.

    The TiVo automatically receives an update during a call. After receiving an update, the slices are put into the MFS file system, and a flag is set indicating that an update is present.

    Then, the normal process is that the TiVo will reboot itself during the middle of the night (2AM). When it does, installSw.itcl will run and install the changes, create the new boot/root partititions, change the bootpage, etc. It will then reboot again, this time running the newly installed system.

    Setting upgradesoftware=false does not stop the 2AM boot. It does stop installSw.itcl running. But your TiVo will reboot still reboot every morning at 2AM.

    Removing the reboot command from within installSw.itcl prevents the final reboot after new software has been installed. This is done so that you can reapply any hacks before that reboot. This allows you to do an upgrade without having to pull the hard drive and do things on a PC.

    To do a manual upgrade, you would typically make sure the reboot command was removed from installSw.itcl, run that program manually, rehack when it completed (remember that the new kernel and root partitions aren't the ones that are mounted), then reboot by hand. There's no need to remove the upgradesoftware=false flag.

    You can see the check for the upgradesoftware flag in /etc/rc.d/StageE_PreApplication/rc.Sequence_500.CheckForSoftwareUpgrade.sh

  9. #9
    Join Date
    Feb 2009
    Posts
    74
    Thanks everyone I now fully understand how the software updates work and what I need to do to retain hacks. Much appreciated.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •