بایگانی

بایگانی برای دسته ی ‘لینوکس’

دستورات خط فرمان – ۱۶

۱۲ شهریور ۱۳۹۳ بدون دیدگاه

سلام
بعد از مدت ها برگشتم و یه مطلب کوتاه!
برای خواندن فایل‌های PDF برخط (online) داخل ترمینال، کافیه بزنید:


curl 'LINK' | pdftotext - - | less

به همین راحتی…

قرار دادن Alt Shift به عنوان میانبر تغییر زبان صفحه کلید در گنوم ۳.۶

۲ بهمن ۱۳۹۱ ۵ دیدگاه

سلام
دوستانی که فدورا ۱۸ گنوم رو نصب کردن حتما شاهد تغییرات بسیار بودن که بسیاری از این تغییرات به دلیل نسخه گنوم هست که روی فدورا ۱۸ قرار گرفته! یعنی گنوم ۳.۶…
یکی از این تغییرات تنظیم سوئیچ تغییر لایه صفحه کلید هست! در گنوم ۳.۶ قسمت میانبر در صفحه کلید دچار تغییرات فراوانی شده… در این حالت امکان قرار دادن Alt Shift به عنوان میانبر تغییر زبان صفحه کلید وجود نداره!!
ولی چون اینجا آزاده و امتیاز این آزادی اینه که یا راهی خواهم یافت یا راهی خواهم ساخت… خب من هم راهی ساختم که قبلا گفتمش هم راهی یافتم که اینجا میگم خدمتتون…
برنامه gnome-tweak-tool رو نصب کنید.
بعد به قسمت Typing رفته و در قسمت Modifiers of input sources switch گزینه مورد نظرتون یعنی Alt Shift رو انتخاب کنید…
یه خورده خورده کاری دیگه هم هست که ایشاا… به زودی…
موفق باشید…

تبدیل wma به mp3 در لینوکس

۲۱ دی ۱۳۹۱ ۱ دیدگاه

سلام
باز هم مطلبی که با توجه به نیازم بهش بر خوردم.
امروز میخواستم یه فایل wma رو به mp3 تبدیل کنم.
خب اینجا لینوکسه و راه حل‌های زیادی موجوده ولی من از این روش استفاده کردم.


mplayer -vo null -vc dummy -af resample=44100 -ao pcm:waveheader FILE.wma;lame -m s -V 3 audiodump.wav;mv audiodump.mp3 FILE.mp3;rm audiodump.wav

و به راحتی کارم انجام شد.
البته فکر میکنم که نیازی به گفتن نیست که mplayer و lame باید نصب باشه…
موفق و لینوکسی باشید…

نصب مجدد و بروزرسانی تنظیمات گراب

۲۳ آبان ۱۳۹۱ ۲ دیدگاه

سلام
امروز بنا به دلیل خاصی مجبور شدم اوبونتو ۱۰.۰۴ رو در کنار اوپن‌سوزه ۱۲.۲ نصب کنم.
اینکه چطور نصب کردم و اینکه آیا گراب اوبونتو اوپن‌سوزه رو شناخت اصلا مربوط به بحث ما نیست.
در اوبونتو به راحتی با زدن دستور update-grub لیست سیستم‌عامل‌ها بروزرسانی میشه!
اما من کلا خوشم نمیاد نسخه گراب سیستم‌عاملی غیر از اوپن‌سوزه عملیات بوت لپتاپم رو به عهده داشته باشه…!
بنابراین تصمیم داشتم که مجددا گراب اوپن‌سوزه رو نصب کنم. راهنمایی که در این زمینه موجود هست اینه که نسخه DVD نصب اوپن‌سوزه رو بوت کرده و به rescue system وارد شده و پس از یافتن محل فایل کانفیگ گراب با دستورهایی گراب رو مجددا نصب میکنیم.
من هم همین مراحل رو رفتم ولی بنا به دلایلی پس از راه اندازی مجدد سیستم، با اخطار «یافت می نشود جسته‌ایم ما» مواجه شدیم…!!
خب اولین کاری که کردم بالا آوردن اوبونتو به صورت زنده بود. (چون دیسک زنده اوپن‌سوزه نداشتم!)
بعد پارتیشنی که اوپن‌سوزه روی اون نصب بود رو یه جایی سوار کردم.


# mount /dev/sda1 /mnt

و بعد سوار کردن یه سری مسیر برای شناختن سخت‌افزارها و…


# for i in /sys /proc /dev; do mount "$i" "/mnt$i"; done

حالا وارد شدن به اوپن‌سوزه داخل اوبونتو:


# chroot /mnt

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


# grub2-install /dev/sda

خب در حال حاضر گراب روی اوپن سوزه نصب شده ولی تو فهرست گراب خبری از اوبونتو نیست.
اگه از کاربران توزیع‌های دبیان‌بیسد باشید بلافاصله با وارد کردن دستور update-grub می‌تونید فهرست رو کامل کنید ولی در اوپن‌سوزه خبری از این دستور نیست. ابتدا خواستم برم سراغ اسکریپت updategrub ولی به دلایلی که برای خودم کاملا موجه هست پشیمان شدم. بنابراین تصمیم به وارد کردن اوبونتو به فهرست گراب به صورت دستی گرفتم. ولی با توجه به اینکه جوینده یابندست! من با کمی جستجو و خوندن راهنمای گراب۲ به این دستور رسیدم:


# grub2-mkconfig

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


# grub2-mkconfig > /boot/grub2/grub.cfg

و تمام!
موفق و لینوکسی باشید…

فعال کردن پوشه کاربر (public_html) در آپاچی روی لینوکس

۱۹ خرداد ۱۳۹۱ ۳ دیدگاه

سلام
خیلی وقته که به قول دوستان تولید محتوا نکردم!
پس امشب یه مطلب آموزشی:
بعضی از دوستان عادت دارن که پوشه ریشه آپاچی رو تغییر داده و به مسیر پوشه خانگی انتقال بدن تا هم مشکل عدم دسترسی ویرایش حل بشه و هم اگه مجددا سیستم‌عامل رو نصب کردن، خدای نکرده اطلاعات از دست نره! (برای دانستن چگونگی تغییر مسیر پوشه ریشه آپاچی به اینجا مراجعه کنید.)
اما من معمولا از پوشه public_html تو پوشه خانگی استفاده می کنم! خب تو اوپن سوزه بصورت پیش‌فرض این مورد فعاله و نیازی به هیچگونه تغییری نیست! اما امشب بعد از نصب فدورا خواستم که این مورد رو فعال کنم! پس اول کانفیگ قبلی آپاچی روی اوپن‌سوزه رو با کانفیگ آپاچی روی فدورا مقایسه کردم و بعد هم یه جستجو تو اینترنت!
و اما نتایج:
مرحله اول:
تو پوشه خانگی خودتون یا هر کاربر دیگه یه پوشه با نام public_html ایجاد می‌کنیم و دسترسی ۷۵۵ بهش میدیم:


mkdir ~/public_html
chmod 755 ~/public_html

مرحله دوم:
فایل کانفیگ آپاچی رو باز می‌کنیم که مال من میشه:


vim /etc/httpd/conf/httpd.conf

و اگه از اوبونتو یا دبیان استفاده می‌کنید میشه:


vim /etc/apache2/apache2.conf

سپس خط زیر رو پیدا کرده:


UserDir disabled

و به شکل زیر تغییر میدیم:


UserDir enabled <username>

بعد خط زیر رو فعال می‌کنیم: (یعنی خط رو از حالت یادداشت خارج می‌کنیم. (علامت # اول خط رو پاک می‌کنیم.))


# UserDir public_html

اگه خطوط بالا تو فایل نبود اونها رو بنویسید!
بعد خطوط <Directory /home/*/public_html> و </Directory> رو تو فایل پیدا کرده و هم این خطوط و هم هرچی که بینشونه رو فعال می‌کنیم. (مثل بالا # رو از اول خطوط پاک می‌کنیم.)
خب تا اینجا کار تمومه!
اما اگه از فدورا استفاده می‌کنید و SELinux فعاله باید مجوز دسترسی به پوشه public_html رو ایجاد کنیم. پس:
مرحله سوم:
ابتدا بزنید:


setsebool -P httpd_enable_homedirs true

و بهتره که بزنید:


chcon -R -t httpd_sys_content_t ~<username>/public_html

حالا میتونید تو مرورگرتون بزنید:
http://localhost/~USER/
موفق باشید ;)

دستورات خط فرمان – ۱۵

۲۴ اردیبهشت ۱۳۹۱ ۱ دیدگاه

سلام
حتما برای شما هم پیش اومده که یه فایل که دسترسی لازم روی اون رو ندارید بدون sudo با vim باز کرده باشید! و بعد از تغییرات فراوان متوجه این موضوع بشید!
جهت ذخیره کردن تغییرات روی فایل کافیه بزنید:


:w !sudo tee %

به همین راحتی…

دستورات خط فرمان – ۱۴

۱۴ فروردین ۱۳۹۱ بدون دیدگاه

سلام
جهت دسترسی سریع به کد اسکی کارکترها در ترمینال کافیه بزنید:


showkey -a

سپس هر کارکتری که می‌خواهید رو وارد کنید!
با ctrl + D هم می‌تونید از این محیط خارج بشید!

دستورات خط فرمان – ۱۳

۱۲ فروردین ۱۳۹۱ بدون دیدگاه

سلام
شما هم اگه مثل من از توزیع‌های دبیان‌بیسد استفاده می‌کنید و مشکل پر شدن فضای حافظه سیستم بوسیله کش رو دارید کافیه بزنید:


echo 3 > /proc/sys/vm/drop_caches

تغییر نام چند هزار فایل

۲۰ آذر ۱۳۹۰ ۲ دیدگاه

سلام
خیلی وقت بود که مطلبی ننوشتم… مشغله زیاد نمیذاره…
و حالا!
چندین هزار سند داریم که اسکن شده و با نام صاحب سند ذخیره شده‌اند!
حالا جریان از چه قراره؟ می خوایم تمامی اسناد رو به شماره پرونده شخص تغییر نام بدیم!!
راه حل اول، تغییر نام عکس ها بصورت دستی: اگر فرض کنیم ۱۰٫۰۰۰ سند داریم و پیدا کردن تصویر هر سند و تغییر نام اون بصورت دستی بیست ثانیه زمان ببره، چیزی بیش از ۵۰ ساعت کار مفید لازمه تا همه اسناد تغییر نام داده بشن…!!
حالا میریم سروقت راه حل دوم: اسکریپتی می نویسیم که این کار رو انجام بده!
اول میریم سراغ فایلی که مشخصات همه توش موجوده! دوتا ستون مربوط به نام و شماره پرونده رو انتخاب کرده و یه خروجی csv ازش میگیریم که میشه چیزی شبیه این:


۱۳ هادی
۱۴ مسعود
۱۵ امیر
۱۶ ساسان
۱۷ علیرضا

خب حالا برنامه!
دلم میخواست که با پایتون بنویسمش ولی نشد! پس بش!
تو خط ۶ بعد از متغیر name و num عبارت jpg. رو قرار دادم چون لیست تنها شامل نام میشه ولی فایل ها با فرمت jpg ذخیره شدن و بعد از تغییر نام هم باید مجددا پسوند رو داشته باشه تا عکس ها قابلیت نمایش داشته باشه…


#!/bin/bash
while read line
do
name=$(echo $line | awk '{print $1}')
num=$(echo $line | awk '{print $2}')
mv -v "$name".jpg "$num".jpg
done < namedb.csv

حالا کافیه که این کد رو توی یه فایل ذخیره کرده و بهش مجوز اجرا بدیم... و بعد هم اجرا...
حتی میشه اندازه گرفت که طی چه زمانی کار تغییر نام انجام میشه...!


chmod +x rename-script
time ./rename-script
`هادی.jpg' -> `13.jpg'
`مسعود.jpg' -> `14.jpg'
`امیر.jpg' -> `15.jpg'
`ساسان.jpg' -> `16.jpg'
`علیرضا.jpg' -> `17.jpg'
.
.
.
.
real 1m14.505s
user 0m13.294s
sys 0m25.628s

حیرت آوره! کمتر از دو دقیقه...! البته برنامه اصلی کمی با برنامه ای که نوشتم فرق داره! چون ساختار اسامی این شکلی نیست! اکثر از اسامی دو بخشی هستن و برخی ۳ بخشی...! حتی ممکنه که ۴ یا بیشتر هم بشه... فرق زیادی نداره و فقط خط ۴ کمی تغییر میکنه...
در پایان از جادی که با توجه مشغله زیادش برام وقت گذاشت و مهدی شیخ حسینی، که کمک کرد تا کارم رو انجام بدم سپاسگذارم...
موفق و لینوکسی باشید :)

دستورات خط فرمان – ۱۲

۱۸ مهر ۱۳۹۰ بدون دیدگاه

سلام
برای پیدا کردن شناسه پردازشی (pid) یک برنامه در حال اجرا بزنید:


$ ps -ef | grep [process name]