Saturday, November 15, 2014

MD5 (Message-Digest algorithm 5) உங்களுக்கு அவசியம் உதவும்

இந்த கட்டுரையின் அவசியத்தை நீங்கள்  கட்டுரையை படித்து முடித்த பிறகு உணர முடியும். எனக்கு ஏற்பட்ட இரண்டு மோசமான சம்பவங்களே இந்த கட்டுரையினை எழுத காரணமாக அமைந்தது.

சம்பவம் ஒன்று:

உபுண்டு 14.04 LTS வெளியிடப்பட்ட இரண்டு நாட்கள் கழித்துதான் அதை நான் தரவிறக்கம் செய்ய தொடங்கினேன். என்னுடைய மடிக்கணினியின் வாயிலாக தரவிறக்கம் செய்யாமல், அண்ணன் சோம.நீலகண்டன் அவர்களின் மேசைக்கணினியினைக்(Desktop PC) கொண்டு தரவிறக்கம் செய்தேன். torrent தொழில்நுட்பம் மூலமாக உபுண்டுவை தரவிறக்கம் செய்ய முடியும் என்பதால், உபுண்டுவை எப்பொழுது தரவிறக்கம் செய்தாலும் torrent கோப்பினைக் கொண்டே தரவிறக்கம் செய்வேன். காரணம் பாதுகாப்பாகவும் இருக்கும், நிறுத்தி வைத்த இடத்திலிருந்து நாம் எப்பொழுது வேண்டுமானாலும் தரவிறக்கத்தை தொடர்ந்து கொள்ளலாம். அவ்வாறே Vuze Torrent Client Application ஐக் கொண்டு அண்ணன் அவர்களின் மேசைக்கணினி வாயிலாக தரவிறக்கம் செய்தேன். ஏப்ரல் மாதத்தில் எங்கள் கிராமத்தில் கடுமையான மின்வெட்டு இருந்தது. திடீர் திடீரென்று ஒரு ஒழுங்கில்லாமல் மின்சாரம் நிறுத்தப்படும். அவருடைய மேசைக்கணினிக்கு  UPS வசதியெல்லாம் செய்து வைத்திருக்கவில்லை. மின்சாரம் நின்றால் கணினியும் அமர்ந்து விடும். கணினி அடிக்கடி Shutdown ஆனாலும், Torrent மூலமாக தரவிறக்கம் செய்வதால் நின்ற இடத்திலிருந்து மீண்டும் தரவிறக்கத்தை தொடர்ந்து கொள்ளலாம். மறுபடியும் ஆரம்பத்திலிருந்தே தரவிறக்கம் செய்ய வேண்டியதில்லை. மின்சாரம் நிற்பது, அதனால் கணினியும் நிற்பது, இடையிடையே இணைய இணைப்பது துண்டிக்கப்படுவது என பல நெருக்கடிகளுக்கு இடையில் சாராசரியாக 50KB/s வேகத்தில் கிட்டத்தட்ட 5- 6 மணி நேரம் கழித்து உபுண்டு 14.04 LTS பதிப்பு வெற்றிகரமாக தரவிறக்கம் செய்யப்பட்டது.

தரவிறக்கம் முடிந்த உடனே ஆர்வத்தில் Pendrive இல் உபுண்டுவை Bootable ஆக மாற்றி மடிக்கணினியில் Try Ubuntu கொடுத்து இயக்கினேன். இங்குதான் அதிர்ச்சி காத்திருந்தது. Try Ubuntu என கொடுத்து எப்பொழுது இயக்கினாலும் நேரடியாக நமக்கு Ubuntu Desktop கிடைத்துவிடும். இந்தமுறை அப்படி எனக்கு கிடைக்கவில்லை. Ubuntu Login Screen வந்து நின்றது. சரி பயனர் பெயரும், கடவுச்சொல்லும் கேட்கிறதே அதைக் கொடுத்துப் பார்ப்போம் என நினைத்து உபுண்டுவின் (Default Username: ubuntu, Default password: blank ) default username, password ஐ கொடுத்தேன். அப்படி கொடுத்தும் உள்ளே செல்லவில்லை. பல வழிகளில் என்னவெல்லாமோ செய்து பார்த்தேன். இறுதியில் தோல்விதான். கிட்டதட்ட 7 மணிநேரத்திற்கு மேல் வீணாகிவிட்டது. பிறகு முதலிலிருந்து தரவிறக்கம் செய்தேன். இதற்கென்று தனியாக 5-மணி நேரத்திற்கு மேல் ஆகியது. ஏன் இப்படி பிழை ஏற்பட்டது என்பதற்கான கேள்வி என் மனதிற்குள் சுழன்றுகொண்டே இருந்தது. இதுபோல் இன்னொரு சம்பவம் நடைபெற்றது அதையும் கேளுங்கள்.

சம்பவம் இரண்டு:

என் நண்பர் வெங்கட்ராமன்(பாலாஜி) அவருடைய தோழரின் கணினியில் இயங்குதளம் நிறுவ வேண்டும் என என்னை அழைத்து சென்றார். நான் இயங்குதளத்தை Pendrive வில் Bootable ஆக மாற்றி எடுத்துக்கொண்டுச் சென்றேன். அங்கும் மேலே சொன்னது போன்ற பிழை ஏற்பட்டது. சிறிய மாற்றம் என்னவென்றால், முதல் சம்பவத்தில் முழுவதுமாக நிறுவிய பிறகு பிரச்சனை வந்தது.  இங்கு நிறுவுதல் நடந்து கொண்டு இருக்கும் போதே பிரச்சனை வந்தது. அங்கும் என்னென்னவோவெல்லாம் செய்து பார்த்தேன் பிழையை சரி செய்ய முடியவில்லை. அடுத்த நாள் சென்றுதான் நிறுவுதலை முடித்தேன்.

இந்த இரண்டு சம்பவங்களிலுமே ISO கோப்புகளை Pendrive இல் bootable மாற்றும் போது எந்த பிழையும் காண்பிக்கவில்லை. நிறுவுதல் நடக்கும் போதுதான் பிழைகள் ஏற்பட்டது. bootable ஆக மாற்றும் போதே கோப்பில் பிழை இருக்கிறது என்று காண்பித்து இருந்திருந்தால் நான் சுதாரித்திருந்திருப்பேன். ஆனால் அது நடக்கவில்லை.

இவ்வளவு நேரம் என்னுடைய சொந்த கதையை பொறுமையாக படித்ததற்கு மிக்க நன்றி. சரி விஷயத்திற்கு வருகிறேன். 

உங்களுக்கு இவ்வளவு சங்கடம் ஏற்பட்டதற்கு என்ன காரணம் கதிர்? அப்படினுதானே கேட்கிறீங்க. சொல்றேங்க,

இணையத்தில் இது தொடர்பாக 2 மணிநேரத்திற்கு மேல் உதவிகளை சேகரித்து இறுதியாக காரணத்தை கண்டுபிடித்தேன். தரவிறக்கம்  செய்யப்பட்ட கோப்பில் பிழை இருந்திருக்கிறது. அந்த பிழை நமக்கு வெளிப்படையாக தெரியவில்லை, அதாவது அதை திறக்கும் போதோ அல்லது bootable ஆக மாற்றும் போதோ அது தெரியவில்லை. எல்லாம் உள்காயமாகவே இருந்திருக்கிறது.

கொஞ்சம் புரியற மாதிரி ஒரு உதாரணத்தோட சொல்றேன் கேளுங்க

உங்களிடம் உபுண்டு 14.04 இயங்குதளத்தின் ISO கோப்பு இருக்கிறது. உங்களை சந்திப்பதற்காக வீட்டிற்கு வந்த உங்கள் நண்பர் நீங்கள் உபுண்டு பயன்படுத்திக் கொண்டிருப்பதை பார்த்து ஆசைப்பட்டு அவருடைய கணினியிலும் உபுண்டு 14.04 நிறுவுவ வேண்டும் என்பதற்காக, உங்களிடம் உபுண்டு 14.04 இயங்குதளத்தை கேட்கிறார். உடனே, நீங்களும் லினக்ஸை பரப்ப வேண்டும் என்ற நோக்கில், உங்கள் நண்பரினுடைய pendrive இல் உபுண்டு 14.04 ISO கோப்பை Copy செய்து கொடுத்து அனுப்புறீங்க. உங்கள் நண்பர் அவருடைய கணினியில் அந்த ISO கோப்பை ஒரிடத்தில்(C, D, D or ...) சேமித்து வைக்கிறார். இரண்டு நாட்கள் கழித்து உபுண்டுவை நிறுவ வேண்டும் என்ற ஆர்வத்தில் ISO கோப்பை CD/DVD யிலோ அல்லது pendrive விலோ  bootable ஆக மாற்றுகிறார். மாற்றிய பின் உபுண்டுவை நிறுவும் பணியை தொடங்குகிறார். எனக்கு ஏற்பட்டது போலவே அவருக்கும் சம்பவங்கள் நிகழ்கிறது. உங்கள் நண்பர் என்ன செய்வார், இல்ல நீங்கதான் என்ன செய்ய முடியும். எவ்வளவு நேரம் வீணடிக்கப்பட்டு இருக்கும் என்று கொஞ்சம் யோசித்துப் பாருங்கள்.

சரி, கோப்பு சரியாக இருக்கிறதா அல்லது பிழையுடன் இருக்கிறதா என்பதை எப்படி கண்டுபிடிப்பது? இதற்கு ஏதேனும் வழி இருக்கிறதா? இருக்கிறது இதை கண்டுபிடிப்பதற்கு பயன்படும் கருவிதான்  MD5sum.

MD5 என்றால் என்ன?

உங்கள் கணினியில் இருக்கும் ஒவ்வொரு கோப்பிற்கும் ஒரு MD5 எண் உண்டு. நமக்கு தனித்த அடையாளமாக இருக்கும் கட்டைவிரல் ரேகையைப் போல. நீங்கள்தான் என்பதற்கு சட்டப்பூர்வமான ஒன்று கட்டைவிரல் ரேகை. அது போல உங்கள் கணினி இருக்கும் கோப்பு எந்த மாற்றமும் ஏற்படாமல் இருக்கிறது என்பதற்கான ஆதாரம் MD5 எண். மேலும் தெரிந்து கொள்ள விக்கிப்பீடியா பக்கத்திற்கு செல்லுங்கள்.

இனிமேல் இதுபோன்ற சம்பவங்கள் நடைபெறாமல் இருக்க இதுதான் சரியான வழி

உங்கள் கணினியில் இருக்கும் உபுண்டு 14.04 ISO கோப்பினை கொடுக்கும் போது அதற்கான MD5 எண்ணையும் ஒரு txt கோப்பில் சேமித்து ISO கோப்புடன் சேர்த்து உங்கள் நண்பருக்கு கொடுங்க. அவருடைய கணினியில் அதை பிரதியெடுத்த பின்,  பிரதியெடுத்த உபுண்டு 14.04 ISO கோப்பிற்கான MD5 எண்ணை நீங்கள் வழங்கியுள்ள MD5 எண்ணுடன் ஒப்பிட்டு பார்க்கட்டும். நீங்கள் வழங்கிய எண்ணும், உங்கள் நண்பரின் கணினியில் கிடைத்த எண்ணும் ஒன்றாக இருந்தால் கோப்பு நீங்கள் வழங்கியது போலவே எந்த மாற்றமும் இல்லாமல் இருக்கிறது என்று அர்த்தம். எண்களில் ஏதேனும் ஒரு இலக்கம் மாறியிருந்தாலும் கூட கோப்பில் பிழை இருக்கிறது என்று அர்த்தம்.

இதை உறுதி செய்து கொண்ட பின், கோப்பு சரியாக இருக்கிறது என்றால், உபுண்டு 14.04 ISO கோப்பை CD/DVD அல்லது Pendrive ஏதாவது ஒன்றில் bootable ஆக மாற்றி நிறுவுதலை தொடங்கலாம். பிழையாக இருக்கிறது என்றால் bootable ஆக மாற்றிக்கொண்டிருக்காமல் உங்களிடம் வந்து மறுபடியும் உபுண்டு 14.04 ISO கோப்பை பெற்றுச் சென்று அதன்பின் நிறுவுதலை ஆரம்பிக்கலாம்(அப்பொழுதும் ஒரு முறை MD5 எண்ணை சரிபார்த்துக் கொள்வது நல்லது).

கீழே இருக்கும் படத்தைப் பார்த்தால் உங்களுக்கு இன்னும் நன்றாக புரியும். கோப்பில் மாற்றம் செய்த பின் உள்ள விபரங்கள் சிவப்பு நிறத்தில் குறிப்பிடப்பட்டு இருக்கிறது. பச்சை நிறத்தில் இருப்பது கோப்பின் உண்மை நிலை. பச்சை மற்றும் சிவப்பு நிறத்தில் அடிக்கோடு இட்டு காண்பிக்கப்பட்டிருக்கும் எண்கள்தான் MD5 எண்கள். கோப்பில் மாற்றம் ஏற்பட்டு விட்டதால், இரண்டும் வேறு வேறாக இருப்பதை நீங்கள்  காணலாம்.



இதை நீங்கள் எப்படி செய்ய வேண்டும் என்ற முழு விபரமும் உபுண்டுவின் தளத்திலேயே தெளிவாக கொடுக்கப்பட்டுள்ளது. http://releases.ubuntu.com/ இந்த தளத்தில் உபுண்டுவின் ISO கோப்பிற்கான MD5 எண் கொடுக்கப்பட்டு இருக்கும். நீங்கள் கோப்பை தரவிறக்கம் செய்த பின் உங்கள் கணினியில் MD5 எண்ணை கண்டுபிடித்து அதை உபுண்டுவின் தளத்தில் இருக்கும் கோப்போடு ஒப்பிட்டுப் பாருங்கள். எனக்கு ஏற்பட்டது போன்ற மோசமான அனுபவங்கள் உங்களுக்கு ஏற்படாமல் இருக்கும்.

இது தொடர்பாக ஏதேனும் சந்தேகம் இருந்தால் பின்னூட்டம் அல்லது மின்னஞ்சல் வாயிலாக தெரியப்படுத்துங்கள். நான் பதிலளிக்க தயாராக இருக்கிறேன்.

References:

5 comments:

Srini Vasan said...

torrent ,IDM ,Flare get இதில் ஏதாதவது ஒன்றை பயன்படுத்தி ISO தரவிறக்கம் செய்திருந்தால் பிழை வந்திருக்காது என்றே நம்புகிறேன். Unetbootin வைத்து
bootable live pen drive ஆக பயன்படுத்தினாலும் பிழை வரும் வாய்ப்பு குறைவு. MD5 பிழை பற்றிய தெளிவுக்கு நன்றி.

Srini Vasan said...

IDM ,Flare get இதில் ஏதாதவது ஒன்றை பயன்படுத்தி ISO file ஐ தரவிறக்கம் செய்திருந்தால் பிழை வந்திருக்காது என்றே நம்புகிறேன். Unetbootin வைத்து
bootable live pen drive ஆக பயன்படுத்தினாலும் பிழை வரும் வாய்ப்பு குறைவு. MD5 பிழை பற்றிய தெளிவுக்கு நன்றி.

Srini Vasan said...

IDM ,Flare get இதில் ஏதாதவது ஒன்றை பயன்படுத்தி ISO file ஐ தரவிறக்கம் செய்திருந்தால் பிழை வந்திருக்காது என்றே நம்புகிறேன். Unetbootin வைத்து
bootable live pen drive ஆக பயன்படுத்தினாலும் பிழை வரும் வாய்ப்பு குறைவு. MD5 பிழை பற்றிய தெளிவுக்கு நன்றி.

Srini Vasan said...

IDM ,Flare get இதில் ஏதாதவது ஒன்றை பயன்படுத்தி ISO file ஐ தரவிறக்கம் செய்திருந்தால் பிழை வந்திருக்காது என்றே நம்புகிறேன். Unetbootin வைத்து
bootable live pen drive ஆக பயன்படுத்தினாலும் பிழை வரும் வாய்ப்பு குறைவு. MD5 பிழை பற்றிய தெளிவுக்கு நன்றி.

இரா.கதிர்வேல் said...

நன்றி ஸ்ரீனிவாசன்.