Synology WebStation을 이용해 GLPI를 설치해 이용중이였는데,
GLPI의 버전을 9에서 10으로 마이그레이션 후 아래와 같은 오류가 화면에 표시되었습니다.
오늘은 이 문제를 해결한 경험을 공유해보도록 하겠습니다.
참고했던 관련 포스팅은 https://github.com/glpi-project/glpi/issues/10534 입니다.
주황색 경고창에 해결 방법까지 자세히 나와있지만, 콘솔창에 어떻게 입력하라는건지 깝깝하기만 합니다.
하지만, 어려워 하지말고 차근차근 고민해 봅니다. 자세히 뚤어져라 계속 보다보면, 답이 보이기 마렵이니.
glpi 폴더를 보면 bin/console 이라는 파일이 있음을 확인 할 수 있습니다.
우리는, 쉘로 접속해 php 명령어를 glpi 경로에서 실행시켜 주기만 하면 되는것 같습니다.
1. 쉘 접속을 위한 환경설정 변경
쉘에 접속하기 위해 Synology DSM에 접속 > 제어판에서 SSH 포트를 활성화 합니다.
※ 해킹에 노출이 되기 쉬우니 위해 SSH 서비스는 필요할때만 활성화 하시고, 22번 포트 보다는 10022 등과 같은 남이 모를만한 포트로 사용하시기 바랍니다.
2. PHP 패키지 설치 확인
그리고 패키지 센터에서 PHP 7.2 또는 7.4가 설치 되어 있는지 확인하세요.
3. 쉘 접속 및 PHP 명령어 실행
Putty 또는 SSH 접속으로 NAS의 IP:설정한 포트(ex. 주소 : 192.168.0.111 / 포트 : 22 )와 같이 접속합니다.
그리고, glpi가 설치된 경로로 이동해서, 명령어를 입력합니다. (glpi의 경로는 이때 web의 경로에 따라 경로가 달라질 수 있습니다)
※ 명령어를 입력은 오류메시지 상에서 php~ 로 시작되지만, Synology 에서는 여러개의 php가 설치되어 있기 때문에 버전을 지정하여 실행하기 위해 php72 또는 php74 등으로 시작해서 마이그레이션 명령어를 입력합니다.
오류 내용표시 및 마이그레이션 요청 내용(예시)
columns are using the deprecated datetime storage field type.
Run the "php bin/console glpi:migration:timestamps" command to migrate them.
예시내용 기준 쉘 명령 입력
$ php74 bin/console glpi:migration:timestamps
이후 처리 질의 및 처리 결과
4. 결과 확인
GLPI에 접속하면, 오류 메시지가 표시되지 않는 것을 확인 할 수 있습니다.
5. SSH 서비스 비활성화
보안을 위해 Synology DSM에 접속 > 제어판 > SSH 포트를 비활성화 합니다.
'How to' 카테고리의 다른 글
AWS EC2를 구축해서 쓰자, 오픈소스 가상화솔루션 XCP-ng (6) | 2024.11.07 |
---|---|
원격 PC/Server 통합 관리 솔루션 Tactical RMM (0) | 2023.05.04 |
헬프데스크&IT자산관리를 위한 오픈소스, GLPI 10 릴리즈(Stable) (2) | 2022.04.22 |
연구노트용 서비스, eLabFTW 소개 및 활용 (0) | 2022.04.19 |
고용량 USB에 다양한 운영체제 설치 환경 만들기 (YUMI) (0) | 2021.03.13 |