2025-04-02 10:16:07 +08:00

42 lines
598 B
Go

package smb
import (
"io/fs"
"net"
"management/internal/pkg/config"
"github.com/hirochachacha/go-smb2"
)
var FS fs.FS
func Init() error {
conn, err := net.Dial("tcp", config.File.Smb.Host+":445")
if err != nil {
return err
}
defer conn.Close()
d := &smb2.Dialer{
Initiator: &smb2.NTLMInitiator{
User: config.File.Smb.Name,
Password: config.File.Smb.Pass,
},
}
s, err := d.Dial(conn)
if err != nil {
return err
}
defer s.Logoff()
fs, err := s.Mount(config.File.Smb.Mount)
if err != nil {
return err
}
defer fs.Umount()
FS = fs.DirFS(".")
return nil
}