[완료]ls 등 디스크를 읽는 명령을 내릴 때 HDD 읽기가 지연되는 문제

BuzzLy의 이미지

root이외의 다른 HDD를 마운트 해놓고 있는데 이 디스크에 대해서
ls 명령과 같이 HDD를 읽는 명령을 내리면 대략 수 초 정도 기다려야지
답변이 나옵니다. root partition에서는 이런 문제가 없는데 다른 partition
에서는 이런 문제가 있네요.

너무 막연하게 질문드리는 것 같긴하지만...
이런 증상이 왜 일어나는지 혹시 알고 계신 분이 있나해서 질문드립니다.

다음은 df 명령의 결과 입니다.

shoh@astro-f:~/tdarm/density/arm_shape/sellwood$ df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hda1             14418320   8836064   4849848  65% /
tmpfs                   518024         0    518024   0% /lib/init/rw
udev                     10240        64     10176   1% /dev
tmpfs                   518024         0    518024   0% /dev/shm
/dev/hdb1            115380192 102944272   6574884  94% /doolie
/dev/hda2             19225040  15179028   3069528  84% /home
/dev/hda3             79781816  29112336  46616744  39% /nekko

예전에는 hdb1 에서만 이런 현상이 있었는데 이제는 hda3에서도 같은 현상이
나타나내요. 아마 하드웨어 문제가 아닐지 의심이 들기는 하는데 질문을 드릴 곳이
마땅치 않아 일단 설치 및 활용 QnA에 질문드립니다.

감사합니다.

oneday의 이미지

df보다는 mount 옵션이나 현재 device의 정보, 관련 파라미터의 설정등이
있으면 더 좋겠네요.

BuzzLy의 이미지

다음은 /etc/fstab의 내용입니다.

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/hda1       /               ext3    defaults,errors=remount-ro 0       1
/dev/hdb1       /doolie         ext3    defaults        0       2
/dev/hda2       /home           ext3    defaults        0       2
/dev/hda3       /nekko          ext3    defaults        0       2
/dev/hda4       none            swap    sw              0       0
/dev/hdc        /media/cdrom0   iso9660 ro,user,noauto  0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
/dev/sda1       /media/sda      ext3    rw,user,noauto  0       0
/dev/sdb1       /media/sdb      ext3    rw,user,noauto  0       0
/dev/sdc1       /media/sdc      auto    rw,user,noauto  0       0
/dev/scd0       /media/cdrom1   iso9660 ro,user,noauto  0       0
none            /selinux        selinuxfs       noauto  0 0

device의 어떤 정보를 보내는 것이 좋을 지 몰라
dmesg의 내용을 적어놓습니다.
먼전 /dev/hda의 hda는 다음과 같습니다.

Kernel command line: root=/dev/hda1 ro 
    ide0: BM-DMA at 0x7040-0x7047, BIOS settings: hda:pio, hdb:pio
hda: ST3120023A, ATA DISK drive
hda: max request size: 128KiB
hda: 234441648 sectors (120034 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)
hda: cache flushes supported
 hda: hda1 hda2 hda3 hda4
Adding 1986760k swap on /dev/hda4.  Priority:-1 extents:1 across:1986760k
EXT3 FS on hda1, internal journal
EXT3 FS on hda2, internal journal
EXT3 FS on hda3, internal journal

그리고 /dev/hdb는 아래와 같이 잡혀있습니다.

shoh@astro-f:~$ dmesg | egrep -i hdb
    ide0: BM-DMA at 0x7040-0x7047, BIOS settings: hda:pio, hdb:pio
hdb: WDC WD1200BB-00CAA1, ATA DISK drive
hdb: max request size: 128KiB
hdb: 234441648 sectors (120034 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100)
hdb: cache flushes not supported
 hdb: hdb1
EXT3 FS on hdb1, internal journal

관련 parameter설정이란 어떤 것을 말씀하시는지 알려주시면
제가 찾아서 여기에 적어놓을 수 있을 것 같은데요.

관심가져 주셔서 감사합니다. ^^

Necromancer의 이미지

dmesg 보니 pio모드로 되어 있군요.

bios쪽에서 dma와 32bit transfer를 활성화하시고,
그래도 안된다면 hdparm으로 강제 설정해줘야 합니다.

Written By the Black Knight of Destruction

Written By the Black Knight of Destruction

BuzzLy의 이미지

도움 말씀 감사합니다. 그동안 정신이 없어서 며칠 전에야 BIOS 설정을
바꾸어서 테스트 해봤어요.

그런데 BIOS에서 DMA와 32bit transfer를 활성화시켰는데도 마찬가지 증상은
변하지 않네요. 말씀하신대로 hdparm을 이용해 설정해보려고 해요.

BuzzLy의 이미지

반년 전에 올린 글타래를 이제 종료시키네요.

결국 hdparm으로 해결했습니다.

# hdparm -C /dev/hdc 해보니 stanby로 되어 있더군요. 하드디스크가
회전하고 있지 않았습니다. 아마 그래서 디스크에서 읽으려고 할때 디스크
회전을 시작할 때 걸리는 시간 걸렸던 것이었습니다.

# hdparm -S 240으로 해서 stanby timeout을 20분으로 조정해주니
불편 없이 사용할 수 있군요. :-)

도움 말씀 주셔서 감사합니다.

혹시 이런 불편을 겪는 분이 또 있을 경우를 위해서 man page에 나와있는
내용이긴하지만 -S 옵션에 붙는 timeout에 대해 설명을 남겨 놓습니다.
* 1-240까지는 5초 단위로 증가하고 (결국 5초부터 20분까지),
* 241~251까지는 30분 단위로 증가(30분에서 5.5시간까지에 해당)합니다.
* 252는 21분을 의미하고
* 253은 특별히 제조사에서 설정한 값으로 8시간에서 12시간사이의 timeout 시간.
* 254는 다른 설정값을 위해서 남겨져 있고
* 마지막으로 255는 21분 15초

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.