-
عضو انجمن
-
تعداد تشکر ها از Desperados به دلیل پست مفید
-
June 4th, 2010 16:28
# ADS
-
مدیر کل
پاسخ : چطور یک دستور SHH را به صورت Shell Script اجرا کنیم ؟
سلام
می خوام این دستور به صورت یک shell Script باشه که بزارمش داخل CronTAB و هر شب اجرا بشه چطوری این دستور رو تبدیل کنم به شل ؟
شما وقتی وارد SSH شدی یه فولدر بساز و توی فولدر یه ادیتور باز میکنی مثلا :
root@linux [/shell]# mkdir /shellscript
root@linux [/shell]# cd /shellscript
root@linux [/shell]# nano backup.sh
وقتی وارد ادیتور شدی اولین خط این کد رو کپی کن
و بعد دستور ها رو مینویسی !
موردی هم که هست این دستور هنگام اجرا پسورد روت سرور مقصد رو سوال میکنه که باید توسط shell یکجوری بهش پسورد رو حالی کنیم دیگه
من تا یادمه Rsync پسورد رو میشد از توی یه فایل بهش داد حالا من سرچ میکنم برات میزارم
یک سوال دیگه هم در مورد ین دستور rsync داشتم اون هم اینکه چطور یک فرمت خاص از فایل های موجود در یک پوشه را انتقال بدیم مثلاً در دستور پست قبل تمام فایل های موجود در پوشه /copy/me/ منتقل می شوند چطور یک ف ی ل ت ر قرار بدیم که فقط فایل های tar.gz به عنوان مثال منتقل شوند
ببین تو میتونی grep کنی فایل هایی که میخوای ببری مثلا با این دستور
کد:
ls -la | grep "tar.gz"
این دستور فقط نشون میده فایل های .tar.gz که میتونی با grep کردن فقط فایل های لازم رو ببری
برای پیش رفت در علم آسانسوری وجود ندارد پله ها را باید پیاده رفت /./ همیشه این یادتان باشد که دست بالای دست بسیار است.
يادمان باشد براي يك بار ايستادن صد ها بار افتاده ايم /./ بک آپ مهمترین رمز موفقیت هاستینگ /./ امنیت مطلق نیست.
ارتباط مستقیم با من :
Admin -{(@)}- WebHostingTalk . ir
-
تعداد تشکر ها ازVahid به دلیل پست مفید
-
عضو انجمن
پاسخ : چطور یک دستور SHH را به صورت Shell Script اجرا کنیم ؟
نوشته اصلی توسط
Vahid
سلام
شما وقتی وارد SSH شدی یه فولدر بساز و توی فولدر یه ادیتور باز میکنی مثلا :
root@linux [/shell]# mkdir /shellscript
root@linux [/shell]# cd /shellscript
root@linux [/shell]# nano backup.sh
وقتی وارد ادیتور شدی اولین خط این کد رو کپی کن
و بعد دستور ها رو مینویسی !
من تا یادمه Rsync پسورد رو میشد از توی یه فایل بهش داد حالا من سرچ میکنم برات میزارم
ببین تو میتونی grep کنی فایل هایی که میخوای ببری مثلا با این دستور
کد:
ls -la | grep "tar.gz"
این دستور فقط نشون میده فایل های .tar.gz که میتونی با grep کردن فقط فایل های لازم رو ببری
سلام وحید جان مرسی عالی بود :D
فقط این جریان پسورد رو اگر بشه بهش حالی کرد دیگه چیز باحالی میشه
-
تعداد تشکر ها از Desperados به دلیل پست مفید
-
مدیر کل
پاسخ : چطور یک دستور SHH را به صورت Shell Script اجرا کنیم ؟
کد:
-pasword-file=/file.txt
---------- Post added at 07:04 PM ---------- Previous post was at 06:54 PM ----------
کد:
#
Identify the server that initially contains the files (we will call this the SOURCE server), and the serverto which you want to transfer the files (we will call this the TARGET server). Confirm that you can log in to the SOURCE server, that you can log in to the TARGET server, and that while logged into the TARGET server, you can use ssh to login to the SOURCE server using your password.
#
Step 2
Log into the TARGET server. Execute the command
[mikeular@targethost~]$ ssh-keygen -t dsa
ssh-keygen will ask you where you want to save the key. Accept the default directory, which will be ~/.ssh/id_dsa . Next it will ask you for a passphrase, leave this entry blank.
Your private key file will be saved to ~/.ssh/id_dsa and your public key will be saved to ~/.ssh/id_dsa.pub. Careful! Anyone who obtains a copy of your id_dsa file will be able to login to the SOURCE server as you, without authenticating themselves. Make sure that it's stored securely!
#
Step 3
Now you will configure the SOURCE server to accept the key. Once this step is complete, anyone with the id_dsa file will be able to log into the SOURCE server without providing a password.
Log into the SOURCE server and create the ssh directory:
[mikeular@sourcehost~]$ mkdir ~/.ssh
[mikeular@sourcehost~]$ cd ~/.ssh
Using vi or another text editor, create a file in ~/.ssh named authorized_keys2 . Now switch over to the TARGET server and copy the contents of the file id_dsa.pub and paste them into authorized_keys2 on the SOURCE server. Save the text file.
#
Step 4
Make sure that the authorized_keys2 cannot be changed by other users on the SOURCE server:
[mikeular@sourcehost~]$ chmod 644 ~/.ssh/authorized_keys2
#
Step 5
Now you can test your setup. Go back to the TARGET server and connect to the source.
[mikeular@targethost~]$ ssh username@sourcehost.com
[mikeular@sourcehost~]
Your ssh connection is now working correctly.
#
Step 6
Test your rsync over ssh connection by copying a file from SOURCE to TARGET. Enter the following command all on one line, being sure to substitute in the correct pathnames, username, and hostname.
[mikeular@targethost~]$ rsync -avz -e/usr/bin/ssh username@sourcehost.com:/home/username/testfile /home/mikeular/
This should copy the file "testfile" from your home directory on sourcehost to your home directory on targethost.
#
Step 7
All that's left is to setup your cron job. Plenty of documentation is available online.
برای پیش رفت در علم آسانسوری وجود ندارد پله ها را باید پیاده رفت /./ همیشه این یادتان باشد که دست بالای دست بسیار است.
يادمان باشد براي يك بار ايستادن صد ها بار افتاده ايم /./ بک آپ مهمترین رمز موفقیت هاستینگ /./ امنیت مطلق نیست.
ارتباط مستقیم با من :
Admin -{(@)}- WebHostingTalk . ir
-
تعداد تشکر ها ازVahid به دلیل پست مفید
-
عضو انجمن
پاسخ : چطور یک دستور SHH را به صورت Shell Script اجرا کنیم ؟
مرسی وحید جان کارت درسته با کلید عمومی یا همان Public Key ردیف شد D:
-
تعداد تشکر ها از Desperados به دلیل پست مفید