You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

19 lines
447 B

  1. // +build linux
  2. package storage
  3. import (
  4. "os"
  5. "syscall"
  6. "github.com/joeslay/seaweedfs/weed/glog"
  7. )
  8. func createVolumeFile(fileName string, preallocate int64) (file *os.File, e error) {
  9. file, e = os.OpenFile(fileName, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)
  10. if preallocate != 0 {
  11. syscall.Fallocate(int(file.Fd()), 1, 0, preallocate)
  12. glog.V(0).Infof("Preallocated %d bytes disk space for %s", preallocate, fileName)
  13. }
  14. return file, e
  15. }