You did not state how you upgraded but from the context, I guess you did a
trying to preserve your saved files.
First, did you do a
before the dist-upgrade? That is crucial to get your flie list up to the latest Jessie and it is a good idea at that point to do a
so that you at least have the latest Jessie before doing the big step to Stretch. What you wind up with is a mismatch of dependencies and new stuff and a lot of problems seem to result.
Best thing would be to load your current uSD card in a reader on a separate PC and save all your necessary files. Then, download Raspbian-latest, verify the sha256sum and use Etcher to burn the new .zip file to the uSD card. Then load your important files back to the uSD card, or even better, wait until you get the new OS reconfigured before reloading your important files. Delete all Jessie configuration files because some/many will not work or might even screw things up on Stretch.
I think the only rescue mode available is in Noobs but I don't use it so I don't know for sure. I have heard that from Noobs, you can hold down the shift key during boot but this does not work with Raspbian.