Feb. 5th, 2013

Яма

Feb. 5th, 2013 10:57 am
pozitronik: (Sheridan)
Мы стали чёрствыми, недоверчивыми, безжалостными, мстительными, грубыми, — и хорошо, что стали такими: именно этих качеств нам и не хватало. Если бы нас послали в окопы, не дав нам пройти эту закалку, большинство из нас наверно сошло бы с ума. А так мы оказались подготовленными к тому, что нас ожидало.

Ремарк. «На западном фронте без перемен».


Мы сидели в этом чёртовом окопе уже полдня.
Хотя это даже был не окоп. Яма, узкая, длинная и неглубокая; места еле хватало на то, чтобы кое-как сидеть на корточках, упёршись спиной в землю, и держа винтовку на коленях. Все мышцы давно затекли, а позвоночник от шеи до копчика ныл и просил пощады.
Но мы хотя бы могли время от времени вытягивать в стороны руки, и, опираясь на плечи соседей, немного — сантиметров на десять, не больше — привставать, хоть как-то меняя позу. А вот курсант, фамилию которого помнить уже не было смысла, уже не мог и этого: он валялся вниз лицом в холодной грязи, а аккуратное пятнышко на виске служило лишним напоминанием о том, почему нельзя выглядывать из ямы, даже если очень хочется. Он не только погиб, но и занимал теперь вдвое больше места — а выкинуть тело из окопа не было никакой возможности.
Сука-снайпер зажал нас тут, как в клещах. Он явно залёг где-то на мосту, но выяснить это, не рискуя личным составом нельзя.
В первые часы сидения была идея подняться всем, одновременно, и, прикрывая друг друга, добежать до станции. Но это значило гарантированно потерять половину отделения, и это только в том случае, если у суки-снайпера не было реактивных снарядов. Потому от идеи отказались.
Оставалось ждать наступления темноты и тогда отходить по одному.
— Сержант! — позвал меня шёпотом (хотя в этом не было особой нужды) кто-то из курсантов.
— Слушаю — не поворачивая головы, отозвался я.
— Сержант, мне в сортир надо. Не могу больше терпеть, щас обоссусь!
— Курсант, ты решил, что я тебя под ручки сейчас из окопа поведу в кустики поссыкать? Винтовку передай соседу, выколупывай залупу и ссы под себя.
— Сержант, я не могу под себя!
Я беззвучно ругнулся — не стоило сейчас срывать на бойцах своё раздражение — и ответил:
— Вас каждое долбаное утро заставляют ссать всех вместе по команде. Именно для того, чтобы вы нормально переносили такие ситуации. Так что делай, что я говорю, или терпи — я сверился с часами — ещё пять часов.
Курсант на какое-то время заткнулся, видимо решив терпеть. Но долго он продержаться не смог: через полчаса до меня дошло какое-то шевеление. Судя по звукам...
Я повернулся, насколько мог, и увидел, как недотерпевший курсант, встав во весь рост, ссыт за край окопа.
— Прижмите его, живо! — заорал я его соседям. Те, повинуясь, попытались стащить его за ноги обратно в яму, но опоздали. Грохнул выстрел, и на груди обоссавшегося курсанта расплылось красное пятно.
Тот, покачнувшись, продолжал ссать, блаженно щурясь.
Вторым выстрелом снайпер попал ему ровнёхонько между глаз.
— Отставить! — крикнул я нерасторопным соседям. — Он труп, пусть теперь лучше за окоп ссыт.
Закончив своё дело, труп застегнул ширинку и сел обратно в окоп. Я не смотрел в его сторону, догадываясь о том, что сейчас произойдёт.
Раздались шаги и сверху заорал взбешённый капитан:
— Курсант зассанец, это что за херню ты тут нам только что устроил?! Это что, блеать, за показательный суицид с фонтаном мочи?! Ссать ему приспичило! Щас я покажу, блеать, ссать!
Капитан встал над съёжившимся в комок курсантиком, расстегнул брюки, достал внушительных размеров командирский прибор и, поднатужившись, выдал струю. Обоссываемый курсантик сидел, даже не пытаясь трепыхнуться, пока моча затекала ему под форму.
Закончив показательное обоссывание, капитан уже спокойнее произнëс:
— Поймите все: в реальном бою всегда лучше сходить под себя, чем быть убитым. Вонь — она отмоется, а смерть — она навсегда.
Капитан удалился, а мы продолжили сидеть. Я посчитал в уме: одного выбило сразу, но он молодец, лежит, не шевелится, больше полбалла с него не снимут. Обоссавшегося, ясен перец, отправят на перезачёт, баллов он не получит вообще. С его соседей снимут по баллу, за то, что не предотвратили. Хреново, конечно, но если в оставшиеся четыре часа ничего не произойдёт — отделению «яму» зачтут.
— Хорошо — вслух произнёс я.
— Чё хорошего, сержант? — спросил кто-то.
И в самом деле — что хорошего в том, чтобы сидеть скрючившись, рядом с воняющим «трупом»... Я подумал секунду, и ответил:
— Хорошо, что этот пидорас не обосрался.
pozitronik: (Default)
21:44 05.02.2013
Из жизни пресмыкающихся
Возникла задача: сделать определённому юзеру больно запрет на удаление определённого каталога (да ещё лежащего в его пользовательском каталоге). Читать-смотреть можно, удалять-изменять - нельзя. Только сделать это надо непременно из командной строки - чтобы была возможность автоматизировать действие (ну а то галочки в свойствах безопасности каждый может проставить).
Казалось бы - icacls делает всё, что надо.
Где-то с этой мыслёй я провозился два часа, не добившись результата. Как только выставляю через icacls запрет на удаление объекта - пропадает возможность просмотра каталога (при этом права те, которые нужны). Выставляю права на просмотр/чтение - появляется возможность удалять (а запрет на удаление в правах всё остаётся по прежнему).
Это не говоря уж о том, что многие ключи в консольной справке icacls выглядят совершенно одинаково, и никаких пояснений этому не даётся. Например:
R - доступ только на чтение
RC - чтение
GR - общее чтение
RD - чтение данных, перечисление содержимого папки

Вот чем они отличаются?

Провожу эксперимент. Выставляю права из свойств каталога, мышкой. Всё, как надо.
Выставляю такие же права из консоли - фигушки. Причём в тех же свойствах все галочки на тех же местах.
Пытаюсь гуглить, но все ссылки с вопросами-ответами ведут на cacls - устаревшую версию утилиты. И на MSDN, конечно, где лежит почти тот же хелп, что встроен в утилиту (ну чуть побольше кажется, на что я сначала внимания не обратил)

Ладно, я же дипломированный сантехник по компьютерам. Должна быть возможность просмотреть ACL, в формате, понимаемом утилитой. Останется поставить разрешения мышкой, посмотреть ACL, а затем его тупо копировать. Тем более, что в MSDN написано - вызвать icacls для объекта без параметров, он и покажет все права.
Пытаюсь - еггог.

Видимо, я уже ждал подсознательно такой подляны, поэтому что сразу полез перепроверять на сервер (W2008R2). На сервере это работает. Также, как и опция /setowner, и ещё несколько опций, которые, по каким-то непонятным причинам, отсутствуют в icacls на Win7Pro.

Ну вот какого хрена, а?

Ладно, делаю, что придумал. Выставляю права, смотрю список прав:

username:(OI)(CI)(DENY)(D,Rc,WDAC,WO)
username:(OI)(CI)(W,RD,REA,X,DC,RA)


(при этом все доступы такие, как и требуются)

Из этого получаю вот такую команду:

icacls "путь к каталогу" /inheritance:d /remove username /grant username:(OI)(CI)(W,RD,REA,X,DC,RA) /deny username:(OI)(CI)(d,Rc,WDAC,WO)

Поясню: опция /inheritance:d нужна для того, чтобы отменить наследование прав от вышестоящего каталога, владельцем которого пользователь является, при этом не стирая их, а копируя. /remove нужно, чтобы удалить прежде выставленные права пользователя (иначе вносимые права просто допишутся к имеющимся).

Вроде оно. Но при попытке обратиться к этому каталогу из под указанного пользователя возникает ошибка отсутствия доступа (хотя все права остаются ровно теми же)!
Иду в свойства, меняю ЛЮБОЕ из них, возвращаю обратно (т.е. не меняется НИЧЕГО) - всё начинает работать.

Вы видите в этом логику? Я нет.
Ковыряю дальше.

read more at Журнал Великого Позитроника

December 2016

S M T W T F S
    123
45678910
1112131415 1617
18192021222324
25262728293031

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 29th, 2025 10:48 am
Powered by Dreamwidth Studios