SSD Nodes Learn 🎉 VPS $5.50/மாதம் முதல்
கல்வி வழிகாட்டிகள் Matt Connorஆல் Matt Connor · புதுப்பிக்கப்பட்டது 2026-08-13

Linux distribution-களின் வரலாறு மற்றும் அதன் பரிணாமம்

Linux distribution-களின் குடும்ப மரம், Slackware, Debian மற்றும் Red Hat ஆகியவற்றின் தாக்கத்தை விளக்குகிறது. உங்கள் VPS இமேஜ்கள் எதிலிருந்து உருவானவை என்பதை விரிவாக அறியுங்கள்.

Linux distribution என்பது உண்மையில் என்ன

Linux distribution-ன் வரலாறு ஒரு இடைவெளியுடன் தொடங்குகிறது: Linux kernel மட்டும் தனியாகப் பயனருக்குப் பயன்படும் எதையும் செய்வதில்லை. அது boot ஆகி hardware-ஐக் கண்டறியும். பிறகு நின்றுவிடும். யாராவது ஒரு userland-ஐச் சேர்க்க வேண்டும், மென்பொருள் எவ்வாறு நிறுவப்பட வேண்டும் மற்றும் புதுப்பிக்கப்பட வேண்டும் என்பதைத் தீர்மானிக்க வேண்டும், மேலும் பல ஆண்டுகளுக்கு அதைச் சரிசெய்வதாக உறுதியளிக்க வேண்டும். ஒரு distribution என்பது அந்தத் தேர்வுகளின் தொகுப்பு, அதனுடன் அதைத் தொடர்ந்து பராமரிக்கும் நபர்களின் குழு.

இதில் ஐந்து பகுதிகள் உள்ளன. இதில் எதை மாற்றினாலும், binaries பெரும்பாலும் ஒன்றாக இருந்தாலும், அது ஒரு வேறுபட்ட distribution ஆகிவிடும்:

  • ஒரு kernel: அந்தத் திட்டம் தேர்ந்தெடுத்த பதிப்பில், அது சேர்த்த patches மற்றும் drivers-உடன்.
  • ஒரு userland: C library, shell, init system, மற்றும் standard commands.
  • ஒரு package format: மற்றும் அதை நிறுவும் கருவி.
  • ஒரு release policy: எவை மாறலாம், எவ்வளவு அடிக்கடி, மற்றும் ஒவ்வொரு release-ம் எவ்வளவு காலம் சரிசெய்யப்படும் என்பது.
  • நபர்கள்: package maintainers, ஒரு security team, மற்றும் ஒரு package பழுதடையும் போது பதிலளிக்கும் நபர்.

Kernel என்பது பகிரப்பட்ட பகுதி என்பதால், இரண்டு Linux distribution-கள் ஒன்றுக்கொன்று மிக நெருக்கமாக இருக்கும், ஆனால் அவை மற்ற Unix-களுடன் அவ்வளவு நெருக்கமாக இருக்காது. Linux மற்றும் FreeBSD-ஐ server தளங்களாக ஒப்பிடும்போது இதைக் கவனத்தில் கொள்வது அவசியம்; அங்கு kernel மற்றும் base userland ஆகியவை ஒரே திட்டத்தால் உருவாக்கப்பட்டு ஒன்றாக வெளியிடப்படுகின்றன. Linux-ல் அந்தப் பாகங்கள் தனித்தனி upstreams-லிருந்து வருகின்றன, அவற்றை ஒருங்கிணைக்கும் காரணியே distribution ஆகும்.

மூன்று குடும்பங்களாக Linux விநியோகங்களின் வரலாறு

1993 மற்றும் 1994-ல் தொடங்கப்பட்ட மூன்று திட்டங்கள் முக்கிய குடும்பங்களாக மாறின: Slackware, Debian மற்றும் Red Hat. இன்று ஒரு VPS control panel-ல் உள்ள பெரும்பாலான images, இந்த மூன்றில் ஒன்று அல்லது இவற்றின் வழித்தோன்றல்களாகவே உள்ளன. ஒரு வழித்தோன்றல், அதன் முன்னோடியின் package format, file layout மற்றும் வழக்கமான release முறைகளைப் பெறுகிறது. இதனால்தான், ஒரு Debian வழித்தோன்றல், அதன் branding நீக்கப்பட்ட பிறகும் Debian போலவே செயல்படுகிறது.

சுயாதீனமான விநியோகங்கள் தனித்துவமானவை, ஏனெனில் அவை எதிலிருந்தும் பிரியவில்லை (fork). Arch, Gentoo, Alpine, NixOS மற்றும் Void ஆகிய ஒவ்வொன்றும் தங்களுக்கென சொந்த package manager மற்றும் விதிகளை உருவாக்கியுள்ளன. இவற்றில் Arch மற்றும் Alpine ஆகிய இரண்டும், desktop பயன்பாட்டோடு தொடர்பில்லாத காரணங்களுக்காக, உங்கள் provider-ன் image பட்டியலில் இடம் பெற்றுள்ளன.

1992: குடும்பங்களுக்கு முந்தைய விநியோகங்கள் (distributions)

MCC Interim Linux பிப்ரவரி 1992-ல் Manchester Computing Centre-ல் Owen Le Blanc என்பவரால் உருவாக்கப்பட்டு வெளியிடப்பட்டது. இது kernel மற்றும் GNU (GNU's not Unix) கருவிகளை இரண்டு floppy images-ல் உள்ளடக்கி, menu மூலம் இயங்கும் installer-ஐ வழங்கியது. இதை கைமுறையாகச் செய்ய ஒரு நாள் முழுவதுமாகத் தேவைப்பட்டதால், அந்தச் சிரமத்தைத் தவிர்க்கவே இது உருவாக்கப்பட்டது.

Peter MacDonald என்பவரால் 1992-ல் வெளியிடப்பட்ட SLS (Softlanding Linux System), மேலும் ஒரு படி மேலே சென்று X (the X Window System) மற்றும் TCP/IP networking வசதிகளைச் சேர்த்தது. distribution என்ற சொல் இன்று குறிக்கும் பொருளுக்கு SLS-தான் காரணம். இது பல பிழைகளைக் கொண்டிருந்தது மற்றும் மெதுவாகவே பராமரிக்கப்பட்டது. இதனால் 1993-ல் இருவர் தனித்தனியாக இதைச் சரிசெய்ய முடிவெடுத்தனர். ஒருவர் அதை மீண்டும் கட்டமைத்தார். மற்றொருவர் முறையான விதிகளுடன் புதிதாகத் தொடங்கினார்.

Slackware, 1993: இன்றும் பயன்பாட்டில் உள்ள பழமையான குடும்பம்

Patrick Volkerding, 16 ஜூலை 1993 அன்று Slackware 1.00-ஐ வெளியிட்டார். இது SLS-ல் இருந்த பிழைகளை நீக்கி உருவாக்கப்பட்டது. இது இன்றும் பராமரிக்கப்படுவதால், தற்போதுள்ள Linux விநியோகங்களில் இதுவே பழமையானது.

Slackware package என்பது உள்ளே install script-ஐக் கொண்ட ஒரு compressed tar archive ஆகும். இதில் dependency resolution கிடையாது: உங்கள் புதிய package-க்குத் தேவையான library ஏற்கனவே வட்டில் (disk) உள்ளதா என்பதை எந்த மென்பொருளும் சரிபார்க்காது. இந்த ஒற்றைத் தீர்மானமே மற்ற அனைத்தையும் வடிவமைத்தது. கருவி (tool) dependency-களைத் தீர்க்காது என்பதால், தொகுப்பில் உள்ளவை அனைத்தும் ஒன்றோடொன்று இணக்கமாக இருக்க வேண்டும். எனவே, புதிய releases அரிதாகவும் கவனமாகவும் வெளியிடப்படுகின்றன. 14.2 பதிப்பிற்கு ஆறு ஆண்டுகள் கழித்து, பிப்ரவரி 2022-ல் Slackware 15.0 வெளியானது.

இந்தக் குடும்பம் சிறியது. 1990-களின் மத்தியில் SUSE-ன் ஆரம்பகால releases, Slackware-ஐ அடிப்படையாகக் கொண்டு உருவாக்கப்பட்டன. பின்னர், அந்தத் திட்டம் YaST மற்றும் RPM package format-ஐப் பயன்படுத்தித் தனிப்பாதையில் சென்றது. அந்த இறுதிப் பகுதி பலரை குழப்பமடையச் செய்கிறது. SUSE மற்றும் openSUSE ஆகியவை RPM package-களைப் பயன்படுத்துகின்றன, ஆனால் அவை Red Hat-ன் வழித்தோன்றல்கள் அல்ல. format மட்டுமே இடம் மாறியது, அதன் வம்சாவளி (lineage) மாறவில்லை.

Debian, 1993: ஒரு சமூக ஒப்பந்தம் மற்றும் மூன்று தொகுப்புகளைக் கொண்ட pipeline

Ian Murdock, 16 ஆகஸ்ட் 1993 அன்று Debian-ஐ அறிவித்தார். இது Slackware வெளியான மூன்று வாரங்களுக்குப் பிறகு, அதே காரணத்திற்காக உருவாக்கப்பட்டது. அவரது துணைவியார் Debra மற்றும் அவரது பெயரின் இணைப்பே Debian ஆகும். ஜனவரி 1994-ல் வெளியான Debian Manifesto, இந்த distribution ஒரு நிறுவனத்தால் அல்லாமல், தன்னார்வலர்களால் வெளிப்படையாகப் பராமரிக்கப்படும் என்ற நிபந்தனையை வகுத்தது.

Debian பின்னர் அதன் விதிகளை எழுத்துப்பூர்வமாக ஆவணப்படுத்தியது. Debian Social Contract மற்றும் DFSG (Debian free software guidelines) ஆகியவை ஜூலை 1997-ல் ஏற்றுக்கொள்ளப்பட்டன. 1998-ல், DFSG என்பது Open Source Definition-க்கு அடிப்படையாக மாறியது. ஒரு distribution-ல் எவை இருக்க வேண்டும் என்பதைத் தீர்மானிக்க எழுதப்பட்ட ஆவணம், ஒட்டுமொத்த மென்பொருள் துறைக்குமான உரிம வகையை வரையறுத்தது. உங்கள் sources.list-ல் ஏன் பல்வேறு கூறுகள் உள்ளன என்பதற்கான காரணமும் இதுவே: main என்பது வழிகாட்டுதல்களைப் பூர்த்தி செய்யும் மென்பொருட்களைக் கொண்டுள்ளது; contrib மற்றும் non-free ஆகியவை அவ்வாறு இல்லாதவற்றைத் தன்னகத்தே கொண்டுள்ளன. Debian 12-ல் non-free-firmware சேர்க்கப்பட்டது, இதனால் wireless card கொண்ட laptop-களில் கூடுதல் தேடல்கள் இன்றி மென்பொருட்களை நிறுவ முடியும்.

இதன் கருவிகளே மற்றொரு முக்கியப் பங்களிப்பாகும். dpkg ஒரு package-ஐ நிறுவும்போது, ஏதேனும் விடுபட்டிருந்தால் அதை நிறுத்துவதோடு dpkg: dependency problems prevent configuration of-ஐயும் வெளியிடும். 1999-ல் Debian 2.1-டன் இயல்பான கருவியாக மாறிய APT (advanced package tool), எவற்றை எப்போது பதிவிறக்க வேண்டும் என்பதைத் தீர்மானிக்கும் அடுக்காகும். Debian-ஐ அடிப்படையாகக் கொண்ட ஒவ்வொரு apt கட்டளையும் இந்த முயற்சியின் தொடர்ச்சியே ஆகும்.

இதன் release இயந்திரம் மூன்று தொகுப்புகளையும் ஒரு விதியையும் கொண்டுள்ளது. ஒரு maintainer, sid என்ற நிரந்தரக் குறியீட்டுப் பெயரைக் கொண்ட unstable தொகுப்பிற்கு மென்பொருளை upload செய்வார். ஒரு script, அந்தப் package release architectures-ல் சரியாக build ஆகி, புதிய பிழைகள் ஏதுமின்றி இருந்தால், சுமார் 5 முதல் 10 நாட்களில் அதை testing தொகுப்பிற்கு மாற்றும். பின்னர் testing தொகுப்பு முடக்கப்படும் (freeze), release குழு எஞ்சிய பிழைகளைச் சரிசெய்யும். பிழைகளின் பட்டியல் போதுமான அளவு குறைந்தவுடன் stable பதிப்பு வெளியாகும். இது தேதியை அடிப்படையாகக் கொண்டதல்ல. இதனால்தான் Debian stable பதிப்புகள் பழையதாகத் தெரிந்தாலும், சிறப்பாகச் செயல்படுகின்றன: freeze நிலைக்குப் பிறகு version எண்கள் மாற்றப்படுவதில்லை, ஆனால் பாதுகாப்புத் திருத்தங்கள் (security fixes) தொடர்ந்து backport செய்யப்படுகின்றன.

நிர்வாகமும் ஆவணப்படுத்தப்பட்டுள்ளது; தேர்ந்தெடுக்கப்பட்ட திட்டத் தலைவர் மற்றும் பொதுத் தீர்மானங்கள் (general resolutions) மூலம் இது இயங்குகிறது. 2014-ல் இந்த நிர்வாக அமைப்பு systemd-ஐ இயல்பான init system-ஆகத் தேர்ந்தெடுத்தது. இதை ஏற்காதவர்கள் Devuan-ஐ உருவாக்கினர் (fork), இது 2017-ல் தனது முதல் பதிப்பை வெளியிட்டது. Ubuntu, Raspberry Pi OS, Proxmox VE, Kali மற்றும் Linux Mint ஆகியவை இதன் பெரிய வழித்தோன்றல்கள் ஆகும்.

Red Hat, 1994: RPM, அதன் பிறகு Fedora மற்றும் RHEL எனப் பிரிதல்

Marc Ewing, 1994-ஆம் ஆண்டு Halloween சமயத்தில் முதல் Red Hat Linux-ஐ வெளியிட்டார். 1995-இல் Bob Young-இன் நிறுவனம் அதை வாங்கியது. மென்பொருளுக்குப் பதிலாக ஆதரவை (support) விற்பனை செய்யும் முதல் Linux வணிகத்தை இருவரும் உருவாக்கினர். Red Hat நிறுவனம் 1999, ஆகஸ்ட் 11 அன்று பொதுப் பங்குகளை வெளியிட்டது. 2019, ஜூலை மாதம் சுமார் 34 பில்லியன் டாலர்களுக்கு அந்த நிறுவனத்தை IBM கையகப்படுத்தியது. எனவே, பெரும்பாலான enterprise மென்பொருள்கள் சான்றளிக்கப்பட்ட (certified) இந்த distribution, அன்றிலிருந்து IBM-இன் சொத்தாக உள்ளது.

இதன் நீடித்த தொழில்நுட்ப பங்களிப்பு RPM (Red Hat package manager) ஆகும். இது 1995-இல் Red Hat Linux 2.0-க்காக Erik Troan மற்றும் Marc Ewing ஆகியோரால் எழுதப்பட்டது. ஒரு RPM அதன் dependencies-ஐ அறிவிக்கிறது; இது ஒரு spec file-லிருந்து உருவாக்கப்படுகிறது. இது எவரும் இயக்கக்கூடிய ஒரு build recipe ஆகும். இந்த இரண்டாவது பண்புதான், பிற்காலத்தில் Red Hat-இன் enterprise தயாரிப்பைச் சுதந்திரமாக மீண்டும் உருவாக்க (independent rebuilds) வழிவகுத்தது.

2003-இல் வெளியான Red Hat Linux 9, அதன் அசல் வரிசையின் கடைசி பதிப்பாகும். நிறுவனம் அதை இரண்டாகப் பிரித்தது: 2003, நவம்பர் மாதம் வேகமான community release-ஆக Fedora Core 1-ஐயும், 2002-இல் Advanced Server 2.1-ஆகத் தொடங்கி, மெதுவான கட்டணச் சேவையாக RHEL (Red Hat Enterprise Linux)-ஐயும் வெளியிட்டது. இதற்கான காரணம் தெளிவானது. புதிய பதிப்புகளைச் சோதிக்கும் இடமாகவும், அதே சமயம் ஒரு வங்கி பத்து ஆண்டுகள் மாற்றமின்றி இயக்கும் தளமாகவும் ஒரே தயாரிப்பு இருக்க முடியாது. இந்த இரண்டு பகுதிகளும் இணைக்கப்பட்டுள்ளன: ஒரு RHEL major version என்பது Fedora release-லிருந்து கிளைத்து, நிலைப்படுத்தப்பட்டு (stabilised), பின்னர் முடக்கப்படுகிறது (frozen). package கருவியும் அதே கால அட்டவணையில் நகர்ந்தது; 2000-களில் yum-லிருந்து, 2015-இல் Fedora-வின் இயல்புநிலை (default) கருவியாக dnf-க்கு மாறியது, இவை இரண்டிற்கும் அடியில் rpm செயல்படுகிறது.

CentOS ஏன் இலவச RHEL மறுஉருவாக்கமாக (rebuild) இருப்பதை நிறுத்தியது

CentOS 2004-ல் ஒரு எளிய நோக்கத்துடன் தொடங்கியது: Red Hat வெளியிடும் source packages-ஐ எடுத்து, அதன் trademarks-ஐ நீக்கி, அவற்றை மீண்டும் உருவாக்கி, அந்த முடிவை இலவசமாக வழங்குவது. இது ஒரு தசாப்த காலமாக இயல்புநிலை இலவச server distribution-ஆக இருந்தது, 2014-ல் Red Hat இந்தத் திட்டத்தை தனது கட்டுப்பாட்டிற்குள் கொண்டு வந்தது.

8 December 2020 அன்று, CentOS Linux 8-ன் ஆயுட்காலம் 31 December 2021-டன் முடிவடையும் என்று Red Hat அறிவித்தது. இது அறிவிக்கப்பட்ட தேதியை விட எட்டு ஆண்டுகள் முன்னதாகவே முடிவுக்கு வந்தது. மேலும், அந்தப் பெயர் CentOS Stream ஆகத் தொடரும் என்றும் அறிவிக்கப்பட்டது. Stream என்பது ஒரு மறுஉருவாக்கம் அல்ல. இது RHEL minor releases உருவாக்கப்படும் கிளையாகும் (branch). எனவே, இது RHEL-க்கு பின்னால் இல்லாமல், அதற்கு முன்னால் இயங்குகிறது. பல ஆண்டுகளாகப் பராமரிக்க வேண்டிய ஒரு machine-க்கு, இது தவறான திசையாகும். ஏனெனில், Red Hat-ன் பணம் செலுத்தும் வாடிக்கையாளர்களுக்குக் கிடைப்பதற்கு முன்பே நீங்கள் மாற்றங்களைப் பெறுவீர்கள்.

2021-ல் இரண்டு மறுஉருவாக்கங்கள் தோன்றின. CentOS-ஐ இணைந்து உருவாக்கிய Gregory Kurtzer என்பவரால் Rocky Linux தொடங்கப்பட்டது. AlmaLinux, CloudLinux நிறுவனத்தால் நிதியளிக்கப்பட்டது. June 2023-ல், CentOS Stream மற்றும் அதன் வாடிக்கையாளர் போர்ட்டலைத் தவிர மற்ற இடங்களில் RHEL source-களை வெளியிடுவதை Red Hat நிறுத்தியது. Rocky Linux தொடர்ந்து ஒரே மாதிரியான மறுஉருவாக்கங்களை உருவாக்குவதை நோக்கமாகக் கொண்டது. AlmaLinux தனது இலக்கை ABI (application binary interface) இணக்கத்தன்மைக்கு மாற்றியது. இதன் பொருள், RHEL-க்காக உருவாக்கப்பட்ட மென்பொருள்கள் இதில் இயங்கும், ஆனால் bug பட்டியல் அப்படியே ஒத்துப்போகும் என்ற உறுதிமொழி இல்லை. அந்த ஆண்டின் பிற்பகுதியில், பகிரப்பட்ட source-களை வெளியிட Oracle, SUSE மற்றும் CIQ ஆகியவை இணைந்து OpenELA-வை உருவாக்கின.

ஒரு provider-ன் image பட்டியலில் இன்னும் CentOS என்று இருந்தால், நீங்கள் அதை அடிப்படையாகக் கொண்டு உருவாக்குவதற்கு முன்பு, அது எதைக் குறிக்கிறது என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்.

cat /etc/os-release

NAME="CentOS Stream" என்பது RHEL-க்கு முன்னோடியாக இருக்கும் ஒரு rolling development கிளையாகும். NAME="AlmaLinux" அல்லது NAME="Rocky Linux" என்பது அதைப் பின்பற்றும் ஒரு மறுஉருவாக்கமாகும், இது பத்து ஆண்டு கால அவகாசத்தைக் கொண்டுள்ளது.

Ubuntu 20.04: Debian unstable-ன் ஒரு காலவரிசைப் பிரதி

Ubuntu 4.10, 20 அக்டோபர் 2004 அன்று Mark Shuttleworth-ன் நிதியுதவியுடன் வெளியிடப்பட்டது. Debian-உடனான இதன் உறவு உணர்வுப்பூர்வமானது அல்ல, தொழில்நுட்ப ரீதியானது. ஒவ்வொரு சுழற்சியும் Debian unstable-லிருந்து புதிய Ubuntu release-க்கு packages-ஐ இறக்குமதி செய்வதன் மூலம் தொடங்குகிறது. இந்த இறக்குமதிகள் சுழற்சியின் பாதியில் வரும் Debian Import Freeze வரை தொடரும்; அதன்பிறகு Ubuntu தனது சொந்த மாற்றங்களைச் செய்துகொள்கிறது. பல Ubuntu packages, Debian package மற்றும் ஒரு delta ஆகியவற்றின் கலவையாகும்; changelog-ல் இது குறித்த விவரங்கள் இருக்கும்.

மற்றொரு பாதி காலவரிசை சார்ந்தது. Debian தயாரானதும் வெளியிடப்படும். Ubuntu ஏப்ரல் மற்றும் அக்டோபர் மாதங்களில் வெளியிடப்படும், அதன் version எண் தேதியைக் குறிக்கும்: 24.04 என்பது ஏப்ரல் 2024-ல் வெளியானது. ஒவ்வொரு இரண்டாவது ஏப்ரல் வெளியீடும் LTS (long term support) ஆகும்; ஒரு service provider எந்தக் கூடுதல் விளக்கமும் இன்றி Ubuntu-வை பட்டியலிடும்போது, அது இதையே குறிக்கிறது. ஒரு server-க்கு இவ்விரண்டில் எது பொருத்தமானது என்பது Ubuntu LTS மற்றும் interim releases-க்கு இடையிலான தேர்வு குறித்த முழுமையான தலைப்பாகும். ஒரு LTS-லிருந்து அடுத்த LTS-க்கு மாறுவதற்குத் தனி நடைமுறை உள்ளது, அது 24.04 முதல் 26.04 வரையிலான upgrade பகுதியில் விளக்கப்பட்டுள்ளது.

ஒவ்வொரு ஆண்டும் server admins-ஐக் குழப்பும் ஒரு விவரம் உண்டு. Ubuntu-வின் archive பல கூறுகளாகப் பிரிக்கப்பட்டுள்ளது. main, முழு ஆதரவு காலத்திற்கும் Canonical-ஆல் பராமரிக்கப்படுகிறது. universe, சமூகத்தால் (community) பராமரிக்கப்படுகிறது, இதற்கான பாதுகாப்பு உத்தரவாதம் மாறுபட்டது. apt install, இந்த வேறுபாடு குறித்து எதையும் குறிப்பிடுவதில்லை. ஒரு கட்டளை மூலம் இதை அறியலாம்:

apt-cache policy nginx

ஒரு repository வரி /main என்று முடிந்தால், அந்த package-க்கு Canonical-ன் பாதுகாப்பு குழு பொறுப்பு என்று பொருள். /universe என்று முடிந்தால், அதற்குச் சமூகம் பொறுப்பு என்று பொருள். இணையத்தை எதிர்கொள்ளும் எந்தவொரு மென்பொருளுக்கும் இதைச் சரிபார்க்கவும்.

Arch, 2002: rolling releases மற்றும் partial upgrade-ன் விளைவுகள்

Judd Vinet, 11 March 2002 அன்று Arch 0.1-ஐ வெளியிட்டார். அவர் சொந்தமாக எழுதிய pacman என்ற package manager-ஐயும், plain shell scripts-ஆக அமைந்த build recipes-களையும் அவர் பயன்படுத்தினார். Arch-ல் versioned releases கிடையாது. Install media என்பது rolling repositories-ன் குறிப்பிட்ட தேதியிட்ட snapshots மட்டுமே. எனவே, 2019-ல் install செய்யப்பட்டு வாரந்தோறும் update செய்யப்படும் ஒரு machine-ம், இன்று install செய்யப்பட்ட machine-ம் ஒரே Arch-ஐத்தான் இயக்குகின்றன. AUR (Arch user repository) பயனர்களால் பங்களிக்கப்பட்ட build recipes-களைக் கொண்டுள்ளது. இவை சரிபார்க்கப்பட்ட packages அல்ல, வெறும் recipes மட்டுமே. எனவே, ஒரு PKGBUILD-ஐ இயக்குவதற்கு முன்பு அதை வாசிப்பது உங்கள் பணியின் ஒரு பகுதியாகும்.

Rolling release முறையில் ஒரு தோல்வி வாய்ப்பு உள்ளது, அது ஒவ்வொரு முறையும் பயனரால் ஏற்படுத்தப்படுவது. pacman -Sy foo மூலம் ஒரு தனி package-ஐ மட்டும் install செய்யும்போது, அது package database-ஐ refresh செய்து, வட்டில் (disk) உள்ள libraries-ஐ விட புதிய libraries-உடன் இணைக்கப்பட்ட ஒரு புதிய binary-ஐ install செய்கிறது. அப்போது programs பின்வருமாறு தோல்வியடையும்:

error while loading shared libraries: libcrypto.so.3: cannot open shared object file: No such file or directory

ஆதரிக்கப்படும் செயல்பாடு pacman -Syu ஆகும், இது அனைத்தையும் ஒன்றாக update செய்கிறது. சில மேம்படுத்தல்களுக்கு (upgrades) முன்பு கைமுறையாக தலையீடு (manual intervention) தேவை என்று திட்டக்குழு செய்திகளை வெளியிடும். அவற்றை வாசிக்காமல் upgrade செய்தால், machine boot ஆகாத நிலைக்குச் செல்லக்கூடும்.

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

Alpine: containers மூலம் புகழ்பெற்ற ஒரு சிறிய distribution

Alpine 2005-வாக்கில் LEAF (Linux embedded appliance framework)-ன் ஒரு fork-ஆகத் தொடங்கியது. இது Linux Router Project-லிருந்து உருவானது. Natanael Copa இதை desktop-களுக்காக அல்லாமல், appliances-க்காக உருவாக்கினார். இது வழக்கமான userland-ன் பெரும்பகுதியை மாற்றுகிறது: GNU C library-க்கு பதிலாக musl, GNU core utilities-க்கு பதிலாக BusyBox, systemd-க்கு பதிலாக OpenRC மற்றும் package manager-ஆக apk ஆகியவற்றைப் பயன்படுத்துகிறது. 2014-ல் வெளியான Alpine 3.0 பதிப்புதான் musl-க்கு மாறியது.

Containers-தான் இதை பிரபலமாக்கின. Debian அல்லது Ubuntu base image-ன் அளவில் ஒரு சிறிய பகுதியை மட்டுமே Alpine base layer கொண்டுள்ளது. எனவே, 2016-லிருந்து இது ஒரு பொதுவான base image-ஆக மாறியது. Alpine-ஐ ஒருமுறை கூட நிறுவாத பலர், தினமும் அதைப் பயன்படுத்தத் தொடங்கினர்.

இதன் விலை என்னவென்றால், musl என்பது glibc அல்ல. இந்த இடைவெளி, தொடர்பில்லாதது போலத் தோன்றும் பிழைகளாக வெளிப்படும். glibc-உடன் இணைக்கப்பட்ட (linked) ஒரு binary, Alpine-ல் இயங்காது. ஏற்கனவே இருக்கும் ஒரு கோப்பைத் தேட வைக்கும் செய்தியை அது காட்டும்:

sh: ./myapp: not found

அந்த நிரல் (program) அங்கு இருக்கிறது. ஆனால் அதன் ELF interpreter இல்லை, ஏனெனில் glibc-ன் loader அங்கு இல்லை. Python மற்றொரு வழக்கமான ஆச்சரியம்: manylinux-க்காக உருவாக்கப்பட்ட prebuilt wheels, musl-ல் நிறுவப்படாது. எனவே, pip source-லிருந்து compile செய்ய முயற்சிக்கும், compiler இல்லாதபோது நின்றுவிடும். 2021-ன் musllinux wheel standard, அந்த wheels-ஐ வெளியிடும் திட்டங்களுக்கு மட்டுமே இந்தச் சிக்கலைத் தீர்த்தது, மற்றவர்களுக்கு அல்ல.

ஒரு VPS-ல் host operating system-ஆக, Alpine சிறிய அளவில் நிறுவப்படும் மற்றும் வேகமாக update ஆகும். ஆனால், பெரும்பாலான ஆவணங்கள் (documentation) குறிப்பிடும் பாதையிலிருந்து இது உங்களை விலக்கி வைக்கும். systemctl enable-ஐ இயக்கச் சொல்லும் ஒவ்வொரு வழிகாட்டியையும் rc-update add-க்கு மாற்ற வேண்டியிருக்கும்.

மாறாத தலைமுறை: அணுநிலை மேம்படுத்தல்கள் மற்றும் image அடிப்படையிலான server-கள்

புதிய கிளை, package பட்டியலுக்குப் பதிலாக மேம்படுத்தல் மாதிரியையே மாற்றுகிறது. ostree அடிப்படையிலான அமைப்பு /usr-ஐ read only நிலையில் வைத்திருக்கும். ஒரு மேம்படுத்தல் என்பது முழுமையான புதிய filesystem tree ஆகும்; இது தரவிறக்கம் செய்யப்பட்டு, தயார் நிலையில் வைக்கப்பட்டு, அடுத்த reboot-ன் போது மாற்றப்படும். முந்தைய tree ஒரு boot entry-ஆக அப்படியே இருக்கும், எனவே தவறான மேம்படுத்தல் ஏற்பட்டால், பழைய tree-க்கு reboot செய்வதன் மூலம் அதைச் சரிசெய்யலாம்.

Fedora Silverblue இதை 2018-ல் desktop-க்கு கொண்டு வந்தது, Red Hat 2018-ல் CoreOS-ஐ வாங்கிய பிறகு, Fedora CoreOS இதை 2019-ல் server-களுக்குக் கொண்டு வந்தது. 2020-ல் Container Linux நிறுத்தப்பட்டபோது, Flatcar Container Linux அதன் தொடர்ச்சியை முன்னெடுத்தது. openSUSE MicroOS, btrfs snapshots மற்றும் transactional-update மூலம் அதே இலக்கை அடைகிறது. 2024-ல் Red Hat, bootc-ன் அடிப்படையில் RHEL-க்கு image அடிப்படையிலான பயன்முறையைச் சேர்த்தது; இதில் இயங்குதளம் ஒரு container image-ஆக வழங்கப்படுகிறது, மேலும் ஒரு புதிய tag-ஐக் குறிப்பிடுவதன் மூலம் machine மேம்படுத்தப்படுகிறது. Talos Linux எல்லாவற்றையும் விட ஒரு படி மேலே சென்று, shell மற்றும் SSH-ஐ முழுமையாக நீக்கிவிட்டது: machine ஒரு API மூலம் கட்டமைக்கப்படுகிறது, எனவே login செய்ய எதுவும் இல்லை. 2007-ல் முதன்முதலில் வெளியிடப்பட்ட NixOS, ஒரு மாறுபட்ட அணுகுமுறையைக் கொண்டுள்ளது. முழு அமைப்பும் ஒரு declarative configuration மூலம் கட்டமைக்கப்படுகிறது, மேலும் முந்தைய தலைமுறைகளை boot செய்ய முடியும்.

உங்கள் provider இவற்றுள் எதையும் one-click image-ஆக வழங்க வாய்ப்பில்லை, ஏனெனில் இவை administrator SSH மூலம் கோப்புகளைத் திருத்துவதற்குப் பதிலாக, முதல் boot-ன் போது Ignition அல்லது cloud-init மூலம் கட்டமைக்கப்படும் என்று எதிர்பார்க்கின்றன. பல ஒரே மாதிரியான machine-களை நிர்வகிக்கும்போது இவை பலன் தருகின்றன; நீங்கள் ஒரே நேரத்தில் பல Linux server-களை நிர்வகிக்கும் சூழலில் இருக்கும்போது, ஒவ்வொன்றும் மற்றொன்றைப் போலவே இருப்பதை உறுதிப்படுத்த வேண்டிய கட்டாயம் உங்களுக்கு ஏற்படும்.

ஒரு release எவ்வளவு காலம் ஆதரிக்கப்படுகிறது?

ஒரு distribution-ன் release கொள்கையே நீங்கள் நீண்ட காலம் சார்ந்து இருக்க வேண்டிய விஷயமாகும், இது எத்தனை ஆண்டுகள் என்பது குறித்த அறிவிப்பாக வெளியிடப்படுகிறது. தற்போதுள்ள 5 server release-களுக்கான காலக்கெடு கீழே கொடுக்கப்பட்டுள்ளது.

ChartSecurity update window for one server release, in years, published policies as of August 2026
The data behind this chart
[
  {
    "distro": "Alpine 3.x",
    "standard_years": 2,
    "extended_total_years": 2
  },
  {
    "distro": "Debian 13",
    "standard_years": 3,
    "extended_total_years": 5
  },
  {
    "distro": "Ubuntu 26.04 LTS",
    "standard_years": 5,
    "extended_total_years": 10
  },
  {
    "distro": "AlmaLinux 10",
    "standard_years": 10,
    "extended_total_years": 10
  },
  {
    "distro": "RHEL 10",
    "standard_years": 10,
    "extended_total_years": 13
  }
]

Alpine ஒவ்வொரு 3.x branch-ஐயும் 2 ஆண்டுகளுக்கு ஆதரிக்கிறது; இதனால்தான், அடிக்கடி rebuild செய்யப்படும் container image-களுக்கு இது பொருத்தமானது, மாறாக நீங்கள் கவனிக்காமல் விட்டுவிடும் host-க்கு இது அவ்வளவு பொருத்தமானதல்ல. Debian-ன் பாதுகாப்பு குழு ஒரு stable release-ஐ சுமார் 3 ஆண்டுகளுக்குக் கவனிக்கிறது, அதன் பிறகு LTS குழு பொதுவான architecture-களை மொத்தம் சுமார் 5 ஆண்டுகள் வரை பராமரிக்கிறது. Ubuntu LTS, main-ல் உள்ள தொகுப்புகளுக்கு 5 ஆண்டுகளை வழங்குகிறது, மேலும் Ubuntu Pro சந்தா அதை 10 ஆண்டுகளாக நீட்டிக்கிறது; இது தனிப்பட்ட பயன்பாட்டிற்குச் சிறிய எண்ணிக்கையிலான கணினிகளில் இலவசமாகக் கிடைக்கிறது. RHEL 10 10 ஆண்டுகளை அறிவிக்கிறது, கட்டணத்துடன் கூடிய extended life cycle support add-on இதை 13 ஆண்டுகள் வரை நீட்டிக்கிறது. AlmaLinux 10, RHEL-ன் 10 ஆண்டுகள் என்ற காலக்கெடுவை எந்தவித சந்தாவும் இன்றி வழங்குகிறது; இதுவே இத்தகைய rebuild-கள் இருப்பதற்கான முழுமையான காரணம்.

Arch-க்கு இங்கே எந்த வரிசையும் இல்லை, ஏனெனில் rolling distribution-ல் ஆதரிப்பதற்கு என்று தனியாக release எதுவும் இல்லை. Arch-ஐப் பொறுத்தவரை, ஒரு கணினியை எவ்வளவு காலம் மாற்றங்கள் செய்யாமல் வைத்திருக்க முடியும் என்பதே முக்கியம், அது வாரங்களில் கணக்கிடப்படுகிறது.

இந்த எண்கள் எங்கிருந்து பெறப்பட்டன

ஒவ்வொரு புள்ளிவிவரமும் அந்தந்த vendor-ன் அதிகாரப்பூர்வ கொள்கையிலிருந்து, ஆகஸ்ட் 2026-ல் பெறப்பட்டது. ஒரு தேதியைத் திட்டமிடுவதற்கு முன் அவற்றைச் சரிபார்க்கவும், ஏனெனில் டிசம்பர் 2020-ல் CentOS பயனர்கள் கண்டறிந்தபடி, vendor-கள் அவற்றை மாற்றக்கூடும்.

உங்கள் VPS image பட்டியல் ஏன் இவ்வாறு உள்ளது

ஒரு provider, வாடிக்கையாளர்கள் கோரும் operating system image-களை அதன் hypervisor-ல் தானியங்கி முறையில் (unattended) நிறுவுகிறது. இதனால்தான், ஒவ்வொரு பட்டியலும் Ubuntu LTS மற்றும் Debian stable ஆகியவற்றுடன் தொடங்குகிறது. RHEL-ஐ அடிப்படையாகக் கொண்ட மென்பொருட்களைப் பயன்படுத்துபவர்களுக்காக AlmaLinux அல்லது Rocky சேர்க்கப்படுகிறது. Alpine, Arch மற்றும் Fedora போன்றவை பட்டியலின் இறுதியில் இடம்பெறுகின்றன. VPS என்றால் என்ன மற்றும் image எவ்வாறு disk-க்கு வருகிறது என்பதை நீங்கள் அறிந்தால், இந்த வரிசையின் நோக்கம் தெளிவாகும்: தானியங்கி முறையில் நிறுவப்பட்டு, வாடிக்கையாளர் ஒரு server-ஐப் பயன்படுத்தும் காலத்தை விட நீண்ட காலம் ஆதரவு (support) கிடைக்கக்கூடிய operating system-களை provider தேர்வு செய்கிறது.

இந்தத் தேர்வு, package manager-ஐத் தாண்டி பல தாக்கங்களை ஏற்படுத்துகிறது. இது மூன்று ஆண்டுகளுக்குப் பிறகு நீங்கள் செய்யப்போகும் upgrade முறையைத் தீர்மானிக்கிறது; ஒவ்வொரு குடும்பத்திற்கும் இது முற்றிலும் மாறுபடும். Debian மற்றும் Ubuntu ஆகியவை in-place major upgrade-களை ஆதரிக்கின்றன. Red Hat குடும்பம் leapp மூலம் இவற்றைச் செய்கிறது. Arch-க்கு பதிப்புகள் இல்லாததால், அதற்கு upgrade கிடையாது. Alpine-ல் /etc/apk/repositories கோப்பைத் திருத்தி, apk upgrade --available கட்டளையை இயக்க வேண்டும். மேலும், மூன்றாம் தரப்பு repository-களைச் சேர்க்காமல் எந்த மென்பொருளை நிறுவலாம், CVE (common vulnerabilities and exposures) பாதிப்பு ஏற்படும்போது யார் patch வெளியிடுவார்கள், மற்றும் உங்கள் மென்பொருள் எந்த init system மற்றும் C library-ஐ எதிர்பார்க்கும் என்பதையும் இந்தத் தேர்வுதான் தீர்மானிக்கிறது.

குறைவாக மதிப்பிடப்படும் மற்றொரு முக்கிய விளைவும் உள்ளது. இணையத்தில் உள்ள பெரும்பாலான தீர்வுகள் Debian அல்லது Red Hat குடும்பத்தை அடிப்படையாகக் கொண்டவை. எனவே, இந்த இரண்டைத் தவிர மற்றவற்றைத் தேர்ந்தெடுப்பது, அந்த machine-ன் வாழ்நாள் முழுவதும் வழிமுறைகளை மொழிபெயர்த்துப் பயன்படுத்த வேண்டிய கட்டாயத்தை உருவாக்கும். நீங்கள் எவ்வளவு அடிக்கடி server-ஐ நிர்வகிக்க விரும்புகிறீர்களோ, அதற்கு ஏற்ற release policy கொண்ட குடும்பத்தைத் தேர்ந்தெடுத்து, அதிலேயே தொடருங்கள். மென்பொருள் தொகுப்புகளை (packages) மாற்றுவது எளிது. ஆனால், அடிப்படையான distribution-ஐ மாற்றுவது என்பது server-ஐ மீண்டும் புதிதாக உருவாக்குவதற்குச் சமம்.

FAQ

எனது server எந்த Linux distribution குடும்பத்தைச் சேர்ந்தது?

cat /etc/os-release கட்டளையை இயக்கவும். ID புலம் distribution-ன் பெயரையும், ID_LIKE புலம் அதன் குடும்பத்தையும் குறிப்பிடும். உதாரணமாக, ஒரு Ubuntu machine ID_LIKE=debian என்றும், ஒரு AlmaLinux machine ID_LIKE="rhel centos fedora" என்றும் காட்டும். Package manager-ஐ வைத்தும் இதைக் கண்டறியலாம். apt மற்றும் dpkg ஆகியவை Debian குடும்பத்தையும், dnf மற்றும் rpm ஆகியவை Red Hat குடும்பத்தையும், apk என்பது Alpine-ஐயும், pacman என்பது Arch-ஐயும் குறிக்கும்.

CentOS இன்னும் RHEL-ன் இலவசப் பதிப்பாக உள்ளதா?

இல்லை. CentOS Linux 8, அந்தப் பெயரில் வந்த கடைசி rebuild, 31 December 2021 அன்று முடிவடைந்தது. CentOS Linux 7, 30 June 2024 அன்று அதன் ஆயுட்காலத்தை நிறைவு செய்தது. தற்போதுள்ள CentOS Stream திட்டம், RHEL-ன் minor releases உருவாக்கப்படும் கிளையாகும். எனவே, இதில் மாற்றங்கள் RHEL-க்கு முன்பே வந்துவிடும். பழைய CentOS-ன் இடத்தைப் பிடித்துள்ள இலவச rebuild-கள் AlmaLinux மற்றும் Rocky Linux ஆகும்; இவை இரண்டுமே பத்து வருட ஆதரவு காலத்தைக் கொண்டுள்ளன.

Debian stable ஏன் பழைய version எண்களைக் கொண்டுள்ளது?

ஏனெனில், version எண் மாற்றப்படாமல் இருக்கும் அதே வேளையில், பிழைத்திருத்தங்கள் (fixes) தொடர்ந்து வழங்கப்படுகின்றன. Debian, புதிய upstream release-ஐ இறக்குமதி செய்வதற்குப் பதிலாக, தான் வெளியிட்ட version-லேயே security patches-ஐ backport செய்கிறது. எனவே, 2.4.57-2+deb13u1 என்று காட்டும் ஒரு package-ல் கூட கடந்த வாரம் வெளியிடப்பட்ட பிழைத்திருத்தம் இருக்கலாம். Upstream version-க்கு அடுத்துள்ள suffix என்பது Debian revision ஆகும், மேலும் apt changelog <package> அதில் என்னென்ன மாற்றங்கள் செய்யப்பட்டுள்ளன என்பதைப் பட்டியலிடும். ஒரு Debian server-ன் பாதுகாப்பை அதன் version எண்களை வைத்து மட்டும் மதிப்பிடுவது தவறான முடிவைத் தரும்.

VPS-ல் Arch போன்ற rolling release-ஐப் பயன்படுத்தலாமா?

நீங்கள் ஒரு கால அட்டவணையின்படி update செய்வதாக இருந்தால் மட்டுமே பயன்படுத்தலாம். Rolling distribution-ல் ஒவ்வொரு machine-ம் தற்போதைய package தொகுப்பிற்கு மாற வேண்டும் என்று எதிர்பார்க்கப்படுகிறது. எனவே, pacman -Sy foo மூலம் ஒரு package-ஐ மட்டும் update செய்வது, பொருந்தாத libraries மற்றும் cannot open shared object file போன்ற பிழைகளை உருவாக்கும். pacman -Syu கட்டளையைத் தொடர்ந்து இயக்கவும், ஒவ்வொரு முறை இயக்கும் முன்பும் திட்டத்தின் செய்திப் பக்கத்தைப் படிக்கவும்; அப்போதுதான் system நிலையாக இருக்கும். ஒரு வருடம் அப்படியே விட்டுவிட்டு, பிறகு update செய்தால் அது ஆபத்தானதாகிவிடும்.

Immutable அல்லது atomic distribution உண்மையில் எதை மாற்றுகிறது?

இது updates எப்போது அமல்படுத்தப்படுகின்றன மற்றும் அவற்றை எப்படித் திரும்பப் பெறுவது (undo) என்பதை மாற்றுகிறது. /usr read-only முறையில் mount செய்யப்படுகிறது. ஒரு update முழுமையான புதிய tree-ஆகத் தயார் செய்யப்பட்டு, reboot செய்யும்போது மாற்றப்படுகிறது. முந்தைய tree, rollback செய்வதற்காக ஒரு boot entry-ஆகச் சேமிக்கப்படும். இதனால், system முழுமையாக update செய்யப்பட்டிருக்கும் அல்லது பழைய நிலையிலேயே இருக்கும்; பாதியளவு மாற்றப்பட்ட நிலை இருக்காது. கோப்புகளை நேரடியாகத் திருத்தி software நிறுவும் முறை இதில் கிடையாது, எனவே applications-கள் containers அல்லது layered packages-க்குள் மாற்றப்படுகின்றன.