LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2353|回复: 4

请问如果用ipcs删除系统的信号量集?

[复制链接]
发表于 2003-6-8 16:27:34 | 显示全部楼层 |阅读模式
我的服务器上的信号量集已经达到了极限.每次用semget都会提示
semget:IPC_CREAT|0600: No space left on device
我想将一些用户的信号量集删除掉.下面是我用ipcs 时显示的结果:

  1. ------ Shared Memory Segments --------
  2. key        shmid      owner      perms      bytes      nattch     status

  3. ------ Semaphore Arrays --------
  4. key        semid      owner      perms      nsems      status
  5. 0x00000000 1277952    st1503    666        5
  6. 0x000004d2 1310721    st1503    666        5
  7. 0x00000000 1343490    st1503    666        5
  8. 0x00000000 2818051    st1534    777        5
  9. 0x00000000 2949124    st1534    777        5
  10. 0x00000000 3080197    st1534    777        5
  11. 0x00000000 3342342    st1503    666        5
  12. 0x00000000 3375111    st1503    666        5
  13. 0x00000000 3407880    st1503    666        5
  14. 0x00000000 3440649    st1503    666        5
  15. 0x00000000 3506186    st1534    777        5
  16. 0x00000000 3538955    st1534    777        5
  17. 0x00000000 3571724    st1534    777        5
  18. 0x00000000 3604493    st1534    777        5
  19. 0x00000000 3670030    st1534    777        5
  20. 0x00000000 3735567    st1534    777        5
  21. 0x00000000 3768336    st1503    666        5
  22. 0x00000000 3866641    st1534    777        5
  23. 0x00000000 3964946    st1534    777        5
  24. 0x00000000 4128787    st1503    666        5
  25. 0x00000000 4227092    st1503    666        5
  26. 0x00000000 4358165    st1534    777        5
  27. 0x00000000 4390934    st1534    777        5
  28. 0x00000000 4423703    st1534    777        5
  29. 0x00000000 4456472    st1534    777        5
  30. 0x00000000 4554777    st1534    777        5
  31. 0x00000000 4620314    st1534    777        5
  32. 0x00000000 4685851    st1503    666        5
  33. 0x00000000 4816924    st1503    666        5
  34. 0x00000000 4882461    st1534    777        5
  35. 0x00000000 5046302    st1503    666        5
  36. 0x00000000 5242911    st1503    666        5
  37. 0x00000000 5373984    st1503    666        5
  38. 0x00000000 5537825    st1503    666        5
  39. 0x00000000 5570594    st1503    666        5
  40. 0x00000000 5603363    st1503    666        5
  41. 0x00000000 5636132    st1503    666        5
  42. 0x00000000 5668901    st1503    666        5
  43. 0x00000000 5701670    st1503    666        5
  44. 0x00000000 5734439    st1503    666        5
  45. 0x00000000 5865513    st1502    666        5
  46. 0x00000000 6160426    st1503    666        5
  47. 0x00000000 6193195    st1503    666        5
  48. 0x6203e779 6389804    st1565    666        5
  49. 0x0804a1a4 6422573    st1530    666        5
  50. 0x0804a1e4 6455342    st1530    666        5
  51. 0x08049ef4 7143471    st1530    666        5
  52. 0x08049f14 7176240    st1530    666        5
  53. 0x08049e94 7307313    st1530    666        5
  54. 0x08049e74 7340082    st1530    666        5
  55. 0x08049c14 7372851    st1530    666        5
  56. 0x08049bd4 7405620    st1530    666        5
  57. 0x08049bb4 7438389    st1530    666        5
  58. 0x08049b94 7471158    st1530    666        5
  59. 0x770372a6 7503927    st1804    644        5
  60. 0x08049508 7536696    st1804    64         5
  61. 0x08049550 7569465    st1804    64         5
  62. 0x0804972c 7798842    st1804    64         6
  63. 0x08049684 8224827    st1804    644        5
  64. 0x08048601 10027068   st1804    644        5
  65. 0x00000000 10256445   st1526    555        5
  66. 0x00000000 10354752   st1541    777        1
  67. 0x00000000 10387521   st1541    777        1
  68. 0x00000000 10420290   st1541    777        1
  69. 0x00000000 10453059   st1541    777        1
  70. 0x00000000 10485828   st1541    777        1
  71. 0x00000000 10518597   st1541    777        1
  72. 0x00000000 10551366   st1541    777        1
  73. 0x00000000 10584135   st1541    777        1
  74. 0x00000000 10616904   st1541    777        1
  75. 0x00000000 10649673   st1541    777        1
  76. 0x00000000 10682442   st1541    777        1
  77. 0x00000000 10715211   st1541    777        1
  78. 0x00000000 10747980   st1541    777        1
  79. 0x00000000 10780749   st1541    777        1
  80. 0x00000000 10813518   st1541    777        1
  81. 0x00000000 10846287   st1541    777        1
  82. 0x00000000 10879056   st1541    777        1
  83. 0x00000000 10911825   st1541    777        1
  84. 0x00000000 10944594   st1541    777        1
  85. 0x00000000 10977363   st1541    777        1
  86. 0x00000000 11010132   st1541    777        1
  87. 0x00000000 11042901   st1541    777        1
  88. 0x00000000 11075670   st1541    777        1
  89. 0x00000000 11108439   st1541    777        1
  90. 0x00000000 11141208   st1541    777        1
  91. 0x00000000 11173977   st1541    777        1
  92. 0x00000000 11206746   st1541    777        1
  93. 0x00000000 11239515   st1541    777        1
  94. 0x00000000 11272284   st1541    777        1
  95. 0x00000000 11305053   st1541    777        1
  96. 0x00000000 11337822   st1541    777        1
  97. 0x00000000 11370591   st1541    777        1
  98. 0x00000000 11403360   st1541    777        1
  99. 0x00000000 11436129   st1541    777        1
  100. 0x00000000 11468898   st1541    777        1
  101. 0x00000000 11501667   st1541    777        1
  102. 0x00000000 11534436   st1541    777        1
  103. 0x00000000 11567205   st1541    777        1
  104. 0x00000000 11599974   st1541    777        1
  105. 0x00000000 11632743   st1541    777        1
  106. 0x00000000 11665512   st1541    777        1
  107. 0x00000000 11698281   st1541    777        1
  108. 0x00000000 11731050   st1541    777        1
  109. 0x00000000 11763819   st1541    777        1
  110. 0x00000000 11796588   st1541    777        1
  111. 0x00000000 11829357   st1541    777        1
  112. 0x00000000 11862126   st1541    777        1
  113. 0x00000000 11894895   st1541    777        1
  114. 0x00000000 11927664   st1541    777        1
  115. 0x00000000 11960433   st1541    777        1
  116. 0x00000000 11993202   st1541    777        1
  117. 0x00000000 12025971   st1541    777        1
  118. 0x00000000 12058740   st1541    777        1
  119. 0x00000000 12091509   st1541    777        1
  120. 0x00000000 12124278   st1541    777        1
  121. 0x000186a0 13828215   st1541    777        1
  122. 0x000186a2 13860984   st1541    777        1
  123. 0x000186a4 13893753   st1541    777        1
  124. 0x000186a6 13926522   st1541    777        1
  125. 0x000186a9 13959291   st1541    777        1
  126. 0x620372b2 14090364   st1536    666        5
  127. 0x00000000 14123133   st1502    666        5
  128. 0x00000000 14155902   st1502    666        5
  129. 0x00000000 14188671   st1502    666        5

  130. ------ Message Queues --------
  131. key        msqid      owner      perms      used-bytes   messages
复制代码

有什么办法可以用ipcs把一部分信号量集删除掉吗?
发表于 2003-6-8 18:08:27 | 显示全部楼层
sorry~...
 楼主| 发表于 2003-6-9 00:04:03 | 显示全部楼层
Javalee兄.看看书里提供给我的代码.我看不懂.你看看对你有没有用:

  1. #! /bin/csh -f
  2. set l = 'ipcs -s | grep "$user" | cut -c2-9 '
  3. foreach s ( $1 )
  4. ipcrm -s $s > & /dev/null
  5. end
  6. if ( $#1 !=0 ) echo $#1 semaphore\(s\) for $user removed
复制代码

不要骂我没有加空格.我是照着书打出来的.
发表于 2003-6-9 00:48:11 | 显示全部楼层
这句
set l = 'ipcs -s | grep "$user" | cut -c2-9 '
应该是这样的吧!
set l = `ipcs -s | grep "$user" | cut -c2-9 `
这个ipcs命令我不太懂
另外,这个脚本有问题!再问一下,你想删除哪些重复的?
发表于 2003-6-9 07:27:35 | 显示全部楼层
ipcrm就可以了,man一下具体的参数格式。
另外修改/proc下的内核参数也可以解决你的问题。
对于使用到信号量的系统,linux默认的太少了。
呵呵,btw,我写程序习惯不好,信号量一开就跟不要钱似的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表