I personally prefer to install WordPress locally on my PC using XAMPP, it works in exactly the same way as it would if it were online.
You can then backup databases/theme/xml and restore it on your live site whilst it is in maintenance mode for a short time, keeping downtime to a minimum.
You can also use a plugin that claims to simplify the process of backing up your database etc. in preparation for a new staging environment WP Staging, it seems quite popular.
Hope this helps.
]]>