گیک فارسی

نوشته های یک گیک فارسی از فعالیت ها ،‌ علاقه مندی ها و نقد هایش

دسترسی به فایل‌های iphone از طریق اوبونتو (لینوکس)

نویسنده:
2 ژوئن 18

امروز چک کردم و حجم فایل‌های گوشیم زیاد شده بود و میخواستم بریزمشون روی هارد اکسترنال ، خیلی شیک USB گوشی را زدم به لپ تاپ و یک دیالوگ اومد که به این کامپیوتر اعتماد داری ؟! بعد از زدن Trust از توی Filemanaer اومدم Monted Device که به نام IPhone بود را باز کنم و در نهایت تعجب خالی بود.

بعد از بررسی LOG ها و مطالعه روی اینترنت متوجه شدم یک ابزاری هست به نام ifuse که به فایل سیستم fuse روی IOS Device ها دسترسی میده. خودش و ملحقات روی Repository بود و با خوشحالی نصبش کردم و با دستوراتی که در ادامه میگم Pair هم شد ولی تا اومدم Mount بگیرم خطای زیر را میداد:

Failed to connect to lockdownd service on the device.Try again. If it still fails try rebooting your device.

بعد از بررسی بیشتر متوجه شدم نرم افزار‌های مورد نیاز نصب شده از روی Repository بروز نیستن و تغییراتی از نسخه ۱۰ IOS به بالا بوده که نرم‌افزار نصب شده امکان برقراری ارتباط را پیدا نمیکنه و باید از Source نصب کنم !!!

خوب یکی دو تا برنامه نبود و باید کلی زمان میگذاشتم که خوشبختانه با کمی جستجو متوجه شدم یک انسان با فرهنگ کل پروسه را توی Github توضیح داده (نسخه PDF آموزش) و با انجام دادن کل مراحل از جمله بخش bashrc. که خیلی مهمه (به زحمت ۵ دقیقه طول میکشه) به راحتی با چند تا دستور زیر کار راه افتاد.

حتماً یادتون نره وقتی گوشی را به Usb میزنید خود IOS ازتون میپرسه به این سیستم اعتماد دارین که باید Trust را بزنین.

حالا با دستورات زیر گوشی را pair و mount میکنیم :

idevicepair pair
mkdir -p ~/usr/mnt
ifuse ~/usr/mnt/

حالا میتونین با Filemanager محبوبتون فایل‌ها را منتقل کنین و برای unmount بزنین:

fusermount -u ~/usr/mnt

به همین راحتی بدون نیاز به ویندوز Storage گوشی iphone شما قابل دسترس هست.

شکستن فایل‌های حجیم به فایل‌های کوچکتر در لینوکس

نویسنده:
8 فوریه 18

وقتی با سایت‌های بزرگ کار میکنی و حجم اطلاعات زیاد میشه نسخه پشتیبان گرفتن از فایل‌ها و اطلاعات پایگاه داده ناگزیر خواهد بود. قطعاً این فایل‌ها هم باید از روی سرویس دهنده اصلی دانلود و بر روی DVD و مدیا های پشتیبان دیگر ذخیره شوند.

هرچقدر حجم فایل‌ها بزرگ باشه برای دانلود مشکلات دو چندان میشه و امکان Resume نشدن و کلاً دانلود مجدد وجود داره ، اگه هم نیاز باشه فایل‌ها را روی سرویس های Cloud Storage مجزا از سرویس دهنده اصلی ذخیره کنیم ، محدودیت حجمی ارسال و دریافت فایل روی خیلی از خدمات وجود داره.

راه حل این هست که فایل‌های بزرگ را به قطعات کوچیکتر تقسیم کنیم و هر زمان بهشون نیاز داشتیم اون ها را به هم متصل و از فایل اصلی استفاده کنیم. برای این کار لینوکس ابزار بسیار خوبی داره به نام Split ، مثلاً با دستور زیر میشه یک فایل ۱۰ گیگابایتی را به ۱۰ فایل ۱ گیگابایتی تقسیم کرد:

split -b 1000M backup.zip backup.

این دستور فایل‌های ۱ گیگابایتی با نام هایی مثل backup.aa و backup.ab و … خواهد ساخت. حالا هر زمان احتیاج داشتیم فایل اصلی یعنی backup.zip را داشته باشیم با دستور زیر فایل اصلی را بازسازی میکنیم:

cat backup.a? > backup.zip

بالا نیومدن سیستم با خطای عدم Mount شدن درایو اصلی لینوکس

نویسنده:
24 ژانویه 16

امروز روی لپ‌تاپ قدیمیم میخواستم چند تا ایمیل را بررسی کنم و حواسم نبود که شارژ نداره ،‌ لپ‌تاپ را روشن کردم و رفتم USB Memory بیارم که فایل‌ها را بریزم روش ولی همینکه برگشتم دیدم لپ‌تاپ خاموش شده و متوجه شدم شارژ نداره ،‌ وقتی برق AC وصل کردم و میخواست بیاد بالا Grub سیستم را روی درایو sda که Home روش بود Boot نمیکرد و خطای Mount میداد و میرفت توی یک محیط با تعدادی دستور خاص.

اگه کاربر ویندوز بودم عموما استفاده از Recovery واین چیزا نتیجه‌ای نمیداشت و ویندوز را دوباره نصب میکردم اما نه ! سیستم عامل لینوکس هست و حتماً ابزاری برا ی رفع مشکل داره.Live CD اوبونتو را گذاشتم توی DVD-ROM و اوبونتو اومد بالا اما پیغام داد که نمیتونه Drive را Mount کنه. اومدم با دستور زیر دستی انجام بدم :

sudo mount /dev/sda3 /media/mysda

که خطای زیر را گرفتم :

mount: wrong fs type, bad option, bad superblock on /dev/sda3,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so 

طبق پیشنهادش دستور dmesg | tail را زدم و توی خط آخر نوشته بود:

EXT4-fs (sda3): error loading journal

با کمی جستجو متوجه شدم ext4 یه فایلی داره به نام Journal که وقتی سیستم به شکل غیر صحیح و اصولی Shutdown میشه لینوکس با استفاده ازش ناسازگاری ها و ناهماهنگیهای File System را تعمیر میکنه. حالا لینوکس برای Mount نیاز به این Journal داشت و گویا دچار مشکل شده بود.

پس دنبال Corrupt Journal گشتم و متوجه شدم با Gparted و قابلیت Check (روی درایو Right Click کنید و چک را انتخاب کنید). مشکل حل میشه. کمی فرآیندش زمان برد و پیام موفقیت داد اما میتونستی ببینی داره چه دستوری را اجرا میکنه :

sudo e2fsck -f -y -v /dev/sda3

بعدش Reboot کردم و لپ‌تاپ سالم اومد بالا ،‌ البته قطعاً فایل‌هایی ممکنه دچار خرابی و مشکل شده باشن که به مرور زمان متوجه خواهم شد البته فعلاً که موردی نبوده و اگه بود توی همین پست اشاره میکنم.

از کجا بفهمیم یک سایت از چه سیستم عامل ،‌ سرویس دهنده وب و زبان برنامه نویسی استفاده میکنه ؟

نویسنده:
6 آگوست 15

یکی از مباحثی که در انجمن‌ها و جوامع برنامه نویسان وب مطرح هست این موضوعه که چه وب سایت‌های موفقی از زبان برنامه نویسی مورد علاقه من استفاده میکنند !؟ گذشته از اینکه این سؤال به نظر من اصلاً مهم نیست چون من دوستان برنامه نویس موفقی دارم که از Scala برای توسعه وب استفاده میکنند در حالی که پروژه خیلی موفق و دهن پر کنی هم در موردش وجود نداره در عوض میشه این موضوع را بهانه قرار داد تا یاد بگیریم چطور میشه خیلی ساده تشخیص داد یک سایت از چه سیستم عامل ، سرویس دهنده وب و زبان برنامه نویسی استفاده میکنه.

مدیر سیستم ،‌تحلیل شبکه

شاید اولین اشتباه در نگاه اول به یک سایت این باشه که از روی پسوند فایل‌ها استنباط کنیم که از چه زبان برنامه نویسی و سیستم عامل و … داره استفاده میشه که البته خیلی قابل اطمینان نیست چون واقعاً براحتی از طریق یک فایل htaccess. روی سیستم عامل لینوکسی میشه فایل‌ها با پسوند aspx را دوباره نویسی (URL Rewriting) کرد یا حتی از سرویس دهنده وب بخوایم پسوند aspx را به عنوان یک پسوند معتبر برای PHP فرض کنه.

من نمیخوام وارد بحث‌های کارآگاهی و تخصصی شبکه و بررسی پورت های سرویس دهنده و موارد پیچیده بشم. موردی هم که میخوایم از طریقش بررسی را انجام بدیم توسط یک مدیر سرور قابل دستکاریه که یک نمونه هم معرفی میکنم اما عموما این اتفاق نمیفته و از طریق Header هایی که سرویس دهنده میفرسته میشه فهمید اون پشت چه خبره !

دستوری که میخوایم ازش استفاده کنیم خیلی سادست ، مثلاً بیاین سایت digikala.com را بررسی کنیم :

curl -s -I digikala.com

که این خروجی را بر میگردونه :

HTTP/1.1 301 Moved Permanently
Content-Length: 147
Content-Type: text/html; charset=UTF-8
Location: http://www.digikala.com/
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Wed, 05 Aug 2015 22:53:37 GMT

که ازش متوجه میشیم داره از سیتم عامل ویندوز ، IIS7.5 به عنوان سرویس دهنده و زبان ASP .NET استفاده میکنه.

اما همیشه هم نمیشه ۱۰۰ درصد در مورد یک یا چند مورد از سوالاتمون اطمینان حاصل کنیم ، مثلاً خروجی سایت Ponisha.ir :

HTTP/1.0 200 OK
Date: Wed, 05 Aug 2015 22:59:54 GMT
Server: Apache/2
X-Powered-By: PHP/5.5.27
Set-Cookie: PonishaSession=kbt88b72ms7p9nk2l9bpnqiiu7; path=/; domain=.ponisha.ir
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: User-Agent
Content-Type: text/html
Connection: close

مشخصه که سرویس دهنده Apache هست و زبان برنامه نویسی PHP 5.5 اما با اطمینان نمیتونیم بگیم داره از سرویس دهنده لینوکسی استفاده میکنه چون روی ویندوز هم قابل استفاده هست اما در حالت نرمال و حرفه‌ای ۹۵ درصد میشه اطمینان داشت سیستم عامل از خانواده لینوکس یا یونیکس هستش.

همونطور که گفتم مدیر سیستم میتونه این اطلاعات را دستکاری کنه ، مثلاً خروجی mihanblog.com را اگه ببینید :

HTTP/1.0 200 OK
Date: Wed, 05 Aug 2015 23:04:46 GMT
Content-Type: text/html
Set-Cookie: mib_lb_id=m0; path=/; domain=.mihanblog.com
Cache-Control: no-cache, must-revalidate, no-cache="Set-Cookie", private
Vary: Accept-Encoding
Server: Toofun/1.0.1
Connection: close

هموطنر که میبینید تنها موردی که برمیگردونه سرویس دهنده هست که اون را Toofun معرفی میکنه اما من که چنین سرویس دهنده ای را نمیشناسم اما گویا سایت‌های cloob.com و aparat.com هم چنین خروجیی را بر میگردونه (به نظر میاد مالک همشون یک گروه باشه) اما با کمی مطالعه دقیقتر و مراجعه به آرشیو های سایت‌های موجود و دیدن ردپای nginx میشه حدس زد شاید Forky ی از اون باشه اما نمیشه صد در صد گفت.

یادتونه گفتم به پسوند فایل‌ها اعتماد نکنید ؟ خوب اگه خروجی سایت بانک ملت را ببینیم :

HTTP/1.0 301 Moved Permanently
Cache-Control: private
Content-Length: 150
Content-Type: text/html; charset=utf-8
Location: http://bankmellat.ir/default.aspx
Server: Apache/2.2.3 (Linux/SUSE)
Date: Wed, 05 Aug 2015 23:11:28 GMT
Connection: close

داره میگه سرویس دهده Apache روی لینوکس SUSE اما پسوند فایل Header مربوط به Location که داره Redirect میکنه aspx هست. استنباط اینکه داره برای گمراهی پسوند را عوض میکنه خیلی قوی‌تر از این هست که فکر کنیم IIS داره خروجی گمراه‌کننده برای جا زدن خودش به عنوان Apache تولید میکنه.

فقط برای تفریح ،‌ داستان یک انقلاب اتفاقی

نویسنده:
27 آگوست 14

من زیاد اهل مطالعه کتاب نیستم ، شاید اگه مطالب فنی که توی ebook ها و اینترنت خوندم و همینطور وبلاگ ها را جمع کنیم یک کتابخانه چند قفسه بزرگ بشود و یا حتی شمارش فیلم‌هایی که دیدم از دستم در رفته باشد ولی کتاب‌هایی که خواندم به زور به ۳ یا ۴ عنوان میرسد.

50

چند روز پیش بود که داشتم وبلاگ دوست خوبم جادی (ما به صورت اجتماعی و رو در رو با هم ملاقات نداشته‌ایم و من تنها یک ایمیل برای رفع یک مشکل فنی در سایت مبین نت برایش نوشتم اما میدانم که در صورت ملاقات با هم دوست خواهیم شد ;)) را میخواندم که باز هم یک حرکت ارزشمند در دنیای سورس باز یا همون باز متن انجام داده و کتابی که در مورد چگونگی حیات لینوکس و زندگی شخصی و عقاید خالقش یعنی لینوس توروالدز هست را ترجمه کرده و به صورت رایگان منتشر کرده.

من به دو دلیل این کتاب را خوندم ! اول اینکه بالاخره خودم یک جورایی گیک هستم و به شدت لینوکس را دوست دارم و میخواستم در مورد چگونگی حیاتش و همینطور خالقش بیشتر بدونم. و دوم اینکه جادی نثر خوبی داره و قطعاً موضوعات با‌ ارزشی توی کتاب بوده که ترجمش کرده.

منی که ۳ یا ۴ عنوان بیشتر کتاب نخوندم و اون ها هم رمان و تاریخی بوده این کتاب را توی ۳ روز تمومش کردم ، البته کتاب بزرگی نیست و فقط ۱۷۳ صفحه هستش ولی خوب برای من رکورد خوبیه ! من به شدت خوندن کتاب را به برنامه نویس ها و علاقه‌مندان جامعه سورس باز پیشنهاد میکنم و درخواست میکنم اگه کتاب را خوندین و خوشتون اومد حتماً از طریق سایت کتابش donate کنین تا فرهنگ این کار در جامعه شکوفا بشه.

مهاجرت به لینوکس | کدام توزیع ؟

نویسنده:
15 می 14

پیرو نوشته‌ای که با عنوان «چرا یک برنامه نویس وب باید به مهاجرت به لینوکس فکر کنه ؟» منتشر کردم. در دومین قدم و پس از اینکه تصمیم به این مهاجرت گرفتیم باید سیستم عامل مبتنی بر لینوکس را نصب کنیم. شاید بعضی بپرسند چرا میگین «مبتنی‌؟» خوب من نمیخوام خیلی حاشیه برم و کافیه بدونین که لینوکس در‌ واقع یک کرنل هست که در کنار یکسری ابزار و نرم‌افزار با همدیگه یک سیستم عامل مبتنی بر لینوکس را شکل میدهند. سعی میکنم در آینده در مورد لینوکس و این ابزار ها و نرم‌افزار ها بیشتر توضیح بدم اما حالا بپردازیم به ادامه بحثمون.

به این سیستم عامل های متنوعی که تولید می‌شوند اصطلاحاً Distro یا توزیع میگن. توزیع‌ها خیلی خیلی متنوع هستند اما بسیاری از اونها هم خانواده هستند مثل فدورا (Fedora) که از خانواده Red Hat هست یا اوبونتو و مینت که از خانواده Debian هستند (توجه کنین که خود Red Hat و Debian هم توزیع هستند). یکی از کارهایی که اشتباهه و من ازش خوشم نمیاد تعصب بی خودی روی ابزار هایی هست که ما چون خودمون دوستشون داریم و ازشون استفاده میکنیم پس از بقیه بهتر هستند. اما چون شما دارین نوشته‌های من را دنبال میکنید پس من از تجربه خودم میگم و یادتون باشه وقتی به آشنایی نسبی با توزیع معرفی شده توسط من رسیدیدن حتماً توزیع‌های دیگه را امتحان کنید.

من با توجه به تحقیقاتی که خودم انجام دادم متوجه شدم کلاً کار با خانواده Debian راحت تره و دو تا از محبوب‌ترین توزیع‌ها یعنی Ubuntu و Mint هم از همین خانواده هستند و فقط به خاطر پشتیبانی بیشتری که احساس کردم در مورد Ubuntu وجود داره و انجمن بسیار خوبی هم به فارسی برای علاقه مندانش هست Ubuntu را انتخاب کردم.

شما میتونید آخرین توزیع را از سایت اوبونتو دانلود کنین و بدون اینکه نصبش کنین با Burn کردنش روی CD (معمولاً در فرمت iso هست) به صورت Live CD با گذاشتنش توی CD Rom و ریست کردن سیستمتون امتحانش کنین.

در سومین مرحله از مهاجرت به لینوکس به صورت کامل نصب اوبونتو را در کنار ویندوز آموزش خواهم داد.

چرا یک برنامه نویس وب باید به مهاجرت به لینوکس فکر کنه ؟

نویسنده:
1 می 14

از آنجا که من یک برنامه نویس وب PHP هستم (البته در زمینه Desktop هم تجربه خیلی خیلی زیادی دارم اما فعلاً ۱۰۰ درصد فعالیتم در زمینه وب و PHP هستش) میخوام از این منظر به مهاجرت به لینوکس نگاه کنم که اصلاً چرا باید یک برنامه نویس وب به مهاجرت به لینوکس فکر کنه ، حالا چه برسه به اینکه بخواد مهاجرت کنه. اگه کسی تا حالا چیزی را خلق کرده باشه و در‌واقع پدید آور باشه یک موضوعی خیلی اون را اذیت میکنه و اون موضوع چیزی نیست جز اینکه حالا چطور مانع از سوء استفاده سودجویان از محصول ، پدیده یا در زمینه کاری خودمون همون نرم‌افزار بشه ؟!

مخصوصاً وقتی توی کشوری زندگی میکنی که قوانین درست و حسابی در حمایت از پدید آورنده یا همون قوانین کپی رایت نداره یا اگر هم داره ، ضمانت اجرایی سهل و اصولی براش وجود نداره. برای مردمش هم که از صبح تا شب قوانین کپی رایت را نقض میکنند حالا نقض قانون کپی رایت در مورد نرم‌افزار ساده من و شما اصلاً موضوع قابل تاملی نیست !!! خوب باید چه کار کرد ؟ مگه نه اینکه بهتره برای تغییر هر چیزی توی فرهنگ و رفتارمون از خودمون شروع کنیم ؟ قطعاً همینه. پس بهتره من که انتظار دارم بقیه کپی رایت را در مورد نرم‌افزار من رعایت کنند من هم کپی رایت را حداقل در زمینه کاری خودم رعایت کنم و کم کم با بسط دادنش به موضوعات دیگه بطور کلی قوانین رعایت از حقوق پدید آورنده را عملاً به رسمیت بشناسم.

اولین سؤال این خواهد بود که من توی کارم از چه نرم‌افزار هایی استفاده میکنم ؟ آیا کپی رایت را در مورد اونها رعایت میکنم یا از نسخه‌های کرک شده استفاده میکنم؟ جواب سؤال متأسفانه عدم رعایت کپی رایت هستش ! از ویندوز گرفته تا فتوشاپ و Dream Weaver یا Zend Studio ! اما خریدن این نرم‌افزار ها خیلی پر هزینه هستش و من اگه بخوام هزینه این‌ها را بدم و هر سال هم Upgrade و این حرفا که دیگه …

علاوه بر موضوع رعایت کپی رایت ،‌ همه سرویس دهنده هایی که سایت‌ها و نرم‌افزار های من روشون کار میکنند لینوکس هستند و چه بسا زمانی نیاز پیدا بشه که یک سرویس دهنده مجازی یا Dedicated برای یک وب سایت در نظر بگیرم. اونوقت چطور باید این سیستم عامل را مدیریت کنم ؟ این موضوع هم جای سؤال داره که آیا از سیستم عاملی که نرم‌افزار من در بستر اون اجرا میشه اطلاعات کاملی دارم و نهایت استفاده را از قابلیت هاش می‌برم ؟

مگر نه اینکه PHP از نهضت Open Source هست و من کاملاً به Net. ترجیحش دادم ؟ مگر نه اینکه Firefox و Apache و MySQL هم از همین نهضت هستند و من به Internet Explorer و IIS و MSSQL ترجیحشون دادم ؟ پس لینوکس هم به عنوان سیستم عامل Open Source باید حرف‌هایی برای گفتن داشته باشه. همین تفکرات و سؤالات ، هر برنامه نویسی وبی را علاقه‌مند به کسب تجربه و آشنایی با لینوکس میکنه.من در پست های آینده وب لاگ موضوع مهاجرت به لینوکس را ادامه میدهم و تجاربی که در راه این مهاجرت به دست آوردم را در اختیار خوانندگان قرار میدهم.

برای خواندن دومین بخش از مهاجرت به لینوکس کلیک کنید.

مهاجرت من از ویندوز به لینوکس

نویسنده:
14 مارس 14

من از زمانی کامپیوتر داشتم که سیستم عامل اصلی Dos 6.22 بود و Windows 3.1 هم گاه مورد استفاده قرار میگرفت و البته نه به عنوان سیستم عامل اصلی ، به این خاطر که از توی Dos اجرا میشد. اولین باری که با ویندوز ۹۵ آشنا شدم هم بر میگرده به یک مهمانی خانوادگی و کلاس گذاشتن یکی از اقوام که جایی براش ویندوز ۹۵ نصب کرده بودند. از اونجا که آدم تجربی و چالشی هستم تصمیم به نصب ویندوز ۹۵ گرفتم و با هر مصیبتی بود اون را نصب کردم و تفاوتش با Windows 3.1 مانند تفاوت ژیان با بنز بود. این اتفاق سال ۹۷ برای من افتاد و به مرور زمان هم با آمدن نسخه های جدید تر ویندوز به اون ها کوچ میکردم.

مهاجرت از ویندوز به لینوکس

رغبت من به استفاده از لینوکس از اونجا شروع شد که دو سالی بود از Php بجای Asp .Net استفاده میکردم. به اندازه‌ای Php و تنظیمات htaccess و سرور Apache و MySQL در بستر سرویس دهنده های لینوکسی در افزایش کیفیت و بهره وری و پشتیبانی از پروژه ها نسبت به ترکیب ویندوز و IIS و Asp .NET نمایان، آشکار و غیر قابل انکار بود که تصمیم گرفتم در کنار ویندوز یک سیستم عامل لینوکس نصب کنم.

با تحقیقاتی که توی گوگل انجام دادم تصمیم به نصبت Ubuntu در کنار ویندوز گرفتم و با توجه به سابقه وحشتناکی که از نصب Red Hat در سال‌های دور تر داشتم به صورت قدم به قدم و از روی توضیحات یک وبلاگ خوب ، نصب را انجام دادم و شروع به کار کردم. شاید اگه قصد از نصب لینوکس برای من اینترنت گردی ، فیلم دیدن ، گوش دادن به موسیقی و تایپ اسناد متنی بود Ubuntu به شدت راحت و ابتدایی بود. بدون نیاز به استفاده از Terminal و آشنایی با مفاهیم لینوکس و سیستم عامل های مبتنی بر POSIX. اما مشکل اینجا بود که من یک Developer بودم و باید سرویس دهنده های مورد نیازم را نصب و راه اندازی میکردم و یک محیط توسعه هم برای کد نویسی انتخاب میکردم و قطعاً Gedit در قیاس با Dreamweaver گزینه مناسبی نبود. در ضمن باید نرم افزاری هم برای جایگزین کردن Photoshop پیدا میکردم تا بتونم طراحی های سایت‌ها را انجام بدهم.

قصد ندارم به شرح نرم‌افزار هایی که جایزگزین کردم بپردازم و در پست های آینده این کار را خواهم کرد. همه این نیاز ها باعث شد من ویندوز را به عنوان سیستم عامل اصلی با خودم داشته باشم و هیچ وقت هم فکر نمیکردم روزی بیاد که ویندوز را کنار بگذارم.

پس از مدتی کار با Ubuntu و آشنایی با این سیستم عامل جدید و نصب برنامه‌ها و کلاً سر و کله زدن باهاش در کنار استفاده روزمره از ویندوز ، تفاوت‌های این‌ دو سیستم عامل و نقاط ضعف و قوت هر کدوم برای من آشکار شد. یکی از مسایل دیگه ای هم که من بهش اهمیت میدادم بحث رعایت کپی رایت و استفاده از یک سیستم عامل رایگان و سورس باز بود. این موضوع برای خیلی‌ها قابل درک نیست چون تا حالا نشده کسی حق کپی رایت خودشون را تهدید کرده باشه یا کسی توی دادگاه های کشورشون به خاطر نقض کپی رایت نرم‌افزار های خارجی مجازات شده باشه و من انتظار ندارم کسی توی ایران این موضوع را درک کنه.

پس از اطمینان از اینکه من همه کار هام را به راحتی و بدون مشکل توی محیط Ubuntu میتونم انجام بدهم و هیچ زیانی به کار های من وارد نمیشه تصمیم گرفتم غیر از مواقع پشتیبانی از نرم‌افزار های قدیمی مشتریان دیگه از ویندوز استفاده نکنم. این تصمیم را عملی کردم و مواقعی هم بود که برای یک موضوع جزئی باید در جستجوی راه حل لینوکسی بودم که خدا را شکر همه این نگرانی‌ها و مشکلات حل شد.

تاریخ دقیق اون روز خاص در نظرم نیست (البته در اسفند ماه بود) ولی امروز جشن یک سالگی استفاده از Ubuntu و سیستم عامل لینوکسی را خواهم گرفت و تلاش خواهم کرد این سیستم عامل را از طریق این وبلاگ و در مراوده های کاری و خانوادگی به همه معرفی کنم.