[문제 발생 과정]
1. 다시 라즈베리파이 - docker에 대해 알아보던 중, flask를 새로 설치하면서 문제 발생.
2. openmediavault에서 FTP 기능 중 새로운 폴더에 권한 설정 하려고 하니, apply가 전혀 되지 않았다.
3. apt-get upgrade를 터미널에 입력한 결과 아래와 같은 에러가 발생. (openmediavault의 일부 기능이 고장?)
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
Setting up openmediavault (6.0.36-2) ...
Creating configuration database ...
Migrating configuration database ...
Setting up Salt environment ...
Traceback (most recent call last):
File "/usr/bin/salt-call", line 11, in <module>
load_entry_point('salt==3003', 'console_scripts', 'salt-call')()
File "/usr/lib/python3/dist-packages/salt/scripts.py", line 437, in salt_call
import salt.cli.call
File "/usr/lib/python3/dist-packages/salt/cli/call.py", line 6, in <module>
import salt.cli.caller
File "/usr/lib/python3/dist-packages/salt/cli/caller.py", line 15, in <module>
import salt.minion
File "/usr/lib/python3/dist-packages/salt/minion.py", line 36, in <module>
import salt.pillar
File "/usr/lib/python3/dist-packages/salt/pillar/__init__.py", line 16, in <module>
import salt.fileclient
File "/usr/lib/python3/dist-packages/salt/fileclient.py", line 30, in <module>
import salt.utils.templates
File "/usr/lib/python3/dist-packages/salt/utils/templates.py", line 20, in <module>
import salt.utils.jinja
File "/usr/lib/python3/dist-packages/salt/utils/jinja.py", line 28, in <module>
from jinja2 import BaseLoader, Markup, TemplateNotFound, nodes
ImportError: cannot import name 'Markup' from 'jinja2' (/usr/local/lib/python3.9/dist-packages/jinja2/__init__.py)
dpkg: error processing package openmediavault (--configure):
installed openmediavault package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
openmediavault
E: Sub-process /usr/bin/dpkg returned an error code (1)
[문제 해결 과정]
1. 터미널에 sudo pip uninstall flask jinja2 MarkupSafe 입력.
[문제 해결 성공 여부]
- 문제 발생 없음.
[후속 조치 여부]
- flask와의 충돌로 판단되었으며, pip freeze 등 여러 대체 방법이 있는 것으로 확인되었다.