Ожидайте X-окна для казавшегося/исчезновения (нормальным способом)

Я никогда не видел +a, только что-то как chmod a+r что означает, "добавляют полномочия чтения ко всем пользователям" (владелец/пользователь, группа, другие).

От man 1 chmod:

Формат символьного режима [ugoa...] [[+ - =] [перманент...]...], где перманент является или нулем или большим количеством букв от набора rwxXst или одной буквой от набора ugo. Несколько символьных режимов могут быть даны, разделены запятыми.

Комбинация букв ugoa средства управления, какой доступ пользователей к файлу будет изменен: пользователь, который владеет им (u), другие пользователи в группе (g) файла, другие пользователи не в группе (o) файла или всех пользователях (a). Если ни один из них не дан, эффект состоит в том, как будто данный, но биты, которые установлены в umask, не затронут.

Право, как Вы сказали в комментарии, это - конкретный Mac OS X. Из http://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/chmod.1.html:

Опции управления ACL следующие:

+a
+a режим анализирует новую запись ACL от следующего аргумента на командной строке и вставляет его в каноническое местоположение в ACL. Если предоставленная запись относится к идентификационным данным, уже перечисленным, эти две записи объединены.

11
08.05.2013, 02:04
2 ответа

Это должно дать Вам всем (хорошо: большинство. Что я забыл? Сокеты?) операции файловой системы, которые включают записи:

strace -f command 2>&1 | 
  grep -e '^open.*O_CREAT' \
    -e ^write   \
    -e ^mkdir   \
    -e ^rmdir   \
    -e ^unlink  \
    -e ^rename  \
    -e ^chmod   \
    -e ^link    \
    -e ^symlink \
    -e ^mknod

С этой информацией работа chroot среда может быть создана в tmpfs (как действие последней инстанции; возможно, символьные ссылки на tmpfs достаточно). Если программа запущена в RAM chroot затем, она не имеет шанса разбудить диск непосредственно. Никакая запись к ее иерархии файловой системы никогда не пишется в диск.

4
27.01.2020, 19:59
  • 1
    , которому я верю, существует времена, когда чтение файла, по крайней мере впервые, разбудит диск также, не так ли? Я задаюсь вопросом если blktrace был бы правильный инструмент для этого, но он потребует компиляции ядра # CONFIG_BLK_DEV_IO_TRACE is not set :( Это выходит за рамки этого вопроса, все же. Спасибо! –  Teresa e Junior 08.05.2013, 02:19
  • 2
    @TeresaeJunior, но кто полагал бы что проблема? Это о поддерживании в рабочем состоянии сценария все время не о запуске его. И можно создать tmpfs из boot.local / rc.local так, чтобы у Вас не было доступов к диску даже при запуске сценария позже. Я просто взглянул на blktrace (не знал что прежде). Это так ужасно, интересно, заставлю ли я себя заснуть сегодня вечером... –  Hauke Laging 08.05.2013, 03:13
  • 3
    Да, я не должен действительно больше волноваться об этом, Вы правы снова. Но я думаю, что также буду освобождать этой ночью сна, компилирующего ядро, так как я хочу проверить все, что могло бы будить постоянно диск, не только этот конкретный :) –  Teresa e Junior 08.05.2013, 03:34

Это могло бы быть более простым, и более надежным, для доверия менеджеру окон или X11 для обработки этого путем записи "реального" приложения X11.

То, что Вы хотите от оболочки, является чем-то, что регистрируется в менеджере окон и ожидает желаемого типа события прежде, чем возвратиться к оболочке... это намного более благоприятно для загрузки, если можно избежать цикличного выполнения в оболочке. (Ваш until xdotool... причины загружаются, потому что нет никакой задержки (сон) в цикле.)

А-ч..., по-видимому, xdotool та функция добавила по год назад --sync. Это не доступно в моем текущем дистрибутиве Linux (Debian Сжимают), таким образом, я не испытал его.

xdotool разработчик, отвечающий на подобный вопрос к Вашему: https://groups.google.com/d/msg/xdotool-users/7zfKTtyWm0Q/DM6TSOBUWZMJ

6
27.01.2020, 19:59
  • 1
    Да, точно, -sync как предполагалось, сделал то, что я хочу, но этому нужно while потому что это в конечном счете откажет, прежде чем окно появляется и тратит впустую слишком много ЦП. Я на самом деле скомпилировал xdotool из источника, потому что тот от Debian невероятно не спешил вводить. Запись приложения, которое взаимодействует непосредственно с X, на самом деле вне меня. Спасибо, хотя! –  Teresa e Junior 08.05.2013, 02:12

Теги

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