Preferences > Privacy > Remove individual cookies shows more cookies than cookies.sqlite
Preferences > Privacy > Remove individual cookies shows more cookies than cookies.sqlite does
I'm trying to write a cron job that periodically, automatically deletes all the cookies that I don't want. But Firefox seems to store cookies outside of thee sqlite database that is supposedly used for that.
To illustrate:
~/.mozilla/firefox/XXXXXXXX.default $ rm cookies.sqlite* # delete all cookies.sqlite files ~/.mozilla/firefox/XXXXXXXX.default $ ps aux | grep fire # make sure firefox isn't running anymore name 20593 0.0 0.0 14228 1092 pts/5 S+ 23:24 0:00 grep --color=auto fire # it's not
~/.mozilla/firefox/XXXXXXXX.default $ sqlite3 cookies.sqlite # open the cookies database
SQLite version 3.11.0 2016-02-15 17:29:24 Enter ".help" for usage hints. sqlite> select * from moz_cookies; Error: no such table: moz_cookies # it doesn't exist.
Leave sqlite. Start Firefox.
~/.mozilla/firefox/XXXXXXXX.default $ sqlite3 cookies.sqlite
SQLite version 3.11.0 2016-02-15 17:29:24 Enter ".help" for usage hints. sqlite> .tables # cookies.sqlite / moz_cookies exists again moz_cookies sqlite> select count(*) from moz_cookies; # and it contains 2 cookies 2 sqlite>
But in Firefox, when I now select Preferences > Privacy > Remove individual cookies, I get a much larger list of cookes. Where are they stored, if not in the cookies.sqlite database?
Tất cả các câu trả lời (2)
[Here's the above question in a slightly more readable format...]
I'm trying to write a cron job that periodically, automatically deletes all the cookies that I don't want. But Firefox seems to store cookies outside of the sqlite database that is supposedly used for that.
To illustrate:
~/.mozilla/firefox/XXXXXXXX.default $ rm cookies.sqlite* # delete all cookies.sqlite files
~/.mozilla/firefox/XXXXXXXX.default $ ps aux | grep fire # make sure firefox isn't running anymore
name 20593 0.0 0.0 14228 1092 pts/5 S+ 23:24 0:00 grep --color=auto fire # it's not
~/.mozilla/firefox/XXXXXXXX.default $ sqlite3 cookies.sqlite # open the cookies database
SQLite version 3.11.0 2016-02-15 17:29:24
Enter ".help" for usage hints.
sqlite> select * from moz_cookies;
Error: no such table: moz_cookies # it doesn't exist.
Leave sqlite. Start Firefox.
~/.mozilla/firefox/XXXXXXXX.default $ sqlite3 cookies.sqlite
SQLite version 3.11.0 2016-02-15 17:29:24
Enter ".help" for usage hints.
sqlite> .tables
moz_cookies # cookies.sqlite / moz_cookies exists again
sqlite> select count(*) from moz_cookies; # and it contains 2 cookies
2
But in Firefox, when I now select Preferences > Privacy > Remove individual cookies, I get a much larger list of cookes. Where are they stored, if not in the cookies.sqlite database?
You would first have to tell what cookies this is about.
Note that Firefox stores the cookies from the current session in sessionstore.js, so if you restore that session on the next start then you automatically will get the cookies from the previous session that were saved.
There are also some special (persistent) cookies that are used by specific services that may or may not be stored in cookies.sqlite, but are kept in local storage or IndexedDB.