linux下:怎么禁止同一应用程序同时运行

linux下:怎么禁止同一应用程序同时运行,第1张

使用文件

应用开启的时候就创建一个文件锁

可以参考敏枝文件锁flock

/>cat >test26.sh

#!/bin/sh

#1. 这里需要先确认flock命令是否存在。

if [ -z $(which flock) ]then

echo "flock doesn't exist."

exit 1

fi

#2. flock中的-e选项表示对该文件加排它锁,-w选项表示如果此时文件正在被加锁,当前的flock命令将等待20秒,如果能锁住该文件,就继续执行,否则退出该命令。

#3. 这里锁定的文件是/var/lock/lockfile1,-c选项表示,如果成功锁定,则指定其后用双毁拿顷引号括起的命令,如果是多个命令,可以用分号分隔。

#4. 可以在两个终端同时启动该脚本,然后观察纤陆脚本的输出,以及lockfile1文件的内容。

flock -e -w 20 /var/lock/lockfile1 -c "sleep 10echo `date` | cat >>/var/lock/lockfile1"

if [ $? -ne 0 ]then

echo "Fail."

exit 1

else

echo "Success."

exit 0

fi

应该是没有这样的办法的。

linux系统基本上谈兄不会禁止root的权限,即使你想办法禁止了,也有办法打开,除非那不是真正的root。

你应该换一个思路来解决你的问题。比如除了你的程序,没有其他程序运行在这台电脑上,没有其他用户有胡哗权访问这台电脑,不就解决了裤侍行吗?

安全运行mysql服务。MySql应该使用非管理员账号销弊数运行,以普通账户安全运行亏首mysqld采用加固方法,Linux下禁止MySQL服务以管理员权限的账号运行命令,安全运行mysql服务,从而卜悄保证系统程序的正常运行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12286151.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存