Вот вышла новая версия Ubuntu с новыми проблемами, но и про старые не забыли : )
Проблема с долгим открыванием домашнего каталога осталась.
Тормозит при первом запуске.
В compiz появилось новое дополнение "Показывать отрисовку" - все что заново вырисовывается на экране - выделяется случайным цветом. Если его включить и запустить nautilus, то заметно что окно nautilus начинает неимоверно часто мелькать.
Моё предположение: nautilus при первом запуске делает какие-то служебные операции и после каждой такой маленькой операции он вызывает отрисовку окна.
помню когда в делфи игрался, то наступал на эти грабли - отрисовка прогресс бара занимала больше времени чем сама операция в цикле, посему подозреваю что-то подобное
В пользу этого говорят следующие факты:
1) жесткий диск не загружен
2) частая отрисовка окна
3) с новой Ubuntu 12.10 у меня не заработали проприетарные драйвера, работаю с открытыми, а они обеспечивают меньшее быстродействие, это совпало с тем, что nautilus стал дольше открываться.
Решил «Хватит это терпеть» и выполнил команду для завершения nautilus
killall nautilus
а затем запуск nautilus с трассировкой
strace -ttt -o ~/Template/nautilus.strace nautilus
И получил лог трассировки, всего лишь 15МБ
nautilus.strace.tar.gzВ нем преобладает много операций типа
1350668341.300860 brk(0x1b7e000) = 0x1b7e000
1350668341.301461 brk(0x1b6e000) = 0x1b6e000
1350668341.301585 brk(0x1b5e000) = 0x1b5e000
1350668341.302492 brk(0x1b4e000) = 0x1b4e000
1350668341.306849 lstat("/usr/share/icons/Humanity/places/16/inode-directory.svg", {st_mode=S_IFLNK|0777, st_size=10, ...}) = 0
1350668341.307088 stat("/usr/share/icons/Humanity/places/16/inode-directory.svg", {st_mode=S_IFREG|0644, st_size=11672, ...}) = 0
1350668341.307234 readlink("/usr/share/icons/Humanity/places/16/inode-directory.svg", "folder.svg"..., 256) = 10
1350668341.307970 open("/usr/share/icons/Humanity/places/16/inode-directory.svg", O_RDONLY) = 21
1350668341.308310 fstat(21, {st_mode=S_IFREG|0644, st_size=11672, ...}) = 0
1350668341.308521 read(21, "<?xml version=\"1.0\" encoding=\"UT"..., 65536) = 11672
1350668341.312051 read(21, "", 65536) = 0
1350668341.313954 close(21) = 0
похоже что nautilus в течении 2-х минут грузит иконки О_о.
Что делать с этим дальше я не знаю. Есть идеи?