rear·Î ¸®´ª½º ¹é¾÷

shipse   
   Á¶È¸ 7993   Ãßõ 0    

 엊그제 갑자기 집에 있는 시스템 전체를 그대로 백업하고 싶다는 생각이 들었습니다. 

이런 저런 방법을 찾아보다가 rear라는 것을 찾았습니다. 

지금껏 모르고 있었다니.. ^^;


이건 리눅스에서 사용하는 것으로 잘 만들어진 것 같습니다. 

부팅을 할 수 있는 rescue iso 파일이 만들어지고

시스템을 그대로 압축한 backup tar.gz 파일이 만들어집니다. 


복구할 때는 rescue iso를 usb에 구워서 부팅해서 backup.tar.gz를 불러와서 새로운 디스크에 풀고 grub 등 작업을 자동으로 해 줍니다.


처음 설치하고 간단한 config을 해보니, NFS로, 또는 다른 디스크로 잘 백업되는 것 처럼 보였습니다. 

그런데 gzip을 사용해서 tar로 묶으니 엄청 느립니다. 

pigz로 여러 코어를 쓰게 했습니다. 

config 파일에 

BACKUP_PROG_COMPRESS_OPTIONS=( --use-compress-program='pigz --best')

을 넣어줬더니 코어 수 대로 병렬로 압축이 진행됩니다. 


cron에 4시간 마다 백업하게 했습니다. 


한 번 테스트 해보고자 virtualbox로 가상머신 하나 만들고 rescue iso로 부팅하고 recover를 했더니 에러가 나는군요.

portmap/rpcbind 등을 확인하는 과정에서 에러가 납니다. 


그래서 

/usr/share/rear/verify/NETFS/default/050_start_required_nfs_daemons.sh
안을 에디트했습니다. 


# newer Linux distros usse rpcbind instead of portmap
에서부터
# NFS v4 related daemons:~~~~~
여기까지 다 날려버렸지요.


이 에러는 벗어났는데 또 문제가 생기는군요.


gzip이 아니고 pigz를 쓴 게 문제네요.

rescue iso 안에 pigz 실행파일이 없습니다. 


이거 때문에 계속 구글링을 해봤지만 내용이 없습니다. 


그래서 rear의 쉘을 이래저래 뒤져보니 

PROGS 라는 변수 안에 rescue에 들어가는 실행 바이너리들이 기록되어 있는 것 같더군요.


그렇다면 이 변수 안에 pigz를 넣어주면 되겠군요.


다시 rear config 파일을 수정합니다. (/etc/rear/local.conf )

PROGS=( "${PROGS[@]}" /usr/bin/pigz )

이 라인을 추가했더니 잘 되는군요.


정말 오류 없이 동작하는지, 도커 등 특별한 시스템이 있을 경우는 어떤지 등등 아직 확인 안 된 부분은 있습니다. 

하지만 간단하게 테스트해 본 결과 복잡하지 않은 시스템은 잘 동작합니다. 


리눅스 쓰시는 분들은 이 프로그램으로 중요한 시스템과 파일들을 잘 보호해 주세요.

Give Power to OLD COmPuter
Èæ±â»ç 2021-06
¸®´ª½º ºÎÆðúÁ¤ ¾Ë¸é tar·Îµµ ´Ù µË´Ï´Ù.

1. ºÎÆ®·Î´õ¿¡¼­ ¸®´ª½º Ä¿³ÎÀ» ¸Þ¸ð¸®¿¡ ·ÎµåÇÏ°í ±âµ¿½ÃÅ´.
2. ±âµ¿µÈ ¸®´ª½º Ä¿³ÎÀº Çϵå¿þ¾î ÃʱâÈ­¸¦ ÁøÇà.
3. ÃʱâÈ­°¡ ´Ù ³¡³ª¸é ¸®´ª½º Ä¿³ÎÀº Ä¿³Î ÆĶó¹ÌÅÍ¿¡ ÁöÁ¤µÈ ÆÄƼ¼ÇÀ» ·çÆ®·Î ¸¶¿îÆ® (¿©±â¼­ ½ÇÆÐÇϸé VFS: Unable to mount ¾î¼±¸Àú¼±¸ ÇÏ´Â ¸Þ½ÃÁö ¶ß°í ¸ØÃç¹ö¸³´Ï´Ù. ±×³É Àü¿ø »°´Ù°¡ ´Ù½Ã ³¢´Â¼ö¹Û¿¡.)
4. ·çÆ® ¸¶¿îÆ® ¼º°øÇÏ¸é ¸¶¿îÆ®ÇÑ ÆÄƼ¼Ç¿¡¼­ /sbin/init ½ÇÇà
5. /sbin/initÀº ºÎÆýºÅ©¸³Æ® ½ÇÇà (¿äÁòÀº init ´ë½Å systemd¸¦ ¾²´Âµ¥, À̶§´Â systemd°¡ initÀÇ ¿ªÇÒ ¼öÇà)
6. ºÎÆýºÅ©¸³Æ®´Â ½ÃÀÛÇÒ¶§ ¿Ã¶ó°¡±â·Î µÇ¾î ÀÖ´Â °¢Á¾ ¼­¹ö ´ë¸ó ¼­ºñ½º ·Îµå, ³×Æ®¿öÅ©/½Ã°è µî ȯ°æ ¼³Á¤ -> ¿©±â¼­ºÎÅÍ ¹èÆ÷ÆǸ¶´Ù ´Ù¸¨´Ï´Ù.
7. ºÎÆýºÅ©¸³Æ®°¡ ·ÎµåÇÒ °ÍµéÀ» ¸ðµÎ ·ÎµåÇϸé À¯Àú°¡ ¾µ Áغñ°¡ ¿Ï·áµÇ°í ·Î±×ÀÎ È­¸éÀÌ ³ªÅ¸³²

À§´Â initramfs ¾È¾´ ½Ã½ºÅÛÀ» °æ¿ì°í, ´ëºÎºÐÀÇ ¹èº¸ÆǵéÀº ¿©·¯ Çϵå¿þ¾î ´ëÀÀ µîÀÇ ¹®Á¦·Î initramfs ¾²°í ÀÖ½À´Ï´Ù.
initramfs ½è´Ù¸é 3¹ø~4¹ø °úÁ¤ÀÌ º¹ÀâÇØÁö°í ±×³É tar cpf, tar xpf·Î ¹é¾÷º¹¿øÇϸé À̺κп¡¼­ ¹®Á¦°¡ ÅÍÁöÁÒ.
initramfs¸¦ »ç¿ëÇÏ°Ô µÇ¸é 3¹ø ·çÆ® ¸¶¿îÆ®ÇÒ¶§ ÁøÂ¥ Çϵåµð½ºÅ© ÆÄƼ¼Ç ´ë½Å initramfs¶ó´Â À̹ÌÁö¸¦ ·ÎµåÇÏ°í ·¥µð½ºÅ©·Î ¸¶¿îÆ®ÇÑ ´ÙÀ½ ÀÌ ¾ÈÀÇ /sbin/initÀ» ½ÇÇàÇÕ´Ï´Ù. ±×·¯¸é ·¥µð½ºÅ© ¾ÈÀÇ init ÇÁ·Î¼¼½º´Â ÀåÄ¡ °Ë»öÇÏ°í ÇÊ¿äÇÑ ¸ðµâÀ» ·ÎµåÇؼ­ Ä¿³Î¿¡ ÀνĽÃÄÑÁÖ°í ³ª¼­ ·çÆ® ÆÄƼ¼Ç ¸¶¿îÆ®¸¦ ½ÃµµÇÏ°í ¼º°øÇϸé 4¹øÀ¸·Î ³Ñ¾î°¡ÁÒ. ¹èÆ÷ÆÇ È¸»ç¿¡¼­ ¹èÆ÷ÆÇ Á¦ÀÛÇÒ ¶§ ¿©·¯ µå¶óÀ̹ö ´Ù ´ëÀÀµÇ°Ô ÇÒ·Á°í ÀÌ·¸°Ô ÇѰǵ¥ initramfsµµ ¼ÒÇüÈ­µÈ º°°³ ¸®´ª½º ½Ã½ºÅÛÀ̶ó ±îº¸¸é º¹ÀâÇÕ´Ï´Ù.

ÀÏ´Ü ¼³Ä¡ÇÒ¶§ ·çÆ® ÆÄÀϽýºÅÛÀ» LVM µîÀ¸·Î ÀâÁö ¸»°í Çϵåµð½ºÅ© ÆÄƼ¼Ç ±×´ë·Î Àâµµ·Ï ÇÏ°í¿ä(·çÆ®±îÁö LVM Àâ´Â ¹èÆ÷ÆÇÀ̸é Àý´ë ¾ÈµË´Ï´Ù)
¼³Ä¡ÇÑ ÈÄ¿¡ Ä¿³ÎÀ» initramfs ¾È¾²°í, ½Ã½ºÅÛ¿¡ ¸Â°Ô Çؼ­ ÀçÄÄÆÄÀÏÇÏ°í ºÎÆ®·Î´õ µî·ÏÇؼ­ ºÎÆà ¼º°øÇÏ½Ã¸é ¿Ã·ÁÁֽŠ³»¿ë´ë·Î ¸¶À½²¯ ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
tar cpf, tar xpf¸¸À¸·Îµµ ´Ù µË´Ï´Ù. (º¹¿ø½Ã tar xpf ÇØÁ¦ÈÄ Ä¿³Î ºÎÆ®·Î´õ µî·Ï, /etc/fstab Á¶Á¤, ½º¿Ò ÆÄƼ¼Ç Á¶Á¤ Á¤µµ¸¸ ÇÏ¸é ºÎÆÃÀº µË´Ï´Ù. ÀÌÈĴ ȯ°æÁ¶Á¤)

¿Ö ·çÆ® ÆÄÀϽýºÅÛÀ» LVM, mdraid(¼ÒÇÁÆ®·¹À̵å), LUKS ¾ÏȣȭÆÄƼ¼Ç ÇÏÁö ¸»¶ó°í ÇÏ³Ä¸é ·çÆ® ÆÄÀϽýºÅÛÀ» ÀÌ°÷¿¡ ¿Ã¸®¸é initramfs°¡ ÇʼöÀÔ´Ï´Ù. initramfs ´Ü°è¿¡¼­ À̵é°ú °ü·ÃµÈ µå¶óÀ̹ö¸¦ ¿Ã·ÁÁְųª ¼³Á¤À» Àâ¾ÆÁÖ¾î¾ß Ä¿³ÎÀÌ ÀÌ µð½ºÅ©µéÀ» Á¦´ë·Î ÀνÄÇØ¾ß ÁøÂ¥ ·çÆ®¿¡ ´ëÇÑ ºÎÆðúÁ¤À» ÁøÇàÇÒ ¼ö ÀÖÀ¸´Ï±î¿ä.
±×Àú...ºû..


Á¦¸ñPage 2/28
2022-01   6826   ¹Ú¹®Çü
2020-07   7079   FOXBI
2020-02   7188   ±èÁØ¿¬
2021-12   7205   µö·¯´×¼­¹ö
2021-06   7283   Sikieiki
2022-03   7292   È­Á¤Å¥»ï
2022-01   7454   µö·¯´×¼­¹ö
2022-01   7491   °£Àå°ÔÀå
2021-05   7560   µö·¯´×¼­¹ö
2020-07   7623   »ßµ¹À̽½ÇÄÀÌ
2021-06   7659   È­Á¤Å¥»ï
2020-11   7717   µö·¯´×¼­¹ö
2021-08   7721   µö·¯´×¼­¹ö
2021-06   7777   µö·¯´×¼­¹ö
2020-02   7824   ¸¸¼®±º
2020-07   7839   FOXBI
2023-12   7847   inquisitive
2021-06   7907   È­Á¤Å¥»ï
2021-02   7935   RIGIDBODY
2021-05   7994   shipse