Okay, this isn't really an answer because I've not successfully migrated from 1.7.x to 2.5 but it might be useful information for someone else, or lead to an answer.
As far as I can tell, the metadata for one-click updates for 1.x has been removed from the Joomla update site so it won't find any updates available. The update site maintainers like those who have not updated their site in a timely manner to feel the salty tears of shame as they navigate through this process. As most of the existing tutorials for upgrading just point out how to do the one-click upgrade this makes things rather tricky. However, I did find this guide for a manual update.
What did work
Upgrading to latest 1.7 version (1.7.5):
Take a full backup of the database and files.
Download the 1.7.0 -> 1.7.5 Stable Patch release from here
Unzip the patch update directly over your Joomla root.
Run database updates manually. This CLI ninja-action helped for me:
$ ls -al administrator/components/com_admin/sql/updates/mysql/1.7.*
...shows list of update sql files
...now step through each file sequentially from the version after your original version:
$ cat administrator/components/com_admin/sql/updates/mysql/1.7.1-2011-09-15.sql.sql | sed s/#_/my_table_prefix/g | mysql -uroot -p my_dbname
Obviously you'll need to substitute in your own table prefix and database name, and also input your DB password each time.
Check you can log into the site as an admin and check everything is working. If not, you'll need to restore your backups and start again.
What didn't work
Having done this, I followed a similar procedure, downloading and unzipping the 2.5.28 Stable Update release, deleting the "unexisting" files as suggested in the guide (note the path they give should end script.php
not scripts.php
), and running through the rest of the database updates.
Unfortunately I then had a fairly non-functional site with some error messages:
Call to undefined method JHtml::getJSObject() in /var/www/.../libraries/cms/html/behavior.php on line 299
Call to undefined method JAdministrator::setHeader() in /var/www/.../libraries/cms/html/behavior.php on line 765
At this point I cut my losses and restored to 1.7.5. If anyone can get past this point feel free to add to this answer.