Никакие панели в Ubuntu? libcanberra-tk не может открыть файл общего объекта

Вы не можете понизиться одна мелкая гранулярность с кроном. То, что можно сделать, каждую минуту, запускается скрипт, который выполняет задание, ожидает 15 секунд и повторения. Следующая crontab строка запустится some_job каждые 15 секунд.

* * * * * for i in 0 1 2; do some_job & sleep 15; done; some_job

Этот сценарий предполагает, что задание никогда не будет занимать больше чем 15 секунд. Следующий немного более сложный сценарий заботится о не выполнении следующего экземпляра, если Вы заняли слишком много времени работать. Это полагается date поддержка %s формат (например, GNU или Busybox, таким образом, Вы будете в порядке на Linux). При помещении его непосредственно в crontab отметьте это % символы должны быть записаны как \% в crontab строке.

end=$(($(date +%s) + 45))
while true; do
  some_job &
  [ $(date +%s) -ge $end ] && break
  sleep 15
  wait
done
[ $(date +%s) -ge $(($end + 15)) ] || some_job

Я однако отмечу, что, если необходимо выполнять задание так же часто как каждые 15 секунд, крон является, вероятно, неправильным подходом. Хотя нельды хороши с недолгими процессами, издержки запуска программы каждые 15 секунд могли бы быть ненезначительными (в зависимости от того, как требование программы). Разве Вы не можете запустить свое приложение все время и иметь его, выполняют его задачу каждые 15 секунд?

5
28.06.2012, 22:49
3 ответа

“Ошибка ввода/вывода” для файла, это хранится на диске обычно, указывает на аппаратную ошибку на диске. Выполните это (Вы не должны быть корнем):

md5sum libcanberra-gtk.so.0

Если Вы получаете “ошибку ввода/вывода”, взгляд в Ваших журналах ядра /var/log/kern.log. Вы, вероятно, будете видеть набор сообщений, указывающих на ошибки диска. Я не знаю наизусть, на что похожи эти сообщения, но они, вероятно, упомянут ata и sda.

Также возможно, что причина проблемы состоит в том, что Вы пытаетесь запустить эти программы как корень. Большинство программ GUI не предназначено, чтобы быть выполненным как корень. Я не знаю, почему Вы получили бы ошибку ввода-вывода, хотя (я буду ожидать что-то как “никакой такой файл или каталог”).

1
27.01.2020, 20:42

Таким образом, вот то, что я думаю, что Вы испытываете: Все работает, кроме настольных частей. В основном, никакие панели, никакие значки на рабочем столе, и т.д.

Я не совсем уверен, как зафиксировать панели, так как это зависело бы от Вашей настольной среды, но для значков на рабочем столе, это - вероятно, Наутилус, являющийся жадиной.

Только запустите Наутилус (nautilus & в работах терминала), и необходимо видеть, что значки на рабочем столе раскрываются назад.

-1
27.01.2020, 20:42
  • 1
    Исходный вопрос, кажется, указывает на проблему, читая библиотеку от диска и не упоминает проблему со значками. Ваш ответ действительно не рассматривает вопрос. –  EightBitTony 20.10.2012, 15:34
[118079] "Ошибка входа/выхода" почти неизбежно означает, что вашему диску требуется fsck (или аппаратная ошибка). Проверьте журналы ядра на наличие sda/sdb/sdc/etc. и вы, вероятно, найдете некоторые ошибки/предупреждения.

Firefox работает, потому что загружается без поддержки модуля canberra-gtk (libcanberra используется для воспроизведения простых звуков), а gnome-panel отказывается даже запускаться без него.

У меня был похожий эффект на ноутбуке с двойной графикой, строка меню/панель коротких замыканий работала на одном GPU, в то время как фоновый иконки рабочего стола работали на втором (единство на убунту), и я видел только последний, но я не думаю, что это ваша проблема в данном случае.[118084].

2
27.01.2020, 20:42

Теги

Похожие вопросы