SATA 와 SCSI 하드를 같이 쓰시는 분, 점퍼세팅은?

offree의 이미지

현재 SATA 하드에 리눅스를 설치하였습니다.( sda )
SATA 컨트롤러는 보드 내장입니다.

그런데, SCSI 를 추가하려고, 컨트롤러(PCI 타입)를 장착하고, 하드를 연결하였습니다.

그런데, 연결한 SCSI 하드가 sda 가 되고, 이미 있던 SATA 하드가 sdb 가 되어 kernel panic 이 되어 버렸습니다.

IDE 같으면, 점퍼세팅을 해서 hda , hdb 등으로 원하는 데로 바꾸겠는데..

이 SATA 와 SCSI 는 이런 조정을 할 수 없는것인지, 제가 못 찾는 것인지, 해결하지 못하고 있습니다.

SCSI 에서 ID 0 , 1 , 2 - 8 .. 15 이런식으로 점퍼조정이 되긴 하는 것 같은데, 조정을 해도 여전히 sda 로 잡혀버립니다.

SATA 하드가 sda 로 먼저 설정이 되도록 하려면 어떤 부분을 봐야 하는지 모르겠습니다.

혹시 이런경험이 있으신분 힌트좀 주세요. ^^

hiseob의 이미지

정확하진 않지만 아마 SATA 가 진짜 SCSI 는 아닐텐데요, 진짜 SCSI 가 우선순위가 있는모양인데.
:oops:

이거 괜히 답변 달아서 죄송하기도 하네요.

일단 SATA 에 있는걸 모조리 스카시 쪽으로 옮기는건 어떨까요? :D

diylinux의 이미지

안녕하세요..

예전에 이러한 경우를 당했던 적이 있습니다.

즉 , 내장 SCSI 하드에 linux를 설치한 후 외장 SCSI 하드를
달았는데 외장 하드가 먼저 인식하는 바람에 커널 패닉이 일어났던 적이 있었죠..

그때 해결책은 두가지로 했었습니다.
(SATA도 scsi 모듈로 인식하기 때문에 해결 가능하리라 생각합니다)

우선 둘다 모듈일 경우에 SCSI 컨터롤러를 먼저 읽히도록 하는
것입니다.
즉, 사용중인 sata 하드가 읽어들이는 모듈이 먼저 있을 겁니다
이걸 먼저 읽어들이도록 한 후 initrd 이미지를 수정하거나 새로이
만들어주면 되는 것입니다.
간단히 언급하면 저 같은 경우 ata_piix 모듈을 사용하기 때문에
mkinitrd ... --preload ata_piix .... image kernel_version
뭐 이런 식으로 했던걸로 기억하고 있습니다

두번째는 label를 이용하는 것입니다.
즉, 디렉토리를 마운트 할때 /dev/sda어쩌구 저쩌구 하는걸 /로하는게
아니라 LABEL=LABEL_NAME 뭐 이런식으로 하는 것이지요..

이 두가지중에 마음에 드시는거 사용하시면 될것 같습니다

그럼 도움이 되었기를..

offree wrote:
현재 SATA 하드에 리눅스를 설치하였습니다.( sda )
SATA 컨트롤러는 보드 내장입니다.

그런데, SCSI 를 추가하려고, 컨트롤러(PCI 타입)를 장착하고, 하드를 연결하였습니다.

그런데, 연결한 SCSI 하드가 sda 가 되고, 이미 있던 SATA 하드가 sdb 가 되어 kernel panic 이 되어 버렸습니다.

IDE 같으면, 점퍼세팅을 해서 hda , hdb 등으로 원하는 데로 바꾸겠는데..

이 SATA 와 SCSI 는 이런 조정을 할 수 없는것인지, 제가 못 찾는 것인지, 해결하지 못하고 있습니다.

SCSI 에서 ID 0 , 1 , 2 - 8 .. 15 이런식으로 점퍼조정이 되긴 하는 것 같은데, 조정을 해도 여전히 sda 로 잡혀버립니다.

SATA 하드가 sda 로 먼저 설정이 되도록 하려면 어떤 부분을 봐야 하는지 모르겠습니다.

혹시 이런경험이 있으신분 힌트좀 주세요. ^^

offree의 이미지

hiseob wrote:
정확하진 않지만 아마 SATA 가 진짜 SCSI 는 아닐텐데요, 진짜 SCSI 가 우선순위가 있는모양인데.
:oops:

이거 괜히 답변 달아서 죄송하기도 하네요.

일단 SATA 에 있는걸 모조리 스카시 쪽으로 옮기는건 어떨까요? :D

^^ SATA 는 리눅스에서 SCSI 처럼 sda , sdb 형식으로 인식이 되나 봅니다.

하드웨어 적인 방법으로(IDE처럼) 우선순위를 정하는 것은 없는 것인지 여러 시도를 해도 안되네요.

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

offree의 이미지

diylinux wrote:
안녕하세요..

예전에 이러한 경우를 당했던 적이 있습니다.

즉 , 내장 SCSI 하드에 linux를 설치한 후 외장 SCSI 하드를
달았는데 외장 하드가 먼저 인식하는 바람에 커널 패닉이 일어났던 적이 있었죠..

그때 해결책은 두가지로 했었습니다.
(SATA도 scsi 모듈로 인식하기 때문에 해결 가능하리라 생각합니다)

우선 둘다 모듈일 경우에 SCSI 컨터롤러를 먼저 읽히도록 하는
것입니다.
즉, 사용중인 sata 하드가 읽어들이는 모듈이 먼저 있을 겁니다
이걸 먼저 읽어들이도록 한 후 initrd 이미지를 수정하거나 새로이
만들어주면 되는 것입니다.
간단히 언급하면 저 같은 경우 ata_piix 모듈을 사용하기 때문에
mkinitrd ... --preload ata_piix .... image kernel_version
뭐 이런 식으로 했던걸로 기억하고 있습니다

두번째는 label를 이용하는 것입니다.
즉, 디렉토리를 마운트 할때 /dev/sda어쩌구 저쩌구 하는걸 /로하는게
아니라 LABEL=LABEL_NAME 뭐 이런식으로 하는 것이지요..

이 두가지중에 마음에 드시는거 사용하시면 될것 같습니다

그럼 도움이 되었기를..

LABEL 도 생각하고 있었습니다. 그런데, 최후(?)의 방법으로 할 예정입니다.

말씀하신 initrd 를 시도해봐야 겠습니다.

그런데, "하드웨어 적인 방법으로 우선순위를 정할 수 없다"(확실한지는 잘 모르겠지만..) 라는 것이 이상하게 느껴지네요.
그래서 LABEL 같은방법이 생겨나게 된것인가?

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

offree의 이미지

예를 들어주신 방법은

Quote:

mkinitrd ... --preload ata_piix .... image kernel_version

버전이 틀린것인지,(mkinitrd 가 스크립트로 되어 있더군요.)

제가 테스트한 우분투 hoary 에서는 1.201 버전이라서 조금 방식이 틀리네요.( --preload 옵션은 없음. )

Quote:

mkinitrd -o /boot/initrd.img {kernel_version}

그런데, 모듈은 어디서 정하냐.
/etc/mkinitrd 에 mkinitrd.conf 와 modules 파일등이 있는데.
modules 에 제가 쓰는 SATA 모듈인 sata_via 를 입력하고, 다시 initrd 모듈을 만들어 주고, 재부팅을 하니 먼저 SATA 하드가 인식이 되네요.

우분투 라서 그런지 몰라도, 커널을 재컴파일 할 필요도 없고, initrd 모듈만 다시 만들어주면 되네요.

당장은 아니지만, Fedora 에서도 테스트 해보고 이 쓰레드에 올리겠습니다.

ps. 우분투 너무 좋은 것 같아요. ^^

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

diylinux의 이미지

^^ 어제 저녁에 mkinitrd에 대해서 말씀드렸던 사람입니다.

어제 저녁에 그 말도 같이 쓸려고 했는데..
리눅스는 커널에서 검색해서 먼저 잡하는게 우선 순위를 갖는다..
라는 거지요.. 그래서 --preload옵션이 하는 걸 자세히 보면
모듈이 올리는 우선 순위를 강제적으로 변경해주는 것입니다.

initrd.img의 내용을 보시면 모듈에 대한 우선 순위가 있거든요..
그거 보시면 됩니다 :)

그래도 해결을 하셨다니 다행이네요..

추가:
그리고 mkinitrd는 스크립트입니다. /tmp에 이미지 파일 하나 만들고 그것을 mount한 후 파일들과 각종 모듈을 입력하고
그 이미지 파일을 gzip으로 압축한 다음에 씁니다.

또한 모듈을 참조할때 modprobe.conf 등도 참조합니다.:)

근데 우분투가 정말 괜찮은가요??

offree wrote:
예를 들어주신 방법은
Quote:

mkinitrd ... --preload ata_piix .... image kernel_version

버전이 틀린것인지,(mkinitrd 가 스크립트로 되어 있더군요.)

제가 테스트한 우분투 hoary 에서는 1.201 버전이라서 조금 방식이 틀리네요.( --preload 옵션은 없음. )

Quote:

mkinitrd -o /boot/initrd.img {kernel_version}

그런데, 모듈은 어디서 정하냐.
/etc/mkinitrd 에 mkinitrd.conf 와 modules 파일등이 있는데.
modules 에 제가 쓰는 SATA 모듈인 sata_via 를 입력하고, 다시 initrd 모듈을 만들어 주고, 재부팅을 하니 먼저 SATA 하드가 인식이 되네요.

우분투 라서 그런지 몰라도, 커널을 재컴파일 할 필요도 없고, initrd 모듈만 다시 만들어주면 되네요.

당장은 아니지만, Fedora 에서도 테스트 해보고 이 쓰레드에 올리겠습니다.

ps. 우분투 너무 좋은 것 같아요. ^^

offree의 이미지

diylinux wrote:
^^ 어제 저녁에 mkinitrd에 대해서 말씀드렸던 사람입니다.

어제 저녁에 그 말도 같이 쓸려고 했는데..
리눅스는 커널에서 검색해서 먼저 잡하는게 우선 순위를 갖는다..
라는 거지요.. 그래서 --preload옵션이 하는 걸 자세히 보면
모듈이 올리는 우선 순위를 강제적으로 변경해주는 것입니다.

initrd.img의 내용을 보시면 모듈에 대한 우선 순위가 있거든요..
그거 보시면 됩니다 :)

그래도 해결을 하셨다니 다행이네요..

예 무슨말씀인지 이해는 했습니다.

우분투에 있는 mkinitrd 는 --preload 옵션대신에 /etc/mkinitrd 의 설정형식으로 변경된 것 같네요.

diylinux wrote:

추가:
그리고 mkinitrd는 스크립트입니다. /tmp에 이미지 파일 하나 만들고 그것을 mount한 후 파일들과 각종 모듈을 입력하고
그 이미지 파일을 gzip으로 압축한 다음에 씁니다.

또한 모듈을 참조할때 modprobe.conf 등도 참조합니다.:)

구체적인 과정은 언제 다시 한번 살펴봐야 겠습니다.

감사합니다. ^^

diylinux wrote:

근데 우분투가 정말 괜찮은가요??

예. 이번에 처음 깔아본 것인데, 정말 마음에 드네요.

페도라 썼었는데, 이번에 우분투로 눌러 앉을 것 같습니다.

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

익명 사용자의 이미지

"하드의 불편함을 경험한 분께만 → cafe.daum.net/onworkers → '온하드' 무료제공!"

gonEH의 이미지

커널 컴파일을 하신다면 S-ATA하드를 hde로 잡을 수도 있습니다.

diylinux wrote:

근데 우분투가 정말 괜찮은가요??

우분투 상당히 매력적인 배포판입니다.
전에 레드햇과 데비안을 사용했지만,
레드햇은 rpm의 악몽때문에, 데비안은 여러가지 이유로 사용하지 않았습니다.
그래서 젠투만 사용하다가 지금 우분투도 깔아서 사용중입니다.
데비안 기반이다보니, 귀차니즘이 절 우분투로 이끌어 왔나 봅니다. :oops:

댓글 달기

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