标签: lock

15
推荐指数
1
解决办法
4万
查看次数

如何在 Xfce 中锁定我的会话?

我正在寻找一种简单的方法来锁定我在 Xfce(Debian Unstable)中的会话。我不想在每次醒来时都写我的密码,我希望能够按下要求识别的快捷方式(启动命令行)。

用法是在我离开办公室吃午饭时锁定我的笔记本电脑。我想在关闭屏幕之前按此快捷方式(从而使笔记本电脑暂停)。如果有人试图唤醒它,他将不得不输入密码。

xfce suspend lock

15
推荐指数
1
解决办法
3万
查看次数

你如何在 Linux (C/C++) 中进行跨进程锁定?

我需要确保一个进程一次只在一个实例中执行。在 Windows 上,您可以使用命名互斥锁。但我不知道在 Linux 上使用什么。

我想我已经看到一种方法是应用程序创建一个独占文件,但我再也找不到它了。您是否使用常规文件功能,忙循环?

process lock concurrency

13
推荐指数
1
解决办法
3万
查看次数

5 次登录失败后如何锁定用户?

5 次登录失败后如何锁定用户?

我收集了一些发行版/版本来说明如何去做,但我无法对其进行测试。

RHEL4:通过添加:

auth        required      /lib/security/$ISA/pam_tally.so no_magic_root
account     required      /lib/security/$ISA/pam_tally.so deny=5 reset no_magic_root
Run Code Online (Sandbox Code Playgroud)

到:

/etc/pam.d/system-auth
/etc/pam.d/login
/etc/pam.d/sshd
Run Code Online (Sandbox Code Playgroud)

RHEL4:???

SLES9:通过添加:

auth required pam_tally.so no_magic_root
account required pam_tally.so deny=5 reset no_magic_root
Run Code Online (Sandbox Code Playgroud)

到:

/etc/pam.d/login
/etc/pam.d/sshd
Run Code Online (Sandbox Code Playgroud)

SLES11 或 SLES10:通过添加:

auth required pam_tally.so deny=5 onerr=fail per_user no_lock_time
Run Code Online (Sandbox Code Playgroud)

到:

/etc/pam.d/common-auth
Run Code Online (Sandbox Code Playgroud)

并通过添加:

account required pam_tally.so
Run Code Online (Sandbox Code Playgroud)

到:

/etc/pam.d/common-account
Run Code Online (Sandbox Code Playgroud)

问题:有人可以确认这是在 5 次登录尝试失败后锁定用户的有效/好方法吗?或者怎么做?

附:

/sbin/pam_tally --user USERNAME --reset
Run Code Online (Sandbox Code Playgroud)

在做这件事之前做这件事有用吗?我可以用这些来锁定 root 用户吗?编辑 PAM 是一件非常敏感的事情,因为人们可以将自己锁定在服务器之外(我的意思是例如:root 用户)。这样做时有什么提示吗?

password pam lock

13
推荐指数
1
解决办法
10万
查看次数

传递多个命令到flock

flock -x -w 5 ~/counter.txt 'COUNTER=$(cat ~/counter.txt); echo $((COUNTER + 1)) > ~/counter.txt'
Run Code Online (Sandbox Code Playgroud)

我如何将多个命令传递给flock上面的示例?

据我了解,flock采用不同的标志(-x 表示独占,-w 表示超时),然后是要锁定的文件,然后是要运行的命令。我不确定如何将两个命令传递给这个函数(用锁定文件的内容设置变量,然后增加这个文件)。

我的目标是通过在每次脚本尝试访问counter.txt文件时锁定文件来为文件创建一个有点原子的增量。

command-line shell lock flock

13
推荐指数
1
解决办法
8550
查看次数

flock & exec 在 bash 中安全吗?

我见过的“标准”锁定片段类似于......

(
    flock -n 200 || exit 1;
    # do stuff
) 200>program.lock
Run Code Online (Sandbox Code Playgroud)

那时使用是否安全(测试似乎是这样说的)exec?子进程会保留锁吗?

(
    flock -n 200 || exit 1;
    exec /usr/bin/python vendors-notcoolstuff.py
) 200>program.lock
Run Code Online (Sandbox Code Playgroud)

我依稀记得 exec 的进程保留打开的文件描述符,并且由于 flock 使用文件描述符,它应该可以工作。但我找不到任何文件来明确和清楚地说明这一点。

作为记录,这是特定于 Linux 的。

bash lock

13
推荐指数
2
解决办法
3708
查看次数

为原子更新获取文件的独占读/写锁

我想要一个用作计数器的文件。用户 A 将写入并增加此数字,而用户 B 请求读取文件。是否有可能用户 A 可以锁定此文件,以便在用户 A 的写入完成之前没有人可以读取或写入它?

我已经调查过,flock但似乎无法按我的预期工作。

flock -x -w 5 /dev/shm/counter.txt echo "4" >  /dev/shm/counter.txt && sleep 5
Run Code Online (Sandbox Code Playgroud)

如果有更合适的方法来获取这个类似原子的递增文件,那也很高兴听到!

我的目标是:

LOCK counter.txt; write to counter.txt;
Run Code Online (Sandbox Code Playgroud)

同时

Read counter.txt; realize it's locked so wait until that lock is finished.
Run Code Online (Sandbox Code Playgroud)

shell shell-script lock

10
推荐指数
3
解决办法
3万
查看次数

为什么包管理器需要锁定文件?

dpkg/var/lib/dpkg/lock在使用时使用锁定文件 ( )。

  • 为什么需要这些锁文件?
  • 为什么不可能有多个实例?

dpkg lock concurrency

10
推荐指数
2
解决办法
1232
查看次数

如何判断进程何时完成写入文件?

我有一个从 shell 生成的进程。它作为后台进程运行,并将数据库导出到 .csv 文件中的 CSV 文件/tmp

如何判断后台进程何时完成(完成/退出)或 CSV 文件锁是否已关闭?我计划在文件写入后将文件通过 FTP 传输到另一台主机,但在开始文件传输之前我需要完整的文件。

process lock files

9
推荐指数
2
解决办法
1928
查看次数

apt-get 等待锁释放

如果你apt-get在终端上运行命令并想在软件中心安装东西,中心说它会等到apt-get完成。我想知道是否可以在终端上做同样的事情,即apt-get在终端上等待直到锁定被释放。

我找到了这个链接aptdcon用于安装东西。我想知道是否:

  • 难道真的不能用apt-get吗?
  • aptdcon兼容的apt-get,也就是说,我可以同时使用安装的东西,而borking系统?

apt lock

9
推荐指数
2
解决办法
5619
查看次数