لایسنس متنباز چیست؟ چه کمکی به دنیای تکنولوژی کرده است؟
در این مقاله میخوانید
لایسنس (License) در مهندسی کامپیوتر بهمعنای مجوز استفاده از نرمافزار است. لایسنس نرمافزار توافقنامهای رسمی است که چهارچوب و چگونگی استفاده از نرمافزاری خاص را مشخص میکند. طراحی و ساخت هر نرمافزار برای توسعهدهندگان هزینه دارد. آنان برای دستیابی به این سه هدف عمده از لایسنس استفاده میکنند:
- حفظ مالکیت معنوی (کپیرایت)؛
- بررسی نحوه استفاده از نرمافزار؛
- چهارچوببندی و مرزبندی دسترسیهای کاربران.
ممکن است برخی از توسعهدهندگان بخواهند روی نحوه استفاده از نرمافزار محدودیتهای بیشتری اعمال کنند. بااینحال، برخی دیگر ممکن است نرمافزار خود را با محدودیت کمتر یا بدون محدودیت عرضه کنند؛ زیرا میخواهند نرمافزارشان تاحدممکن و بهطور گسترده دردسترس قرار گیرد یا شاید آنان بهدلایلی با محدودسازی نرمافزار مخالف باشند.
خرید سرویسهای لینوکسی با لاینسس Whmcs از پارس پک
شما میتوانید از این مقاله برای مدیریت سرورهای لینوکس خود استفاده کنید و اگر قصد خرید هر یک از انواع سرویس لینوکسی پارس پک را دارید، میتوانید با کارشناسان فروش ما در ارتباط باشید. همچنین، شما میتوانید برای اطلاع از تعرفهها و هزینهها به لینکهای زیر مراجعه کنید.
در این مقاله، شما را با تاریخچه و مفهوم مجوزهای Open-source آشنا خواهیم کرد و لایسنسهای متنباز را با لایسنسهای آزاد مقایسه و برخی از توافقنامههای معروف را معرفی خواهیم کرد.
دلایل پیدایش لایسنسهای متنباز
توسعهدهندگان با هدف فراهمکردن دسترسی همگانی، لایسنسهای متنباز (Open-source) را عرضه میکنند. آنان در عرضه لایسنس نرمافزارهای متنباز، کد منبع (Source Code) را بسته به شرایط و ضوابط توافقشده، برای استفاده و اصلاح و توزیع دردسترس قرار میدهند. لایسنسهای نرمافزار متنباز مختلفی وجود دارند و براساس محدودیتهایی که توسعهدهنده نرمافزار در نظر دارد کاربران از آنها پیروی کنند، به چند دسته تقسیم میشوند.
راهنمای خرید لایسنس whmcs را در مقالهی زیر بخوانید.
ضرورت شناخت انواع لایسنسهای متنباز
هنگامی که بهعنوان توسعهدهنده تصمیم گرفتهاید پروژههایتان را برنامهریزی کنید، لازم است با انواع لایسنسهای نرمافزار متنباز آشنا شوید. هدف از آشنایی با لایسنسها این است تا به این استنباط برسید که کدام لایسنس به بهترین شکل به نیازهای پروژهتان پاسخ میدهد.
در این مقاله، با مفهوم کپیرایت (حقی که بهعنوان سازنده نرمافزار به شما تعلق میگیرد) آشنا و متوجه خواهید شد که لایسنس چگونه چهارچوبهای توافقنامهای را شکل میدهد که میخواهید کاربرانتان هنگام استفاده از نرمافزار طبق آن عمل کنند. همچنین، تفاوتهای موجود بین نرمافزارهای انحصاری و رایگان و متنباز و نیز مفهوم لایسنسهایی با محدودیت کمتر و کپیلفت را توضیح خواهیم داد و گزینههای پیشنهادی لایسنس متنباز برای ایجاد پروژه در GitHub را معرفی خواهیم کرد. پس تا پایان با ما همراه باشید.
چرا باید لایسنسهای متنباز را بشناسیم؟
نگاهی به تاریخچه نرمافزارهای Open-source
در ایالات متحده آمریکا و بسیاری از کشورهای جهان، حمایتهای قانونی ویژهای از صاحبان و تولیدکنندگان اصلی محصولات میشود. یکی از این حمایتها «کپیرایت» است. تا پیش از سال ۱۹۸۹، با تمامی آثار منتشرشده در آمریکا، باید اعلان کپیرایت شامل علامت کپیرایت © همراه با تاریخ نشر و نام مالک کپیرایت ذکر میشد تا از آنها حمایت شود. درحالحاضر، استفاده از این اعلان در آمریکا اختیاری است؛ ولی هنوز کاربرد دارد.
انواع لایسنسهای سی پنل به همراه قیمت آنها در مقالهی زیر آمده است. آن را از دست ندهید.
لایسنسینگ و کپیرایت (Copyright) چیست؟
دفتر حق تکثیر ایالات متحده آمریکا که زیرنظر کنگره این کشور فعالیت میکند، حق تکثیر (کپیرایت) را اینگونه تعریف میکند: «نوعی از حق مالکیت معنوی که از آثار حمایت میکند؛ بهویژه وقتی پدیدآورنده آن را نه بهطور انتزاعی، بلکه بهطور ملموس عرضه میکند.» این گزاره بدینمعناست که در کپیرایت شما صاحب ایده نیستید.
اگر توسعهدهنده یا مالک حمایتهای قانونی بیشتری بخواهد، میتواند حق امتیاز خود را دریافت کند و زیر چتر قوانین مالکیت معنوی قرار گیرد. باوجوداین، کپیرایت بدینمعنا نیست که اگر مراحل قانونی طی نشود، شما نمیتوانید از این حق استفاده کنید؛ بلکه حق شما محفوظ است؛ چون در همه کشورهای عضو کنوانسیون برن (توافقنامه بینالمللی درزمینه کپیرایت)، حق مالکیت معنوی بهطور خودکار به همه آثار و محصولات تعلق میگیرد و به ثبت در ادارههای دولتی نیازی نیست. نکته مهم این است که در حوزههای قضایی، ثبت قانونی بهعنوان مدرکی برای اثبات معتبربودن کپیرایت تلقی میشود.
نگاهی کلی به مفهوم لایسنس کپیرایت
حقوق کپیرایت برای توسعهدهنده یا صاحب اثر
کپیرایت برای صاحب یا توسعهدهنده اثر حقوق متعددی در نظر میگیرد؛ ازجمله حق توزیع و تکثیر. اگر توسعهدهنده بخواهد بر نحوه استفاده از نرمافزار نظارت و آن را کنترل کند، باید از لایسنس بهره ببرد. در این لایسنس، دستورالعملهایی در نظر گرفته میشوند که کاربران باید از آن پیروی کنند.
اگر مالک یا توسعهدهنده عبارت «All Rights Reserved (تمام حقوق محفوظ است)» را ذکر کند؛ یعنی حق نسخهبرداری را برای خود محفوظ میداند و نمیگذارد دیگران بدون اجازه از آن بهرهبرداری کنند. طبق واقعیتی پذیرفتهشده، پدیدآورندگان حق دارند روی نحوه استفاده از محصول خود شروطی بگذارند. باتوجهبه اینکه کپیرایت حقی منطقی است، باید رعایت شود و اگر رعایت نشود، به پدیدآورنده ظلم میشود.
موضوع دیگری که باید به آن اشاره کرد، این است که اگر برای سازمان یا شرکتی کار میکنید و محصول یا اثری با تفکر و تلاش شما تولید میشود، متعلق به آن ارگان است؛ زیرا آنها برای این کار به شما پول میدهند. ازاینرو، انتشار بدون اجازه این اثر برایتان عواقب قانونی دارد و شما حق مالکیت و کپیرایت آن را ندارید.
اگر پسورد روت را در هر یک از توزیعهای لینوکس فراموش کردید میتوانید به کمک مقالهی زیر آن را بازیابی کنید.
نرمافزار انحصاری (مالکیتی)
نرمافزار انحصاری (Proprietary Software) یا مالکیتی نرمافزاری است که در مالکیت انحصاری توسعهدهندگان و توزیعکنندگان قرار دارد و طبق موافقتنامههای نرمافزاری، نمیتوان آنها را تکثیر و توزیع کرد. بازیهای ویدئویی نمونه شناختهشده نرمافزارهای انحصاری هستند. این بازیها در انواع مختلف مانند کارتریج یا لوح فشرده یا فایل نصبی دانلودشده دردسترس هستند. اگر بازی را بخرید، اجازه ندارید آن را کپی کنید و دراختیار دیگران قرار دهید و درآمدزایی کنید. همچنین، نباید که کد بازی را تغییر دهید و آن بازی را روی پلتفرمی دیگر اجرا کنید.
1. توافقنامه مجوز کاربر نهایی (EULA)
کاربران نرمافزارهای مالکیتی معمولاً باید توافقنامهای با عنوان «توافقنامه مجوز کاربر نهایی» (EULA) را بپذیرند که با نام «قرارداد مجوز نرمافزار» نیز شناخته میشود. طبق این قرارداد، سازنده نرمافزار حق استفاده از آن را به خریدار میدهد و او باید برخی از محدودیتها را رعایت کند. بسیاری از تولیدکنندگان نرمافزار قرارداد را پیش از نصب نرمافزار درمعرض دید کاربر قرار میدهند و از او میخواهند که آن را قبول کند. اگر کاربر با مفاد قرارداد موافق نباشد، نرمافزار نصب نمیشود.
اگر تاکنون نرمافزار مالکیتی را تهیه کرده باشید، احتمالاً عبارت EULA را دیدهاید که مشخص میکند شما مالک نرمافزار نیستید؛ بلکه صاحب لایسنس نرمافزار هستید که این لایسنس به شما اجازه میدهد از نرمافزار استفاده کنید. EULA ممکن است نحوه استفاده از خودِ لایسنس را نیز تعیین کند که طبق آن، شما مجاز نیستید نرمافزار را بدون اجازه صاحب یا توسعهدهنده یا ناشر برای دیگران بفرستید.
توافقنامه مجوز کاربر نهایی یعنیچه؟
2. موافقتنامه شرایط استفاده از خدمات (Terms of Service Agreement)
یکی دیگر از ابزارهای قانونی مشابه با توافقنامه مجوز کاربر نهایی، Terms of Service Agreement است که با عنوان «موافقتنامه شرایط استفاده از خدمات» یا «شرایط استفاده» (Terms of Use) یا «شرایط و مقررات» (Term and Conditions) نیز شناخته میشود و بهصورت اختصاری «ToS» نام دارد. ToS مجموعه قوانینی است که برای استفاده از یک سرویس باید رعایت شوند.
بهترین نرمافزارهای ادیت ویدئو که در محیط لینوکس مورد استفاده قرار میگیرند را به همراه راهنمای نصب در مقالهی زیر بخوانید.
3. اجزای تشکیل دهنده ToS
ToS معمولاً از بخشهایی تشکیل میشود که مربوط به یک یا چند موضوع زیر است:
- حقوق و مسئولیتهای کاربر
- چگونگی استفاده مناسب از خدمات یا استفاده موردانتظار و تعریف «سوءاستفاده» هنگام استفاده از خدمات
- خطمشی حفظ حریم شخصی در استفاده از اطلاعات خصوصی کاربر
- تعیین روش برای انصراف کاربر و بستن حساب درصورت موجودبودن
- توضیح مسئولیت قانونی وبسایت برای خسارات ناشی از کاربران
- اطلاعرسانی به کاربر پس از اصلاح و تغییر شرایط و قوانین توافقنامه
نخستینبار که نرمافزاری انحصاری را باز میکنید، معمولاً کادری ظاهر میشود که در آن EULA یا ToS را توضیح میدهد و در زیر آن کادر، گزینهای با عنوان I Agree (موافق هستم) یا هر جمله مشابه دیگری وجود دارد که باید پیش از استفاده از نرمافزار، روی آن کلیک کنید.
پیش از دهه ۱۹۷۰، این نوع محدودیتها اعمال نمیشد و نرمافزارها معمولاً همراه با کد منبع (Source Code) عرضه میشدند. این یعنی کاربران آزاد بودند تا نرمافزار را بهدلخواهشان تغییر دهند و بهاشتراک بگذارند. با گذشت زمان، عرضهکنندگان نرمافزار با هدف افزایش فروش، این گونه فعالیتها را محدود کردند؛ چون بعضی از کاربران نرمافزار هزینهای پرداخت نمیکردند و درعمل به سازنده و عرضهکننده نرمافزار ضرر میرساندند.
این محدودیتسازیها سبب ایجاد و توسعه دو جنبش نزدیک بههم شد: یکی جنبش نرمافزار آزاد و دیگری جنبش نرمافزار متنباز. اگرچه اینها باهم متفاوت هستند، هر دو جنبش استدلال میکنند که کاربران نرمافزار باید بتوانند به کد منبع برنامه دسترسی داشته باشند و آزادانه و بهدلخواه خود تغییرش دهند و آن را در هر زمان با فرد مدنظرشان بهاشتراک بگذارند.
توافقنامه مجوز کاربر نهایی چه کاربردی دارد؟
وجه اشتراک و تمایز لایسنسهای نرمافزار آزاد و لایسنسهای نرمافزار متنباز
بین لایسنسهای نرمافزار آزاد و لایسنسهای نرمافزار متنباز همپوشانی زیادی وجود دارد و تفاوت زیادی بین آنها دیده نمیشود. تقریباً همه برنامههای متنباز درواقع آزاد هستند و ازطریق نوع خاصی از لایسنس منتشر میشوند. معمولاً نرمافزارهای آزاد یا متنباز بر آزادی حقوق کاربران نهایی تأکید میکنند؛ اما گاهی اوقات این نامها با رایگانبودن اشتباه گرفته میشود. نرمافزار متنباز همیشه رایگان ارائه نمیشود؛ بلکه کد منبع آن رایگان دردسترس قرار میگیرد.
طرفداران نرمافزار متنباز توسعهدهندگان را تشویق میکنند تا نرمافزار خود را با لایسنس عرضه کنند. بااینحال، بهجای لایسنس نرمافزار انحصاری که تعیین میکند کاربران چه کارهایی را نمیتوانند انجام دهند، آنان خواهان استفاده از لایسنس نرمافزار متنباز هستند که آزادیهای موجود را برای کاربران نرمافزار مشخص میکند. این لایسنسها را معمولاً در فایلی مجزا با عنوان LICENSE.txt یا هر نام مشابه دیگری میتوان مشاهده کرد.
در سالهای گذشته، درباره اینکه لایسنس نرمافزار متنباز چه آزادیهای خاصی را باید تضمین کند، اختلافنظر وجود داشته است. همین اختلافنظر باعث شکلگیری و توسعه بسیاری از لایسنسهای متنباز مختلف شده است. بیشترِ این لایسنسها در یکی از این دو دسته قرار میگیرند: لایسنس مجاز (Permissive) و لایسنس کپیلفت (Copyleft).
مجوزهای متنباز و آزاد چه تفاوتی با یکدیگر دارند؟
لایسنسهای متنباز Permissive و Copyleft
لایسنس Permissive که گاهی لایسنس غیرکپیلفت نیز نامیده میشود، به توسعهدهندگان اجازه میدهد از کد منبع استفاده کنند و تغییرش دهند و آن را بهاشتراک بگذارند. همچنین، آنها میتوانند برخی از شرایط و ضوابط را برای توزیع مجدد تغییر دهند که این کار به تولید آثار و نرمافزارهای اقتباسشده از نسخه اصلی منجر میشود.
نرمافزار اقتباسی (اشتقاقی) به نرمافزاری گفته میشود که در آن، بهطور عمده از عناصر نرمافزار دیگری استفاده شده است که قبلاً ایجاد شده و از حق تکثیر برخوردار است. اگر نسخه اصلی تحت لایسنس Permissive منتشر شده باشد، سازنده نسخه اقتباسی میتواند نرمافزار خود را با شرایط متفاوتی درمقایسهبا آنچه در لایسنس نسخه اصلی تعریف شده، منتشر کند.
لایسنس کپیلفت (Copyleft) که با آیکون شناخته میشود، به توسعهدهندگان اجازه میدهد از کد منبع استفاده کنند و آن را تغییر دهند و منتشر کنند؛ اما محدودیتها و شرایط و ضوابط خاصی برای لایسنسگذاری مجدد اعمال میکند. این بدانمعناست که سازندگان نرمافزارهای اقتباسی باید اثر خود را با همان شرایط و ضوابط لایسنس کپیلفت نرمافزار اصلی منتشر کنند. هدف اصلی از این لایسنس آن است که کاربران هنگام استفاده از آثار اقتباسی، از همان حقوق و مجوزهای نرمافزار اصلی بهرهمند شوند.
لایسنس کپیلفت که کاربردی دارد؟
لایسنسهای دامنه عمومی (Public-Domain-Equivalent Licenses)
علاوهبر لایسنسهای مجاز و کپیلفت، لایسنسهای دامنه عمومی (Public-Domain-Equivalent Licenses) نیز وجود دارند که امکان استفاده و تغییر و توزیع مجدد را بدون محدودیت فراهم میکنند و اجازه میدهند که نرمافزارهای دارای لایسنس بدون ذکر منبع منتشر شوند.
این لایسنس بهعنوان لایسنس بسیار مجاز شناخته میشوند؛ زیرا توانایی توسعهدهندگان در استفاده از کد منبع موجود در نرمافزار اصلی را محدود نمیکند. علاوهبراین، لایسنسهای دامنه عمومی به کاربران امکان میدهند که از نرمافزار در هر حالتی که میخواهند، مجدداً استفاده کنند.
اگرچه لایسنسهای دامنه عمومی و آزاد و متنباز با یکدیگر همپوشانی دارند، کارشناسان حوزه نرمافزار در سالهای اخیر بر سر این موضوع اختلافنظر دارند که آیا دامنه عمومی متنباز است یا خیر.
در سال ۲۰۱۲، لایسنس CC0 (لایسنس کرییتیو کامنز) منتشر شد؛ اما Open-source Initiative (بهاختصار OSI) آن را تأیید نکرد. این سازمان که به «پیشگامان متنباز» نیز شهرت دارد، سازمانی غیرانتفاعی است که استانداردهای نرمافزارهای متنباز را تعریف و فهرست لایسنسهای متنباز تأییدشده را منتشر میکند. در سال ۲۰۲۰، سازمان OSI سرانجام یک لایسنس دامنه عمومی به نام Unlicense را تأیید کرد.
چطور میتوان از طریق سیستمعاملهای مختلف به سرور لینوکس متصل شد؟ در مقالهی زیر بخوانید.
جمعبندی
در این مقاله از مجموعه مقالات آموزش لینوکس، توسعهدهندگان میتوانند لایسنسهای نرمافزار متنباز متعددی را انتخاب کنند و برای این کار باید عوامل زیادی در نظر بگیرند. در این مقاله، مفهوم کپیرایت و استفاده از نرمافزارهای توسعهدادهشده بهدست سایر افراد با شرایط و ضوابط خاص را بررسی کردیم. همچنین، توافقنامههای مهم حالحاضر را معرفی کردیم و وجه تمایز و اشتراک دو لایسنس محبوب مجوز متنباز و آزاد را توضیح دادیم.
آیا لایسنسهای دامنه عمومی تغییر و توزیع بدون محدودیت را فراهم میسازند؟
سؤالات متداول
1. لایسنسینگ و کپیرایت چیست؟
کپیرایت که به آن «حق نشر» و «حق نسخهبرداری» و «حق تکثیر» نیز گفته میشود، نوعی حق مالکیت معنوی است که از آثار حمایت میکند.
2. مفهوم All Rights Reserved به چه معناست؟
یعنی توسعهدهنده حق نسخهبرداری را برای خود محفوظ میداند و مجوز بهرهبرداری بدون اجازه از آن را به دیگران نمیدهد.
3. توافقنامه مجوز کاربر نهایی (EULA) چیست؟
طبق این توافقنامه، سازنده نرمافزار حق استفاده از آن را به خریدار میدهد و او باید برخی از محدودیتها را رعایت کند.