கையேடு:பாகங்கள்/நிறுவல்/நிலை
கையேடு:பாகங்கள் பெயர்வெளி (அதாவது இந்த பக்கத்தை!) அல்லது இதன் துணை பக்கத்தில் உள்ள வழிமுறைகளை நேரடியாக பின்பற்ற வேண்டாம். கையேடு:பாகங்கள் பக்கங்களை மற்ற கையேடுகளுக்கு உரைகளை ஒருங்கிணைக்க பயன்படுத்தப்படும் மீ கையேடாகும். முழுமையான நிறுவல் வழிமுறைகளுக்கு கையேடு பட்டியலில் உள்ள குறிப்பிட்ட கட்டமைப்பிற்கான கையேடை பயன்படுத்தவும்.
நிலை tarball ஐ நிறுவுதல்
நாள் மற்றும் நேரத்தை அமைத்தல்
சென்டூவை நிறுவுவதற்கு முன் நாள் மற்றும் நேரம் சரியாக அமைக்கப்பட்டிருக்க வேண்டும். சரியாக அமைக்கப்படாத மணிக்கூடு பல எதிர்மறையான விளைவுகளை ஏற்படுத்தும். சென்டூவின் வலைத்தள அடிப்படையிலான சேவைகள் பாதுகாப்பு சான்றிதழ்களை பயன்படுத்துவதால், முறைமை மணிக்கூடு மிகவும் மாறுபட்டு இருக்கும்போது நிறுவல் கோப்புகளைப் பதிவிறக்கக் கூட முடியாமல் போகலாம். மேலும், கோப்புகள் எதிர்கால நாளை கொண்டு சேமிக்கப்பட்டிருந்தால், நிறுவல் முடிந்தவுடன் மணிக்கூட்டை சரியாக அமைத்தால் கூட சில முரண்பட்ட பிழைகளை ஏற்படுத்த வாய்ப்புள்ளது.
நடப்பிலுள்ள நாள் மற்றும் நேரத்தை சரிபார்க்க date கட்டளையை இயக்கவும்:
root #
date
Mon Oct 3 13:16:22 PDT 2022
நாள்/நேரம் தவறாகத் தோன்றினால், அதைப் புதுப்பிக்கக் கீழுள்ள வழிமுறைகளுள் ஒன்றைப் பயன்படுத்தவும்.
தானியக்கமாக
பெரும்பாலான வாசகர்கள் நேரச் சேவையகத்தைப் பயன்படுத்தி தங்கள் முறைமை நேரத்தை தானியக்கமாக புதுப்பிக்க விரும்புவார்கள்.
நிகழ் நேர மணிக்கூடு (RTC) இல்லாத தாய் பலகைகள் நேரச் சேவையகங்களோடு முறைமை மணிக்கூட்டைத் தானியக்கமாக ஒத்திசைக்க உள்ளமைக்கப்பட வேண்டும். இது RTC இருந்தும் தோல்வியடைந்த மின்கலத்தைக் கொண்டிருக்கும் முறைமைகளுக்கும் பொருந்தும்.
அதிகாரப்பூர்வமான சென்டூ நேரலை நிறுவல் ஊடகம் net-misc/ntp தொகுப்பு மூலம் கிடைக்கும் ntpd கட்டளையை உள்ளடக்கியுள்ளது. மேலும் இது ntp.org நேரச் சேவையகங்களுக்கான உள்ளமைவு கோப்பையும் கொண்டுள்ளது. இதன்மூலம் நேரச் சேவையகங்களைப் பயன்படுத்தி முறைமை மணிக்கூட்டை UTC நேரத்தோடு தானியக்கமாக ஒத்திசைக்க பயன்படுத்திக் கொள்ள முடியும். இந்த முறையைப் பயன்படுத்த வேளை செய்யக்கூடிய வலையமைப்பு உள்ளமைவு தேவை. மேலும் இது எல்லா கட்டமைப்புகளுக்கும் கிடைக்காமல் இருக்கலாம்.
தானியக்க நேர ஒத்திசைவிற்கு ஒரு விலை தர வேண்டியுள்ளது. இது முறைமையின் IP முகவரி மற்றும் அதனைச் சார்ந்த வலையமைப்பு தகவல்களை நேரச் சேவையகங்களுக்கு வெளிப்படுத்தும் (கீழுள்ள எடுத்துக்காட்டு சூழலில் ntp.org). தனியுரிமையைப் பற்றிக் கவலைப்படும் பயனர்கள் நேர மணிக்கூட்டைக் கீழுள்ள வழிமுறையைப் பயன்படுத்தி அமைப்பதற்கு முன் இதை அறிந்திருக்க வேண்டும்.
root #
ntpd -q -g
கைமுறையாக
நேர சேவையகங்களை அணுக இயலாத முறைமைகள் கைமுறையாக முறைமை மணிக்கூட்டை அமைப்பதற்கு date கட்டளையையும் பயன்படுத்தலாம். இது மாமாநாநாமமநிநிவவவவ
என்னும் தொடரியலை (மாதம், நாள், மணி, நிமிடம் மற்றும் வருடம்) பயன்படுத்தும்.
UTC நேரம் எல்லா லினக்ஸ் முறைமைகளிலும் பரிந்துரைக்கப்படுகிறது. நிறுவலின் போது ஒரு நேர வலயம் வரையறுக்கப்படும். இதன்மூலம் மணிக்கூட்டின் நேரம் உள்ளூர் நேரப்படி மாற்றியமைக்கப்படும்.
எடுத்துக்காட்டாக, 2022 ஆம் ஆண்டு அக்டோபர் 3 ஆம் நாள் மதியம் 13:16 மணி என்பதை அமைப்பதற்கு:
root #
date 100313162022
நிலை tarball ஐ தேர்ந்தெடுத்தல்
எல்லா கட்டமைப்புக்கும் multilib விருப்பத்தேர்வு கிடைப்பதில்லை. பெரும்பாலானவை பிறப்பிட நிரல்களை கொண்டு மட்டுமே இயங்கும். multilib பொதுவாக amd64க்கு செயல்படுத்தப்படுகிறது.
Multilib (32 மற்றும் 64-இருமம்)
முறைமைக்கான அடிப்படை tarball ஐ தேர்வு செய்வது இந்த நிறுவல் செயலில் கணிசமான அளவு நேரத்தைச் சேமிக்கும், குறிப்பாக முறைமைக்கான சரியான தனியமைப்பைத் தேர்வு செய்யும் நேரம் வரும்போது. நிலை tarball ஐ தேர்ந்தெடுப்பது எதிர்கால முறைமை உள்ளமைவை நேரடியாகப் பாதிப்பதோடு பின்னர் வரும் ஒன்றிரண்டு தலைவலிகள் தவிர்க்கும். multilib ற்கான tarball 64 இரும தரவகங்களை வாய்ப்புள்ள போதெல்லாம் பயன்படுத்தி, பொருத்தக் காரணங்களுக்காக சில நேரம் 32 இருமத்திற்கு மாறிக்கொள்ளும். எதிர்காலத்தில் தனிப்பயனாக்கலுக்கு சிறந்த அளவிலான நெகிழும் தன்மையை அளிப்பதால் பெரும்பாலான நிறுவல்களுக்கு இது மிகச்சிறந்த தேர்வாகும். தங்கள் முறைமையில் எளிமையாகத் தனியமைப்பை மாற்றிக்கொள்ளுவதை விரும்பும் பயனர்கள் அவர்களுடைய செயலாக்கியின் கட்டமைப்பிற்கு ஏற்ற multilib பதிவிறக்கிக்கொள்ள வேண்டும்.
பெரும்பாலான பயனர்கள் 'மேம்பட்ட' tarball களை பயன்படுத்தக் கூடாது. இவை குறிப்பிட்ட மென்பொருள் அல்லது வன்பொருள் உள்ளமைப்புகளுக்காக வடிவமைக்கப்பட்டது.
multilib இல்லாத (சுத்தமான 64-இருமம்)
முறைமைக்கான அடிப்படையாக multilib அல்லாத tarball ஐ தேர்வு செய்தல் முழு 64 இரும இயங்குதள சூழலை அளிக்கிறது. இது எளிமையாக ஒரு multilib தனியமைப்பிலிருந்து மற்றொன்றிற்கு மாறுவதை, நிகழ இயலாததாக ஆனால் வாய்ப்புள்ளதாகச் செய்துவிடுகிறது.
சென்டூ உலகில் அடியெடுத்து வைக்கும் வாசகர்கள், முற்றிலும் அவசியமானால் தவிர, multilib tarball ஐ தேர்வு செய்யக்கூடாது. multilib அல்லாத முறைமையிலிருந்து multilib உள்ள முறைமைக்கு மாற்ற சென்டூவில் மிகதீவிரமாக வேலைசெய்யக்கூடிய அறிவும், கீழ்மட்ட கருவி தொகுதிகளும் தேவை (இது எங்கள் கருவி தொகுதி உருவாக்குநர்களையே சற்று நடுங்க வைக்கும்). இளகிய இருதயமுள்ளவர்களுக்கு இது பொருத்தமானதல்ல. மேலும் இது இந்த கையேட்டின் எல்லைக்கு அப்பாற்பட்டது.
OpenRC
OpenRC என்பது முறைமையினால் அளிக்கப்பட்ட init நிரலின் (வழக்கமாக /sbin/init என்னும் இடத்தில் சேமிக்கப்பட்டிருக்கும்) ஒவ்வுமையை பராமரிக்கும் ஒரு சார்புநிலை அடிப்படையிலான init முறைமையாகும் (கருநிரல் துவக்கப்பட்டவுடன் முறைமை சேவைகள் தொடங்குவதற்கு இது காரணியாகும்). சென்டூவின் சொந்த மற்றும் உண்மையாக init முறைமையான இது மற்ற சில லினக்சு வழங்கல்கள் மற்றும் BSD முறைமைகளிலும் பயன்படுத்தப்படுகிறது.
OpenRC இயல்பாகவே /sbin/init கோப்பிற்கு மாற்றாக செயல்படுவதில்லை. மேலும் இது நூறு விழுக்காடு சென்டூவின் init குறுநிரலோடு ஒத்தப்போக கூடியது. இதன்மூலம், சென்டூ ebuild கருவூலத்திலிருந்து பன்னிரண்டிற்கும் அதிகமான மறைநிரல்களை இயக்குவதற்கான விடை கிடைத்துவிட்டது என்றே கூற வேண்டும்.
systemd
systemd என்பது லினக்சு முறைமைகளுக்காக அண்மைக் காலத்துக்குரிய SysV-போன்ற நடையைக் கொண்ட, init மற்றும் rc கான மாற்றாகும். பெரும்பாலான லினக்சு வழங்கல்களில் இது முதன்மை init முறைமையாக பயன்படுத்தப்பட்டு வருகிறது. சென்டூவில் systemd ஆதரிக்கப்பட்டு அதன் பணியை சிறப்பாக செய்து வருகிறது. systemd நிறுவல் பாதைக்கான கையேட்டில் ஏதேனும் குறைபாடு இருப்பதாகத் தோன்றினால், உதவி கேட்பதற்கு முன் systemd கட்டுரையை பார்க்கவும்.
இயங்கிக் கொண்டிருக்கும் ஒரு சென்டூ நிறுவலில் OpenRC இல் இருந்து systemd க்கு மாறவும், முன்னிலைக்குத் திரும்பவும் வாய்ப்புள்ளது. இருப்பினும் இதற்கு நிறைய உழைப்பு தேவைப்படும். மேலும் இது இந்த நிறுவல் கையேட்டின் எல்லைக்கு அப்பாற்பட்டது. உங்கள் நிறுவலில் நீங்கள் எதைப் பயன்படுத்த விரும்புகிறீர்கள் என்பதைப் பொறுத்துச் சரியான நிலை tarball ஐ தேர்ந்தெடுப்பதை உறுதிசெய்து கொள்ளவும்.
நிலை tarball ஐ பதிவிறக்குதல்
வேர் கோப்பு முறைமை ஏற்றப்பட்டுள்ள சென்டூ ஏற்றப்பகுதிக்குச் செல்லவும் (பெரும்பாலும் இது /mnt/gentoo):
root #
cd /mnt/gentoo
வரைவியல் உலாவிகள்
முழுமையாக வரைவியல் இணைய உலாவிகளைக் கொண்டுள்ள சூழல்களைப் பயன்படுத்துவோர்களுக்கு முதன்மை இணையதளத்தில் உள்ள பதிவிறக்கப் பிரிவிலிருந்து நிலை கோப்பின் உரலியை நகலெடுப்பதில் எந்த சிக்கலும் இருக்காது. பொருத்தமான கீற்றைத் தேர்வு செய்து, நிலை கோப்பின் தொடுப்பை வலச் சொடுக்கி, தொடுப்பை கிளிப்போர்டில் நகலெடுப்பதற்கு Copy Link என்பதை அழுத்தி, பின் நிலை கோப்பை பதிவிறக்க நகலெடுக்கப்பட்ட தொடுப்பைக் கட்டளை-வரியில் உள்ள wget பயன்கூறு நிரலில் ஒட்டவும்:
root #
wget <ஒட்டப்பட_வேண்டிய_நிலை_உரலி>
கட்டளை-வரி உலாவிகள்
முற்றிலுமாக கட்டளை வரியில் மட்டுமே பணியாற்றும் பல மரபுவழி படிப்பவர்கள் மற்றும் 'பழமையை விரும்பும்' சென்டூ பயனர்கள், வரைவியல் அல்லாத பட்டிவழி-இயங்கு உலாவியான links (www-client/links) ஐ விரும்புகின்றனர். நிலையைப் பதிவிறக்க சென்டூ கண்ணாடி பட்டியலுக்குள் இவ்வாறாக உலாவவும்:
root #
links https://www.gentoo.org/downloads/mirrors/
links உடன் HTTP பதிலாளியை பயன்படுத்த -http-proxy
என்னும் விருப்பத்தேர்வுடன் URL ஐ அளிக்கவும்:
root #
links -http-proxy proxy.server.com:8080 https://www.gentoo.org/downloads/mirrors/
links ஐ தொடர்ந்து lynx (www-client/lynx) என்னும் பெயரில் மேலும் ஒரு உலாவி உள்ளது. links ஐ போல இதுவும் ஒரு வரைவியல் அல்லாத உலாவியாகும். ஆனால் இது பட்டிவழியில் இயங்குவதில்லை.
root #
lynx https://www.gentoo.org/downloads/mirrors/
பதிலாளி வரையறுக்கப்பட வேண்டும் என்றால், http_proxy மற்றும்/அல்லது ftp_proxy மாறிகளை ஏற்றுமதி செய்யவும்:
root #
export http_proxy="http://proxy.server.com:port"
root #
export ftp_proxy="http://proxy.server.com:port"
கண்ணாடி பட்டியலில் அருகில் உள்ள கண்ணாடியைத் தேர்வு செய்யவும். பொதுவாக HTTP கண்ணாடிகளே போதுமானது என்றாலும் கூடுதல் வரைமுறைகளும் அளிக்கப்பட்டுள்ளன. releases/amd64/autobuilds/ அடைவிற்குள் செல்லவும். இங்குக் கிடைக்கப்படும் எல்லா நிலை கோப்புகளும் காட்டப்பட்டிருக்கும் (தனி துணை-கட்டமைப்புகளின் பெயரில் பெயரிடப்பட்டுள்ள துணை அடைவுக்குள் இருக்கலாம்). இதில் ஒன்றைத் தேர்வு செய்த பின் பதிவிறக்குவதற்கு d விசையை அழுத்தவும்.
நிலை கோப்பின் பதிவிறக்கம் முடிந்தவுடன், நிலை கோப்பின் உள்ளடக்கம் மற்றும் அதன் ஒருமைப்பாட்டைச் சரிபார்க்க வாய்ப்புள்ளது. இதில் ஆர்வம் கொண்டுள்ளவர்கள் அடுத்த பக்கத்தில் தொடரவும்.
நிலை கோப்பை சரிபார்க்க மற்றும் ஏற்புடைமையை உறுதிப்படுத்த விரும்பாதோர் q விசையை அழுத்தி கட்டளை-வரியை மூடி பின் நேரடியாக நிலை tarball ஐ கட்டவிழ்தல் பிரிவிற்குச் செல்லலாம்.
சரிபார்த்தல் மற்றும் ஏற்புடைமையை உறுதிப்படுத்தல்
பெரும்பாலான நிலைகள் வெளிப்படையாக openrc அல்லது systemd init முறைமை வகையை பின்னொட்டாக கொண்டிருக்கும். இருப்பினும் சில கட்டமைப்புகளில் இப்போதைக்கு அவை இல்லாமல் இருக்கும்.
சிறும குறுந்தகட்டைப் போல, நிலை கோப்பை சரிபார்ப்பதற்கு மற்றும் ஏற்புடைமையை உறுதிப்படுத்துவதற்குக் கூடுதல் பதிவிறக்கங்கள் உள்ளன. இந்த படிநிலையைத் தவிர்க்கலாம் என்றாலும் கோப்பு முறையான இடத்தில் இருந்துதான் பதிவிறக்கப்பட்டதா என்பதை அறிய விரும்பும் பயனர்களுக்காக இவ்வகை கோப்பு(கள்) அளிக்கப்பட்டுள்ளன.
- .CONTENTS கோப்பு, நிலை tarball இனுள் உள்ள எல்லா கோப்புகளின் பட்டியலைக் கொண்டுள்ளது.
- .DIGESTS கோப்பு, நிலை கோப்பின் சரிகாண்தொகையை வெவ்வேறு படிமுறைகளில் கொண்டுள்ளது.
- .DIGESTS.asc கோப்பு, .DIGESTS கோப்பை போல், நிலை கோப்பின் சரிகாண்தொகையை வெவ்வேறு படிமுறைகளில் கொண்டுள்ளதோடு, அது சென்டூ செயற்றிட்டத்தால் வழங்கப்பட்டது என்பதை உறுதி செய்யும் வகையில் மறைகுறியீடு மூலம் கையொப்பமிடப்பட்டுள்ளது.
openssl கட்டளையைப் பயன்படுத்தி வெளியீடுகளை .DIGESTS அல்லது .DIGESTS.asc கோப்புகள் அளித்த சரிகாண்தொகையோடு ஒப்பிட்டுப் பார்க்கவும்.
எடுத்துக்காட்டாக, SHA512 சரிகாண்தொகையை சரிபார்ப்பதற்கு:
root #
openssl dgst -r -sha512 stage3-amd64-<release>-<init>.tar.xz
இதற்கான மற்றொரு வழியாக sha512sum கட்டளையைப் பயன்படுத்தலாம்:
root #
sha512sum stage3-amd64-<release>-<init>.tar.xz
Whirlpool சரிகாண்தொகையை சரிபார்ப்பதற்கு:
root #
openssl dgst -r -whirlpool stage3-amd64-<release>-<init>.tar.xz
இந்த கட்டளைகளால் வரும் வெளியீடுகளை .DIGESTS(.asc) கோப்பில் பதிவுசெய்யப்பட்டுள்ள மதிப்புகளோடு ஒப்பிடவும். மதிப்புகள் பொருந்த வேண்டும், இல்லையென்றால் பதிவிறக்கப்பட்ட கோப்பு (அல்லது digest கோப்பு) பழுதடைந்திருக்கலாம்.
ISO கோப்பை போல், .DIGESTS.asc கோப்பில் உள்ள மறைகுறியீட்டு கையொப்பத்தையும் gpg கட்டளையைக் கொண்டு அதில் உள்ள சரிகாண்தொகை எந்த இடத்திலும் சிதைக்கப்படவில்லை என்பதை உறுதிப்படுத்திக்கொள்ளச் சரிபார்க்கலாம்:
root #
gpg --verify stage3-amd64-<release>-<init>.tar.xz{.DIGESTS.asc,}
வெளியீடு ஊடகத்தைக் கையொப்பமிடப் பயன்படுத்தப்பட்ட OpenPGP திறவுகோல்களின் ஒப்பங்களை சென்டூ இணையச் சேவையகத்தில் உள்ள வெளியீடு ஊடக ஒப்பங்கள் பக்கத்தில் கிடைக்கும்.
நிலை tarball ஐ கட்டவிழ்தல்
இப்போது பதிவிறக்கிய நிலையை முறைமைக்குள் கட்டவிழ்க்கவும். இதற்கு tar நிரலை பயன்படுத்தலாம்:
root #
tar xpvf stage3-*.tar.xz --xattrs-include='*.*' --numeric-owner
இதே விருப்பத்தேர்வுகள் (xpf
மற்றும் --xattrs-include='*.*'
) கட்டளையில் பயன்படுத்தப்பட்டிருப்பதை உறுதிப்படுத்திக் கொள்ளவும். இதில் பிழிந்தெடுப்பதற்கு (extract) x
விருப்பத்தேர்வும், அனுமதிகளைப் பாதுகாப்பதற்கு (preserve) p
விருப்பத்தேர்வும், ஒரு கோப்பை (file) பிழிந்தெடுப்பதற்கு f
விருப்பத்தேர்வும் (வழக்கமான உள்ளிடு கோப்பிற்கான விருப்பத்தேர்வு இல்லை) பயன்படுத்தப்பட்டுள்ளது. --xattrs-include='*.*'
என்பது காப்பக கோப்பில் சேமிக்கப்பட்டிருக்கும் எல்லா பெயர் வெளிகளின் விரிவாக்கப்பட்ட பண்புகளை பேணி காப்பதற்காகச் சேர்க்கப்படுவதாகும். இறுதியாக, --numeric-owner
என்னும் விருப்பத்தேர்வானது சென்டூ வெளியீடு பொறியியல் குழு திட்டமிடப்பட்டது போல், tarball லில் இருந்து பிழிந்தெடுக்கப்பட்ட கோப்புகளின் பயனர்கள் மற்றும் குழு ID க்கள் மாறாமல் இருப்பதை உறுதிப்படுத்துகிறது (சில துணிவாகப் பயனர்களால் அதிகாரப்பூர்வமான சென்டூ நேரலை நிறுவல் ஊடகம் பயன்படுத்தப்படாத சூழலிலும்).
இப்போது நிலை கோப்பு கட்டவிழ்க்கப்பட்டு விட்டதால், மேற்கொண்டு தொகுத்தல் விருப்பத்தேர்வுகளை உள்ளமைத்தல் இல் தொடரலாம்.
தொகுத்தல் விருப்பத்தேர்வுகளை உள்ளமைத்தல்
முன்னுரை
முறைமையை உகப்பாக்க, சென்டூவால் அதிகாரப்பூர்வமாக ஆதரிக்கப்பட்ட தொகுப்பு செயலாட்சியாளரான Portage இன் நடத்தையை நேரடியாகப் பாதிக்கும் ஓரிரு மாறிகளை அமைக்க வாய்ப்புள்ளது. இத்தகைய மாறிகளையெல்லாம் சூழல் மாறிகளாக (export ஐ பயன்படுத்தி) அமைக்கலாம். ஆனால், இது நிலையானதல்ல.
பொதுவாக மாறிகள் செயற்றிளத்தின் தனியமைப்பு அல்லது rc கோப்புகள் மூலம் ஏற்றுமதி செய்யலாம். இருப்பினும் இது அடிப்படை முறைமை மேலாண்மைக்கான சிறந்த வழிமுறையாக கருதப்படுவதில்லை.
Portage இயங்கும் போது make.conf கோப்பை படிக்கும். இந்த கோப்பில் சேமித்து வைத்துள்ள மதிப்புகள் இதன் ஓடுநிலை நடத்தையை மாற்றியமைக்கும். make.conf கோப்பானது Portage இன் முதன்மை உள்ளமைவு கோப்பாக கருதப்படுவதால் இதன் உள்ளடக்கத்தை கவனமாக கையாளவும்.
எல்லா வாய்ப்புள்ள மாறிகளின் கருத்திடப்பட்ட பட்டியலை /mnt/gentoo/usr/share/portage/config/make.conf.example இல் காணலாம். வெற்றிகரமான சென்டூ நிறுவலுக்கு கீழுள்ள மாறிகளை மட்டும் அமைத்தால் பொதுமானது.
வெற்றிகரமான சென்டூ நிறுவலுக்கு கீழே குறிப்பிடப்பட்டுள்ள மாறிகளை மட்டும் அமைத்தால் போதும்.}}
உகப்பாக்குதல் மாறிகளைப் பின்வருமாறு திருத்த உரை திருத்தியை (இந்த கையேட்டில் நாங்கள் nano வை பயன்படுத்துகிறோம்) துவக்கவும்.
root #
nano -w /mnt/gentoo/etc/portage/make.conf
make.conf.example கோப்பின் மூலம் make.conf கோப்பு எவ்வாறு வடிவமைக்கப்பட்டிருக்க வேண்டும் என்பதை அறிந்து கொள்ளலாம். கருத்து தெரிவிக்கப்பட்ட வரிகள் #
ஐ கொண்டு துவங்களும். மற்ற வரிகள் மாறி="உள்ளடக்கம்"
என்னும் தொடரியலில் மாறிகளை வரையறுக்கின்றன (இதில் மாறி பெயர்கள் பெரிய எழுத்துக்களில் இருக்கும்). இவ்வகை மாறிகளை அடுத்த பிரிவில் பார்க்கலாம்.
CFLAGS மற்றும் CXXFLAGS
CFLAGS மற்றும் CXXFLAGS கொடிகள் முறையே GCC யின் C மற்றும் C++ தொகுப்பிகளுக்கான உகப்பாக்குதல் கொடிகளை வரையறுக்கின்றன. பொதுவாக எல்லாம் இங்கு வரையறுக்கப்பட்டிருந்தாலும், அதிகப்படியான செயல்திறனுக்காக ஒருவர் இந்த கொடிகளை ஒவ்வொரு நிரல்களுக்கும் தனித்தனியாக உகப்பாக்க வேண்டியிருக்கும். இதற்குக் காரணம் ஒவ்வொரு நிரலும் ஒன்றிலிருந்து இன்னொன்று மாறுபட்டவை. இருப்பினும், இது நிர்வகிக்கக்கூடியதில்லை என்பதால் இவ்வகை கொடிகளுக்கான வரையறுத்தல்கள் ஏற்கனவே make.conf கோப்பில் உள்ளன.
make.conf கோப்பில் ஒருவர் முறைமையை பொதுவாகவே சிறப்பாகப் பதிலளிக்கக்கூடியதாக மாற்றக் கூடிய உகப்பாக்கல் கொடிகளை வரையறுக்க வேண்டும். சோதனை வழி அமைப்புகளை இந்த மாறியில் இட வேண்டாம்; அளவுக்கு அதிகமான உகப்பாக்கல் நிரல்களை முறையில்லாமல் செயல்பட வைக்கலாம் (பழுதாகலாம் அல்லது இன்னும் மோசமான சிக்கல்களும் ஏற்படலாம்).
நாங்கள் எல்லா வாய்ப்புள்ள உகப்பாக்கல் விருப்பத்தேர்வுகளைப் பற்றியும் விளக்கப்போவதில்லை. இதையெல்லாம் புரிந்துகொள்வதற்கு GNU எழிவரி கையேடு(கள்) அல்லது GCC இன் தகவல் பக்கத்தை (info gcc கட்டளை தொடர் - லினக்ஸ் முறைமைகளில் மட்டுமே வேளை செய்யும்) படிக்கவும். make.conf.example கோப்பும் பல எடுத்துக்காட்டுகள் மற்றும் தகவல்களைக் கொண்டுள்ளது; படிக்க மறவாதீர்.
முதல் அமைப்பான -march=
அல்லது -mtune=
கொடி இலக்கு கட்டமைப்பின் பெயரைக் குறிக்கிறது. வாய்ப்புள்ள விருப்பத்தேர்வுகள் make.conf.example கோப்பில் (கருத்து வடிவில்) விவரிக்கப்பட்டுள்ளது. இதற்கு பொதுவாகப் பயன்படுத்தப்படும் native என்னும் மதிப்பானது தொகுப்பியை இப்போதுள்ள முறைமையின் (ஜென்டூவை நிறுவிக் கொண்டிருப்பதில் உள்ள) இலக்கு கட்டமைப்பைத் தேர்வு செய்யச் சொல்லும்.
இரண்டாவதாக உள்ள -O
கொடி (பெரிய எழுத்து O, சுழியம் இல்லை) gcc உகப்பாக்குதல் வகுப்பு கொடியாகும். வாய்ப்புள்ள வகுப்புகள்: s (அளவு உகப்பாக்கப்பட்டது), 0 (சுழியம் - எந்த உகப்பாக்கலும் இல்லை), 1, 2 அல்லது ஏன் 3 ஐ கூடக் கூடுதல் வேக-உகப்பாக்கல் கொடிகளாகப் பயன்படுத்தலாம் (ஒவ்வொரு வகுப்பும் அதற்கு முந்திய வகுப்பின் கொடியை விடச் சற்று கூடுதலாகக் கொண்டிருக்கும்). முன்னிருப்பாக -O2
பரிந்துரைக்கப்படுகிறது. -O3
முறைமை முழுமைக்கும் பயன்படுத்தும்போது சில சிக்கல்கள் ஏற்படுவதால், -O2
ஐ பயன்படுத்துமாறு பரிந்துரைக்கிறோம்.
-pipe
என்பது மற்றொரு புகழ்பெற்ற உகப்பாக்கல் கொடியாகும் (தொகுத்தலின் பல்வேறு நிலைகளுக்கு இடையில் தொடர்பு கொள்ளத் தற்காலிக கோப்புகளை விடக் குழாய்களைப் பயன்படுத்தவும்). இது உற்பத்தி செய்யப்பட்ட குறியீட்டில் எந்த ஒரு தாக்கத்தையும் ஏற்படுத்தாது. ஆனால் அதிக நினைவக இடத்தை பயன்படுத்தும். குறைவான நினைவக அளவை கொண்டுள்ள முறைமைகளில் சூழலில், இதனால் gcc நிறுத்தப்பட்டுவிட வாய்ப்புள்ளதால் இந்த கொடியை இதற்குப் பயன்படுத்த வேண்டாம்.
-fomit-frame-pointer
ஐ பயன்படுத்துவதால் (இதனால் செயல்களுக்குத் தேவைப்படாத சட்ட குறிமுள்ளைப் பதிவேட்டில் வைத்திருப்பதில்லை) செயலியை வழுநீக்கும்போது கடுமையான விளைவுகள் ஏற்படுத்தக்கூடும்.
CFLAGS மற்றும் CXXFLAGS மாறிகளை வரையறுக்கும்போது வெவ்வேறு உகப்பாக்கல் கொடிகளைச் சேர்த்து ஒரே சரமாக்கவும். இதற்குக் கட்டவிழ்க்கப்பட்ட நிலை3 காப்பக கோப்பிலிருந்த முன்னிருப்பு மதிப்புகள் போதுமானது. பின்வருவது ஒரு எடுத்துக்காட்டு மட்டுமே:
# எல்லா மொழிகளுக்கும் அமைப்பதற்கான தொகுப்பி கொடிகள் COMMON_FLAGS="-march=native -O2 -pipe" # இரண்டு மாறிகளுக்கும் ஒரே அமைப்புகளை பயன்படுத்தவும் CFLAGS="${COMMON_FLAGS}" CXXFLAGS="${COMMON_FLAGS}"
GCC உகப்பாக்கல் கட்டுரை பல்வேறு தொகுத்தல் விருப்பத்தேர்வுகள் ஒரு முறைமையில் எவ்வகை தாக்கத்தை ஏற்படுத்தும் என்பதைப் பற்றிய பல தகவல்களை அளித்தாலும், முறைமையை உகப்பாக்கல் பற்றி எளிமையாக விளக்கும் Safe CFLAGS கட்டுரையானது புதிய பயனர்களுக்கு மிகவும் பயனுள்ளதாக இருக்கும்.
MAKEOPTS
MAKEOPTS மாறி ஒரு தொகுப்பை நிறுவும்போது எத்தனை இணை தொகுத்தல்கள் செயல்பட வேண்டும் என்பதை வரையறுக்கிறது. Portage பதிப்பு 3.0.31[1] இன் படி, இது வரையறுக்கப்படாமல் இருந்தால், nproc கட்டளை அளிக்கும் இழைகளின் எண்ணிக்கைகளை MAKEOPTS மாறிக்கு அமைப்பது Portage இன் முன்னிருப்பு நடத்தையாகும்.
மையசெயலகம் கொண்டுள்ள இழைகளின் எண்ணிக்கையை (அல்லது முறைமை நினைவகத்தின் மொத்த அளவை) 2 ஆல் வகுத்து வரும் எண்ணை விட குறைவாக அமைப்பது சிறந்த தேர்வாகும்.
அதிக எண்ணிக்கையிலான வேளைகளைப் பயன்படுத்தும்போது குறிப்பிடத்தக்க வகையில் நினைவகம் செலவிடப்படும். ஒவ்வொரு குறிப்பிட்ட வேளைக்கும் குறைந்தது 2 GiB அளவுள்ள RAM ஐ தரப் பரிந்துரைக்கப்படுகிறது (எடுத்துக்காட்டாக
-j6
என்னும் வேளைக்குக் குறைந்தது 12 GiB அளவிற்கு நினைவகம் தேவைப்படும்). நினைவு தீர்ந்து போவதைத் தவிர்க்க, இருக்கும் நினைவகத்திற்குத் தகுந்தவாறு வேளைகளின் எண்ணிக்கையைக் குறைக்கவும்.இணை emerge களை (
--jobs
) பயன்படுத்தும்போது, பயனுள்ள வேளைகளின் எண்ணிக்கை கணிசமாக உயரும் (make வேளைகளை emerge வேளைகளால் பெருக்கினால் வரும் எண்ணிக்கை வரை). இதை உள்ளூர் புரவலன்-மட்டும் distcc உள்ளமைவை இயக்குவதன் மூலம் ஒரு புரவலனுக்கான தொகுப்பு வேளைகளின் எண்ணிக்கைகளின் அளவை கட்டுப்படுத்துகிறது./etc/portage/make.conf
MAKEOPTS ஐ make.conf இல் அறிவிப்பதற்கான எடுத்துக்காட்டு#இது வரையறுக்கப்படாமல் இருந்தால், <span style="font-family: monospace; font-size: 95%; font-weight: bold;" class="tripleclick-separator">nproc</span> கட்டளை அளிக்கும் இழைகளின் எண்ணிக்கைகளை <var>MAKEOPTS</var> மாறிக்கு அமைப்பது Portage இன் முன்னிருப்பு நடத்தையாகும். MAKEOPTS="-j4"
மேலும் விவரங்களுக்கு man 5 make.conf இல் MAKEOPTS ஐ தேடவும்.
அணியம், அமை, செல்!
உங்கள் தனிப்பட்ட விருப்பத்திற்கு ஏற்றவாறு /mnt/gentoo/etc/portage/make.conf கோப்பை மாற்றியமைத்து பின் சேமிக்கவும் (nano உரை திருத்தி பயனர்கள் முதலில் Ctrl+o ஐ அழுத்தி எழுதியவுடன் Ctrl+x கூட்டு விசையை வெளியேறுவதற்கு அழுத்தவும்).
பிறகு அடிப்படை முறைமையை நிறுவுதல் இல் தொடரலாம்.