遇到的问题
今天更新完 arch 发现 obsidian 打不开了,打开也只是黑屏
终端运行 obsidian 报错:
➜ ~ obsidian
2024-01-04 07:41:06 Loading main app package /usr/lib/obsidian/obsidian.asar
Error: ENOENT: no such file or directory, open '/home/caishao/.config/obsidian/obsidian.json'
at Object.openSync (node:fs:603:3)
at Object.func [as openSync] (node:electron/js2c/asar_bundle:2:2131)
at Object.readFileSync (node:fs:471:35)
at Object.<anonymous> (node:electron/js2c/asar_bundle:2:9462)
at /usr/lib/obsidian/obsidian.asar/main.js:3:801
at U (/usr/lib/obsidian/obsidian.asar/main.js:2:3373)
at z (/usr/lib/obsidian/obsidian.asar/main.js:3:782)
at module.exports (/usr/lib/obsidian/obsidian.asar/main.js:8:3756)
at loadApp (/usr/lib/obsidian/app.asar/main.js:294:3)
at Object.<anonymous> (/usr/lib/obsidian/app.asar/main.js:446:12) {
errno: -2,
syscall: 'open',
code: 'ENOENT',
path: '/home/caishao/.config/obsidian/obsidian.json'
}
2024-01-04 07:41:06 Checking for update using Github
2024-01-04 07:41:06 Success.
2024-01-04 07:41:06 Latest version is 1.5.3
2024-01-04 07:41:06 App is up to date.
[16851:0104/154110.412194:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[16851:0104/154122.527098:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
尝试的解决方案
最开始我注意到日志的时间跟系统时间不匹配,所以我修改了检查了一下时间设置并打开的NTP 和系统同步
caishao@archlinux ~/.config timedatectl
Local time: Thu 2024-01-04 15:36:39 CST
Universal time: Thu 2024-01-04 07:36:39 UTC
RTC time: Thu 2024-01-04 07:36:39
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: no
NTP service: inactive
RTC in local TZ: no
caishao@archlinux ~/.config sudo timedatectl set-ntp true
[sudo] password for caishao:
caishao@archlinux ~/.config timedatectl
Local time: Thu 2024-01-04 15:38:53 CST
Universal time: Thu 2024-01-04 07:38:53 UTC
RTC time: Thu 2024-01-04 07:38:53
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
但是 obsidian 的日志还是跟 universal time 和 RTC time 一样,问了一下 ChatGPT 说暂时可以先不管这个时间。
后面我看到有个报错是 Error: ENOENT: no such file or directory, open '/home/caishao/.config/obsidian/obsidian.json'
就直接在对应目录下新建了一个 obsidian.json 文件,之后重启 obsidian 仍然报错。
2024-01-04 13:53:52 Loading main app package /usr/lib/obsidian/obsidian.asar
SyntaxError: Unexpected end of JSON input
at JSON.parse (<anonymous>)
at /usr/lib/obsidian/obsidian.asar/main.js:3:793
at U (/usr/lib/obsidian/obsidian.asar/main.js:2:3373)
at z (/usr/lib/obsidian/obsidian.asar/main.js:3:782)
at module.exports (/usr/lib/obsidian/obsidian.asar/main.js:8:3756)
at loadApp (/usr/lib/obsidian/app.asar/main.js:294:3)
at Object.<anonymous> (/usr/lib/obsidian/app.asar/main.js:446:12)
at Module._compile (node:internal/modules/cjs/loader:1271:14)
at Object..js (node:internal/modules/cjs/loader:1326:10)
at Module.load (node:internal/modules/cjs/loader:1126:32)
2024-01-04 13:53:52 Checking for update using Github
2024-01-04 13:53:53 Success.
2024-01-04 13:53:53 Latest version is 1.5.3
2024-01-04 13:53:53 App is up to date.
[3550:0104/215356.003963:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[3550:0104/215356.013548:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
[3550:0104/215359.950991:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
我想的是这玩意不是配置文件里面的吗,按理说我把 obsidian 卸了重装,再把 .config/obsidian 删了,新装的 obsidian 应该会自动生成配置文件呀,但我重装之后仍然提示 Error: ENOENT: no such file or directory, open '/home/caishao/.config/obsidian/obsidian.json'
。
当然这里我使用 archlinux 的库装的 obsidian pacman -S obsidian
,等会我试一下直接在官网下载。
后面我注意到还有一个 error ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
这个好像是硬件加速的问题,要更新硬件固件?或者就是我更新了固件导致跟 obsidian 不兼容了,因为我的桌面环境那些都好好的。
这里我直接先把硬件加速禁掉,问题暂时解决。
➜ ~ obsidian --disable-gpu
2024-01-04 07:54:47 Loading main app package /usr/lib/obsidian/obsidian.asar
Error: ENOENT: no such file or directory, open '/home/caishao/.config/obsidian/obsidian.json'
at Object.openSync (node:fs:603:3)
at Object.func [as openSync] (node:electron/js2c/asar_bundle:2:2131)
at Object.readFileSync (node:fs:471:35)
at Object.<anonymous> (node:electron/js2c/asar_bundle:2:9462)
at /usr/lib/obsidian/obsidian.asar/main.js:3:801
at U (/usr/lib/obsidian/obsidian.asar/main.js:2:3373)
at z (/usr/lib/obsidian/obsidian.asar/main.js:3:782)
at module.exports (/usr/lib/obsidian/obsidian.asar/main.js:8:3756)
at loadApp (/usr/lib/obsidian/app.asar/main.js:294:3)
at Object.<anonymous> (/usr/lib/obsidian/app.asar/main.js:446:12) {
errno: -2,
syscall: 'open',
code: 'ENOENT',
path: '/home/caishao/.config/obsidian/obsidian.json'
}
2024-01-04 07:54:47 Checking for update using Github
2024-01-04 07:54:47 Success.
2024-01-04 07:54:47 Latest version is 1.5.3
2024-01-04 07:54:47 App is up to date.
环境配置
archlinux 环境:
-` caishao@archlinux
.o+` -----------------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: 81QM Lenovo XiaoXin-14IWL 2019
`+oooooo: Kernel: 6.6.9-arch1-1
-+oooooo+: Uptime: 22 mins
`/:-:++oooo+: Packages: 1027 (pacman)
`/++++/+++++++: Shell: zsh 5.9
`/++++++++++++++: Resolution: 2560x1440
`/+++ooooooooooooo/` DE: GNOME 45.2
./ooosssso++osssssso+` WM: Mutter
.oossssso-````/ossssss+` WM Theme: Adwaita
-osssssso. :ssssssso. Theme: Adwaita [GTK2/3]
:osssssss/ osssso+++. Icons: Adwaita [GTK2/3]
/ossssssss/ +ssssooo/- Terminal: alacritty
`/ossssso+/:- -:/+osssso+- CPU: Intel i7-8565U (8) @ 4.600GHz
`+sso+:-` `.-/+oso: GPU: Intel WhiskeyLake-U GT2 [UHD Graphics 620
`++:. `-/+/ GPU: NVIDIA GeForce MX230
.` `/ Memory: 3266MiB / 11685MiB
obsidian 版本:1.5.3