Similarly for me - renaming the keyring file and creating a new keyring just makes the login prompt for UbuntuOne tell me that the keyring wasn't unlocked, or that a user pressed cancel on a dialog. It appears that Gnome Keyring just can't update keyring files. I attached strace to the gnome keyring file, and this is the interesting part that happens: open("/home/sauer/.gnome2/keyrings/default", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) stat64("/home/sauer/.gnome2/keyrings", {st_mode=S_IFDIR|0700, st_size=4096, ...}) = 0 stat64("/home/sauer/.gnome2/keyrings/login.keyring", {st_mode=S_IFREG|0600, st_size=2476, ...}) = 0 sendmsg(8, {msg_name(0)=NULL, msg_iov(2)=[{"l\3\1\1P\0\0\0\207\1\0\0O\0\0\0\6\1s\0\6\0\0\0:1.325\0\0"..., 96}, {"K\0\0\0Object does not have the 'or"..., 80}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 176 poll([{fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=5, events=POLLIN}, {fd=15, events=POLLIN}, {fd=8, events=POLLIN}], 6, -1) = 1 ([{fd=8, revents=POLLIN}]) recvmsg(8, {msg_name(0)=NULL, msg_iov(1)=[{"l\1\0\0012\0\0\0001\0\0\0\227\0\0\0\1\1o\0(\0\0\0/org/fre"..., 2048}], msg_controllen=0, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 218 recvmsg(8, 0xbffd67c8, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable) It repeatedly tries to open a file named default - which does not exist - and then ultimately does this: send(16, "<35>Oct 16 15:16:51 gnome-keyrin"..., 110, MSG_NOSIGNAL) = 110 write(2, "\n** (gnome-keyring-daemon:2080):"..., 109) = -1 EBADF (Bad file descriptor) time(NULL) = 1318796211 send(16, "<36>Oct 16 15:16:51 gnome-keyrin"..., 129, MSG_NOSIGNAL) = 129 write(2, "\n** (gnome-keyring-daemon:2080):"..., 127) = -1 EBADF (Bad file descriptor) sendmsg(8, {msg_name(0)=NULL, msg_iov(2)=[{"l\3\1\1)\0\0\0\212\1\0\0O\0\0\0\6\1s\0\6\0\0\0:1.325\0\0"..., 96}, {"$\0\0\0Couldn't create item: Intern"..., 41}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 137 On a later attempt, I see this: link("/home/sauer/.gnome2/keyrings/login.keyring", "/home/sauer/.gnome2/keyrings/login.keyring.temp-1811546333") = 0 gettimeofday({1318796511, 400588}, NULL) = 0 open("/home/sauer/.gnome2/keyrings/.temp-2MBJ3V", O_RDWR|O_CREAT|O_EXCL|O_LARGEFILE, 0600) = 22 write(22, "GnomeKeyring\n\r\0\n\0\0\0\0\0\0\0\5login\0\0\0"..., 2476) = 2476 fsync(22) = 0 close(22) = 0 rename("/home/sauer/.gnome2/keyrings/.temp-2MBJ3V", "/home/sauer/.gnome2/keyrings/login.keyring") = 0 unlink("/home/sauer/.gnome2/keyrings/login.keyring.temp-1811546333") = 0 sendmsg(8, {msg_name(0)=NULL, msg_iov(2)=[{"l\3\1\1\35\0\0\0\222\1\0\0O\0\0\0\6\1s\0\6\0\0\0:1.325\0\0"..., 96}, {"\30\0\0\0Couldn't set item secret\0", 29}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 125 poll([{fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=5, events=POLLIN}, {fd=15, events=POLLIN}, {fd=8, events=POLLIN}], 6, -1) = 1 ([{fd=8, revents=POLLIN}]) recvmsg(8, {msg_name(0)=NULL, msg_iov(1)=[{"l\1\0\1\274\1\0\0D\0\0\0\267\0\0\0\1\1o\0(\0\0\0/org/fre"..., 2048}], msg_controllen=0, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 644 recvmsg(8, 0xbffd67c8, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable) poll([{fd=4, events=POLLIN}, {fd=12, events=POLLIN}, {fd=14, events=POLLIN}, {fd=5, events=POLLIN}, {fd=15, events=POLLIN}, {fd=8, events=POLLIN}], 6, 0) = 0 (Timeout) open("/home/sauer/.gnome2/keyrings/default", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory) So, this time at least it's updating a temp file - but since it appears to have failed to insert the record, it also can't update the secret file.