diff --git a/cmd/localauditd/localauditd.go b/cmd/localauditd/localauditd.go
index bb09608d556c852c7ac82b3cd8e59085c78d5cc4..07bb6b3f7e9424b82918fe192c57e74444068aab 100644
--- a/cmd/localauditd/localauditd.go
+++ b/cmd/localauditd/localauditd.go
@@ -66,6 +66,10 @@ func newLocalServer(spoolPath string, serverUrl string, tlsConf *tls.Config) *lo
 }
 
 func (l *localServer) Serve(path string) error {
+	// Remove the UNIX socket, or we won't be able to bind successfully.
+	os.Remove(path)
+
+	// Bind to the specified UNIX socket.
 	uaddr, err := net.ResolveUnixAddr("unix", path)
 	if err != nil {
 		return err
@@ -76,6 +80,7 @@ func (l *localServer) Serve(path string) error {
 	}
 	defer s.Close()
 
+	// Accept connections and handle them.
 	for {
 		conn, err := s.Accept()
 		if err != nil {