Librosa突发无法使用疑权限问题,求Numba缓存位置修改操作详解
解决Librosa运行故障:修改Numba缓存位置的详细步骤
Librosa突然无法正常运行(两周前还一切正常),排查后定位到权限问题,官方给出的修复方案是「覆盖Numba的缓存位置」,以下是具体操作步骤:
一、临时生效(仅当前会话有效)
Windows系统
- 打开命令提示符(CMD),输入:
set NUMBA_CACHE_DIR=C:\你有权限的文件夹路径
示例:set NUMBA_CACHE_DIR=%USERPROFILE%\numba_cache(用户目录下的缓存文件夹,默认具备读写权限) - 之后在同一个CMD窗口里运行你的Librosa代码
macOS/Linux系统
- 打开终端,输入:
export NUMBA_CACHE_DIR=/你有权限的文件夹路径
示例:export NUMBA_CACHE_DIR=~/numba_cache(用户主目录下的缓存文件夹) - 同样在这个终端窗口里运行代码
二、永久生效(所有会话都有效)
Windows系统
- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「用户变量」或「系统变量」区域点击「新建」
- 变量名填
NUMBA_CACHE_DIR,变量值填你有权限的文件夹路径(比如C:\Users\你的用户名\numba_cache) - 点击确定保存,重启命令提示符或IDE后生效
macOS系统
- 打开终端,编辑bash配置文件(如果用zsh就编辑
~/.zshrc):nano ~/.bash_profile - 在文件末尾添加一行:
export NUMBA_CACHE_DIR=~/numba_cache - 按
Ctrl+O保存,Ctrl+X退出 - 执行
source ~/.bash_profile使修改立即生效,或者重启终端
Linux系统
- 打开终端,编辑
~/.bashrc文件:nano ~/.bashrc - 在文件末尾添加:
export NUMBA_CACHE_DIR=~/numba_cache - 保存退出后,执行
source ~/.bashrc生效
三、在Python代码中直接设置
如果不想修改系统环境变量,可以在你的Python代码最开头添加以下内容:
import os # Windows示例 os.environ['NUMBA_CACHE_DIR'] = r'C:\Users\你的用户名\numba_cache' # macOS/Linux示例 # os.environ['NUMBA_CACHE_DIR'] = '~/numba_cache' import librosa # 后续正常编写你的代码
内容的提问来源于stack exchange,提问作者Rocket
相关产品推荐
相关产品推荐

