ארכיון פוסטים מהחודש "ספטמבר, 2010"

המרת דיסק וירטואלי בקובץ vmdk לפורמט חדש

יום חמישי, 23 בספטמבר, 2010

דוגמא לעבוד עם VMWare Virtual Disk Manager בעבודה עם קבצים מסוג VMDK

יצירת דיסק וירטואלי חדש VMDK

vmware-vdiskmanager -c -t 0 -s 40GB -a ide myDisk.vmdk

המרה של דיסק וירטואלי ממצב PreAlocated  ל Growable

vmware-vdiskmanager -r sourceDisk.vmdk -t 0 targetDisk.vmdk

טבלת סוגי דיסקים ב Vmware:

  Disk types:
      0                   : single growable virtual disk
      1                   : growable virtual disk split in 2GB files
      2                   : preallocated virtual disk
      3                   : preallocated virtual disk split in 2GB files
      4                   : preallocated ESX-type virtual disk
      5                   : compressed disk optimized for streaming

כל הפרמטרים החשבוים לעבוד עם Vmware-vdiskmanager

-c         Create Disk

-d        Defrag

-k        Shrink.

-r         Read/Convert

-R          check a sparse virtual disk for consistency.

-a       Adapter type (ide,buslogic,lsilogic)

-s       size

-t    Disk type

תוכנת שירות mysqldump

יום חמישי, 23 בספטמבר, 2010

תוכנת mysqldump היא תוכנת לקוח שמתחברת אל שרת בסיס הנתונים ומבצעת גיבוי שלם לכל בסיס נתונים , התוכנה נכתבה על ידי איגור רומנקו והיא מבצעת DUMP לכל הבסיס הנתונים כולל כל הטבלאות וכל הנתונים בתוך בסיס הנתונים באופן זה ניתן להעביר את בסיס הנתונים משרת לשרת .

linux# mysqldump -opt [database name] -h localhost -u da_admin -pPassword

קישורים:

קוד לבדיקת הפרמטרים שמהשתמש מכניס בעת הריצה של הסקריפט

יום ראשון, 12 בספטמבר, 2010

היום אסביר איך לבדוק פרמטרים(Arguments)  שנשלחים ביחד עם סקריפט שאנחנו מריצים.

הרבה פעמים אני כותב סקריפטים ב BASH שרצים יחד עם פרמטרים לריצה לדוגמא

 Server:~# myscript.sh /etc/passwd

הקוד לסקריפט הוא פשוט מאוד

#!/bin/bash
# myscript.sh
cat $1
# end of script

כל עוד המשתמש הסופי בעת הריצה מציין את הפרמטר אחרי הפקודה myscript.sh הסקריפט ירוץ, אבל אם בטעות המשתמש ישכח ויריץ את הפקודה ללא המשתנה נוסף ( $1 ) הסקריפט יתקע מאחר שהוא יחכה ל Input מה Console במקום לקרוא מקובץ.

לכן לפני תחילת כל Script בלינוקס אני ממליץ  ללודא שכל הarguments נמצאים ואם לא להוציא הודעת שגיאה למשתמש ולהפסיק את ריצת הסקריפט בלינוקס.

לצורך זה אני אשתמש בפקודות IF שתבדוק האם קיים פרמטר ב $1

if [ "$1" = "" ] ; then

        echo Please sepcifiy filename
        exit
else
        echo File provided correctly;

fi

הינה הסקריפט החדש

#!/bin/bash
# myscript.sh
if [ "$1" = "" ] ; then

        echo Please sepcifiy filename
        exit
else
        echo File provided correctly;

fi

cat $1
# end of script

לקט מאמרים בנושא Per-Process IO Accounting

יום רביעי, 8 בספטמבר, 2010

לינוקס בגירסאות Kernel 2.6 ומעלה יש תמיכה למערכת ההפעלה לבצע Accounting לכל פעולות IO שמבצע כל תהליך (Process) במערכת ההפעלה.

תכונה זו זו מאפשרת לזהות תהליכים ש"זוללים" משאבי IO  מהשרת.

תוכנת iotop מציגה מסך דומה ל top רק שהמידע שמוצג הוא רלוונטי לפעולות ה  IO שהתהליך מבצע לדוגמא מהירות הכתיבה לדיסק ומהירות הקריאה מהדיסק.

 לפני שמפעילים את תוכנת Iotop צריך להדליק את מנגנון ה IO Accouting ב Kernel

באמצעות הפקודה הבאה

-echo 1 > /proc/sys/vm/block_dump

לאחר מכן אפשר להשתמש בשתי תוכנות

Iodump – מציג נתונים על כל Process עובדת באמצעות Phyton פחות מומלצת.

Iotop – מציג נתוני IO לכל Process  במערכת עובדת ב Real time

 

קישורים להורדה

wget http://aspersa.googlecode.com/svn/trunk/iodump

 

הרצת הפקודה

while true; do sleep 1; dmesg -c; done | perl iodump

 

דוגמא לפלט מהפקודה

root@kanga:~# while true; do sleep 1; dmesg -c; done | perl iodump
^C# Caught SIGINT.
TASK                   PID      TOTAL       READ      WRITE      DIRTY DEVICES
firefox               4450       4538        251       4287          0 sda4, sda3
kjournald             2100        551          0        551          0 sda4
firefox              28452        185        185          0          0 sda4
kjournald              782         59          0         59          0 sda3
pdflush                 31         30          0         30          0 sda4, sda3
syslogd               2485          2          0          2          0 sda3
firefox              28414          2          2          0          0 sda4, sda3
firefox              28413          1          1          0          0 sda4
firefox              28410          1          1          0          0 sda4
firefox              28307          1          1          0          0 sda4
firefox              28451          1          1          0          0 sda4

 

כמו iodump יש גם את תוכנת iotop שמציגה את המידע בזמן אמת

התקנת iotop באמצעות הפקודה

Apt-get install iotop

הרצת הפקודה

Iotop

 

קישורים מעניינים

http://guichaz.free.fr/iotop/

http://www.xaprb.com/blog/2009/08/23/how-to-find-per-process-io-statistics-on-linux/