SSH key file size 0 - 이유를 드디어 알았습니다. ^.^;;

in technology •  7 years ago 

아래 글을 올린 적이 있었습니다.

SSH key file size 0 & NULL file generation
https://steemkr.com/technology/@yhoh/ssh-key-file-size-0-and-null-file-generation

공맹이 @d7795 님께서 댓글로
SSH Key 파일의 크기가 0이 되는 이유가 궁금하다고 하셨는데
오늘 그 이유를 드디어 알았습니다.

/etc/S50sshd 에서 SSH 관련 Key가 없을 경우
이 Key들을 생성하는 작업을 수행합니다.

image.png

완벽하게 이 Key 값들이 생성된 경우에는 문제가 없는데
생성을 마치고 커널까지 부팅이 되는 중간에 전원이 off 되면
그동안 작업이 되었던 파일들이 0 byte의 크기로 파일만 남아있고
이 상태가 유지되었던 것입니다.

실제로 이 파일들을 지운 후에 전원을 켜서 Key 값들의 생성이 완료된 후
부팅이 되는 중간에 전원을 Off 하면 바로 재현이 됩니다.

SD 카드로 부팅을 하는 중간에 전원을 Off 한 후에
해당 SD 카드를 우분투에 인식시키고 내용을 확인하면 아래와 같이 바로 재현된 것을 확인할 수 있습니다.

image.png

부팅이 완전히 된 상태에서 sync를 통해서
파일이 정확히 disk에 기록되도록 하는 작업이 이루어졌으면 문제가 없는데
갑자기 전원이 off 되면 문제가 생기는 것입니다.

실제 /etc/S50sshd 에서 Key 파일이 없는 경우만 비교하는 것이 아니고
파일의 크기가 0인지도 함께 비교를 했어야 하는데
그렇지 않았기 때문에 파일이 있다고 생각하고 Key 생성 작업을 하지 않았던 것입니다.

이와 관련한 정보를 얻을 수 있는 링크는 아래와 같습니다.
https://bugzilla.redhat.com/show_bug.cgi?id=666332

제가 원인을 알기 전에 해결 방법으로 생각했던 것과
완전히 동일한 방법을 알려주고 있네요.

-s 옵션을 사용하면 파일이 존재하고
그 크기가 0 이상인지를 검사하기 때문에
혹 불완전하게 생성되어 있는 경우 재 생성을 하게 됩니다.

오늘 아침부터 이 문제를 해결하느라 참 힘들었네요.
어쨌든 원인을 밝혔으니 다행이네요 ^.^;;

감사합니다.

[스팀잇을 건강하게 하는 캠페인]

#ourselves 캠페인
셀프보팅을 하지 않고 ourselves 테그를 달아 주시면
많은 분들이 관심 가져 줄꺼에요.

#십일조 캠페인
수익 SBD의 10%는 나눔에 사용합니다.
많은 분들이 동참해 주시면 감사하겠습니다.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

새로운 한 주의 시작이네요
비가 옵니다~~!! 힘내세요!! 퐈이팅

오호 !!!! 감사합니다 ^^

부팅 되는 도중에 꺼지면 이런 문제가 발생 할수 있군요 ^^

이래서 컴퓨터를 그냥 끄지 말라고 하는거였군요 ㅎㅎㅎㅎ