LINUX.ORG.RU

Создать такую директорию (или файл с таким же именем) и сделать ей chmod 000.

xetf ★★
()

Цитируем akavio

Запретить ... создавать конкретную директорию

Так таки по имени будущей директории запретить?

А где такое надо в жизни? И чем создается директория mkdir или произвольное приложение?

В общем случае посадить inotify отслеживать создание директории и по-факту удалять ее и сообщать админу.

sdio ★★★★★
()
Ответ на: комментарий от sdio

А надо это для скринлета пиджина, он при первом запуске создает в ~/.config/screenlets директорию Pidgin. И прекрасно работает. Пока не остановишь. А потом запускаться не хочет пока не удалишь ему эту директорию (путем тыка обнаружено).

akavio
() автор топика
Ответ на: комментарий от akavio

> А надо это для скринлета пиджина, он при первом запуске создает в ~/.config/screenlets директорию Pidgin. И прекрасно работает. Пока не остановишь. А потом запускаться не хочет пока не удалишь ему эту директорию (путем тыка обнаружено).

виндузятник что ли? Надо репортить баг и/или самому править, а не запрещать создавать директории...

name_no ★★
()
Ответ на: комментарий от sin_a

Нет, он проверяет его наличие. И если он есть запускаться отказывается. В логах ничего полезного у него нет.

akavio
() автор топика
Ответ на: комментарий от akavio

запускай этот скринлет пиджина через врапер (скрипт который сначала удалит директорию и затем запустит что надо)

sdio ★★★★★
()
Ответ на: комментарий от sdio

Всё бы вам, батенька, портить. ТС уже медленно подвигался в сторону создания файрволла API, когда вы изволили всё изгадить.

2 akavio: Ну какой же вы вендузятнег? Вы труъ линуксъ хакеръ. Вот ламерьё всякое стало бы изучать логи и трейсы, чтобы отучить подлую софтину создавать каталог, либо чтобы научить её не обламываться на этом каталоге.

Xenesz ★★★★
()
Ответ на: комментарий от sdio

Мужики, а не проще ли вылечить саму болезнь? имхо отловить бажный кусочек кода в скринлете - Ъ решение, а костыли прикручивать в этом случае, как-то даже стеснительно что ли :-)

Anoxemian ★★★★★
()
Ответ на: комментарий от akavio

> Если тот, кто ищет наиболее короткий путь к решению проблемы виндузятник, то да. Я виндузятник.

а ты думаешь, что если он не сможет создат директорию - он будет работать? он свалится с криком "can't create directory ~/.config/screenlets/Pidgin" и ты придёшь к тому, что нужно было делать с самого начала

name_no ★★
()
Ответ на: комментарий от akavio

сделай на время (для проверки) chmod a-w ~/.config/screenlets

name_no ★★
()
Ответ на: комментарий от akavio

Итак, мы с коллегами посовещались. Вот наши тебе варианты:

  • wrapper script, который удаляет директорию при запуске
  • модуль ядра, который перехватывает системный вызов на создание директории
  • двер устройства, монтируешь устройство в ~/.config/screenlets, драйвер запрещает создавать директорию с названием Pidgin
  • скрипт в кроне, удаляет директорию каждую минуту
  • демон + inotify, как только директория создаётся, он её сразу удаляет
  • убрать права на директорию (chmod a-w ~/.config/screenlets)
  • отдебажить скринлет и заслать багрепорт

вибирай самый виндузятный способ на здоровье

name_no ★★
()
Ответ на: комментарий от Anoxemian

Цитируем Anoxemian

имхо отловить бажный кусочек кода в скринлете

Это не проще, это правильнее.

sdio ★★★★★
()

Блин, самый правильный способ поискать как ктото ругаеццо на этот баг и найти решение. Обыно решение - апгрейд конкретного пакета в дистрибутиве :)

Если нет, ругнутся разработчикам дистрибутива/пакета что бы они этот баг поправили - качнуть апдейтанный пакет.

Этож, блин, опенсорс ! Уже ктото давно нарвался на проблему и ее поправил. Если давно не нарвался - вы сидите либо на чем нибудь особенно передовом(зачем?) или экзотическом. Pidgin это вообще говоря мейнстримный мейнсрим - значит вы гдето извращаетесь. Перестаньте это делать и все наладится.

kernel ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.