몽고DB를 실습하려고 우분투에서 4.0 버전을 설치하고
$ sudo service mongod start
타이핑 하고 엔터키를 딱 눌렀는데
mongod: unrecognized service
라는 에러를 뱉었다.
저 service
라는 명령어는 알아보니 /etc/init.d에 해당 파일이 있을 때 동작하는 방식이다.
내 경우엔 mongod라는 파일이 존재하지 않았다.
구글링을 하면 MongoDB를 재설치해라, 또는 mongod 대신 mongodb를 타이핑해라. 등의 내용이 대부분이다.
$ sudo apt-get purge mongodb-org*
명령으로 삭제하고,
$ sudo apt autoremove
해 주고,
$ sudo rm -r /var/lib/mongodb
$ sudo rm -r /var/log/mongodb
디렉토리 날려주고...
다시 설치를 수십 번 반복.
이래도 안 되니 아래 방법을 시도.
$ sudo apt-get install --reinstall mongodb-org
하지만 이것 역시 안 됨.
mongodb라는 명령어는 MongoDB 2 버전을 깔았을 때 사용하는 커맨드인 듯 했다.
커맨드로 MongoDB를 설치하면 동작하는 것이 당연하다는 듯이 교재에도, 공식 매뉴얼에도 service 스크립트를 만들어라, 등록해라 라는 내용은 찾아볼 수 없었다.
답답해서 내가 찾아보니 이런 링크가 있었다.
https://github.com/mongodb/mongo/blob/master/debian/init.d
데비안 계열의 우분투에서 쓰는 init script
의 내용이다.
$ sudo vi /etc/init.d/mongod
위의 내용을 붙여넣기 하고, wq
로 저장했다.
$ cd /etc/init.d
$ ls -al
확인해 보면 방금 생성한 mongod 파일만 색상이 다르다. 권한이 다르다.
$ chmod 755 mongod
권한을 다른 파일과 동일하게 설정해 주었다.
그 후,
# service mongod start
또는
$ sudo service mongod start
하면
* Starting database mongod [ OK ]
라고 이쁘게 뜬다.
끗!!