Macos 另一个活动的自制过程已在进行中

Macos 另一个活动的自制过程已在进行中,macos,homebrew,Macos,Homebrew,当我尝试这样做时: brew install node 我得到这个信息: /usr/local/Homebrew/Library/Homebrew/utils/lock.sh: line 19: /usr/local/var/homebrew/locks/update: Permission denied -e:1:in `initialize': Bad file descriptor (Errno::EBADF) from -e:1:in `new' from -e:1:

当我尝试这样做时:

brew install node
我得到这个信息:

 /usr/local/Homebrew/Library/Homebrew/utils/lock.sh: line 19: /usr/local/var/homebrew/locks/update: Permission denied
-e:1:in `initialize': Bad file descriptor (Errno::EBADF)
    from -e:1:in `new'
    from -e:1:in `<main>'
Error: Another active Homebrew process is already in progress.
Please wait for it to finish or terminate it to continue.
Error: Permission denied - /usr/local/var/homebrew/locks/node.brewing
/usr/local/Homebrew/Library/Homebrew/utils/lock.sh:第19行:/usr/local/var/Homebrew/locks/update:权限被拒绝
-e:1:在“初始化”中:错误的文件描述符(Errno::EBADF)
from-e:1:in“new”
from-e:1:in`'
错误:另一个活动的自制进程已在进行中。
请等待它完成,或终止它以继续。
错误:权限被拒绝-/usr/local/var/homebrew/locks/node.brewing
关于如何解决这个问题有什么想法吗?

正如某些时候所建议的,我的问题是第一次以sudo权限运行brew命令。这会导致brew尝试访问特权文件和文件夹,但失败。如果是这种情况,请运行这些命令,然后再次尝试安装node

sudo chown-R“$USER”:admin/usr/local


brew cleanup

尝试使用以下命令删除自制进程锁:

rm -rf /usr/local/var/homebrew/locks

更改文件权限将避免此错误:

sudo chown <your-username>:admin /usr/local/Homebrew/Library/Homebrew/utils/lock.sh
sudo chown:admin/usr/local/Homebrew/Library/Homebrew/utils/lock.sh 有关自制软件安装或更新的权限问题:

更改您的自制权限设置

sudo chown -R <your-username>:admin /usr/local/Homebrew

sudo chown -R <your-username>:admin /usr/local/var/homebrew
sudo chown-R:admin/usr/local/Homebrew sudo chown-R:admin/usr/local/var/homebrew
然后运行homebrew安装或更新

在我的OSX上,我中断了节点安装,然后尝试再次启动安装节点,因此出现了问题中提到的错误。
我尝试了其他响应的以下步骤:

sudo chown -R "$USER":admin /usr/local

brew cleanup

rm -rf /usr/local/var/homebrew/locks
但是这条消息又出现了,所以不知道上面的步骤是否有帮助

然后我关闭了终端选项卡,在新的选项卡中运行

brew install -v node

成功完成节点安装花了11分钟

只需关闭终端并重新打开另一个

即可在终端中键入以下内容:

brew cleanup
这应该可以解决所有问题。按照以下命令操作:

brew doctor

全部完成。

我不知道发生了什么事。我唯一的活动终端正在等待输入,没有作业在后台运行。我刚刚尝试运行一个RVM安装,但失败了,并要求我更新自制软件,但由于终端正在等待输入,这应该已经完成。在多次重复调用命令后,几分钟后,我停止接收消息

这是在Mac OSX 10.13.6和iTerm2上实现的

⋊> brew --version
Homebrew 2.1.4
Homebrew/homebrew-core (git revision 97b15a; last commit 2019-06-07)
Homebrew/homebrew-cask (git revision 2a010; last commit 2019-06-07)

更改
/usr/local/Homebrew
/usr/local/var/Homebrew
的权限正是帮助我在
ls*lock
中使用
文件保持安全的原因;执行mv$file$file.old;完成了
?谢谢这太完美了!这是不可取的。错误出现在错误的权限中;
锁定
文件是有目的的,删除它不是最安全的选择;我指的是@kalibrain的解决方案。我必须同时做这两件事。是的,问题发生在移动文件进行备份,然后恢复它们之后。文件所有者被设置为未知GID;使用
chown
进行还原时,所有功能都恢复正常。另外,使用
ls-la/usr/local/
确保权限是固定的。如果不是,请尝试添加一个星号来表示所有子文件(如
sudo chown-R“$USER”:admin/usr/local/*
)。这个答案很好,但chown on
/usr/local/*
更好,否则在macOS上出现权限错误更安全。没有星号,我没有得到正确的扩展,大多数子文件/文件夹也没有被命令触及。解除锁定对我有帮助!修复了我对BasicTex的安装。谢谢这可能只在某些情况下有效。原因是,如果您只是关闭终端,它可能无法删除在
/usr/local/var/homebrew/locks
路径上创建的锁。因此,下次运行
brew update
时,您将看到此问题中给出的错误。我这样做了,并且完全重新启动了,但没有帮助…@kalibrain的回答有效