우분투 VM "읽기 전용 파일 시스템"수정?


9

Ubuntu 서버 가상 머신에 VMWare 도구를 설치하려고했지만 / mnt 디렉토리에 cdrom 디렉토리를 작성할 수없는 문제가 발생했습니다. 그런 다음 권한 문제인지 확인하기 위해 테스트했지만 홈 디렉토리에 폴더를 만들 수도 없었습니다. 계속 읽기 전용 파일 시스템이라고 진술합니다. 나는 리눅스에 대해 조금 알고 있으며 아직 익숙하지 않다. 모든 조언을 주시면 감사하겠습니다.

의견 요청 된 정보 :

username @ servername : ~ $ mount
/ dev / sda1 on / type ext4 (rw, errors = remount-ro)
proc on / proc type proc (rw)
none / sys 유형 sysfs (rw, noexec, nosuid, nodev)
none / sys / fs / fuse / connections 유형 fusectl (rw)
없음 / sys / kernel / debug 유형 debugfs (rw)
없음 / sys / kernel / security 유형 securityfs (rw)
udev / dev 유형 tmpfs (rw, mode = 0755)
/ dev / pts 유형 devpts (rw, noexec, nosuid, gid = 5, mode = 0620)에
없음 / dev / shm 유형 tmpfs (rw, nosuid, nodev)에
없음 / var / run 유형 tmpfs (rw , nosuid, mode = 0755)
/ var / lock 유형 tmpfs에 없음 (rw, noexec, nosuid, nodev)
/ lib / init / rw 유형 tmpfs (rw, nosuid, mode = 0755)에 없음 binfmt_misc on / proc / sys / fs / binfmt_misc 유형 binfmt_misc (rw, noexec, nosuid, nodev)

루트 출력을 확인하십시오.

root @ server01 : ~ # 마운트
/ dev / sda1 on / type ext4 (rw, errors = remount-ro)
proc on / proc 유형 proc (rw)
none / sys 유형 sysfs (rw, noexec, nosuid, nodev)
없음 / sys / fs / fuse / connections 유형 fusectl (rw)
없음 / sys / kernel / debug 유형 debugfs (rw)
없음 / sys / kernel / security 유형 securityfs (rw)
udev / dev 유형 tmpfs (rw, mode = 0755)
/ dev / pts 유형 devpts (rw, noexec, nosuid, gid = 5, mode = 0620)에
없음 / dev / shm 유형 tmpfs (rw, nosuid, nodev)에
없음 / var / run 유형 tmpfs (rw에 없음) , nosuid, mode = 0755)
/ var / lock 유형 tmpfs에 없음 (rw, noexec, nosuid, nodev)
/ lib / init / rw 유형 tmpfs (rw, nosuid, mode = 0755)에 없음 binfmt_misc on / proc / sys / fs / binfmt_misc 유형 binfmt_misc (rw, noexec, nosuid, nodev)

대체 텍스트

대체 텍스트


1
"mount"명령의 출력을 인쇄 할 수 있습니까? (매개 변수 필요 없음)
pgruetter

답변에 추가되었습니다. 유용한 정보를 요청 해 주셔서 감사합니다.
David

"sudo mkdir / mnt / cdrom"이 실패 했습니까?
Janne Pikkarainen

나를 혼란스럽게하는 것은 그것이 읽기 전용 파일 시스템이라는 것입니다. 명령의 출력은 읽기 쓰기 파일 시스템 인 "rw"를 나타냅니다. 따라서 파일 시스템 자체는 정상입니다. 어떤 폴더에 쓰려고합니까? "ls -la <the_folder>"의 결과를 줄 수 있습니까?
pgruetter

요청 된 명령을 수행 할 때 얻는 그림 인 아래쪽에 그림을 추가했습니다. 다른 일을해야한다면 알려주세요. :)
David

답변:


16

이것은 비교적 오래된 질문이지만 대답은 여전히 ​​동일합니다. 가상 머신 (실제 호스트에서 실행)과 일종의 스토리지 (공유 스토리지 – FC SAN, iSCSI 스토리지, NFS 공유 또는 로컬 스토리지)가 있습니다.

가상화를 사용하면 많은 가상 머신이 동일한 물리적 리소스에 동시에 액세스하려고합니다. 물리적 제한 (읽기 / 쓰기 작업 수 – IOPS; 처리량; 대기 시간)으로 인해 모든 물리적 시스템의 모든 스토리지 요청을 동시에 충족시키는 데 문제가있을 수 있습니다. 일반적으로 발생하는 상황 : 가상 시스템의 운영 체제에서 "SCSI 재시도"및 SCSI 작업 실패를 볼 수 있습니다. 일정 시간 동안 너무 많은 오류 / 재 시도가 발생하면 커널은 파일 시스템의 손상을 방지하기 위해 마운트 된 파일 시스템을 읽기 전용으로 설정합니다.

간단히 말해 : 실제 스토리지는 충분히 강력하지 않습니다. 스토리지 시스템에 동시에 액세스하는 프로세스 (가상 머신)가 너무 많으며 가상 머신이 스토리지에서 충분히 빨리 응답을 얻지 못하고 파일 시스템이 읽기 전용으로 전환됩니다.

할 수있는 일이 엄청나게 많지 않습니다. 확실한 해결책은 더 나은 / 추가 스토리지입니다. Linux 커널에서 SCSI 시간 초과에 대한 매개 변수를 수정할 수도 있습니다. 세부 사항은 다음과 같이 설명됩니다.

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009465

http://www.cyberciti.biz/tips/vmware-esx-server-scsi-timeout-for-linux-guest.html

그러나 커널은 파일 시스템이 읽기 전용으로 설정되기까지 시간이 더 걸리기 때문에 문제를 "지연"합니다. (즉, 문제의 원인을 해결하지 못합니다.)

필자의 경험 (VMware에서 수년간)은이 문제가 Windows 커널이 아닌 Linux 커널 (RHEL 및 SLES를 사용 중)에서만 존재한다는 것입니다. 또한이 문제는 FC, iSCSI, 로컬 스토리지 등 모든 종류의 스토리지에서 발생합니다. 우리에게는 가상 인프라에서 가장 중요하고 비싼 구성 요소는 스토리지입니다. (이제 1Gbps iSCSI 연결로 HP LeftHand를 사용하고 있으며 그 이후로 스토리지 문제가 없었습니다. 확장 성을 위해 LeftHand (전통적인 FC 솔루션보다)를 선택했습니다.


와! 좋은 대답입니다. 나는이 질문에 대해 완전히 잊었다. 귀하의 답변을 수락 된 것으로 표시했습니다. 현재 작업중인 데이터 센터 (큰 VMWare 파트너)가 최근 스토리지를 Hitachi Pod로 업그레이드했습니다. 실제로 IOP와 관련된 추가 문제가 발생하기 시작하여 SAN 리소스를 업그레이드하거나 확장하는 데 중점을두기 때문에 실제로 IOP로드를 돕기 위해 다른 포드를 환경에 추가하고 있습니다. 과거에는 SAN 리소스를 다시 늘 렸습니다.
David

4

하드웨어 문제 (부분 디스크 오류)가 있으며 문제를 최소화하기 위해 커널이 루트 파일 시스템을 읽기 전용으로 다시 마운트했다고 설명 할 수 있습니다. 현재 마운트 옵션을 확인하는보다 안정적인 방법은 cat /proc/mounts( grep ' / ' /proc/mounts루트 파일 시스템 rootfs / …의 경우 부트 프로세스의 결과물 인 라인을 무시하십시오 ). 아마도로 rw,errors=remount-ro변경 되었음을 알 ro수 있습니다 (다른 옵션도 추가로 표시 될 수 있음).

커널 로그에는 아마도 Remounting filesystem read-only디스크 액세스 오류 가 오는 메시지가 포함되어있을 것입니다 . 로그는 일반적으로 /var/log/kern.log에 있지만 현재 읽기 전용 파일 시스템에있는 경우 위의 오류가 발생하더라도 메시지가 표시되지 않습니다. 이 dmesg명령으로 최신 커널 오류를 확인할 수도 있습니다 .

제쳐두고, 우분투에서 (데스크탑 인터페이스에서 사용) 마운트 지점에 대한 일반적인 장소는 아래로 /media(예를 들면 /media/cdrom0), 당신이 사용할 수 있지만 /mnt/mnt/cdrom이 마음.

의 ¹ 보고서 . 루트 파일 시스템이 읽기 전용 인 경우 최신 상태로 유지할 수 없습니다. mount/etc/mtab/etc/mtab


나쁜 하드웨어에 대한 유일한 점은 이것이 가상 머신이라는 것입니다. 따라서 물리적 호스트에 수백 개의 가상 머신이 있고 내 것이 유일한 문제이기 때문에 하드웨어 문제가 될 수 없습니다. 커널 로그를 확인하고 질문에 스크린 샷을 넣으려고합니다.
David

가상 하드 디스크의 크기 제한이 있고 가득 차면 위와 같이 Ubuntu가 쓰지 못합니다. 확인하실 수 있습니다.
CarlF

@David : 로그에는 Linux에 하드웨어 문제가 발생했음을 나타내며 하드웨어 만 가상입니다. 나는 CarlF의 가설이 그럴듯하다고 생각한다.
Gilles 'SO- 악마 그만

3

최근에 데이터 센터에 정전이 발생했습니다. 그 이후로 나는 서버를 만지지 않았다. 데이터 센터의 전원이 꺼지면 VSphere는 다시 시작할 때까지 Ubuntu의 파일 시스템을 읽기 전용으로 만듭니다. 나는 다시 시작하려고 시도했지만 모든 모니터링이 미쳐 가고 싶지는 않았습니다. Nagios (모니터링 서비스)를 끄고 시스템을 다시 시작한 후 모든 것이 제대로 작동합니다. 모든 입력에 감사드립니다. 대단히 감사합니다.


1

명백 할 수도 있지만이 작업을 수행 할 때 "루트"사용자입니까? / mnt는 루트 소유이며 루트 만 쓸 수 있습니다. 부팅시 오류가 있는지 확인할 수도 있습니다. 위의 결과는 부팅 프로세스에 오류가있는 경우에만 / (및 / mnt)를 다시 마운트해야한다고 말합니다. mount 명령을 사용하여이를 변경할 수 있지만 (즉, r / w로 다시 마운트) 오류의 원인이 무엇인지 확실하지 않으면이 작업을 수행하지 않습니다.


내가 그렇게했을 때 우연히 뿌리에 없었을 수도 있지만 출력은 동일하다고 생각합니다. 확실한 루트 출력이 첫 번째 출력 아래에 있습니다.
David
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.