DD명령으로 2개의 bin을 합쳐 floppy 이미지를 만드려면??

hwiorb의 이미지

안녕하세요.
현재, 커널 공부를 하고 있습니다.

제가 궁금한게 bootloader와 kernel 바이너리 이미지를 부팅가능한 floppy.img로 만드려고 합니다.
dd로 2개의 바이러리 파일로 floppy 이미지를 만들면, Virtualbox에서 인식을 못하더라구요
(파일 크기가 안맞는 건지..)

현재 제가 찾은 방법은 이것인데요.

1. mkfs.dos -C floppy.img 1440
2. dd if=boot.bin of=floppy.img count=1 bs=512
3. dd if=kernel.bin of=floppy.img seek=1

현재 2번을 해버리면 1.44M에서 512Byte로 바뀌어 버리네요
Windows에서는 copy를 이용해서 바이너리를 묶어서 쓸수가 있던데,
리눅스에서는 어떻게 하면 될까요?

바이너리 파일을 묶거나, dd를 이용했을 때, byte를 dump해버리면 될것 같은데... 이런 건 없을까요?

Prentice의 이미지

DOS창에서 copy /b로 묶으셨다면 dd말고 cat으로 해결 가능합니다.

cat intput1 input2 > combined_output

---

input2를 만들기 위해 혹시 512 바이트를 파일의 앞에서 자르셔야 한다면 dd의 skip 옵션을 사용해서 준비하실 수 있습니다.

Prentice의 이미지

hwiorb의 이미지

그렇다면, dd를 이용해서 byte를 덮어쓸때, 1.44M라는 용량은 늘어나지도 줄어들지도 않고,
해당하는 위치에 값들을 덮어쓸 수 있을까요?

Virtualbox에서 512바이트로 MBR만 덮어쓸 땐, floppy 이미지로 인식했는데,
뒤에 kernel 이미지가 추가되니, floppy 이미지 크기가 안맞아서 그런건지 인식을 못하더라구요.

nil.

Prentice의 이미지

Floppy image를 loopback mount한 후 loopback device에 dd를 사용하시면 플로피의 boot record를 변경하실 수 있겠죠.

그 다음 loopback device를 input으로 잡고 (마운트된 floppy image를 원본으로 삼아) dd로 새 floppy image를 만드시면 아마 될 것 같습니다.

---

근데 이거보다 dd로 자르기가 편할 듯요.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.