نمایش نتایج: از شماره 1 تا 10 , از مجموع 36

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

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور fdisk



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

    در قالب بیسیک کلا سه نوع پارتیشن داریم
    primary , extended , logical

    حداکثر تعداد پارتیشن ها
    primary : چهار
    extended : یک
    logical : درون پارتیشن extended تا 26 عدد
    عدد 26 رو مطمءن نیستم بعضی جاها به عنوان نا محدود نام بردن

    قیل از هر کاری باید هاردی که میخاین پارتیشن بندیش کنین پیدا کنین که میتونین از این دستورا برای این کار استفاده کنین

    fdisk -l
    کد:
    alieblice@de-10:~$ sudo fdisk -l
    
    Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
    255 heads, 63 sectors/track, 121601 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0xe51ba496
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           2      119618   960823522    f  W95 Ext'd (LBA)
    /dev/sda2          119619      121552    15526912   83  Linux
    /dev/sda3          121552      121602      402432   82  Linux swap / Solaris
    /dev/sda5               2      119618   960823521    7  HPFS/NTFS
    
    Disk /dev/sdb: 320.1 GB, 320072933376 bytes
    249 heads, 33 sectors/track, 76079 cylinders
    Units = cylinders of 8217 * 512 = 4207104 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x41894189
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1   *           1       12462    51197952    7  HPFS/NTFS
    /dev/sdb2           12462       76077   261361485    f  W95 Ext'd (LBA)
    /dev/sdb5           12462       76077   261359616    7  HPFS/NTFS
    
    Disk /dev/sdc: 1000.2 GB, 1000204886016 bytes
    255 heads, 63 sectors/track, 121601 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x465668a5
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1      117794   946176000    7  HPFS/NTFS
    /dev/sdc2   *      117794      121601    30582784    7  HPFS/NTFS
    alieblice@de-10:~$
    یا تو یک سیستم خلوت تر
    کد:
    alieblice@ubuntu:/$ sudo fdisk -l
    
    Disk /dev/sda: 4294 MB, 4294967296 bytes
    255 heads, 63 sectors/track, 522 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0003f696
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *           1         493     3952640   83  Linux
    Partition 1 does not end on cylinder boundary.
    /dev/sda2             493         523      238593    5  Extended
    Partition 2 does not end on cylinder boundary.
    /dev/sda5             493         523      238592   82  Linux swap / Solaris
    
    Disk /dev/sdb: 213 MB, 213909504 bytes
    64 heads, 32 sectors/track, 204 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x00000000
    
    Disk /dev/sdb doesn't contain a valid partition table
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0004bbdd
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          30       30704   83  Linux
    /dev/sdc2              31          70       40960   83  Linux
    /dev/sdc3              71         102       32768   83  Linux
    alieblice@ubuntu:/$
    یا برای این که فقط پارتیشن های یک هاردو ببینین ادرس هارد هم بزنین

    کد:
    alieblice@ubuntu:~$ sudo fdisk -l /dev/sdc
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0004bbdd
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          30       30704   83  Linux
    /dev/sdc2              31          70       40960   83  Linux
    /dev/sdc3              71         102       32768   83  Linux
    alieblice@ubuntu:~$
    blkid
    کد:
    alieblice@de-10:~$ sudo blkid
    /dev/sda2: UUID="b69e95f0-bcf7-409e-a898-f9e70d78d0f4" TYPE="ext4" 
    /dev/sda3: UUID="69bc2dec-ef4f-487b-bf50-5e7c273596a9" TYPE="swap" 
    /dev/sda5: LABEL="1-TB" UUID="FA402FC0402F828D" TYPE="ntfs" 
    /dev/sdb1: UUID="D410B13310B11E04" TYPE="ntfs" 
    /dev/sdb5: UUID="70E8BF68E8BF2B6C" TYPE="ntfs" 
    /dev/sdc1: LABEL="1-TB-2" UUID="9AA05A1BA059FE67" TYPE="ntfs" 
    /dev/sdc2: UUID="D6308EFC308EE2BB" TYPE="ntfs" 
    alieblice@de-10:~$
    اموزش blkid قبلا کامل گفته شده
    راهنمای ترمینال اوبونتو (دانسته‌هایمان را به اشتراک بگذاریم)


    دستور fdisk دو گروه اپشن داره یک گروه اپشن هایی که به طور معمولی استفاده میشه ویک گروه اپشن هایی که خودش به این اسم نام برده :
    کد:
     extra functionality (experts only)
    من در اینجا فقط یک سری از اپشن های سری معمولی رو اموزش میدم

    d = برای پاک کردن پارتیشن استفاده میشه
    l = هر پارتیشنی برای خودش کدی داره که میتونین با این اپشن کد هارو ببینین در حالت عادی احتیاجی به این کدها پیدا نمیکنین مگر اینکه بخاین پارتیشنایی مثل lvm بسازین
    n = برای ساختن یک پارتیشن استفاده میشود
    p = پارتیشنایی که هم اکنون روی هاردتون وجود داره رو نشون میدهد
    q = خروج بدون ذخیره کردن چیزی
    t = برای تغییر کد پارتیشن استفاده میشود
    u = برای تغییر واحد ها بین sectors و cylinders استفاده میشود
    w = ذخیره اطلاعات و خروج


    [size=15pt]چند مثال[/size]
    نکته: من در اینجا از درایوهایی که توسط vmware player ایجاد شدن استفاده میکنم که حجمشونم خیلی کم هستش زیر (( مگابایت 300)) برای سریع کردن کار

    [size=13pt]مثال 1[/size]



    در مثال شماره یک فقط 2 درایو از 3 درایو روی هاردمونو پاک میکنیم
    روش کار :
    1 = هارد مورد نظرتونو توسط دستورایی که بالا نام بردم پیدا کنین
    2 = دستور fdisk رو به همراه ادرس اون بنویسید
    کد:
    alieblice@de-10:~$ sudo fdisk /dev/sdc
    نکته : وقتی دستور fdisk رو میزنین وارد یک محیط دیگه میشید که فقط اپشن هایی که بالا نام بردم و اپشنای دیگری که با زدن m میتونین ببینین رو میتونین استفاده کنین
    کد:
    alieblice@de-10:~$ sudo fdisk /dev/sdc
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): q
    
    alieblice@de-10:~$
    3 = بعد از این که وارد محیط شدین اگه m رو بزنین اپشن های قابل قبول رو براتون میاره اگه p روبزنین پارتیشن های موجود روی اون هاردرو میاره

    کد:
    alieblice@ubuntu:~$ sudo fdisk /dev/sdc
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): m
    Command action
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition
       l   list known partition types
       m   print this menu
       n   add a new partition
       o   create a new empty DOS partition table
       p   print the partition table
       q   quit without saving changes
       s   create a new empty Sun disklabel
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit
       x   extra functionality (experts only)
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0004bbdd
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          30       30704   83  Linux
    /dev/sdc2              31          70       40960   83  Linux
    /dev/sdc4              71         102       32768   83  Linux
    
    Command (m for help):
    همون طور که میبینین در بالا 3 درایو درون هارد وجود دارد

    4 = باری پاک کردن یک درایو باید d رو بزنین که بعد از زدن d از شما شماره درایو رو میپرسه که باتوجه به اطلاعاتی که در خروجی اپشن p گرفتین میتونین درایو درست رو بدین
    به این صورت که اگه مثلا میخاین dev/sdc2 رو پاک کنین عدد 2 رو بدین و با این کار پارتیشن dev/sdc2 پاک میشود
    نکته : هنوز پارتیشنتون به صورت واقعی پاک نشده اگه اشتباه زدین عدد رو میتونین با زدن q ((کیو کوچک)) هیچ چیزی رو ذخیره نکنین و خارج شید
    4-1 = کار بالا دو باره انجام بدین تا درایو بعدی رو هم پاک کنین
    4-2 = حالا p رو بننین تا ببینین که پاک شده
    5 = حرف w ((دبلیو کوچک)) رو بزنین و همه چیز ذخیره میشود

    خروجی کامل مثال یک :
    کد:
    alieblice@ubuntu:~$ sudo fdisk /dev/sdc
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): m
    Command action
       a   toggle a bootable flag
       b   edit bsd disklabel
       c   toggle the dos compatibility flag
       d   delete a partition
       l   list known partition types
       m   print this menu
       n   add a new partition
       o   create a new empty DOS partition table
       p   print the partition table
       q   quit without saving changes
       s   create a new empty Sun disklabel
       t   change a partition's system id
       u   change display/entry units
       v   verify the partition table
       w   write table to disk and exit
       x   extra functionality (experts only)
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0004bbdd
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          30       30704   83  Linux
    /dev/sdc2              31          70       40960   83  Linux
    /dev/sdc4              71         102       32768    5  Extended
    
    Command (m for help): d
    Partition number (1-5): 2
    
    Command (m for help): d
    Partition number (1-5): 4
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    alieblice@ubuntu:~$
    عکس بعد از پاک کردن پارتیشن ها




    [size=13pt]مثال 2[/size]
    در مثال دوم از همون درایو قبلی به همراه همون پارتیشن بندی که در پایان ایجاد شد ((عکس پایانی مثال اول --عکس بالا )) استفاده میکنیم به این صورت
    که میخاهیم یک درایو از نوع extende بسازیم و درون اون دو درایو از نوه logical
    تو این مثال مراحلو به صورت جزع جزع توضیح نمیدم دیگه به غیر از چند قسمتش
    1 = دستور fdisk رو به همراه ادرس هاردمون میزنیم
    سپس p رو میزنیم که درایو های موجود روی هاردو نشون بدهد
    سپس n رو میزنیم تا درایو جدید ایجاد کنیم
    2 = بعد از این که n رو زدیم از ما سوال میپرسه که چه نوع درایوی میخاین اضافه کنین ((extended یا primary ))
    از جایی که قراره یک extended بسازیم خوب من e رو انتخاب میکنم
    p = primary
    e = extended
    نکته : در اینجا گذینه logical رو نیاورد به این دلیل که پارتیشن logical داخل پارتیشن extende ساخته میشه
    3 = بعد از این که نوع پارتیشن رو تعیین کردین از شما یک شماره میخاد که اون میشه شماره درایوتون من 2 رو میدم

    کد:
    alieblice@ubuntu:~$ sudo fdisk /dev/sdc
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0009b8f2
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          20       20464   83  Linux
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    e
    Partition number (1-4): 2
    First cylinder (21-102, default 21):
    4 = بعد از مرحله بالا میرسیم به مرحله تعیین حجم درایو
    به صورت پیش فرض حجم درایو رو به صورت cylinder میاره که به شما میگه میتونید از یک عدد مشخص تا عدد مشخص دیگری انتخاب کنین در این مثال عدد بین ((21 تا 102 )) هستش. از جایی که خیلی کم پیش میاد کسی بخاد بر اساس cylinder پارتیشن بندی کنه من اینجا بر اساس مگابایت یاد میدم
    4-1 = چگونه بر اثاث مگابایت پارتیشن یندی کنیم

    همون طور که در خروجی مرحله 1 تا 3 میبینین عدد انتخابی ما بین 21 تا 102 هستش برای شروع بر اثاث مگابایت عدد 21 رو بزنین وقتی عدد 21 رو زدین از شما یک عدد دیگر میخاد که در این قسمت میتونین عدد رو به صورت مگابایت کیلوبایت و گیگابایت بدین
    کد:
    +size{K,M,G}
    همیشه از اون عددی که میدین یک مقدار بزرگ ترشو میسازه دلیلشو نتونستم پیدا کنم مثلا برای 170 مگابایت 179 مگابایت ساخت و برای 80 مگابایت حدود 85 تا
    اگه دلیلشو پیدا کردین به منم بگین
    مثلا برای این که 2350 مگابایت بشه سایز درایوتون عدد رو به این شکل بدین
    کد:
    +2350M
    به طور مشابه برای کیلوبلیت و گیگا بایت مثلا 10 گیگ --- 1000000کیلو بایت
    کد:
    +10G
    +100000K
    کد:
    در زیر 80 مگابایت تعیین کردم 
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    e
    Partition number (1-4): 2
    First cylinder (21-102, default 21): 21
    Last cylinder, +cylinders or +size{K,M,G} (21-102, default 102): +80M
    
    Command (m for help):
    5 = تا این جا دو درایو داریم یکی از قبل با نوع primary و یکی هم که الان ساختیم با نوع extended
    حالا 2 درایو داخل پارتیشن extended رو میسازیم که از نوع logical میشن
    6 = مثل مرحله قبل n رو میزنیم بعد نوع درایو که در اینجا میشه l ((ال کوچیک )) رو میزنیم و بعد مثل مرحله قبل حجمشو میدیم
    نکته : در اینجا گذینه extended نیامد چون یکی ازش میشه ساخت
    7 = دوباره همون کار مرحله 6 رو انجام میدیم تا دومی رو هم اضافه کنیم
    و بارای ذخیره کردن w رو میزنیم
    و همه چی ذخیره میشه

    خروجی کامل مثال دوم

    کد:
    alieblice@ubuntu:~$ sudo fdisk /dev/sdc
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0009b8f2
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          20       20464   83  Linux
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    e
    Partition number (1-4): 2
    First cylinder (21-102, default 21): 21
    Last cylinder, +cylinders or +size{K,M,G} (21-102, default 102): +80M
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0009b8f2
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          20       20464   83  Linux
    /dev/sdc2              21         101       82944    5  Extended
    
    Command (m for help): n
    Command action
       l   logical (5 or over)
       p   primary partition (1-4)
    l
    First cylinder (21-101, default 21): 21
    Last cylinder, +cylinders or +size{K,M,G} (21-101, default 101): +50M
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0009b8f2
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          20       20464   83  Linux
    /dev/sdc2              21         101       82944    5  Extended
    /dev/sdc5              21          71       52208   83  Linux
    
    Command (m for help): n
    Command action
       l   logical (5 or over)
       p   primary partition (1-4)
    l
    First cylinder (72-101, default 72): 72
    Last cylinder, +cylinders or +size{K,M,G} (72-101, default 101): 101
    
    Command (m for help): p
    
    Disk /dev/sdc: 106 MB, 106954752 bytes
    64 heads, 32 sectors/track, 102 cylinders
    Units = cylinders of 2048 * 512 = 1048576 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0009b8f2
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1               1          20       20464   83  Linux
    /dev/sdc2              21         101       82944    5  Extended
    /dev/sdc5              21          71       52208   83  Linux
    /dev/sdc6              72         101       30704   83  Linux
    
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    Syncing disks.
    alieblice@ubuntu:~$
    عکس نهایی مثال 2دوم


    منبع :
    7 Linux fdisk Command Examples to Manage Hard Disk Partition
    Linux: How to delete a partition with fdisk command
    Linux View Hard Drive Partitions with fdisk and parted commands


  2. تعداد تشکر ها ازalieblice به دلیل پست مفید


  3. #2
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور rsync ((گرفتن :پشتیبان backup ))





    دستور rsync برای بکاپ گیری در لینوکس استفاده میشه همچنین قابلیت synchronize دو فایل رو هم داره که این 2 فایل میتونن در یک کامپیوتر یا یکیشون در یک کامپیوتر رموت باشه

    چند نکته خوب درمورد rsync

    سرعت بالا : به دلیل این که اول 2 تا فایلو باهم مقایسه میکنه بعد فقط قسمت های تغییر کرده رو بروز یا تغییراتی درشون اءمال میکنه
    امنیت : چون rsync از ssh برای برقراری ارتباط استفاده میکنه از امنیت بالایی برخورداره
    مصرف پهنای باند کم : چون از فشرده سازی به صورت block by block استفاده میکند همیشه پهنای باند مصرفی از مقدار فایل تبادل شده کمتر است
    در اخر هم پیشنیاز خاصی برای نصبش نیاز نیست

    نصب :

    برای نصب دستورات زیر رو بزنین
    کد:
    apt-get update 
    apt-get install rsync
    شکل کلی دستور
    کد:
    $ rsync options source destination
    Synchronize دو فلدر در یک کامپیوتر
    کد:
    $ rsync -zvr /var/opt/installation/inventory/ /root/temp
    building file list ... done
    sva.xml
    svB.xml
    .
    sent 26385 bytes  received 1098 bytes  54966.00 bytes/sec
    total size is 44867  speedup is 1.63
    $
    -z بزای فشرده سازی
    v- برای نشون دادن مراحل کار
    r- indicates recursive

    حالا اگه ls -l هردو فایلو بگیرین میبینین که پرمیشن ها ثابت مانده اند ولی زمان ساخته شدن فایلا تغییر کردن
    کد:
    $ ls -l /var/opt/installation/inventory/sva.xml /root/temp/sva.xml
    -r--r--r-- 1 bin  bin  949 Jun 18  2009 /var/opt/installation/inventory/sva.xml
    -r--r--r-- 1 root bin  949 Sep  2  2009 /root/temp/sva.xml
    برای این که زمان ساخته شدن فایلا تغییر نکند از a- استفاده کنین
    کد:
    $ rsync -azv /var/opt/installation/inventory/ /root/temp/
    building file list ... done
    ./
    sva.xml
    svB.xml
    .
    sent 26499 bytes  received 1104 bytes  55206.00 bytes/sec
    total size is 44867  speedup is 1.63
    $
    حالا اگه خروجی ls -l رو نگاه کنین میبینین که زمان ساخته شدن فایلها بعد از بکاپ گیری یکی هستش
    کد:
    $ ls -l /var/opt/installation/inventory/sva.xml /root/temp/sva.xml
    -r--r--r-- 1 root  bin  949 Jun 18  2009 /var/opt/installation/inventory/sva.xml
    -r--r--r-- 1 root  bin  949 Jun 18  2009 /root/temp/sva.xml
    Synchronize فقط یک فایل که عمل کپی کردن یک فایل به فلدر دیگر رو انجام میده

    کد:
    $ rsync -v /var/lib/rpm/Pubkeys /root/temp/
    Pubkeys
    
    sent 42 bytes  received 12380 bytes  3549.14 bytes/sec
    total size is 12288  speedup is 0.99
    Synchronize کردن فایل از کامپیوتر local به کامپیوتر remote
    local : کامپیوتری که شما الان باهاش کار میکنین ((کامپیوتر محلی))
    remote : کامپیوتری که در دور دست هستش

    کد:
    $ rsync -avz /root/temp/ thegeekstuff@192.168.200.10:/home/thegeekstuff/temp/
    Password:
    building file list ... done
    ./
    rpm/
    rpm/Basenames
    rpm/Conflictname
    
    sent 15810261 bytes  received 412 bytes  2432411.23 bytes/sec
    total size is 45305958  speedup is 2.87
    برای انجام این کار احتیاج به username وIP address سیستم رموت و همچنین ادرس فایل در سیستم رموت که شکل کلی به این شکل میشه
    کد:
     username@machinename:path
    path : ادرس دایرکتوری در سیستم رموت 
    که در دستور بالا به این شکل بود :  thegeekstuff@192.168.200.10:/home/thegeekstuff/temp/
    /root/temp/ : ادرس فایل های ارسالی از لوکال به سرور


    Synchronize سیستم رموت به سیستم خانگی
    کد:
    alieblice@alieblice-desktop:~$ sudo rsync -avz root@172.16.49.128:/var/www/Videos /home/reza
    [sudo] password for alieblice: 
    root@172.16.49.128's password: 
    receiving incremental file list
    created directory /home/reza
    Videos/
    Videos/.htaccess
    Videos/Oggy.001.avi
    Videos/Oggy.002.avi
    Videos/Oggy.003.avi
    Videos/Oggy.004.avi
    Videos/Oggy.005.avi
    
    sent 129 bytes  received 347205008 bytes  10063917.01 bytes/sec
    total size is 350419831  speedup is 1.01
    alieblice@alieblice-desktop:~$
    root@172.16.49.128:/var/www/Videos : ادرس سیستم رموت

    /home/reza : ادرسی که میخایم فایلا از رموت تو کامپیوتر لوکال شخصی ذخیره شود


    دیدن اطلاعاتی در مورد انتقال هر فایل
    برای این کار از progress-- استفاده کنین

    کد:
    alieblice@alieblice-desktop:~$ sudo rsync --progress -avz root@172.16.49.128:/var/www/Videos /home/reza
    root@172.16.49.128's password: 
    receiving incremental file list
    Videos/
    Videos/Oggy.001.avi
        70811648 100%   17.25MB/s    0:00:03 (xfer#1, to-check=4/7)
    Videos/Oggy.002.avi
        70343454 100%   11.02MB/s    0:00:06 (xfer#2, to-check=3/7)
    Videos/Oggy.003.avi
        70598656 100%   13.04MB/s    0:00:05 (xfer#3, to-check=2/7)
    Videos/Oggy.004.avi
        69273600 100%   14.00MB/s    0:00:04 (xfer#4, to-check=1/7)
    Videos/Oggy.005.avi
        69392384 100%   12.04MB/s    0:00:05 (xfer#5, to-check=0/7)
    
    sent 110 bytes  received 350537798 bytes  12746833.02 bytes/sec
    total size is 350419831  speedup is 1.00
    alieblice@alieblice-desktop:~$

    ممکنه وقتی که 2 فایلو باهم دارین synce میکنین یکسری فایل در فلدر ی که دارین بکاپ هارو توش ذخیره میکنین ((target )) وجود داشته باشه که در فلدر اصلی ((source)) که ازش بکاپ میگیرین نباشه حالا اگه بخاین که فایلای اضافی که در target بودنو پاک کنین از delet-- استفاده کنین
    ls فولدر source
    کد:
    root@debian:/var/www/Videos# ls
    Oggy.003.avi  Oggy.004.avi  Oggy.005.avi
    ls فلدر target
    کد:
    alieblice@alieblice-desktop:~$ ls /home/reza/Videos
    Oggy.001.avi  Oggy.002.avi  Oggy.003.avi  Oggy.004.avi  Oggy.005.avi
    alieblice@alieblice-desktop:~$
    کد:
    alieblice@alieblice-desktop:~$ sudo rsync --progress --delete  -avz root@172.16.49.128:/var/www/Videos /home/reza
    root@172.16.49.128's password: 
    receiving incremental file list
    deleting Videos/Oggy.002.avi
    deleting Videos/Oggy.001.avi
    Videos/
    Videos/Oggy.005.avi
        69392384 100%   16.48MB/s    0:00:04 (xfer#1, to-check=0/5)
    
    sent 34 bytes  received 69415891 bytes  9255456.67 bytes/sec
    total size is 209264729  speedup is 3.01
    alieblice@alieblice-desktop:~$

    ممکنه فقط بخاین فایلایی که با کلمه خاصی شروع میشن رو بکاپ بگیرین
    که برای این کار از include-- و exclude-- استفاده کنین
    --include 'P*' : فایلایی که با P شروع میشن رو بکاپ بگیر
    --exclude '*' : تمام فایلای دیگر رو در نظر نگیر
    کد:
    $ rsync -avz --include 'P*' --exclude '*' thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
    Password:
    receiving file list ... done
    ./
    Packages
    Providename
    Provideversion
    Pubkeys
    
    sent 129 bytes  received 10286798 bytes  2285983.78 bytes/sec
    total size is 32768000  speedup is 3.19

    محدودیت حجمی

    برای ایجاد محدودیت حجمی میتونین از
    کد:
    --min-size=SIZE :فقط فایلایی که حجمشون از مقدار در نظر گرفته شده بیشتر است رو انتقال بده 
    --min-size=SIZE : فقط فایلایی که حجمشون از مقدار در نظر گرفته شده کمتر است رو انتقال بده
    دستور زیر فایلای زیر 100 کیلوبایت رو انتقال میده
    M for megabytes and G for gigabytes K for kilobyte

    کد:
    $ rsync -avz --max-size='100K' thegeekstuff@192.168.200.10:/var/lib/rpm/ /root/temp/
    Password:
    receiving file list ... done
    ./
    Conflictname
    Group
    Installtid
    Name
    Sha1header
    Sigmd5
    Triggername
    
    sent 252 bytes  received 123081 bytes  18974.31 bytes/sec
    total size is 45305958  speedup is 367.35

    rsync خیلی گسترده هستش و پایه اساس خیلی از نرم افزارای بکاپ گیری لینوکس و ویندوز هستش
    برای دیدن کامل کارایی که rsync میتونه انجام بدهد به man یا helpش مراجعه کنین

    نسخه گرافیکی مختلفی برای لینوکس و ویندوز داره که از ادرس زیر میتونین ببینین
    کد:
    http://en.wikipedia.org/wiki/Rsync
    منبع : How to Backup Linux? 15 rsync Command Examples
    چند مثال دیگه تو منبع هست که نگفتم

  4. تعداد تشکر ها ازalieblice به دلیل پست مفید


  5. #3
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور history




    دستور history برای دیدن دستوراتی هست که شما قبلا در ترمینال نوشته اید

    با زدن history به تنهایی لیست تمام دستوراتی که قبلا نوشته اید رو میاره

    مثلا قسمتی از history سیستم من
    کد:
    root@debian:/# history
        3  echo "4+10" | bc
        4  echo "obase=15;5+9" | bc
        5  sudo 
        6  halt
        7  cd /
        8  ls /etc
        9  nano pam.conf
       10  cd pam.conf
       11  nano pam.conf
       12  cd pam.d
       13  cd pam.d
       14  nano pam.d
       15  nano /etc/pam.conf
       16  cd /etc/pam.d
       17  ls
       18  man pam
       19  PAM
       20  man PAM
       21  ls
       22  nano su
       23  ls
       24  cp su /etc/pam.d/su.save
       25  ls
       26  nano su
       27  login
       28  ls
       29  mkdir test
       30  cd /
       31  nano /etc/passwd
       32  login
       33  nano /etc/passwd
       34  nano /etc/passwd
       35  sudo 
       36  login
       37  cd /
       38  ls
       39  nano /etc/passwd
       40  login
       41  ls
       42  login
       43  nano /etc/passwd
       44  login
       45  cd /
       46  mkdir /home/khodam
       47  login
       48  cd /
       49  groupadd
       50  groupadd 
       51  gropadd limit
       52  gruopadd limit
       53  groupadd
       54  groupadd limit
       55  useradd -g  {limit} khodam 
       56  useradd -g  limit khodam 
       57  passwd khodam]
       58  passwd khodam
       59  usermod khodam
       60  chage
       61  chage khodam
       62  usermod --help
       63  ls 
       64  ls  /home
       65  login
       66  nano /etc/security/limits.conf
       67  nano /etc/security/limits.conf
       68  cd /etc/sudoers
       69  cd /etc/sudoers
       70  cd /etc
       71  ls
       72  cd sudoers
       73  cd sudoers
       74  ls sudoers
       75  nano sudoers
       76  visudo 
       77  nano /etc/security/limits.conf
       78  visudo 
       79  apt-get install squid
       80  squid
       81  nano /etc/squid.conf
       82  cd /etc/squid
       83  nano squid.conf
       84  nano squid.conf
       85  /etc/init.d/squid restart
       86  cd /
       87  nano /etc/squid/squid.conf
       88  /etc/init.d/squid restart
       89  nano /etc/squid/squid.conf
       90  /etc/init.d/squid restart
       91  /etc/init.d/squid restart
       92  nano /etc/shels
       93  ls /etc/shels
       94  cd etc
       95  ls
       96  cd /
       97  cd etc
       98  ls
       99  cd shells
      100  nano shells
      101  chsh
      102  chsh khodam
      103  nano shells
      104  chsh khodam
      105  nano shells
      106  apt-get install lshel
      107  apt-get install lshell
      108  ch
      109  cd security
      110  ls
      111  nano access.conf
      112  visudo
      113  visudo 
      114  visudo 
      115  visudo 
      116  cd /
      117  upime
      118  uptime
      119  apt­get install sudo debianutils coreutils 
      120  apt-get install  debianutils coreutils 
      121  apt-get install  coreutils 
      122  cd /usr/local/sbin 
      123  wget http://www.fuschlberger.net/programs/ssh­scp­sftp­chroot­jail/make_chroot_jail.sh 
      124  wget http://www.fuschlberger.net/programs/ssh-scp-sftp-chroot-jail/make_chroot_jail.sh
      125  chmod 700
      126  chmod 700 make_chroot_jail.sh
      127  nano make_chroot_jail.sh
      128  useradd
      129  useradd ansary
      130  passwd ansary
      131  cd /home
      132  ls
      133  ln ­s . home 
      134  ln ­s . home 
      135  ls
      136  ln ­s . home
      137  ls
      138  mkidir gailed
    جستوجو در history

    برای جستو جو در history کلید ترکیبی Control+R بزنید بعد کلمهی کلیدی مورد نظر رو وارد کنین این جوری دستور قبلی که توش اون کلمه کلیدی بوده رو میاره وشما بازدن enter میتونین اونو اجرا کنین
    مثلا در زیر با دادن کلمه کلیدی red دستور قبلی که توش کلمهی red بوده رو میاره ((cat /etc/redhat-release))
    کد:
    # [Press Ctrl+R from the command prompt,
    which will display the reverse-i-search prompt]
    (reverse-i-search)`red': cat /etc/redhat-release
    [Note: Press enter when you see your command,
    which will execute the command from the history]
    # cat /etc/redhat-release
    Fedora release 9 (Sulphur)
    اگه وقتی که کلمه کلیدی خودتونو دادین و دستور مورد نظرتون امد و خاستین توش تغییری ایجاد کنین قبل از اجرا قبل از اینکه enter رو بزنین کلید چب یا راستو از روی کیبوردتون بزنین ((left arrow or right arrow))

    مثلا در زیر stop رو به start تغییر میدیم
    کد:
    # [Press Ctrl+R from the command prompt,
    which will display the reverse-i-search prompt]
    (reverse-i-search)`httpd': service httpd stop
    [Note: Press either left arrow or right arrow key when you see your
    command, which will display the command for you to edit, before executing it]
    # service httpd start
    تکرار کردن دستور قبلی به 4 روش

    1-با زدن دکمه بالا ((up arrow)) دستور قبلی نشون داده میشه . برای اجرا enter را بزنین

    2- بنویسین !! اینجوری دستور قبلی بدون اینکه نشون داده بشه و احتیاج به زدن enter باشه خودش اجرا میشه

    3-بنویسین !-1 اینجوری دستور قبلی بدون اینکه نشون داده بشه و احتیاج به زدن enter باشه خودش اجرا میشه ((اگر بنویسین 2-! 2 دستوری که قبل از دستور قبلی نوشتینو اجرا میکنه یعنی دستور قبل از 1-! اجرا میکنه ))

    4- Control+P دستور قبلب رو نشون میده برای اجرا کردنش enter رو بزنین


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

    اگه خروجی دستور history در بالا رو نگاه کنین میبینین که هر دستوری برای خودش یک شماره ای داره حالا اگر بخایم دستور شماره ی 517 رو اجرا کنیم دستور به این شکل میشه
    کد:
    517!
    مثلا
    کد:
    501  cd /
      502  history
      503  history --help
      504  ls -a
      505  ls -a
      506  ls -a
      507  history |more
      508  history
      509  history
      510  history
      511  top
      512  ls -l
      513  top
      514  ls-1
      515  ls-1
      516  history
      517  last |grep ppp |grep still
      518  sudo netstat -na 
      519  history
      520  ls -a /var/log
      521  nano /etc/pam.d
      522  halt --help
      523  history
    کد:
    root@debian:/# !517
    last |grep ppp |grep still
    root@debian:/#
    چون دستورش خروجی نداشت چیزی نشون نداد


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

    مثلا در بالا میخایم دستور 518 رو اجرا کنیم ولی شمارشو نمیدو نیم ولی اولشو می دونیم دستورو اینجوری می زنیم ((علامت تعجب وبدون فاصله در ادامه علامت تعجب قسمتی از دستور مورد نظر ))
    کد:
    sudo netstat -na!

    تغییر تعداد دستورات قابل ذخیره شدن


    برای این کار فلدر bash_profile. که در دایرکتوری خانگیتون هست رو با یک ادیتور باز کنین و مقادیر رو مثل پایین تغییر بدین
    کد:
    # vi ~/.bash_profile
    HISTSIZE=100
    HISTFILESIZE=100
    ذخیره نکردن بعضی دستورات

    برای این که history بعضی دستوراتو ذخیره نکنه فلدر bash_profile. باز کنین و این خطو اضافه کنین
    کد:
    HISTCONTROL=ignorespace
    حالا دستوراتی که اولشون یک space داشته باشه ذخیره نمیشه

    مثلا
    کد:
    # ls -ltr
    # pwd
    # service httpd stop [Note that there is a space at the beginning of service,
    to ignore this command from history]
    # history | tail -3
    67 ls -ltr
    68 pwd
    69 history | tail -3
    برای پاک کردن history این دستورو بزنین
    کد:
    history -c
    منبع : 15 Examples To Master Linux Command Line History

    چند مثال دیگه تو منبع هست که نگفتم

  6. تعداد تشکر ها ازalieblice به دلیل پست مفید


  7. #4
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور top




    ین دستور در ترمینال به شما نشون می ده چه برنامه هایی در حال اجرا هستند و چه مقدار cpu و حافظه رو درگیر می کنند . همچنین نشون می ده برنامه ی در حال اجرا از طرف کدوم کاربر اجرا شده به همراه کلی اطلاعات دیگر

    شکل کلی خروجی دستور top به این شکل هستش




    دستور top به صورت پیش فرض بر اساس مقدار مصرف cpu پروسس هارو نشون میده اگه میخاین که بر اساس مقدار مصرف مموری نشون بده M ((ام بزرگ )) در حالتی که top در حال اجرا هست رو بزنین


    kill کردن یک پروسس

    برای این که یک پروسس رو از بین ببرین در حالتی که top در حال اجرا هست دکمه k رو بزنین ((k کوچک)) و عدد pid مربوط به اون پروسس رو بنویسین
    کد:
    PID to kill: 1309
    Kill PID 1309 with signal [15]: 
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     1309 geek   23   0 2483m 1.7g  27m S    0 21.8  45:31.32 gagent
     1882 geek   25   0 2485m 1.7g  26m S    0 21.7  22:38.97 gagent
     5136 root    16   0 38040  14m 9836 S    0  0.2   0:00.39 nautilus
    نشون دادن پروسس های مربوط به یک user

    اگه میخاین که top فقط پروسس های مربوط به یک user خاص رو نشون بده از u- استفاده کنین
    مثلا در اینجا پروسس مربوط به کاربر geek
    کد:
    $ top -u geek
    
    Which user (blank for all): geek
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     1309 geek   23   0 2483m 1.7g  27m S    0 21.8  45:31.32 gagent
     1882 geek   25   0 2485m 1.7g  26m S    0 21.7  22:38.97 gagent
    نشون دادن تمام cpu ها و هسته های cpu

    خروجی دستور top به صورت پیش فرض اطلاعات cpu رو در ترکیب باهم به صورت زیر نشون میده
    کد:
    top - 20:10:39 up 40 days, 23:02,  1 user,  load average: 4.97, 2.01, 1.25
    Tasks: 310 total,   1 running, 309 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.5%us,  0.7%sy,  0.0%ni, 92.3%id,  6.4%wa,  0.0%hi,  0.0%si,  0.0%st
    اگه میخاین که اطلاعات رو به صورت کامل و به اضای هر هسته cpu ببینین در موقعی که top در حال اجرا هست عدد 1 رو بزنین
    کد:
    top - 20:10:07 up 40 days, 23:03,  1 user,  load average: 5.32, 2.38, 1.39
    Tasks: 341 total,   3 running, 337 sleeping,   0 stopped,   1 zombie
    Cpu0  :  7.7%us,  1.7%sy,  0.0%ni, 79.5%id, 11.1%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu1  :  0.3%us,  0.0%sy,  0.0%ni, 94.9%id,  4.7%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu2 :  3.3%us,  0.7%sy,  0.0%ni, 55.7%id, 40.3%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu3 :  5.0%us,  1.0%sy,  0.0%ni, 86.2%id,  7.4%wa,  0.0%hi,  0.3%si,  0.0%st
    Cpu4  : 38.5%us,  5.4%sy,  0.3%ni,  0.0%id, 54.8%wa,  0.0%hi,  1.0%si,  0.0%st
    Cpu5  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu6  :  0.3%us,  0.7%sy,  0.0%ni, 97.3%id,  1.7%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu7  :  5.4%us,  4.4%sy,  0.0%ni, 82.6%id,  7.7%wa,  0.0%hi,  0.0%si,  0.0%st
    Cpu8 :  1.7%us,  1.7%sy,  0.0%ni, 72.8%id, 23.8%wa,  0.0%hi,  0.0%si,  0.0%st
    بروز شدن خروجی top

    خروجی دستور top به صورت پیشفرض هر 3 ثانیه بروز میشه که اگه میخاین این مدت رو مثلا به یک ثانیه تغییر بدین در موقعی که دستور top در حال اجرا هست دکمه d رو بزنین
    کد:
    Change delay from 3.0 to: 1
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
        1 root      20   0  2032  704  612 S    0  0.3   0:01.78 init               
        2 root      20   0     0    0    0 S    0  0.0   0:00.00 kthreadd           
        3 root      RT   0     0    0    0 S    0  0.0   0:00.00 migration/0
    بسته شدن top بعد از نشون دادن تعداد خاصی خروجی

    برای این کار از n- استفاده کنین
    در زیر top بعد از 2 بار بروز شدن بسته میشه
    کد:
    $ top -n 2
    نشون دادن دستور کامل هر پروسس

    هر پروسسی که ایجاد میشه قبلش یک دستور زده شده مثلا همین top که بعد از زدن دستورش پروسسش ایجاد میشه در داخل خروجی خودش دستورشو به اینشکل نشون میده
    به زیر COMMAND توجه کنین

    کد:
          
    PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND 
    1100 root      20   0  2332 1140  900 R    0  0.4   0:00.06 top
    مثال دیگه
    کد:
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     1309 geek   23   0 2483m 1.7g  27m S    0 21.8  45:31.32 /usr/sbin/gagent
     1882 geek   25   0 2485m 1.7g  26m S    0 21.7  22:38.97 /usr/sbin/gagent -l 0 -u pre
    دستور top در حالت Batch Mode

    فرق این حالت با حالت معمولی top اینه که هر بار top به روز میشه اطلاعات جدید زیر اطلاعات قبلی مینویسه
    مثلا در زیر top بعد از 3 بار به روز شدن در حالت batch mode بسته میشه
    کد:
    root@debian:/# top -b -n 3 -u tia
    top - 13:55:26 up 58 min,  2 users,  load average: 0.00, 0.00, 0.00
    Tasks:  78 total,   1 running,  77 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.0%us,  0.1%sy,  0.0%ni, 99.8%id,  0.1%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:    254672k total,    67884k used,   186788k free,     9432k buffers
    Swap:   308216k total,        0k used,   308216k free,    34232k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
     1118 tia       20   0  8476 1492  860 S    0  0.6   0:00.01 sshd             
     1119 tia       20   0  4484 1728 1404 S    0  0.7   0:00.00 bash             
     1128 tia       20   0  8052 3608 2568 S    0  1.4   0:00.02 w3m              
    
    
    top - 13:55:29 up 58 min,  2 users,  load average: 0.00, 0.00, 0.00
    Tasks:  78 total,   1 running,  77 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
    Mem:    254672k total,    67884k used,   186788k free,     9432k buffers
    Swap:   308216k total,        0k used,   308216k free,    34232k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
     1118 tia       20   0  8476 1492  860 S    0  0.6   0:00.01 sshd             
     1119 tia       20   0  4484 1728 1404 S    0  0.7   0:00.00 bash             
     1128 tia       20   0  8052 3608 2568 S    0  1.4   0:00.02 w3m              
    
    
    top - 13:55:32 up 58 min,  2 users,  load average: 0.00, 0.00, 0.00
    Tasks:  78 total,   1 running,  77 sleeping,   0 stopped,   0 zombie
    Cpu(s):  0.2%us,  0.2%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
    Mem:    254672k total,    67884k used,   186788k free,     9436k buffers
    Swap:   308216k total,        0k used,   308216k free,    34232k cached
    
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND          
     1118 tia       20   0  8476 1492  860 S    0  0.6   0:00.01 sshd             
     1119 tia       20   0  4484 1728 1404 S    0  0.7   0:00.00 bash             
     1128 tia       20   0  8052 3608 2568 S    0  1.4   0:00.02 w3m              
    
    root@debian:/#
    روش بالا بیشتر برای ذخیره کردن خروجی دستور top در یک فایل متنی استفاده میشه با برای grep کردنش



    هدر top

    در موقعی که top در حال اجرا هست اگه

    l ((ال کوچک )) بزنین خط اول هدر مربوط به load average ناپدید میشه
    t بزنین خط 2م و 3م هدر مربوط به Tasks: و Cpu(s) ناپدید میشه
    m بزنین 2 خط اخر هدر مربوط به مموری ناپدید میشه


    کاهش دادن تعداد پروسس در خروجی top

    در حالتی که top در حال اجرا هست n رو بزنین بعد از شما تعداد پروسس رو میپرسه
    کد:
    Maximum tasks = 0, change to (0 is unlimited): 2
      PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
     1309 geek   23   0 2483m 1.7g  27m S    0 21.8  45:31.32 gagent
     1882 geek   25   0 2485m 1.7g  26m S    0 21.7  22:38.97 gagent
    در اخر هم برای بستن top در حالت اجرا از دکمه q ((کیو کوچک)) استفاده کنین

    منبع: Can You Top This? 15 Practical Linux Top Command Examples
    چند مثال دیگه تو منبع هست که نگفتم


    نرم افزار دیگه ای هم هست که همین کار top رو انجام میده ولی یک مقدار فرق داره
    اسم نرم افزار: htop
    Htop - ویکی‌پدیا



    منبع : Can You Top This? 15 Practical Linux Top Command Examples

  8. تعداد تشکر ها ازalieblice به دلیل پست مفید


  9. #5
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور locate




    دستور locate اطلاعات رو از روی دیتابیسی که با updatedb اماده سازی میشه میخواند و بعد با توجه به کلمه ای که شما به اون داده اید گزینه های سازگار رو در خروجی خود مینویسد

    برای به روز کردن دیتابیس خود از دستور زیر استفاده کنین
    برای این کار به کاربر روت احتیاج هست
    نکته :اگه فایل یا هر چیز جدید دیگه ای ساختین بعدش دستور زیر رو بزنین تا به دیتابیس اضافه بشه چون بروز اوریه دیتا بیس خیلی سریع نیست .
    کد:
    sudo updatedb
    برای پیدا کردن تمام فایلاها و دایرکتوریهایی که کلمه screenshot رو دارن دستور به این شکل میشه

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

    اگه خاستین دنبال یک چیزی محدود به یک دایرکتوری بگردین میتونین به این صورت دستورو بزنین
    مثلا من در اینجا دنبال یک فایل در داخل /home/alieblice/Documents میگردم :
    کد:
    alieblice@alieblice-desktop:/$ locate firefox |grep /home/alieblice/Documents
    /home/alieblice/Documents/firefox-4.0.tar.bz2
    alieblice@alieblice-desktop:/$
    اگه دستور locate -i firefox رو بزنین میبینین که چه همه firefox دارین

    توضیح دستور بالا :
    i- برای case-insensitive یعنی حساس نبودن به بزرگی و کوچکی استفاده میشه
    | ((\+shift)) : میگه که خروجی دستور قبلی بشه ورودی دستور جدید که دستور بلافاصله بعد از | میاد ((پایپ pipe یا لوله میخوننش ))
    grep : تمام خطهایی که کلمه ی ورودی رو داره برای ما جدا میکنه که کلمه ی ورودی در اینجا /home/alieblice/Documents بود .

    جستوجو بر اساس اسم دقیق داده شده
    برای ای کار دستور به شکل زیر میشه
    کد:
    locate -b '\NAME'
    اینجوری فقط دایرکتوری یا فلدر هایی که اسمشون دقیقا NAME هست نشون داده میشه
    کد:
    alieblice@alieblice-desktop:/$ locate -b '\Oggy'
    /home/alieblice/Videos/Oggy
    alieblice@alieblice-desktop:/$ 
    alieblice@alieblice-desktop:/$ 
    alieblice@alieblice-desktop:/$ locate Oggy
    /home/alieblice/Documents/Oggy.003.htm
    /home/alieblice/Downloads/Oggy.003.htm
    /home/alieblice/Videos/Oggy
    /home/alieblice/Videos/Oggy.002.avi
    /home/alieblice/Videos/Oggy.003.avi
    alieblice@alieblice-desktop:/$
    لیست کردن تمام دایرکتوری ها و ساب دایرکتوری
    برای این کار بعد از دستور locate ادرس دایرکتوری رو بدین
    کد:
    alieblice@alieblice-desktop:/$ locate /home/alieblice/Videos
    /home/alieblice/Videos
    /home/alieblice/Videos/Oggy.001.avi
    /home/alieblice/Videos/Oggy.002.avi
    /home/alieblice/Videos/Oggy.003.avi
    /home/alieblice/Videos/test
    /home/alieblice/Videos/test/test2
    alieblice@alieblice-desktop:/$
    لیست کردن بر اساس فرمت داده شده
    کد:
        locate "*.png" -q
    -q برای نشون ندادن ارور هست
    اگر خاستین تعداد خاصی یعنی مثلا 3 تا خروجی بیشتر نداشته یاشه از n- استفاده کنین
    کد:
    alieblice@alieblice-desktop:/$ locate -n 3 "*.png" 
    /etc/alternatives/start-here-16.png
    /etc/alternatives/start-here-22.png
    /etc/alternatives/start-here-24.png
    alieblice@alieblice-desktop:/$
    اگه مقدار خروجی خیلی زیاد بود میتونین از less یا more استفاده کنین
    کد:
    locate *.png |less
    locate *.png |more
    نکته :
    دیتابیس locate در ادرس زیر هست
    کد:
    /var/lib/mlocate/mlocate.db
    که برای دیدن محتویات داخلش از این دستور میتونین استفاده کنین
    کد:
    sudo strings /var/lib/mlocate/mlocate.db |less

  10. تعداد تشکر ها ازalieblice به دلیل پست مفید


  11. #6
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض دستور wget ((دانلود منیجر تحت ترمینال))




    wget یک دانلود منیجر تحت ترمینال هستش که که اپشن های زیادی هم داره که به واسطه همونا در موقعیت های مختلف دانلود کردن میشه ازش استفاده کرد
    برای پیدا کردن اطلاعات کاملی در مورد دانلود منیجر های لینوکسی به این ادرس برید

    کد:
    دانلود منیجرهای دنیای لینوکس
    
    http://linuxreview.ir/1390/01/%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D9%85%D9%86%DB%8C%D8%AC%D8%B1%D9%87%D8%A7%DB%8C-%D8%AF%D9%86%DB%8C%D8%A7%DB%8C-%D9%84%DB%8C%D9%86%D9%88%DA%A9%D8%B3/

    شکل کلی دستور

    کد:
     wget [OPTION]... [URL]...
    دانلود کردن یک فایل

    برای دانلود کردن یک فایل دستور wget رو بنویسین و در ادامش url ((ادرس فایل مورد نظر )) تونو بنویسین مثلا :
    کد:
    $ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    نکته : دستور wget رو در هر دایرکتوری که بزنین فایل در همون دایرکتوری ذخیره میشه

    توضیح دستور بالا :

    ٪ مقدار درصد فایل که دانلود شده در زیر 31% فایل دانلود شده
    مقدار بایت فایل دانلو شده که در ادامه فلش میاد که در زیر 1,213,592 است
    سرعت دانلود کردن که در زیر 68.2K/s است
    مقدار زمان باقی مانده تا اتمام دانلود فایل که در زیر 34s است

    درحال دانلود شدن
    کد:
    $ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    Saving to: `strx25-0.9.2.1.tar.bz2.1'
    
    31% [=================> 1,213,592   68.2K/s  eta 34s
    اتمام دانلود
    کد:
    $ wget http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    Saving to: `strx25-0.9.2.1.tar.bz2'
    
    100%[======================>] 3,852,374   76.8K/s   in 55s    
    
    2009-09-25 11:15:30 (68.7 KB/s) - `strx25-0.9.2.1.tar.bz2' saved [3852374/3852374]

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

    برای این کار لیست ادرس های خود را داخل یک فایل متنی ذخیره کنید و دستور wget رو به همراه اپشن i- استفاده کنین
    کد:
    $ wget -i download-file-list.txt
    نکته : ادرس هاتون باید یه شکل زیر باشه یعنی در هر خط یک url قرار بدین و url بعدی زیر خط بالایی
    کد:
    $ cat > download-file-list.txt
    URL1
    URL2
    URL3
    URL4
    دانلود کردن وذخیره کردن با اسمی متفاوت
    به طور پیش فرض wget اسم فایلو از اخرین کلمه بعد از اسلش (( / )) بر میداره
    برای این کار از اپشن O- (( اوو بزرگ))
    کد:
    wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701
    دربالا اگه از اپشن O- استفاده نکنین فایل با اسم download_script.php?src_id=7701 ذخیره می شود و اگر استفاده کنین با اسم taglist.zip ذخیره میشود

    محدودیت سرعت در دانلود

    برای این کار از اپشن limit-rate=NUMBER-- استفاده کنین مثلا در زیر محدودیت 200 کیلپبایت میزاریم
    کد:
    $ wget --limit-rate=200k http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    ادامه دادن دانلود فایل ناقص دانلود شده

    برای این کار از c- استفاده کنین
    کد:
    $ wget -c http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    نکته مهم : دستور بالا رو باید در همون دایرکتوری که فایلتونو بار اول زدین و ناقص دانلود کردین بزنین تا فایلتون که به صورت ناقص هست به وسیله wget پیدا بشه در غیر این صورت از اول شروع به دانلود میکند
    اگر فایلی رو خاستین دانلود کنین که یک فایل دیگه هم اسمش وجود داره به اخر فایلی که شما دانلود میکنین یک 1- اضافه میکنه اگه همون اسم با 1- وجود داشت 2- اضافه میکند


    دانلود کردن در پشت صحنه :
    برای این کار از b- استفاده کنین
    نکته : در این حالت با دستور fg نمیتونین wget رو به روی صفحه بیارین اگر دستور jobs هم بزنین میبینین که خبری از wget نیست
    کد:
    $ wget -b http://www.openss7.org/repos/tarballs/strx25-0.9.2.1.tar.bz2
    Continuing in background, pid 1984.
    Output will be written to `wget-log'.
    در این حالت wget اطلاعات رو در یک فایل ذخیره میکند که همون طور که در بالا میبینین اسم اون فایل wget-log است

    برای دیدن فایل به صورت on time از دستور tail استفاده کنین
    کد:
    $ tail -f wget-log
    Saving to: `strx25-0.9.2.1.tar.bz2.4'
    
         0K .......... .......... .......... .......... ..........  1% 65.5K 57s
        50K .......... .......... .......... .......... ..........  2% 85.9K 49s
       100K .......... .......... .......... .......... ..........  3% 83.3K 47s
       150K .......... .......... .......... .......... ..........  5% 86.6K 45s
       200K .......... .......... .......... .......... ..........  6% 33.9K 56s
       250K .......... .......... .......... .......... ..........  7%  182M 46s
       300K .......... .......... .......... .......... ..........  9% 57.9K 47s

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

    از دستور زیر به همراه اپشناش استفاده کنین
    شکل کلی :
    کد:
    $ wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
    مثال :
    کد:
     wget --mirror -p --convert-links -P /tmp http://forum.ubuntu.ir/index.php/topic,17561.0.html
    ادرس http://forum.ubuntu.ir/index.php/topic,17561.0.html دانلود میکنپ ودر فایل tmp/ ذخیره میکند

    توضیح دستور بالا : ((ترجمش با خودتون ))
    کد:
      –mirror : turn on options suitable for mirroring.
        -p : download all files that are necessary to properly display a given HTML page.
        –convert-links : after the download, convert the links in document for local viewing.
        -P ./LOCAL-DIR : save all the files and directories to the specified directory.





    چند مثال مفید دیگه هم در منبع بود که من نگفتم
    منبع : The Ultimate Wget Download Guide With 15 Awesome Examples

  12. تعداد تشکر ها ازalieblice به دلیل پست مفید


  13. #7
    عضو انجمن alieblice آواتار ها
    تاریخ عضویت
    Feb 2010
    نوشته ها
    111
    تشکر تشکر کرده 
    10
    تشکر تشکر شده 
    247
    تشکر شده در
    86 پست

    پیش فرض ساختن کاربر ((user)) و پاک کردن و ایجاد بعضی محدودیت ها



    برای ساختن user چندین تا دستور وجود داره که این جا برای ساختن user دستور
    useradd
    adduser
    داریم و برای پاک کردن user
    deluser
    userdel
    داریم
    حالا اگه بخایم که برای یک کاربر محدودیت زمانی و بعضی محدودیتای دیگه بزاریم از دستور
    usermod
    استفاده میکنیم

    useradd

    برای ساختن یک کاربر
    با این دستور کاربر tia ساخته میشه
    کد:
    useradd tia
    برای ساختن یک کاربر به همراه home دایرکتوریش
    کد:
    useradd -m tia
    حالا اگه خروجی home دایرکتوریرو بگیرین میبینین که فلدر tia ساخته شده


    ساختن کاربر و اضافه کردن اون به لیست کاربرای یک گروه
    با این دستور کاربر tia ساخته میشه و به گروه student اضافه میشه
    کد:
    useradd -g student tia
    ساختن کاربر و مشخص کردن ادرس home دایرکتوری
    با این دستور کاربر tia ساخته میشه و home دایرکتوریش هم میشه ادرسه /var/www/LILI
    کد:
    useradd tia -d /var/www/LILI


    adduser

    برای ساختن کاربر و دادن هم زمان بعضی اطلاعات مثل شماره تلفن و غیره
    کد:
    root@debian:/# adduser tia
    Adding user `tia' ...
    Adding new group `tia' (1009) ...
    Adding new user `tia' (1008) with group `tia' ...
    The home directory `/home/tia' already exists.  Not copying from `/etc/skel'.
    adduser: Warning: The home directory `/home/tia' does not belong to the user you are currently creating.
    Enter new UNIX password: 
    Retype new UNIX password: 
    Sorry, passwords do not match
    passwd: Authentication token manipulation error
    passwd: password unchanged
    Try again? [y/N] y
    Enter new UNIX password: 
    Retype new UNIX password: 
    passwd: password updated successfully
    Changing the user information for tia
    Enter the new value, or press ENTER for the default
    	Full Name []: tia dada
    	Room Number []: 1122
    	Work Phone []: 1212121212
    	Home Phone []: 121212121
    	Other []: blablanla
    Is the information correct? [Y/n] y
    root@debian:/#
    اضافه کردن کاربر tia به گروه student
    کد:
    root@debian:/# adduser tia student
    Adding user `tia' to group `student' ...
    Adding user tia to group student
    Done.

    deluser

    دستور deluser برای پاک کردن کاربرا هستش
    پاک کردن کاربر tia
    کد:
    root@debian:/# deluser
    Enter a user name to remove: tia
    Removing user `tia' ...
    Warning: group `tia' has no more members.
    Done.
    root@debian:/#
    بعضی اپشن ها

    برای پاک کردن home دایرکتوری
    کد:
    --remove-hom
    برای پاک کردن تمام فایلایی که کاربر مورد نظر صاحبشونه
    کد:
    --remove-all-files
    برای پشتیبان گیری از فایلای اون کاربر قبل از پاک کردن
    کد:
    --backup-to <DIR>


    userdel

    برای پاک کردن کاربر به همراه دایرکتوری خانه
    کد:
    userdel tia -r


    usermod

    دستور usemod برای گذاشن محدودیت برای یک کاربر هسنش

    برای قفل کردن کاربر
    کد:
    usermod -L tia
    برای باز کردن قفل کاربر
    کد:
    usermod -U tia
    -d
    برای تعیین تاریخ برای از کار افتادن کاربر

    -s
    برای تعیین شل کاربر

    کلا تنضیماتش خیلی نیست با --help میتونین تنضیماتشو ببینین اکثرشم احتیاج به توضیح نداره



    chage
    این دستور هم برای گذاشتن یک سری دیگه از محدودیت ها استفاده میشه
    برای گذاشتن محدودیت های دیگه ای مثل تعداد پروسس با حد اکثر تعداد login ها و غیره میتونین از فلدر
    /etc/security
    استفاده کنین

    برای دیدن کاربرای online هم میتونین از دستور
    who
    یا
    w
    کنین
    ویرایش توسط alieblice : July 31st, 2011 در ساعت 19:28

  14. تعداد تشکر ها ازalieblice به دلیل پست مفید


اطلاعات موضوع

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

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 123
    آخرين نوشته: September 2nd, 2018, 22:20
  2. پاسخ ها: 14
    آخرين نوشته: June 11th, 2014, 13:25
  3. پاسخ ها: 0
    آخرين نوشته: February 21st, 2013, 21:30
  4. پاسخ ها: 0
    آخرين نوشته: December 24th, 2011, 16:39

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •