# hald can not start



## chunlinyao (Dec 30, 2009)

FreeBSD 8-p1 i386

After a 
	
	



```
portupgrade -a
```
 recently.The hald can not start.
This is the error message.


```
freework# hald --daemon=no --verbose=yes
22:03:11.711 [I] hald.c:680: hal 0.5.13
22:03:11.711 [I] hald.c:681: using child timeout 250s
22:03:11.711 [I] hald.c:746: Will not daemonize
22:03:11.712 [I] hald_dbus.c:5421: local server is listening at unix:path=/var/run/hald/dbus-WzdUIg8BKn,guid=c941963aad34d798b3faf8964b3b5d9f
22:03:11.717 [I] ck-tracker.c:391: got seat '/org/freedesktop/ConsoleKit/Seat1'
22:03:11.717 [I] ck-tracker.c:342: Got all sessions on seat '/org/freedesktop/ConsoleKit/Seat1'
22:03:11.718 [I] ck-tracker.c:418: Got seats
22:03:11.718 [I] ck-tracker.c:816: Got seats and sessions
Runner started - allowed paths are '/usr/local/libexec:/usr/local/libexec/hal/scripts:/usr/local/bin'
22:03:11.737 [I] hald_runner.c:301: Runner has pid 1649
22:03:11.738 [I] hald_runner.c:182: runner connection is 0x2943c6c0
22:03:11.744 [I] mmap_cache.c:126: Regenerating fdi cache..
Could not get password database information for UID of current process: User "???" unknown or no memory to allocate password entry

Could not get password database information for UID of current process: User "???" unknown or no memory to allocate password entry

22:03:11.747 [E] hald_runner.c:882: Error running 'hald-generate-fdi-cache': org.freedesktop.DBus.Error.NoReply: Did not receive a reply. 
Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout 
expired, or the network connection was broken.
22:03:11.747 [I] mmap_cache.c:104: In regen_cache_cb exit_type=2, return_code=0
22:03:11.747 [E] mmap_cache.c:153: fdi cache regeneration failed!
22:03:11.747 [I] mmap_cache.c:156: fdi cache generation done
22:03:11.747 [I] mmap_cache.c:278: cache mtime is 1262166566
*** [DIE] mmap_cache.c:di_rules_init():70 : Unable to open cache /var/cache/hald/fdi-cache
```


----------



## SirDice (Dec 30, 2009)

You're probably missing the haldaemon user account.

You can add it by hand:

```
pw groupadd haldaemon -g 560
pw useradd haldaemon -u 560 -g 560 -d /nonexistent -s /sbin/nologin -c "HAL Daemon User"
```


----------



## chunlinyao (Dec 31, 2009)

SirDice said:
			
		

> You're probably missing the haldaemon user account.
> 
> You can add it by hand:
> 
> ...



The haldaemon is exists.
id haldaemon can return the uid and gid.


----------



## SirDice (Dec 31, 2009)

Is dbus running? Not sure if it would error like this if it isn't but it's worth a check.


----------



## chunlinyao (Jan 1, 2010)

SirDice said:
			
		

> Is dbus running? Not sure if it would error like this if it isn't but it's worth a check.



The dbus is runing.I tried stop the dbus.The hald will report other messge.

I have reinstalled it.I don't know the reason.but I must have a machine to use.


----------

