وبلاگ شخصی علی مقدس زاده

۱۵ مطلب با موضوع «لینوکس» ثبت شده است

در سیستم عامل ویندوز ما نرم افزاری به اسم tortoisegit داریم که محیط خیلی راحتی برای استفاده از git برای ما فراهم میکنه؛ یکی از امکانات این نرم افزار، نمایش وضعیت پوشه‌های git در explorer ویندوز هست:



اگر تمایل دارین این قابلیت رو در لینوکس هم ببینید میتونید از rabbitvcs-nautilus استفاده کنید. برای استفاده کافی هست دو تا دستور زیر رو تو محیط ترمینال وارد کنید:

$ sudo apt install rabbitvcs-nautilus
$ killall -KILL nautilus

دستور اول برای نصب نرم افزار و دستور دوم برای اجرای مجدد نرم افزار مدیریت فایل nautilus هست. بعد از اجرای این دو دستور یه چنین چیزی رو میتونید ببینید:



امیدوارم این پست مفید بوده باشه :)


منبع: http://askubuntu.com/questions/190227/is-there-a-way-to-show-icons-on-a-git-repo-folder-like-tortoisegit




  • علی مقدس زاده

چند سالی هست که تو ادارات و شرکت‌ها، برای چت درون سازمانی و انتقال فایل و ... از نرم افزار Microsoft Lync استفاده میشه که متاسفانه کلاینت رسمی ای برای این نرم افزار در سیستم عامل لینوکس وجود نداره؛ تو این پست دو تا راه حل برای این مشکل رو با هم بررسی می‌کنیم:

۱) اگر استفاده شما از Lync فقط برای چت کردن هست، میتونید از نرم افزار pidgin استفاده کنید، فقط کافی هست بعد از نصب این نرم افزار، بسته pidgin-sipe رو هم نصب کنید و زمان اضافه کردن اکانت، پروتوکل رو از نوع Office Communicator انتخاب کنید.

۲) اگر علاوه بر چت، از قابلیت desktop sharing (که برای پشتیبانی نرم افزاری خیلی مناسب هست) هم استفاده می‌کنید، می‌تونید نرم افزار Sky رو نصب کنید. توضیحات مربوط به نصب این نرم افزار در سایت این محصول به آدرس https://tel.red/repos.htm اومده که میتونید از اون استفاده کنید. بعد از نصب این نرم افزار شما هم میتونید خیلی راحت علاوه بر چت، از قابلیت desktop sharing هم استفاده کنید. این محصول دو نسخه رایگان و پولی داره، تنها محدودیتی که نسخه رایگان داره این هست که تماس‌ها و desktop sharing بعد از دو دقیقه قطع میشه و نیاز به اتصال مجدد داره.

  • علی مقدس زاده

گاهی پیش میاد که نرم افزار خاصی فقط بصورت rpm منتشر میشه، این طور مواقع برای استفاده از این نرم افزارها بر روی توزیع‌هایی که از بسته‌های با فرمت deb استفاده می‌کنن میشه از نرم افزار alien استفاده کرد. وظیفه این نرم افزار تبدیل بسته‌های rpm به deb هست، البته باید به این نکته هم توجه داشته باشید که تبدیل بسته‌های rpm به deb به این معنی نیست که همه بسته‌های rpm رو میشه رو توزیع‌های مبتنی بر دبیان نصب کرد.

نصب نرم افزار alien با استفاده از دستور زیر انجام میشه:

sudo apt-get install alien dpkg-dev debhelper build-essential

تبدیل بسته rpm به deb با استفاده از نرم افزار alien:

sudo alien packagename.rpm

برای نصب بسته deb ایجاد شده هم از دستور زیر استفاده میشه:

sudo dpkg -i packagename.deb


منبع: http://www.howtogeek.com/howto/ubuntu/install-an-rpm-package-on-ubuntu-linux

  • علی مقدس زاده

نصب سیستم عامل لینوکس تو مکان‌هایی که اکثر سیستم عامل‌های اونجا ویندوز هستند، ممکنه کاربر رو درگیر یک سری مسائل بکنه؛ یکی از این مسائل بحث دسترسی از راه دور به سیستم لینوکسی هست. برای حل این مساله دو تا راه حل میشه پیشنهاد کرد:

راه حل اول و روش استاندارد دسترسی گرافیکی از راه دور به سیستم‌های لینوکسی استفاده از vnc هست. اگر شما از سیستم عامل اوبونتو استفاده می‌کنید، می‌تونید خیلی راحت با استفاده از نرم افزار "Desktop Sharing" و اعمال تنظیمات مد نظر، سرویس vnc رو بر روی سیستم عامل خودتون فعال کنید و از طریق هر کلاینت vnc که راحت‌تر هستین به سیستم خودتون دسترسی گرافیکی داشته باشید. اما مشکلی که این روش داره این هست که نصب کلاینت vnc و یا استفاده از نسخه‌های portable، ممکن هست با مشکلاتی در سیستم‌های ویندوزی همراه باشه.

راه حل دوم که شاید کاربردی‌تر باشه فعال سازی سرویس xrdp بر روی لینوکس هست؛ به دلیل اینکه نرم افزار Remote Desktop Connection بر روی تمام نسخه‌های ویندوز نصب هست و اجرای اون دسترسی به مجوز خاصی نداره، با راه اندازی سرویس xrdp، می‌تونید از هر سیستم ویندوزی به سیستم لینوکسی خودتون دسترسی داشته باشید. در ادامه این پست نحوه راه اندازی سرویس xrdp بر روی سیستم عامل اوبونتو به صورت مرحله به مرحله توضیح داده میشه:

  • علی مقدس زاده

همونطور که اطلاع دارین، در توزیع‌های مبتنی بر دبیان، زمانیکه ما از ابزار apt-get برای نصب نرم افزار استفاده می‌کنیم، ابتدا بسته‌های مورد نیاز دانلود و سپس عملیات نصب آغاز میشه. معمولا مقدار زیادی از زمان نصب نرم افزار صرف دانلود بسته‌های مورد نیاز میشه و اگر ما بتونیم این زمان رو کاهش بدیم سرعت نصب نرم افزار افزایش پیدا میکنه.

apt-fast یک اسکریپت هست که بر روی apt-get پیاده شده و امکان دانلود بسته‌ها بصورت موازی و با تعداد connection های زیاد رو فراهم میکنه و به این ترتیب سرعت دانلود بسته‌ها رو افزایش میده.

برای نصب این اسکریپت در توزیع‌های اوبونتو 14.04 و بعد از اون سه مرحله زیر رو باید انجام داد:

sudo add-apt-repository ppa:saiarcot895/myppa
sudo apt-get update
sudo apt-get install apt-fast

بعد از نصب، تمام کارهایی که با apt-get انجام میدادید رو میتونید با apt-fast انجام بدین:

apt-fast update
apt-fast install ...
apt-fast upgrade
...

برای توضیحات بیشتر میتونید به لینک زیر مراجعه کنید:

https://github.com/ilikenwf/apt-fast

  • علی مقدس زاده

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

دستوراتی که برای مدیریت مدیریت VirtualBox استفاده میشه، با عبارت VBoxManage شروع میشن؛ برای مشاهده لیست تمام دستورات و امکانات میتونید از دستور VBoxManage --help استفاده کنید.

برای استفاده از دستورات مختلف، لازم هست که ما نام دقیق ماشین مجازی و یا uuid اون رو بدونیم، برای این کار از دستور زیر استفاده می‌کنیم:

$ VBoxManage list vms
"XP" {1b77b5b7-b69a-403a-97a3-ffd9d633d16a}
"Windows 7" {a07eba26-7386-4af9-8e04-80b7324c803d}

برای روشن کردن ماشین مجازی از دستور زیر استفاده میشه:

$ VBoxManage startvm <uuid|vmname>

برای ذخیره حالت فعلی، خاموش کردن، متوقف کردن و ... از دستور زیر استفاده میشه:

$ VBoxManage controlvm <uuid|vmname> pause|resume|reset|poweroff|savestate


  • علی مقدس زاده

اگر شما همزمان از دو سیستم عامل لینوکس و ویندوز استفاده می‌کنید، حتما براتون پیش اومده زمانیکه دارید از ویندوز استفاده می‎کنید، نیاز به فایلی دارید که داخل فایل سیستم لینوکس ذخیره شده. با استفاده از نرم افزار ext2fsd شما میتونید به راحتی از داخل ویندوز به پارتیشن‌های لینوکس دسترسی داشته باشید.

  • علی مقدس زاده

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

بعد از یک جستجوی ساده متوجه شدم که دو دستور زیر برای این مورد وجود دارن:

# pm-suspend
# pm-hibernate

خوب حالا خیلی راحت میتونم با استفاده از دستور زیر به سیستم اعلام کنم بعد از نصب نرم افزار سیستم رو suspend کنه:

# apt-get install ... ; pm-suspend


منبع: http://www.askubuntu.com


ویرایش:

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

# systemctl suspend


  • علی مقدس زاده

هر کاربر لینوکس که از ترمینال استفاده میکنه، معمولا با توجه به نوع کاری که انجام میده از یک سری دستورات تکراری استفاده میکنه. به عنوان مثال افرادی که مدیریت سرورها رو به عهده دارن مدام با استفاده از ssh به سرورهای مختلف دسترسی دارن که یادآوری آدرس‌های IP این سرورها معمولا کمی مشکل هست و یا افرادی که مشغول توسعه نرم افزار هستن ممکن هست مدام با دستورات git سر و کار داشته باشن. در این مطلب روشی رو با هم بررسی می‌کنیم که با استفاده از اون دیگه نیازی به وارد کردن دستورات طولانی در ترمینال وجود نداره؛ در واقع تصمیم داریم تا با اضافه کردن دستورات جدید به bash کار خودمون رو از بابت وارد کردن دستورات طولانی راحت کنیم.

  • علی مقدس زاده

مشکل از اونجایی شروع شد که هر زمان میخواستم به سرور محل کار متصل بشم، از زمانی که دستور ssh رو میزدم تا لحظه‌ای که اتصال برقرار می‌شد زمان نسبتا زیادی سپری می‌شد که با توجه به اینکه اتصال بر روی شبکه محلی انجام می‌شد این تاخیر قابل قبول نبود.

برای بررسی مشکل، دستور ssh رو با سوییچ v- اجرا کردم تا ببینم مشکل مربوط به کجا میشه:

$ ssh -v ali@192.168.1.100
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 192.168.1.100 [192.168.1.100] port 22.
debug1: Connection established.
debug1: identity file /home/ali/.ssh/id_rsa type 1
debug1: identity file /home/ali/.ssh/id_rsa-cert type -1
debug1: identity file /home/ali/.ssh/id_dsa type -1
debug1: identity file /home/ali/.ssh/id_dsa-cert type -1
debug1: identity file /home/ali/.ssh/id_ecdsa type -1
debug1: identity file /home/ali/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/ali/.ssh/id_ed25519 type -1
debug1: identity file /home/ali/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.9p1 Debian-5ubuntu1.4
debug1: match: OpenSSH_5.9p1 Debian-5ubuntu1.4 pat OpenSSH_5* compat 0x0c000000
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA c4:8e:2b:b2:95:53:0c:98:d9:29:7c:ac:c4:0a:65:37
debug1: Host '192.168.1.100' is known and matches the ECDSA host key.
debug1: Found key in /home/ali/.ssh/known_hosts:3
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received # دقیقا در این قسمت برای چند ثانیه عملیات متوقف می‌شد
...

بعد از یک جستجوی ساده در اینترنت به این نتیجه رسیدم که اگر عبارت UseDNS no رو به فایل etc/ssh/sshd_config/ اضافه کرده و یک مرتبه سرویس ssh رو restart کنم مشکل برطرف می‌شه.

# echo 'UseDNS no' >> /etc/ssh/sshd_config
# service ssh restart

بعد از انجام مراحل بالا سرعت اتصال به سرور افزایش چشمگیری داشت :)

  • علی مقدس زاده