복붙노트

[MONGODB] 만들 수 없습니다 개방 / 잠금 파일 : /data/mongod.lock의 errno를 : 13 권한이 거부

MONGODB

만들 수 없습니다 개방 / 잠금 파일 : /data/mongod.lock의 errno를 : 13 권한이 거부

어떻게 몽고가이 EC2에 드라이브를 장착 사용할 수 얻으려면? 난 정말 이해가 안 돼요. 내가 EC2에 볼륨이 루트로 드라이브를 포맷하고 루트 I 캔트 액세스로 아직 루트로 시작하고 첨부? 나는 우분투 12.04에서 실행하고 있습니다. 다른 몽고가 실행되지 않습니다

그 몽고는 'DB'DIR에 / 데이터, 즉 / 데이터 / DB를 만들어 볼

cd /
ls -al
drwxr-xr-x  4 root root  4096 Mar  5 16:28 data

cd /data
ls -al
total 28
drwxr-xr-x  4 root root  4096 Mar  5 16:28 .
drwxr-xr-x 24 root root  4096 Mar  5 16:28 ..
drwxr-xr-x  2 root root  4096 Mar  5 16:28 db
drwx------  2 root root 16384 Mar  5 16:20 lost+found


sudo mkfs.ext3 /dev/xvdh
sudo mkdir /data
sudo su - -c 'echo "/dev/xvdh %s auto noatime 0 0" | sudo tee -a /etc/fstab'
sudo mount /data

sudo service mongodb start
mongodb start/running, process 17169

sudo ps -ef | grep mongod
ubuntu   15763 15634  0 16:32 pts/2    00:00:00 tail -f mongodb.log
ubuntu   18049 15766  0 16:43 pts/3    00:00:00 grep --color=auto mongod


Tue Mar  5 16:33:15 [initandlisten] MongoDB starting : pid=15890 port=27017 dbpath=/data 64-bit host=aws-mongo-server-east-staging-20130305161917
Tue Mar  5 16:33:15 [initandlisten] db version v2.2.3, pdfile version 4.5
Tue Mar  5 16:33:15 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Tue Mar  5 16:33:15 [initandlisten] build info: Linux ip-10-2-29-40 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_49
Tue Mar  5 16:33:15 [initandlisten] options: { bind_ip: "10.157.60.27", config: "/etc/mongodb.conf", dbpath: "/data", logappend: "true", logpath: "/var/log/mongodb/mongodb.log", replSet: "heythat" }
Tue Mar  5 16:33:15 [initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /data/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating
Tue Mar  5 16:33:15 dbexit: 
Tue Mar  5 16:33:15 [initandlisten] shutdown: going to close listening sockets...
Tue Mar  5 16:33:15 [initandlisten] shutdown: going to flush diaglog...
Tue Mar  5 16:33:15 [initandlisten] shutdown: going to close sockets...
Tue Mar  5 16:33:15 [initandlisten] shutdown: waiting for fs preallocator...
Tue Mar  5 16:33:15 [initandlisten] shutdown: lock for final commit...
Tue Mar  5 16:33:15 [initandlisten] shutdown: final commit...
Tue Mar  5 16:33:15 [initandlisten] shutdown: closing all files...
Tue Mar  5 16:33:15 [initandlisten] closeAllFiles() finished
Tue Mar  5 16:33:15 [initandlisten] shutdown: removing fs lock...
Tue Mar  5 16:33:15 [initandlisten] couldn't remove fs lock errno:9 Bad file descriptor
Tue Mar  5 16:33:15 dbexit: really exiting now

내가 잠금 파일을 제거 할 때 내가 다시 시작하면 다음은 ....입니다

Tue Mar  5 16:59:15 [initandlisten] MongoDB starting : pid=21091 port=27017 dbpath=/data 64-bit host=aws-mongo-server-east-staging-20130305161917
Tue Mar  5 16:59:15 [initandlisten] db version v2.2.3, pdfile version 4.5
Tue Mar  5 16:59:15 [initandlisten] git version: f570771a5d8a3846eb7586eaffcf4c2f4a96bf08
Tue Mar  5 16:59:15 [initandlisten] build info: Linux ip-10-2-29-40 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_49
Tue Mar  5 16:59:15 [initandlisten] options: { bind_ip: "10.157.60.27", config: "/etc/mongodb.conf", dbpath: "/data", logappend: "true", logpath: "/var/log/mongodb/mongodb.log", replSet: "heythat" }
Tue Mar  5 16:59:15 [initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /data/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating
Tue Mar  5 16:59:15 dbexit: 
Tue Mar  5 16:59:15 [initandlisten] shutdown: going to close listening sockets...
Tue Mar  5 16:59:15 [initandlisten] shutdown: going to flush diaglog...
Tue Mar  5 16:59:15 [initandlisten] shutdown: going to close sockets...
Tue Mar  5 16:59:15 [initandlisten] shutdown: waiting for fs preallocator...
Tue Mar  5 16:59:15 [initandlisten] shutdown: lock for final commit...
Tue Mar  5 16:59:15 [initandlisten] shutdown: final commit...
Tue Mar  5 16:59:15 [initandlisten] shutdown: closing all files...
Tue Mar  5 16:59:15 [initandlisten] closeAllFiles() finished
Tue Mar  5 16:59:15 [initandlisten] shutdown: removing fs lock...
Tue Mar  5 16:59:15 [initandlisten] couldn't remove fs lock errno:9 Bad file descriptor
Tue Mar  5 16:59:15 dbexit: really exiting now

해결법

  1. ==============================

    1.나는 우분투 EC2 인스턴스에서 동일한 문제가되었다. 나는 7 페이지의이 아마존 문서를 다음했다 :

    나는 우분투 EC2 인스턴스에서 동일한 문제가되었다. 나는 7 페이지의이 아마존 문서를 다음했다 :

    http://d36cz9buwru1tt.cloudfront.net/AWS_NoSQL_MongoDB.pdf

    /etc/mongodb.conf에서 MongoDB의 경로는 / var / lib 디렉토리 / MongoDB를 (주 설치 위치 및 작업)으로 설정했다. 내가 얻고 있었다 / 데이터 / DB (EBS 볼륨)로 변경하는 경우 '의 errno : 13 권한이 거부'.

    난 그냥이 가진 시간 이상을 보냈다. 그룹을 변경하고 이전 파일을 삭제하면 아마 필요는 없지만, 나를 위해 일한 그 무엇의.

    이 EC2 인스턴스에 EBS 볼륨을 마운트에 대한 좋은 비디오입니다 :

    http://www.youtube.com/watch?v=gBII3o3BofU

  2. ==============================

    2.나는 문제를 해결하기 위해이 방법을 사용 :

    나는 문제를 해결하기 위해이 방법을 사용 :

    sudo chown -R mongodb:mongodb /data/db
    
  3. ==============================

    3.내 경우에는 (AWS EC2 인스턴스, 우분투는) 도움 :

    내 경우에는 (AWS EC2 인스턴스, 우분투는) 도움 :

    $ sudo mkdir -p /data/db/
    $ sudo chown `USERNAME` /data/db
    

    그리고 모든 것이 잘 근무 후.

  4. ==============================

    4.당신은 당신의 / 데이터 / DB 폴더에 대한 액세스 권한을 부여해야합니다.

    당신은 당신의 / 데이터 / DB 폴더에 대한 액세스 권한을 부여해야합니다.

    사용자 이름으로 대체, sudo는 대한 Chown -R / 데이터 / DB를 입력합니다.

    당신은 타이핑 WHOAMI하여 사용자 이름을 찾을 수 있습니다.

  5. ==============================

    5.나는이 자습서 다음 우분투 14.04를 가진 EC2에 EBS와 MongoDB를 설치 :

    나는이 자습서 다음 우분투 14.04를 가진 EC2에 EBS와 MongoDB를 설치 :

    http://docs.mongodb.org/ecosystem/platforms/amazon-ec2/

    하지만 그 대신 내가 한 제안 된 대한 Chown의 :

    sudo chown -R mongodb:mongodb /data /log /journal
    

    이 문제를 해결하려면

  6. ==============================

    6.나는 비슷한 문제를 가지고, 실제 이유는 내 이전 시도에서 이미 실행 mongod 세션이 있었다이었다.

    나는 비슷한 문제를 가지고, 실제 이유는 내 이전 시도에서 이미 실행 mongod 세션이 있었다이었다.

    I 달렸다

    killall mongod
    

    그리고 모든 다른 달렸다는 그냥 예상.

    killall는 명령은 실제 ​​UID와 모든 프로세스에 TERM 신호를 보낼 것입니다. 이 mongod의 모든 실행중인 인스턴스를 죽이고 그래서 당신은 당신의 자신을 시작할 수 있도록.

  7. ==============================

    7.나는 비슷한 문제가 있었다 및 사용 변경 소유자에 대한 위의 모든 지시 사항을 준수 sudo는 대한 Chown 등 나는 여전히 변경 후 백그라운드에서 실행하여 MongoDB의 인스턴스를했다. 달리는

    나는 비슷한 문제가 있었다 및 사용 변경 소유자에 대한 위의 모든 지시 사항을 준수 sudo는 대한 Chown 등 나는 여전히 변경 후 백그라운드에서 실행하여 MongoDB의 인스턴스를했다. 달리는

    ps auxw | grep mongo 
    

    나에게 제대로 종료되지 않은 백그라운드에서 실행 몽고를 사용하여 다른 작업을 보여 주었다. 나는 다음 실행중인 모든 것들에 살인을 실행 한 후 내 서버를 시작할 수 있습니다.

  8. ==============================

    8.맥 사용자의 경우 : 실행 LS -ld / 데이터 / DB / 출력 drwrx XR-X-20 싱 휠 같은되어야 680 21 7 월를 05:49 / 데이터 / DB / 어디 싱 소유자이며 휠이 속한 그룹입니다. 휠 / 데이터 / DB : sudo는 대한 Chown -R 싱을 실행 실행 mongod

    맥 사용자의 경우 : 실행 LS -ld / 데이터 / DB / 출력 drwrx XR-X-20 싱 휠 같은되어야 680 21 7 월를 05:49 / 데이터 / DB / 어디 싱 소유자이며 휠이 속한 그룹입니다. 휠 / 데이터 / DB : sudo는 대한 Chown -R 싱을 실행 실행 mongod

  9. ==============================

    9.13 권한이 mongod 인스턴스가 이미 종료? 실행되어 거부, 모든 대답에 이상 게시 시도 : /data/db/mongod.lock의 errno는 : 오늘로서, 내가 만들 수있는 개방 / 잠금 파일을 통해 내 방식을 얻기 위해 노력 이 문제를 해결, 따라서 아무것도 첨가하여 일하지

    13 권한이 mongod 인스턴스가 이미 종료? 실행되어 거부, 모든 대답에 이상 게시 시도 : /data/db/mongod.lock의 errno는 : 오늘로서, 내가 만들 수있는 개방 / 잠금 파일을 통해 내 방식을 얻기 위해 노력 이 문제를 해결, 따라서 아무것도 첨가하여 일하지

    나는하여 위치 경로에 내 현재 사용자 권한을 추가하지 않는 한

    이 사람을 도움이되기를 바랍니다. 또한 난 그냥 내 파이에 MongoDB를 설치합니다. 건배!

  10. ==============================

    10.mongodb.lock 파일을 제거하면 내 경우에는 문제가 아니었다. 나는 그렇게했고, 포트가 사용되는 대한 오류가 발생했습니다 : [initandlisten] 듣기 () : 바인딩 () 실패의 errno : 이미 사용 소켓 98 주소 : 0.0.0.0:27017. 여기 또 다른 해결책을 발견 : 프로세스를 종료하는 지침에 MongoDB를 로컬 서버를 시작할 수 없습니다 :

    mongodb.lock 파일을 제거하면 내 경우에는 문제가 아니었다. 나는 그렇게했고, 포트가 사용되는 대한 오류가 발생했습니다 : [initandlisten] 듣기 () : 바인딩 () 실패의 errno : 이미 사용 소켓 98 주소 : 0.0.0.0:27017. 여기 또 다른 해결책을 발견 : 프로세스를 종료하는 지침에 MongoDB를 로컬 서버를 시작할 수 없습니다 :

    그리고 성공적으로 다시 MongoDB를 시작 할 수 있었다. 난 내 여전히 부적절한 종료 아래로에서 실행중인 믿습니다.

  11. ==============================

    11.작업 관리자를 실행하는 "mongod.exe"의 인스턴스를 종료하여 Windows에이 오류가 발생 당신의 사람들을 위해. 이 작업이 완료되면 영구적으로 mongo.lock 파일 실행 mongod.exe을 삭제합니다. 그것은 그 후 완벽하게 작동합니다.

    작업 관리자를 실행하는 "mongod.exe"의 인스턴스를 종료하여 Windows에이 오류가 발생 당신의 사람들을 위해. 이 작업이 완료되면 영구적으로 mongo.lock 파일 실행 mongod.exe을 삭제합니다. 그것은 그 후 완벽하게 작동합니다.

  12. ==============================

    12.내 몽고 (3.2.9)는 우분투에 설치, 내 로그 파일에 다음 줄을 있었다 :

    내 몽고 (3.2.9)는 우분투에 설치, 내 로그 파일에 다음 줄을 있었다 :

    2016-09-28T11:32:07.821+0100 E STORAGE  [initandlisten] WiredTiger (13) [1475058727:821829][6785:0x7fa9684ecc80], file:WiredTiger.wt, connection: /var/lib/mongodb/WiredTiger.turtle: handle-open: open: Permission denied 
    2016-09-28T11:32:07.822+0100 I -        [initandlisten] Assertion: 28595:13: Permission denied 
    2016-09-28T11:32:07.822+0100 I STORAGE  [initandlisten] exception in initAndListen: 28595 13: Permission denied, terminating
    

    2016-09-28T11 : 32 : 07.822 + 0100 I CONTROL [initandlisten] dbexit : RC : 100

    그래서 문제는 / var / lib 디렉토리 / MongoDB를 폴더에 대한 사용 권한에 있었다.

    sudo chown -R mongodb:mongodb /var/lib/mongodb/
    sudo chmod -R 755 /var/lib/mongodb
    

    나는 (그것이 내가 내 경우에있어 내 자신의 dev에 상자의)도 안전하지있을 수 있습니다 실현을 할 수 있지만, 그것을 고정, 모두 DB 및 인증 작업 변경 다음 비트.

  13. ==============================

    13.나의 경우에는 MongoDB의 버전에서 2.6.11 기본 데이터베이스 디렉토리는 / var / lib 디렉토리 / MongoDB를 / 인

    나의 경우에는 MongoDB의 버전에서 2.6.11 기본 데이터베이스 디렉토리는 / var / lib 디렉토리 / MongoDB를 / 인

  14. ==============================

    14.몽고 2.2.4 인스턴스 페도라 18에 나는 루트로 위해 setenforce 0을 호출하여 SELinux를 사용하지 않도록 설정하여 유사한 오류 주위에 얻을 수있었습니다.

    몽고 2.2.4 인스턴스 페도라 18에 나는 루트로 위해 setenforce 0을 호출하여 SELinux를 사용하지 않도록 설정하여 유사한 오류 주위에 얻을 수있었습니다.

    BTW, 이것은 기업 환경이 아닌 아마존 EC2 인스턴스했지만, 증상은 비슷했다.

  15. ==============================

    15.내 경우에는 문제가 로그 파일을 제거하여 해결되었다.

    내 경우에는 문제가 로그 파일을 제거하여 해결되었다.

    sudo rm /log/mongod.log
    

    오류 메시지가 잠금 파일에 특별히 의미 있지만 :

    exception in initAndListen: 10309 Unable to create/open lock file: 
    /data/mongod.lock errno:13 Permission denied 
    Is a mongod instance already running?, terminating
    
  16. ==============================

    16.내가 mongod를 죽인 후, 난 그냥 같은 문제가 있었다 : mongod를 시작할 수 없습니다.

    내가 mongod를 죽인 후, 난 그냥 같은 문제가 있었다 : mongod를 시작할 수 없습니다.

    $> sudo kill `pidof mongod`
    

    2015-08-03T05 : 58 : + 0000 41.339는 initAndListen에서 [initandlisten] 예외 : 10309는 개방 / 잠금 파일을 만들 수 없습니다 : /data/mongodbtest/replset/data/mongod.lock의 errno는 : 거부 (13) 권한을 mongod 인스턴스가 이미 실행 중입니다 ?, 종료

    내가 직접 잠금을 삭제 한 후, 나는 mongod 프로세스를 다시 시작할 수 있습니다.

    $>  rm -rf /data/mongodbtest/replset/data/mongod.lock
    
  17. ==============================

    17.이것은 내가 문제를 해결하기 위해 무슨 짓을했는지 있습니다 :

    이것은 내가 문제를 해결하기 위해 무슨 짓을했는지 있습니다 :

    $ sudo를에서 mkdir -p / 데이터 / DB

    $ 수출 PATH = / usr / 지방 / 셀라 / MongoDB를 / 3.0.7 / 빈 : $ PATH에

    $ sudo는 대한 Chown -R ID -u / 데이터 / DB

    다음 몽고를 시작합니다 ...

    $ mongod

  18. ==============================

    18.저도 같은 문제가 있었다.

    저도 같은 문제가 있었다.

    나는 명령 아래로 허용하는 SELinux가 상태를 변경하여 그것을 해결 :

    setenforce 0
    
  19. ==============================

    19.나는 윈도우 10에 설치 한 후 mongod 명령을 실행할 때 저도 같은 문제를 얻었다. 나는 MongoDB의 서비스를 중지하고 다시 시작했다. 마치 마법처럼 작동

    나는 윈도우 10에 설치 한 후 mongod 명령을 실행할 때 저도 같은 문제를 얻었다. 나는 MongoDB의 서비스를 중지하고 다시 시작했다. 마치 마법처럼 작동

    (윈도우에서) 정지 MongoDB의 서비스에 명령 : 순 정지 MongoDB를

    명령 시작 MongoDB를 서버 : mongod --dbpath PATH_TO_DATA_FOLDER

  20. ==============================

    20.LS는은 / var / 로그 / MongoDB를의 사용자 및 그룹을 알고 -lato 마십시오. 그룹 / 데이터 / DB : 다음 sudo는 대한 Chown -R 사용자를 할 이제 실행 sudo는 서비스가 시작 MongoDB를. sudo는 서비스 MongoDB의 상태로 상태를 확인

    LS는은 / var / 로그 / MongoDB를의 사용자 및 그룹을 알고 -lato 마십시오. 그룹 / 데이터 / DB : 다음 sudo는 대한 Chown -R 사용자를 할 이제 실행 sudo는 서비스가 시작 MongoDB를. sudo는 서비스 MongoDB의 상태로 상태를 확인

  21. ==============================

    21.창에서 확인 콘솔은 관리자로 시작한다

    창에서 확인 콘솔은 관리자로 시작한다

  22. ==============================

    22.당신은 다음과 같은 방법으로 시도 할 수 있습니다. 1.

    당신은 다음과 같은 방법으로 시도 할 수 있습니다. 1.

    하지만 약간의 시간에,이 유용하지 않습니다. 2. 위의 방법은 유용하지 않은 경우, 당신은이 일을 시도 할 수 있습니다 :

    또는 입력 :

    출력 스트림을 얻을 수 있습니다

  23. ==============================

    23.CentOS는 6.x에서에 나를 위해 :

    CentOS는 6.x에서에 나를 위해 :

    sudo는 -R MongoDB에 대한 Chown : MongoDB를 <경로 DB> sudo는 서비스 mongod 다시 시작

    그리고 /etc/mongod.conf에서 사용자 지정 DB-경로를 설정했습니다.

  24. ==============================

    24.당신은 말 그대로 원래의 질문에 명령에 한 줄 상당하려면 별칭을 수 :

    당신은 말 그대로 원래의 질문에 명령에 한 줄 상당하려면 별칭을 수 :

    mongo --eval "db.getSiblingDB('admin').shutdownServer()"
    

    https://stackoverflow.com/a/11777141/7160782

  25. ==============================

    25.에서 CentOS의 서버

    에서 CentOS의 서버

    이것은 나를 위해 작동

    chown -R mongod:mongod /var/lib/mongo
    
  26. ==============================

    26.와 그 검사 포트 후 sudo를 lsof를 -i, (... 내 경우 디렉토리 저널 및 파일 mongo.lock) 유사한 모든 레코드를 제거하는 고정 오류를 얻었다 : 프로세스의 27017이 떨어지게가 실행중인 경우 <죽일 PID > 다시 ./mongod 실행하려고

    와 그 검사 포트 후 sudo를 lsof를 -i, (... 내 경우 디렉토리 저널 및 파일 mongo.lock) 유사한 모든 레코드를 제거하는 고정 오류를 얻었다 : 프로세스의 27017이 떨어지게가 실행중인 경우 <죽일 PID > 다시 ./mongod 실행하려고

  27. ==============================

    27.수정 : sudo는 mongod

    수정 : sudo는 mongod

    sudo는 권한이 고정으로 나는 mongod를 실행, 같은 문제가 있었다. Windows 환경에서오고, 난 그냥 우리가 접근 / 데이터 / DB에 수퍼 유저 권한이 필요합니다처럼 잘 보이는 데몬을 시작 mongod 사용합니다.

    또한 해당 경로에 비 루트 사용자가 읽기 및 쓰기 권한을 부여 할 수 있습니다. 가이드에 대한 위의 답변을 확인!

  28. ==============================

    28.당신은 당신이 mongod를 시작하려고 할 때마다 단지 형

    당신은 당신이 mongod를 시작하려고 할 때마다 단지 형

    sudo mongod
    

    영구적으로이 문제를 해결하려면하거나 / DB 폴더 / 데이터 RWX 권한을 부여하려고

     chmod +rwx data/
    
  29. from https://stackoverflow.com/questions/15229412/unable-to-create-open-lock-file-data-mongod-lock-errno13-permission-denied by cc-by-sa and MIT license