دستورات پرکاربرد در لینوکس
مقدمه
دانش مدیریت و کانفیگ سرور برای یک ادمین حیاتی است. اگر دانش فنی لازم را داشته باشید میتوانید در زمان بحرانی بهترین تصمیم گیری را داشته باشید. در این مقاله دستورات لینوکسی که بصورت مداوم مورد استفاده قرار میگیرد معرفی خواهد شد، هرچند دستورات بطور کامل آموزش داده نمیشود اما اشنایی و بخاطر سپردن این دستورات میتواند برای کاربران و مدیران سرور های لینوکسی مفید باشد.
اگر میخواهید سرور لینوکسی را مدیریت کنید دست بکار شده و با استفاده از یک SSH Client مانند putty به لینوکس خود متصل شوید و دستورات اموزش داده را تمرین کنید. برای دانستن اطلاعات بیشتر در مورد دستورات ذکر شده در این مقاله میتوانید راهنمای ان را مطالعه نمایید. برای مشاهده راهنما دستور man را در محیط command-line وارد کرده و دستور مورد نظر را به عنوان پارامتر در جلوی ان بنویسید. به عنوان مثال برای مشاهده راهنمای دستور rm باید دستور را بصورت زیر وارد نمایید:
1
|
man rm
|
دستور Uptime
این دستور مدت زمان UP بودن سرور را به همراه تعداد کاربران متصل و میانگین لود سرور را نمایش میدهد. این دستور میتواند برای برسی پایداری سرویس مورد استفاده قرار گیرد.
1
2
|
# uptime
19:46:00 up 34 days, 13:57, 1 user, load average: 0.13, 0.04, 0.05
|
دستور W
این دستور کاربرانی که هم اکنون در لینوکس لاگین کرده اند را به همراه اطلاعاتی مانند: Login name, tty name, remote host, login time, idle time, JCPU و PCPU را نمایش میدهد. به همراه تمامی اطلاعات گفته شده این دستور Uptime سرور را نیز نمایش میدهد.
1
2
3
4
|
# w
19:50:40 up 34 days, 14:02, 1 user, load average: 0.00, 0.02, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 31.171.223.137 19:45 0.00s 0.01s 0.01s w
|
دستور Users
این دستور نام یوزر های لاگین شده در لینوکس را نمایش میدهد. این دستور بدون پارامتر میباشد.
1
2
|
# users
root
|
دستور Whoami
این دستور نام یوزری جاری که با ان لاگین کرده اید را نمایش میدهد. اگر با root لاگین کرده باشید این دستور root را نمایش میدهد.
1
2
|
# whoami
root
|
دستور Ls
این دستور فایل ها و دایرکتوری های موجود در مسیر جاری و یا دایرکتوری مورد نظر را نماییش میدهد. اگر ls را بدون پارامتر وارد نمایید فایل ها و دایرکتوری ها بصورت ساده نمایش داده میشود، با استفاده از پارامتر l- اطلاعات اضافه نمایل داده شده و نام فایل و دایرکتوری ها لیست میشود.
1
2
3
4
5
6
7
8
9
10
11
12
|
]# ls -l
total 8
drwxr–xr–x. 2 root root 6 Nov 5 11:38 adm
drwxr–xr–x. 5 root root 44 Jan 11 05:37 cache
drwxr–xr–x. 2 root root 6 Nov 7 05:44 crash
drwxr–xr–x. 3 root root 34 Jan 11 05:37 db
drwxr–xr–x. 3 root root 18 Jan 11 05:37 empty
drwxr–xr–x. 2 root root 6 Nov 5 11:38 games
drwxr–xr–x. 2 root root 6 Nov 5 11:38 gopher
drwxr–xr–x. 3 root root 18 Jan 11 05:36 kerberos
drwxr–xr–x. 24 root root 4096 Jan 11 05:48 lib
drwxr–xr–x. 2 root root 6 Nov 5 11:38 local
|
دستور Crontab
با استفاده از پارامتر i- کار های زمانبندی شده مربوط به یوزر جاری لیست شده و نمایش داده میشود.
1
2
|
# crontab -l
00 10 * * * /bin/ls >/ls.txt
|
دستور Less
با استفاده از این دستور میتوانید فایل های متنی و خروجی دستورات را بصورت ساده مشاهده کنید. با استفاده از کلید های جهت میتوانید صفحه را به سمت بالا و یا پایین حرکت دهید. برای بستن صفحه کلید q را بزنید.
1
2
3
4
5
6
7
8
|
# less install.log
Installing setup–2.8.14–10.el6.noarch
warning: setup–2.8.14–10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
Installing filesystem–2.4.30–2.1.el6.i686
Installing ca–certificates–2010.63–3.el6.noarch
Installing xml–common–0.6.3–32.el6.noarch
Installing tzdata–2010l–1.el6.noarch
Installing iso–codes–3.16–2.el6.noarch
|
دستور CP
برای کپی کردن فایل و فولدر میتوانید از این دستور استفاده نمایید. دستور زیر فایل dmesg را از پوشه var/log/ به دایرکتوری home/ کپی میکند:
1
|
cp /var/log/dmesg /home/
|
دستور MV
برای انتقال و یا تغییر نام میتوانید از دستور mv استفاده نمایید. به طور مثال برای انتقال فایل dmesg از var/log به دایرکتوری home/ میتوانید از دستور زیر استفاده نمایید:
1
|
mv /var/log/dmesg /home/
|
برای تغییر نام یک فایل یا دایرکتوری میتوانید از فرم زیر استفاده نمایید(توجه نمایید فایل در دایرکتوری جاری قرار دارد در غیر این صورت باید ادرس فایل بصورت کامل وارد شود):
1
|
# mv dmesg dmesg-2
|
دستور Cat
از این دستور میتوان برای نمایش فایل متنی استفاده کرد.
1
|
# cat /var/log/dmesg
|
دستور CD
برای جا به جایی در بین دایرکتوری ها میتوانید از دستور cd استفاده نمایید. برای مثال برای رفتن به دایرکتوری home/ از دستور زیر استفاده میکنیم:
1
|
# cd /home
|
دستور PWD
دایرکتوری جاری که شما در ان قرار دارید را نمایش میدهد.
1
2
|
# pwd
/var/log
|
دستور VI
با استفاده از این دستور میتوانید فایل های متنی را ایجاد و ویرایش نمایید. برای ویرایش فایل متنی میتوانید از دستور زیر استفاده نمایید:
1
|
# vi mysqldump.sh
|
دستور Service
از این دستور برای مدیریت سرویس های نصب شده روی لینوکس استفاده میشود. سرویس هایی مانند mysql, http,iptables و … میتواند با استفاده از این دستور کنترل شود. به عنوان مثال برای restart کردن سرویس iptables میتوانید از دستور زیر استفاده نمایید:
1
|
# service iptbales restart
|
دستور Free
این دستور میزان مصرف رم و را نمایش میدهد. برای نمایش اطلاعات به صورتی که خروجی قابل فهم تر باشد از پارامتر m- استفاده نمایید:
1
2
3
4
|
# free -m
total used free shared buff/cache available
Mem: 1839 114 1199 96 526 1454
Swap: 2047 0 2047
|
دستور Top
top یکی از دستورات پرکاربرد و مفید برای مدیر سرور میباشد. با استفاده از این دستور میتوانید میزان مصرف رم و CPU را در لحظه برسی نمایید. این ابزار میزان Load Average زا نیز نمایش میدهد.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
top – 21:10:41 up 34 days, 15:22, 1 user, load average: 0.00, 0.01, 0.05
Tasks: 88 total, 1 running, 87 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1884128 total, 1230880 free, 113612 used, 539636 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 1493460 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
19145 root 20 0 157576 2116 1520 R 1.4 0.1 0:00.02 top
1 root 20 0 128092 6700 3948 S 0.0 0.4 0:23.48 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.39 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:05.38 ksoftirqd/0
7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root 20 0 0 0 0 S 0.0 0.0 0:44.04 rcu_sched
10 root rt 0 0 0 0 S 0.0 0.0 0:14.65 watchdog/0
12 root 0 –20 0 0 0 S 0.0 0.0 0:00.00 khelper
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
14 root 0 –20 0 0 0 S 0.0 0.0 0:00.00 netns
|
دستور Tar
از این دستور برای فشرده سازی فایل ها و پوشه ها استفاده میشود. برای فشرده سازی یک پوشه از دستور زیر استفاده نمایید:
1
|
# tar -cvf archive-name.tar /home
|
برای خارج سازی از حالت فشرده نیز میتوانید از دستور زیر استفاده نمایید:
1
|
# tar -xvf archive-name.tar
|
دستور Find
برای جستجوی فایل و فولدر و حتی متن میتوانید از این دستور استفاده نمایید. برای مثال میخواهیم فایل Dmesg را در پوشه var/ جستجو نمایید:
1
|
# find /var -name “dmesg”
|
دستور PS
با استفاده از این دستور میتوانید تمامی پردازش های در حال اجرا را مشاهده نمایید. برای نمایش همه پردازش ها میتوانید از پارامتر ترکیبی aux- استفاده نمایید:
1
|
# ps -aux
|
دستور Kill
با استفاده از دستور kill میتوانید برنامه و یا سرویس های در حال اجرا را متوقف سازید. برای این منظور ابتدا PID سرویس مورد نظر را با استفاده از فرمان Ps پیدا کرده و مانند مثال زیر سرویس مورد نظر را متوقف سازید:
1
|
# kill- 9 7508
|
دستور rm
با استفاده از دستور rm میتوانید فایل یا پوشه مورد نظر را حذف نمایید.
1
|
# rm -i test.txt
|
دستور mkdir
با استفاده از این دستور میتوانید یک پوشه ایجاد نمایید.
1
|
# mkdir wikiconfig
|
دستور df
با استفاده از این دستور میتوانید فضای هارد سرور را برسی نمایید. با استفاده از پارامتر h- فهم نتیجه دستور راحت تر خواهد بود.
1
2
3
4
5
6
7
8
9
|
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/cl–root 37G 1.2G 36G 4% /
devtmpfs 910M 0 910M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 97M 824M 11% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/sda1 1014M 139M 876M 14% /boot
tmpfs 184M 0 184M 0% /run/user/0
|
دستورات گفته شده در این مقاله بسیار پرکاربرد بوده و پیشنهاد میشود راهنمای این دستورات بخوبی مطالعه شود.