Skip to content

Mac OS의 error: pipe failed / error: too many open files 문제 해결 #69

@hyungmogu

Description

@hyungmogu

안녕하세요 @haksungjang님,

오늘은 맥북의 "error: pipe failed / error: too many open files" 관련 에러 문제를 올립니다.

문제:

이 문제는 Mac OS에서 "hugo server"를 실행할 때 launchctl maxfiles, ulimit -n, sysctl kern.maxfiles, sysctl kern.maxfilesperproc 중 하나 이상이 hugo server가 요구하는 값의 이하일 때 생기는 에러입니다.

이 링크로 가시면 Mac OS에 일어나는 문제점을 보실 수 있습니다.

problem-before

해결안:

저는 이 문제를 이 솔루션을 이용해 hugo server의 대체 커멘드 start.sh를 만들었습니다.

이 start.sh는 다음의 성격을 갖고 있습니다:

  1. Mac OS에게만 수정값을 적용한다
  2. 기존 값이 수정 값보다 높을 경우 수정을 하지 않는다
  3. (Mac OS) 수정 후 hugo server를 실행한다
  4. (Mac OS 외) 수정하지 않은 체 hugo server를 실행한다

start.sh의 cross-platform 안전성을 위해 포괄적인 유닛 테스트를 했습니다.

이 링크로 가시면 테스팅의 결과물을 그리고 이 링크에선 소스 코드를 보실 수 있습니다.

problem-after

관리자님, 제게 부족한 점이 많습니다. 혹시 부족한 부분이 있다면 지적해 주시고 가르쳐 주세요. 배우겠습니다.

관리자님, 제 메세지를 읽어주셔서 고맙습니다.

좋은 하루 보내세요.

감사합니다.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions