Удалите всю общую память System V и семафоры в подобных UNIX системах

Как я могу удалить все не используемые семафоры и общая память с единственной командой в подобной UNIX системе, например, Ubuntu?

35
задан DrMickeyLauer 12 March 2018 в 08:20
поделиться

3 ответа

Раз уж вы упомянули, что работаете на NFS системе, есть ли у вас доступ к этим семафорам и общей памяти ? Думаю, Вы неправильно поняли, что это такое, это API код, который позволяет процессам взаимодействовать друг с другом, семафоры являются решением для предотвращения условий гонки и для взаимодействия потоков друг с другом, в простом ответе, они не оставляют следов ни на одной файловой системе.

Если только вы не используете муфту или трубу? Есть ли у вас необходимые разрешения для их удаления, почему они на NFS системе?

Надеюсь, это поможет, С наилучшими пожеланиями, Том.

0
ответ дан 27 November 2019 в 06:40
поделиться

Я не знаю, как удалить все одновременно, но вы можете использовать IPCS , чтобы перечислены ресурсы, а затем использовать петлю и удалить с помощью IPCRM . Это должно работать, но ему нужна небольшая работа. Я помню, что сделал это работать один раз в классе.

7
ответ дан 27 November 2019 в 06:40
поделиться
ipcs -s | grep $USERNAME | perl -e 'while (<STDIN>) { @a=split(/\s+/); print `ipcrm sem $a[1]`}'

или

ipcs -s | grep $USERNAME | awk ' { print $2 } ' | xargs ipcrm sem

Измените $ USERNAME на настоящее имя пользователя.

9
ответ дан 27 November 2019 в 06:40
поделиться
Другие вопросы по тегам:

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