There are a number of ways to do this --
Servername, sqlservername,drive, totaldrivespace and availabledrivespace details
@@servername returns the machine name and sql instance name
xp_fixeddrives returns the drives and available drive space.
total drive space is another story, because SQL Server can not directly produce the results you, to my knowledge.
You can use Powershell, which can obtain hardware information through WMI and SQL details through SMO.
Perhaps the best method might depend on how you want to format the results, and whether or not the connectivity can use a Trusted connection.
xp_cmdshell (which is turned off by default in 2008) can get you this info, but also represents a potential security risk. Also, using xp_cmdshell, some of the results will not come back in a friendly format, and so will require more manipulation.