Snapshot agent stuck at 48%
Check the history of the agent job for the Snapshot agent on Whatever server is running as the Distributor. Drill down into the history of the agent job and you should find an error. (The error is often listed in the step preceeding the one that is retrying). Will probably be lack of space, etc.

If this does not reveal anything useful then you may need to switch on verbose logging to try and get a better error of the root cause. Its a combination of changing the agent profile and configuring a logging location external to SQL Server. These posts should get you there :-

https://stackoverflow.com/questions/1724322/where-is-the-log-file-located-when-verbose-history-logging-is-turned-on-for-sql

http://blogs.msdn.com/b/repltalk/archive/2010/03/17/troubleshooting-snapshot-agent-hang.aspx