MAC地址:

package main


import (

    "net"

    "fmt"

)


func main() {

  interfaces, err :=  net.Interfaces()

  if err != nil {

    panic("Poor soul, here is what you got: " + err.Error())

  }


  for _, inter := range interfaces {

      fmt.Println(inter.Name, inter.HardwareAddr)

  }

}

硬盘ID (不懂windows的)

package main


import (

  "syscall"

  "fmt"

)


func main() {

  var st syscall.Stat_t

  err := syscall.Stat("/dev/disk0", &st)

  if err != nil {

    panic(err)

  }

  fmt.Printf("%+v", st)

}