# 우분투(리눅스) 에서 하드용량이 없다고 나오는 문제(No space left on device)

다음과 같은 문제가 발생하는 경우가 있다.

# touch /tmp/check
touch: cannot touch `/tmp/check': No space left on device

파일을 생성하는 명령을 내렸을때 용량이 없다는 메시지가 나온다.

하드용량을 확인해보면.

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       19G  3.0G   15G  17% /
udev            236M  4.0K  236M   1% /dev
tmpfs            98M  180K   98M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            245M     0  245M   0% /run/shm
none            100M     0  100M   0% /run/user

아직 용량은 충분한데 이상하다.

# df -i
Filesystem      Inodes   IUsed IFree IUse% Mounted on
/dev/xvda1     1253376 1253376     0  100% /
udev             60266     385 59881    1% /dev
tmpfs            62675     261 62414    1% /run
none             62675       2 62673    1% /run/lock
none             62675       1 62674    1% /run/shm

none             62675       1 62674    1% /run/user

바로 inode 의 갯수가 꽉 찬것이다.

분명히 어딘가에서 너무 많은 파일이 등록이 되어 있는 것이다.


범인을 찾아라.

# for i in /home/*; do echo $i; find $i |wc -l; done

=> 해당 위치를 찾아라.

# for dir in *; do [ -d "$dir" ] && echo "$dir" && find "$dir" | wc -l; done

둘다 명령은 동일.(디렉토리를 지정하거나 현재디렉토리를 기준)
의심되는 위치를 위 명령으로 해본다.

결과

session
1194823

=> 찾았다 범인.

너무 많은 세션파일이 생성되어 하드 용량이 남았어도 inode 갯수가 꽉 차서 더이상 파일을 생성할 수 없게 된 것이다.

저 파일들을 정리해주면 된다.

파일이 너무 많으니 rm -rf session 등으로 해주는게 좋다.(각자 알아서)

정상.

# df -i
Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/xvda1     1253376 58729 1194647    5% /
udev             60266   385   59881    1% /dev
tmpfs            62675   261   62414    1% /run
none             62675     2   62673    1% /run/lock
none             62675     1   62674    1% /run/shm
none             62675     1   62674    1% /run/user

 => 이제 정상으로 나온다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
리눅스용 구글크롬이 나온지 좀 지난것 같은데.
지금 설치해 봤다.


우분투용  deb 를 지원하니 다운받아 바로 설치하면 끝이다.

설치후 실행.
역시나 빨라서 좋다. 근데, 폰트가 안 맞는지 이상하다.(우분투 8.04)


ps. 우분투 9.10 에서는 폰트도 괜찮게 나온다.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
우분투(리눅스) 시스템을 운영중에 있다.
얼마전 하드디스크 에러가 생겨  시스템을 이전하려 한다.
이런 하드에러도 있고, 하드디스크를 큰 용량으로 바꾸려고 할 경우도 있다.

rsync, tar 등을 이용하는 방법도 있지만, 간단하게 cp -a 를 이용하려고 한다.
/var , /usr  등이 별도의 파티션으로 나뉘어져 있는 경우  해당 디렉토리를 뺀 / (루트) 를 복사해야 한다.
별도파티션으로 나뉘어 있던 디렉토리는 나중에 옮겨도 된다.

일단 새 하드디스크를 연결한다.
기존 시스템 하드는 /dev/sda 이고,  연결한 새 하드디스크는 /dev/sdb 라고 가정한다.
/ 는 sda1 ,  /usr 는 sda2 , /var 는 sda3  이라고 한다면,  우선 sda1 을 먼저 옮겨도 되고 다 같이 옮겨도 된다.

sda1 은 sdb1 으로 옮길것이다. 데이터를 이동한다.
현재 시스템이 가동한 상태에서 옮겨도 되긴 하지만, 고려할 사항이 많다.
dev , proc 등 시스템 관련 디렉토리를 주의해야 한다.

별도로 마운트 하고 옮긴다.
mount /dev/sda1 /mnt/sda1
mount /dev/sdb1 /mnt/sdb1
이런식으로 마운트 시키고 데이터를 옮긴다.
cp -a /mnt/sda1/* /mnt/sdb1/
이렇게 하면 따로 dev , proc , var/run , var/lock 등을 신경쓰지 않아도 된다.

새하드디스크로 부팅하려면 어떤값을 바꿔야 하나?
fstab 을 새하드디스크의 설정값으로 변경한다.
이때 복사한 fstab 의 값을 변경한다. 즉 /mnt/sdb1/etc/fstab 을 바꿔준다.
fstab 은 UUID 로 설정해 놓는 것이 편하다.

blkid 명령을 내리면
/dev/sdb1: UUID="{새하드UUID값}" SEC_TYPE="ext2" TYPE="ext3"
새로운 하드의 UUID 값을 얻을 수 있다.
fstab 의 해당 값을 바꿔준다.
UUID={기존UUID값}  / ext3 defaults,errors=remount-ro 0 1
이 설정만 바꾸면 되는가?

새 하드디스크에 grub 을 인스톨한다.
grub-install  /dev/sdb
이런식으로 되면 편하겠는데, 아마 안될 것이다.
grub 쉘로 들어가서 직접 바꿔준다.
grub 명령을 내리면  grub >  이렇게 grub 쉘을 사용할 수 있다.
grub >  find /boot/grub/stage1
stage1 은 하드디스크의 MBR 영역에 설치된다.
find /boot/grub/stage1
 (hd0,0)
 (hd1,0)
이런식으로 나오게 된다. 기존 하드는 hd0 , 새 하드디스크는 hd1  이다.
다음처럼 새 하드디스크에 grub 을 설치한다.
grub >  root (hd0,0)
grub >  setup (hd0)
특별히 에러메세지가 없으면 정상적으로 설치가 되었을 것이다.

이제 grub 의 menu.lst 를 변경한다. 여기서도 fstab 처럼 UUID 를 변경해준다.
/boot/grub/menu.lst 

# kopt=root=UUID={새하드UUID값} ro console=tty0
이 부분과
title           Ubuntu 8.04.3 LTS, kernel 2.6.24-24-generic Default
root            (hd0,0)
kernel          /boot/vmlinuz root=UUID={새하드UUID값} ro console=tty0 quiet splash
initrd          /boot/initrd.img
이 부분의 UUID 값을 바꿔준다.


이제 새 하드디스크로 부팅순서를 바꾸고 부팅한다.

재부팅후에 BIOS 설정에서 새 하드디스크로 부팅순서를 바꿔서 부팅해 본다.
정상적으로 부팅되는지 확인해본다. 이상이 있으면 기존의 하드로 다시 바꾸면 된다.
하드디스크 위치나 바이오스 설정 등의 차이로 인해 부팅에 이상이 있는 경우가 있으니 설정을 다르게 바꿔가면서 테스트 해본다.

내 경우는  보드의 SATA (sda) , SCSI 컨트롤러, SATA 컨트롤러(sdb)  이렇게 되어 있었다.
바이오스에서 각각의 부팅순서를 바꾸지 못하고, PCI 인터페이스인  SCSI , SATA 가 묶여서 바뀌게 되었다. 그래서 PCI 인터페이스의 맨 처음으로 바꿔야 했다.
SATA 에서는 primary 로 변경하고,  SCSI 는 보드에서 SATA 를 보드의 안쪽으로 바꿔서 SATA -> SCSI 컨트롤러 순으로 변경하고 서야 제대로 부팅할 수 있었다.




WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  0개가 달렸습니다.
secret
그동안 여러시스템을 운영하면서, 하드디스크 장애를 수차례 겪어봤다.
물론 전문 운영업체도 아닌 개인입장에서의 경험이니 일반화 하는 것은 위험하다.

짧은 경험이지만, 하드디스크 장애중에 유독 파일시스템이 깨지거나 쓰기지연 등이 발생하는 경우는
var 디렉토리가 대부분이었다. var 디렉토리의 특성상 쓰기 작업이 많이 일어나기 때문일 것이다.

var 는 일을 많이 해!
시스템을 설치할때 / , /boot , /usr , /var  등은 거의 필수로 별도의 파티션으로 나누어 놓는다.
이중에서 디스크 자체의 인식오류등을 제외하면 거의다 var 디렉토리에 이상이 생겨서 문제가 발생한다.
파티션을 나누어 놓아서, 별도의 파티션으로 var 의 데이터를 옮기고, 바꿔서 마운트 해주면 해결되기도 한다. 그러나, 디스크에 배드섹터 같은 것이 발생했을 가능성이 많기 때문에 하드디스크를 바꿔주는 것이 좋다.

그렇다면 var 자체를 별도의 하드디스크로 지정해 놓는 것이 좋지 않을까?
용량도 그리 크지 않아도 된다. /var/log 정도만 따로 떼어 놓으면 수기가 정도면 충분하다.
그러나, log 도 대부분 쓰기 작업이니 따로 떼면 마찬가지 일듯 하다.(log 도 같이 있어야 겠다)
가능하다면 아예 메모리에 올려버리면 장애 발생률이 현저히 줄어들지 않을까?

깔끔한 해결책이 없을까?


SSD 가 답일까?
SSD 를 도입하기에는 비용도 문제지만, SSD 가 쓰기작업에 별로라는 이야기가 있어 좋은 해결책은 아닐듯 싶다. (MLC 니 SLC 니 그런 차이가 있다고 하던데...)
그렇지만, 서버용으로는 속도 빠른것으로 5G (최대 10G) 정도만 되어도 충분히 도입할 수 있으니, 그리 큰 비용이 들지 않겠지. 심각하게 고려해봐야 겠다.

저가형은 16G 부터 있는 것 같다. 가격은 약 10만원대.
한번 속는셈 치고 사볼까?


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  0개가 달렸습니다.
secret
티맥스윈도우 까기는 재미없고. 이랬으면 어땠을까?
제대로 된 물건이 나오면 어떻게 될까?  라는 생각을 해봅니다.

오에스전문가도 아니고, 제대로 강의를 받은것도 아니기에 그저 상상의 나래일뿐 큰 의미를 둘 필요는 없습니다.

마이크로커널 그것이 무엇일까?
기본적인 기능을 하는 작은 커널위에 OS 호환 레이어 를 가동한다.
윈도우 호환레이어, 리눅스 호환레이어, 맥OS 호환레이어 위에 각 오에스 어플들이 돌아간다는 것.
어제 시연에서 제대로 동작하지 않은 이유가 호환레이어가 불안정 하거나 그래픽디바이스 드라이버가 불안했던 것일까?

암튼 말대로 그런 것이 가능하다면 정말 좋겠다라는 것이다.
특정 어플을 돌리기 위해 해당 오에스를 사는 것은 둘째치고, 깔고 설치하기가 힘들단 말이지.
특히 맥OS 는 깔아서 쓸수도 없단 말이야(해킨방식 제외)

티맥스쪽에서도 그런 방향으로 목표를 잡은 것 같은데, 이론적으로 어떤 한계점이 있는지 모르겠지만, 제대로 된 놈이 나오면 좋겠다 라는 것이다.  그렇지만, 아무래도 호환성의 문제 때문에 한 박자씩 늦은 지원은 어쩔 수 없겠지,  윈도우7 시대에 윈도우XP 호환 , 맥OS 스노우레퍼드 시대에 맥OS 타이거  이런식으로 말이다.
그래도 그 정도만이라도 실현시킨다면, 꽤 좋을 듯 싶다.

먼저 오픈소스커뮤니티 부터 홍보했으면 어땠을까?
예를 들어 '티맥스리눅스 발표. 마이크로 커널 방식의 리눅스.  리눅스 어플을 자연스럽게 가동한다.
향후 윈도우호환 레이어로 윈도우 어플을 가동시킨다. 맥OS 도 가능'
이런 방식이었다면 오픈소스커뮤니티, 리눅스 커뮤니티에서 난리 났을거다.
모르긴 몰라도 반응도 호의적이었을 것이다.
오픈오피스 기반의 티맥스오피스 라고 발표를 하고, MS오피스 문서 완벽(?) 호환 이라고 했으면 오픈소스커뮤니티는 티맥스교 라도 만들었을 것이다.
애플교, 잡스교 처럼 티맥스교 같은 거라도 생겼을지도..

티맥스는 좀! 아군 만드는 법을 좀 배워야 겠어.


아무튼 지금부터 3개월후 어떤 놈이 나올지 기다려 봐야 겠다.
그 사이에 티맥스가  행사를 할지 모르겠지만, 한다면 좀더 제대로 된 모습을 볼 수 있길 바란다.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
리눅스에서 가상머신을 띄워 작업을 한다. 이제는 거의 필수가 되었다.

윈도우의 특성상, 재설치의 위험으로부터 벗어날 수 있기도 하다.
그동안 사무실에서 리눅스 데탑을 사용했다. 필요한 것은 가상머신을 이용했다.
그러다가, 윈도우7 을 테스트하기 위해 깔아 볼 생각이다.
윈도우7 RC 버전이기 때문에 내년까지밖에 사용할 수 없다.

그렇다보니, 풀세팅을 하기가 뭐해서 가상머신을 이용할 예정이다.
윈도우7 용을 따로 가상머신을 만드는 것은 낭비일 듯 싶어, 기존 리눅스에 쓰던 것을 활용할 예정이다.

일단 파일공유를 어떻게 할 것인가?

리눅스 파일시스템을 쓸 것인가? 윈도우7 의 파일시스템을 쓸 것인가?
윈도우파일시스템을 쓰는 것이 나을 듯 하다. 그런데, FAT 시스템은 미심쩍어서 못쓰겠다.
NTFS 는 쓰기성능이 심증적으로 검증이 안되었다.(요즘 많이 좋아졌다고 하던데...)

네트웍공유를 이용할까? 그런데, 가상머신에서 지원하는가?
리눅스에서는 NFS 로 공유해서 써봤는데, 윈도우에서도 가능할까?

1. NTFS 로 파일시스템 공유 - vm 파일 공유
2. NFS 으로 네트웍 공유

일단 윈도우7 설치부터.
지난번 삽질한 (http://blog.1day1.org/283) usb 를 이용할 예정.
시스템에서 usb HDD 로 잡힌다.(그래서 하드디스크의 순서를 바꿔서 부팅)

윈도우7 을 설치하고 나면, grub 이 망가질테니, grub 다시 설치해야 할 듯
하드디스크를 분리하면  grub 재설치 안해도 될 듯 하니, 분리해서 설치하는 것이 좋겠다.

sda (SATA) , hda(IDE) , sdb(SCSI) 의 하드가 있다.(종류별로 다 있군.)
hda 에 리눅스시스템이 깔려 있으니, sda 나 sdb 에 설치해야 할텐데. 어디가 좋을까?

윈도우7 설치시 삽질이 없기를...  (다음 포스팅은 설치후에...)

추가1. 역시나 순조로울리가 없지.
 윈도우7 을 설치하려면 16G 정도가 필요하군. 뭐가 그렇게 많아?
 10G 정도 할당하려고 하니, 안되는군. (데이터 옮기고 나서 다시 시도...)

추가2. 일단 용량을 확보하고 재시도.
 그런데, 다음과 같은 메세지와 함께 설치불가.
 "Setup was unable to create a new system partition or locate an existing system partition. .... "
 정확한 원인은 모르겠지만, 다른 하드의 파티션이 NTFS 로 인식하고, 시스템 파티션을 만들수 없다고 인식하는지, 설치하려는 하드의 파티션에 설치를 하지 못한다. 다른 하드를 빼고 시도해보니 정상설치된다. 일단 설치까지는 완료. 음 오디오 드라이버가 자동인식이 안되는듯.(이런.)

추가3. 설치까지는 무리없이 진행. 한글팩을 깔려니, 설치마지막 부분에서 실패.
 산넘어 산이라더니.
 7229, 64bit 를 설치했는데(7229 한글팩이 이상인가? 내PC 만 그런가?)
 다시깔기는 그렇고, 그냥 영문판으로...


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
리눅스를 쓰다보면, /etc/fstab 이라는 파일을 보게 된다.
하드디스크를 추가하거나 하면, 편집해서 추가해줘야 한다.(자동으로 해주는 GUI 툴이 있나?)

그런데, 종종 하드디스크를 추가한 후 드라이브명(?)이 바뀌는 경우가 있다.
/dev/sda , sdb , sdc 의 순서가 바뀌는 경우가 있다.

이런경우 하드디스크의 고유한 UUID 를 이용하면 바뀌는 것에 신경을 쓰지 않아도 된다.


스텝 원! - 하드디스크를 추가하자.
 하드디스크를 달자.
 추가한 후 fdisk -l 을 입력해본다. 참! 쉽~죠잉.

예를 들어 본인의 시스템은 다음과 같다.(진한색만 보면 됨)
root@ubuntubox:/home/young# fdisk -l

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa8b8174c

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1        5472    43952128    7  HPFS/NTFS
/dev/sda2            5473       10579    41021977+  83  Linux
/dev/sda3           10580       19458    71312384    7  HPFS/NTFS

Disk /dev/hda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0fda4a0a

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1        1216     9767488+  83  Linux
/dev/hda2            1217        5472    34186320    5  Extended
/dev/hda3            5473       10579    41021977+  83  Linux
/dev/hda4           10580       14593    32242455   83  Linux
/dev/hda5            1217        5289    32716341   83  Linux
/dev/hda6            5290        5472     1469916   82  Linux swap / Solaris

Disk /dev/sdb: 73.4 GB, 73407900160 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        1337    10739421   83  Linux
/dev/sdb2            1338        6444    41021977+  83  Linux
/dev/sdb3            6445        8924    19920600   83  Linux
원래는 hda , sda 이렇게 두개가 있었다.( hda : 120기가 - IDE 하드 , sda : 73기가 - SCSI 하드)
그런데, 위에서 보시다 시피 추가한 160기가 SATA 하드가 sda 로 잡히고,
기존의 sda 였던 스카시 하드가 sdb 로 잡힌것을 볼 수 있다.

보통 fstab 을 보면 이런식으로 드라이브문자(sda,hda) 를 쓰고는 하는데.
/dev/sda1  /work1     ext3    defaults        0       2
/dev/sda2  /work2     ext3    defaults        0       2
/dev/sda3  /work3     ext3    defaults        0       2
위의 경우처럼 하드를 추가한 것 뿐인데, 시스템이 부팅이 안되는 경우가 생길 수 있다.
배포판에서도 그런 이유인지, 드라이브문자를 직접쓰기보다는 UUID 를 사용하는 추세인 듯 하다.
기존에 쓰던 방식에 익숙해서 UUID 보다는 드라이브문자를 쓰곤 했는데, 앞으로 UUID 를 써보자.


스텝 투! - UUID 를 알아내자.
  그럼 UUID 를 어떻게 알 수 있지?(시스템의 루트 파티션이 다음과 같다)
UUID=e38c77a6-0990-44bf-a592-9c156920fb5d /       ext3    errors=remount-ro 0       1
UUID 가 e38c .. b5d (적기도 힘든데, 외울 수도 없고) 어떻게 알 수 있나?
UUID 를 알아내는 명령은 바로 blkid (뭐야, bl 키드?) - 아마도 block ID(블럭 아이디) 일 듯 하다.

위 시스템의 blkid 명령을 내려봤다.
/dev/hda1: UUID="e38c77a6-0990-44bf-a592-9c156920fb5d" SEC_TYPE="ext2" TYPE="ext3"
/dev/hda3: UUID="9fa0f339-1fa5-4c75-942a-b6001b7bcde8" SEC_TYPE="ext2" TYPE="ext3"
/dev/hda4: UUID="26474b1a-8353-4a15-8add-94df2a6784b7" SEC_TYPE="ext2" TYPE="ext3"
/dev/hda5: UUID="9dfa1ff8-b91c-47db-9d8d-8cfb78ff7432" SEC_TYPE="ext2" TYPE="ext3"
/dev/hda6: TYPE="swap" UUID="0e7bd3d5-88dd-4a06-81bd-2dd1f2870a5c"
/dev/sda1: UUID="00CC65DDCC65CE0A" LABEL="Data1" TYPE="ntfs"
/dev/sda2: UUID="8d6f7e4f-4bfe-4ad1-83b8-22d71065193f" SEC_TYPE="ext2" TYPE="ext3"
/dev/sda3: UUID="2E38726838722EC9" LABEL="Data2" TYPE="ntfs"
/dev/sdb2: UUID="1ed998db-712f-4fc3-9155-02e091fd8380" TYPE="ext3"
/dev/sdb3: UUID="4c907521-a4fb-4a2c-86ce-9b8206aaf33a" TYPE="ext3"
/dev/sdb1: UUID="feeb3d31-7c74-41e3-87fd-9a60c900430f" SEC_TYPE="ext2" TYPE="ext3"
위 루트시스템 파티션인 e38c77a6-0990-44bf-a592-9c156920fb5d  뭐시기가 보인다.
그외 다른 파티션들도 UUID 를 확인할 수 있다. 저걸 하나하나 입력하긴 뭐할테니 필요한것은 복사하자.


스텝! 쑤~우리 : fstab 에 UUID 로 기록하자.
  /etc/fstab 파일을 편집하자. 위의 /dev/sda1 , sda2 ... 등으로 쓰던 부분을 UUID 로 바꿨다.
UUID=feeb3d31-7c74-41e3-87fd-9a60c900430f /work1     ext3    defaults        0       2
UUID=1ed998db-712f-4fc3-9155-02e091fd8380 /work2     ext3    defaults        0       2
UUID=4c907521-a4fb-4a2c-86ce-9b8206aaf33a /work3     ext3    defaults        0       2
/dev/sda1 에 해당하는 부분을  UUID=feeb3d31-7c74-41e3-87fd-9a60c900430f  이런식으로 바꿔주기만 하면 된다. 나머지 sda2, sda3 도 같은 방식으로 바꿔준다.

이렇게 하면 추후 하드디스크를 추가해서 드라이브문자가 바뀐다고 해도 이상없이 작동한다.
(위의 sda1 도 하드가 추가되면서 sdb1 으로 바뀐것이다)


참! 쉽~죠잉


ps. 예전에 LABEL 을 이용하는 방법도 잠깐 유행(?) 했었는데, 방법도 편하지 않고 관리하기 힘들어서 그런지 그 방법은 요즘은 잘 쓰지 않는 듯 하다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  3개가 달렸습니다.
  1. 깔끔하고 쉽게 정리해주셔서 감사합니다
  2. 스크랩 해갈께요~ 좋은 정보 감사합니다.
  3. 고맙습니다.. 잘 보고 갑니다
secret
항상 설치할때 마다 까먹는다.(맛있나봐!)
둘다 MBR 을 좋아해서 서로 차지하려고 난리도 아니다.

윈도우 재설치를 한 후 grub 을 재설정 하는 방법이다.
라이브CD 로 부팅해서 재설정하는 방법.

부팅후(설치 파티션이 /dev/hda4 라고 할때)
# mkdir /mnt/hda4
# mount /dev/hda4 /mnt/hda4
해당 파티션을 적당한 위치에 마운트 시킨다.
# mount -t proc /proc /mnt/hda4/proc
# mount -o bind /dev /mnt/hda4/dev
chroot 전에 필요한 시스템을 마운트한다.
# chroot /mnt/hda4 /bin/bash
chroot 한 후 grub 설정을 한다.
# grub
다음은 grub 명령이다.(grub> 은 grub 명령 프롬프트)
에러가 나면, 디바이스 장치들이 제대로 잡히지 않은 것이다.
grub> root (hd0,3)
grub> setup (hd0)
grub> quit
hda4 는 (hd0,3) 을 나타낸다.
"(hd0,"  까지 입력하고 TAB 키를 눌러보면 원하는 파티션을 볼 수 있다.

root (hd0,3) 은 /boot/grub/stage1 이 위치한 곳을 지정하면 된다.
setup (hd0) 는 MBR 에 해당한다.

다시 재부팅하면 OK.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  0개가 달렸습니다.
secret
가끔. 6개월에서 1년 정도?
http://distrowatch.com
에서 새로운 배포판이 나왔나 보고, 깔아보곤 한다.

다 새로설치하면 좋겠지만, virtualbox 라는 아주 좋은 놈이 있어.
VM 상에 깔아보곤 한다.

그래서 Suse 와 mandriva 를 발견(?)했었다.
http://blog.1day1.org/search/suse
http://blog.1day1.org/search/mandriva

이번에 또 한번 설치시즌(?)이 되서 설치해 보려하는데, 좀 괜찮은 놈을 발견해야 할텐데.
일단 순위상에서는 눈에 띄지는 않는다.

지난번에 실패한 open solaris 를 해볼까?


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  0개가 달렸습니다.
secret
우와 지메일에서 화상채팅이 지원된다네, 편하겠는데.


그런데 말이야.

왜! 리눅스는 안되는 것이야.
크롬도 그렇고, 좀 싫다.  구글 요즘 마음에 안들어.


WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  3 , 댓글  2개가 달렸습니다.
  1. 사실 지원해도 거의 안쓸 저는……
    어째 메일이 이렇게 허전하죠[-]
  2. 안습 리눅스입니다. ㅋ (배포판 이름이 아님!!)
    안드로이드 SDK는 윈도우즈 지원하지 않는 걸로 위안이 될까요?
secret
맨드리바를 다시 깔아봤습니다.

이번에는 한글설치가 가능한 시디로 설치를 했습니다.(구분되어 있는 줄도 모르고...)

설치는 우분투보다 훨씬 쉽네요.


다음에 데스크탑 밀어야 할때, 우분투에서 맨드리바로 갈아타봐야 겠습니다.

패키지저장소(미러?)가 좀 느린게 흠이긴 하지만(우분투 처럼 변경이 가능한가?)
아직까지는 그 점빼고는 인상적인 배포판이네요(경험한 것중)

맨드리바 패키지 미러하는 서버가 국내에 없는 듯 한데, 우분투처럼 변경이 가능하다면 , 맨드리바도 미러해주면 좋겠습니다.(다음,Daum - 부탁해요)

시스템 설정툴인가 그것도 Gnome, KDE 통합형식이라 일관적인게 좋네요.
한글화가 좀 덜 된 부분이 있지만, 크게 문제가 되지는 않네요.


데스크탑 리눅스의 3파전?
우분투 / 오픈수세 / 맨드리바.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  1 , 댓글  3개가 달렸습니다.
  1. 페도라는 아직 약한가요..
  2. 개인적인 경험으로는 우분투보다는 리눅스민트가 사용하기에 조금 더 편하고(설치시 한글이 깨지는 것은 애교입니다), 맨드리바는 별도의 설정이 필요없고 안정적이라는 점에서 점수를 받을만 하고, 오픈수세는 손쉽게 커뮤니티 저장소를 이용할 수 있다는 점에서 점수를 받을만하다고 생각합니다. 특히, 맨드리바와 오픈수세는 자체 제어판을 지원하죠. 정말정말 강력합니다(..)
    그 외 데비안(sid) 기반으로 드림리눅스란 것이 있는데, 3.0때는 한글 설정이 지옥과도 같았으나, 3.5RC4를 써보니 정말 괜찮아졌더군요. 드림리눅스도 한번쯤 써볼만하다고 생각합니다.
secret
그동안 우분투를 주력으로 써왔다.
데스크탑, 서버까지(서버는 Centos 를 쳐주지만...) 우분투로 밀고 있다.

그런데, 너무 하나에 치우치는 것 같아. 다른 배포판도 써보기로 했다.
Centos , OpenSuse , Fedora 등등..

그동안 더 쉬워졌다. 설치는 이제 그냥 클릭클릭이면 끝(예전에도 그랬지만...)
설치후에도 별 다른 설정없이 바로 사용가능하다.
다들 패키지관리자 형태로 원하는 프로그램을 설치해서 쓰면 그만이다.

진짜 쉬워졌다. 설치시간도 빠르다. 몇십분내에 다 끝난다.

또한 이들에게 감사한다.
빠른 저장소로 시간을 줄여준다.


겸사겸사해서 DistroWatch 에 가보니, 눈에 띄는 놈들이 있다.

한번 깔아봐야 겠다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  2 , 댓글  0개가 달렸습니다.
secret
리눅스를 설치하고 사용하기 위해서는 넘어야할 산(?) 중에 하나가 파티션이라는 개념일 것이다. 도스부터 사용해오던 윈도우 사용자가 아닌이상 리눅스의 파티션 개념에서 포기하기 일쑤인것 같다. 물론 요즘 나오는 리눅스 배포판들은 알아서 자동으로 나눠주고 설치하기 때문에 굳이 신경쓸 필요는 없다.

그러나, 리눅스 하나만 설치해서 쓰는 경우는 드문것이 현실이다. 윈도우와 같이 쓰는 경우가 많을 것이다. 그렇다 보니 파티션 문제를 넘어야 한다.

이 파티션 문제를 넘지 못하고 포기하는 사람들에게는 그냥 포기하게 하지 않는다.
감히 나를 버리고 갈려고?  그렇다 그 문제가 바로 MBR 이라는 문제이다.

구글 검색에서  '윈도우 MBR' 이라고 검색해보면 별의 별 방법이 다 나온다.
win98 시절에는 부팅하고  fdisk /mbr  해라.
win2000, winxp 는  fixboot , fixmbr  등이 있다.
그런데, 부팅디스크, 부팅시디를 제대로 가지고 있으면 다행이지만, 없는 경우가 많다.
그렇다 보니, MBR 문제가 간단하면서도 참 해결하기 힘들다.

나도 그 방법을 사용하려다 실패를 한후 결국 해결을 했지만, 그 역경(?)을 적어보고자 한다.

# 1차 관문
win98 부팅디스크는 예전 플로피디스크 쓰던 시절이니, 생략하자. 정말 찾기 힘들다.
winxp 시디는 잘 가지고 있기 때문에 부팅을 했다. 
(R) 복구 콘솔(?)로 들어갔다.
윈도우가 깔려있는 시스템을 선택하고, 엔터.
근데, 어 Administrator 의 암호를 입력하라고? 그런게 있었나?
암호를 입력해 보았다. 아니다. 틀리다. 3번 틀렸다. 다시 부팅. ㅜㅜ
이상하네. 

# 2차관문
그래 윈도우 부팅해서 관리자 암호를 바꾸고 다시 해보자.
컴퓨터 -> 관리(G) 로 들어갔는데, 사용자 관리가 없네.(XP pro 와 다르군)
노트북의 XP 는 windows xp home 인데, home 버전은 사용자관리가 따로 없나?
제어판의 사용자관리로 들어가 보니, 여기서도 Administrator 암호 바꾸는 것은 없다.
컴퓨터관리자용 아이디를 바꿔보고 해봐도 그건 Administrator 와는 틀린 것이다.
(여기까지 3번째 재부팅 - 암호 다 틀리고...)
home 버전은 애초에 Administrator 계정을 사용할 수 없는 것인가?

그래 포기다.

# 그러나 희망은 있다.
리눅스(우분투)에 ms-sys 라는 패키지가 mbr 을 제거할 수 있다고 한다.
그래 그 좋은 방법이 있었단 말인가? ^^;;
노트북에 윈도우/리눅스 깔린 상태에서 리눅스를 지우고 윈도우만 쓰기로 해서, 아직 리눅스로 부팅가능하다.(리눅스 파티션이 날라간 경우 LiveCD 로 하면 될 듯)
부팅후에 apt-get install ms-sys  를 입력했다.(universe repo. 에 있다)
그런데, 패키지가 없다고 한다. 뭐야! 뭐야!

지금 깔려있는 우분투 hardy 버전은 해당 패키지가 빠졌단다. ㅜㅜ

# 그래 직접 패키지를 다운받자.
gutsy 버전에는 패키지가 있다.(http://packages.ubuntu.com/gutsy/ms-sys)
i386 버전으로 들어가서, 패키지 URL 을 알아내서.
wget http://mirrors.kernel.org/ubuntu/pool/universe/m/ms-sys/ms-sys_2.1.0-1_i386.deb
으로 다운받고
dpkg -i ms-sys_2.1.0-1_i386.deb
으로 설치를 했다.

완료.

# 그래 MBR 너를 없애주마.
하드디스크의 드라이브명(?)을 알아내야지.
fdisk -l
음. 하드디스크가 하나밖에 없으니, 그냥 /dev/sda  로 하면 되는군. ^^
ms-sys -m /dev/sda
또는   ms-sys --mbr /dev/sda ( -m , --mbr 같은 옵션)

재부팅.

끝.

MBR 제거하기가 참 힘들었다.



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  4개가 달렸습니다.
  1. 복잡하게 하시네요. 그냥 MBR날려버리려면 간단히 fdisk /mbr 하시면 되는데... 98부팅시디도 있으면 편하실텐데 말이죠...
    • 복잡하게 하고 싶어서 그런게 아니예요. ^^
      요즘 98 부팅디스크 구하는것도 쉽지 않잖아요. ^^

      그냥 리눅스 LiveCD 면 충분할 것 같아요.(복구용,임시용...)
  2. 상대히 오래된글이라 확인하실지 모르겠지만..

    혹시나 검색해서 들어온분의 도움이 될까해서 남겨보자면..

    복구콘솔에서의 암호는.. 윈도우상에서 특별히 암호를 설정해놓지 않았다면

    그냥 아무것도 입력하지 않고 엔터를 치면 넘어갑니다.
secret
# 맥
맥은 안 써봐서 패스.
써본사람 이야기를 들어보면 단연 Expose 를 드는 것 같다.

# 리눅스
내 경험상 리눅스 는
단연 가상데스크탑. 이놈이 없다면 안쓸지도...
거꾸로 말하면 가상데스크탑 때문에 쓴다.

# 윈도우
윈도우는.
음. 어. 아~.
모르겠다. 진짜 모르겠다.(이유가 많아서 그럴까?)
게임? ㅜㅜ (이건 윈도우의 기능이라고 볼 수 없으니 해당사항이 아니겠지)
active-x ? (기능?)



WRITTEN BY
1day1
하루하루 즐거운일 하나씩, 행복한일 하나씩 만들어 가요.

트랙백  0 , 댓글  2개가 달렸습니다.
  1. 윈도우는 킬러 프로그램 때문이죠 ^^;
    • 그렇긴 하죠.
      윈도우만의 기능으로 한정(?)하면 정말 이유를 못 찾겠어요. ^^
secret