hexo icon indicating copy to clipboard operation
hexo copied to clipboard

EISDIR Error errno: -21 in first generate with post_asset_folder: false option in _config.yml

Open molavec opened this issue 3 years ago • 6 comments

Question

I have a this FATAL Error warn but it doesn't affect (apparently) to final result.

It's like hexo tries open directory that have the same name as file.

1.- Could be a Race condition? 2.- How could I verbose print to detect where and when happens this error?

$ hexo generate
INFO  Validating config
INFO  Start processing
Deprecated as of 10.7.0. highlight(lang, code, ...args) has been deprecated.
Deprecated as of 10.7.0. Please use highlight(code, options) instead.
https://github.com/highlightjs/highlight.js/issues/2277
INFO  Files loaded in 1.17 s
FATAL {
  err: [Error: EISDIR: illegal operation on a directory, open '/home/angel/git/molavec/molavec-website/public/life-frame'] {
    errno: -21,
    code: 'EISDIR',
    syscall: 'open',
    path: '/home/angel/git/molavec/molavec-website/public/life-frame'
  }
} Something's wrong. Maybe you can find the solution here: %s https://hexo.io/docs/troubleshooting.html
INFO  Generated: fontello-icons/config.json
INFO  Generated: img/small_logo-dark.png
INFO  Generated: coolideas/politica_privacidad.html
INFO  Generated: prototypes/index.html
INFO  Generated: blog/index.html
INFO  Generated: img/1920x1080/small_01.jpg
INFO  Generated: img/397x300/small_01.jpg

I noted these behaivors:

  • it's happens when I have this post_asset_folder is true. Otherwise, error not appear. I believe this is the responsible
post_asset_folder: true
  • It solved after second build.
  • I used hexo generate -c 1 and I got same results but in different file.
  • This error not happen in hexo 4 version.

Environment & Settings

Node.js & npm version

node v14.16.0
npm 6.14.11
yarn 1.22.10

Your site _config.yml (Optional)

...
# URL
## If your site is put in a subdirectory, set url as 'https://yoursite.com/child' and root as '/child/'
url: https://molavec.com
root: /
permalink: :title/
permalink_defaults:
pretty_urls:
  trailing_index: true # Set to false to remove trailing 'index.html' from permalinks
  trailing_html: true # Set to false to remove trailing '.html' from permalinks

# Directory
source_dir: source
public_dir: public
tag_dir: tags
archive_dir: blog
category_dir: categories
code_dir: assets/code
i18n_dir: :lang
skip_render: design

# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link:
  enable: true # Open external links in new tab
  field: site # Apply to the whole site
  exclude: ''
filename_case: 1
render_drafts: false
post_asset_folder: true
relative_link: false
future: false
highlight:
  enable: true
  line_number: true
  auto_detect: false
  tab_replace: '  '
  wrap: true
  hljs: false
prismjs:
  enable: false

# Home page setting
# path: Root path for your blogs index page. (default = '')
# per_page: Posts displayed per page. (0 = disable pagination)
# order_by: Posts order. (Order by date descending by default)
index_generator:
  path: ''
  per_page: 10
  order_by: -date
  pagination_dir: true

# Category & Tag
default_category: uncategorized
category_map:
tag_map:

# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## https://momentjs.com/docs/#/displaying/format/
date_format: YYYY-MM-DD
time_format: HH:mm:ss
## Use post's date for updated date unless set in front-matter
updated_option: false

# Pagination
## Set per_page to 0 to disable pagination
per_page: 5
pagination_dir: page

# Include / Exclude file(s)
## include:/exclude: options only apply to the 'source/' folder
include:
exclude:
ignore:

# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: hexo-theme-aircv
theme_config:
## https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta
meta_generator: true

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
  type: ''


# image resizing
responsive_images:
  priority: 10
  pattern: '**/*.+(png|jpg|jpeg)'
  sizes:
    small:
      width: 200
    thumb:
      width: 400
    medium:
      width: 800
...

Your theme _config.yml (Optional)

none

Hexo and Plugin version(npm ls --depth 0)

npm ls --depth 0
[email protected] /home/angel/git/molavec/molavec-website
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]

Your package.json package.json

...
  "hexo": {
    "version": "5.4.0"
  },
  "devDependencies": {
    "hexo": "^5.4.0",
    "hexo-filter-responsive-images": "^1.5.0",
    "hexo-generator-archive": "^1.0.0",
    "hexo-generator-category": "^1.0.0",
    "hexo-generator-index": "^2.0.0",
    "hexo-generator-tag": "^1.0.0",
    "hexo-renderer-ejs": "^1.0.0",
    "hexo-renderer-marked": "^4.0.0",
    "hexo-renderer-scss": "^1.2.0",
    "hexo-server": "^2.0.0",
    "imageinfo": "^1.0.4",
    "js-yaml": "^4.0.0"
  }
...

Others

molavec avatar Apr 07 '21 19:04 molavec

啊这

Kris-chen27 avatar Apr 10 '21 15:04 Kris-chen27

This issue has been automatically marked as stale because lack of recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Jun 10 '21 00:06 github-actions[bot]

me too, have you solved this problem?

Imane219 avatar Jul 21 '21 01:07 Imane219

所以这个问题没有解决办法吗?

XuanXiaoming avatar May 02 '22 07:05 XuanXiaoming

if permalink in article's Front-Matter , the error will occurs, remove it and can run !

Dawn0472 avatar Jun 08 '22 12:06 Dawn0472

refs: https://github.com/orgs/hexojs/discussions/5180#discussioncomment-5536717

yoshinorin avatar Apr 17 '23 13:04 yoshinorin