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

1、你单独用个机器运行不就可以了,装个影子系统,重启就恢复了原状态。

2、装不同的平台系统,比如d盘是linux系统格式的,那么windows程序就不能对d盘 *** 作了。

3、如同google Chrome的沙盒技术,不过现在系统的沙盒好像还没有啊。和虚拟机差不多,但是有本质区别,虚拟机是虚拟一个环境,沙盒是限制一个空间。

最好最有效还是独立一个机子,用影子系统。


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

原文地址:https://54852.com/yw/8355104.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存