تبلیغات
قطره (ای از زندگی یک درگیر کامپیوتر) - مطالب تجربیات ما در كامپیوتر و استفاده از نرم افزار ها
 
اگر قادر نیستی خود را بالا ببری ،همانند سیب باش تا با افتادنت اندیشه ای بالا برود.

اتصال به دیتابیس اراکل در سی شارپ

نوشته شده توسط :سعید كلانتری
دوشنبه 1 آبان 1396-05:32 ب.ظ

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

اولین مشکل tns بود که با بدختی درست شد. شاید بدون tns هم بشه که قطعا می شه و لی در هرصورت من اراکل کلاینت نصب کردم. و بعد tns اش را کانفیگ کردم که راستش اونقدر پیچیده شد که نفهمیدم چی شد. پس از اون بگذریم. انشالله بعدا بهش اشاره می کنم.

ولی بعد با ارور زیر مواجه شدم:

ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

این ارور بخاطر این است که یک پارامتری که برای امنیت دیتابیس است. من چون نتونستم حلش کنم دورش زدم.
اول بگم که من برای اتصال از یوزر sys استفاده می کردم که چون گسوردش یادم رفته بود از دستور

alter user sys identified by password

پسوردش را عوض کردم.

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

 show parameter O7_DICTIONARY_ACCESSIBILITY

( دستور فوق را باید در شل sqlplus بزنید )
من با دستور alter system set o7_dictionary_accessibility=true scope=spfile ;
تغییرش دادم.
شاید اگه یه بار دیتابیس را استوپ و استارت می کردم درست می شد ولی من سیستم رو ریست کردم.

بعد که سیستم امد بالا دوباره لاگین کردم. این دفع وقتی دستور دیدن پارامتر رو زدم دیدم چیزی وجود نداره. دستور
startup
زدم که دیتابیس بیاد بالا
که امد
بعد دوباره زدم و دیدم مقدار پارامتر true شده. لذا سعی کردم وصل بشم. دیدم اررور زیر رو می ده:

ORA-12541: TNS:no listener

لذا دوباره به سیستم وصل شدم. با یوزر اراکل  (                   su - oracle  )

سپس دستور  lsnrctl status  را وارد می کنیم. بدیهی است که فعال نیست

لذا با دستور    lsnrctl start
انرا فعال کرده و به ان وصل می شویم.

برای همین نتایج ساده بالا من دوساعت اسیر بودم




لاگین به دیتابیس با shelll

نوشته شده توسط :سعید كلانتری
دوشنبه 1 آبان 1396-09:40 ق.ظ

سلام
فرض کنید می خواهید با استفاده از shell و putty به یک دیتابیس اراکل ( oracle )  لاگین کنید. از کامند زیر می توانید استفاده کنید

sqlplus  user/userpass@dbsid

لازم به ذکر است که dbsid اسمی است که در tnsnames.ora بر روی ماشینی که داری ازش وصل میشی نوشته شده  و بر مبنی ان مشخص می  گردد


نصب پایتون روی لینوکس

نوشته شده توسط :سعید كلانتری
چهارشنبه 26 مهر 1396-06:38 ب.ظ

می خواستم روی لینوکس اراکلی که داشتم پایتون 3.6 بریزم. خودش پایتون 2.6  داشت. سیستم هم اینترنت نداشت.
از دستور العملی که توی ادامه مطلب هست و منبعش اینه استفاده کردم

https://www.digitalocean.com/community/tutorials/how-to-set-up-python-2-7-6-and-3-3-3-on-centos-6-4



ادامه مطلب

جستجوی متن در عبارت

نوشته شده توسط :سعید كلانتری
دوشنبه 16 مرداد 1396-01:14 ب.ظ

pid یعنی پروسس ای دی. هر برنامه ای در لینوکس با یه پروسس ای دی کار می کنه. برای از کار انداختنش باید یه دستور kill -9  قبلش زد


مثلا اگه یه pid داریم به  شماره 1234 با دستور   kill -9 1234  اون پروسس رو از کار می اندازیم.

حالا فرض کن یه برنامه داریم که حدودا می دونیم با چه اسمی می اد ولی نمی دونیم شماره پردازشش چیه. چزوری می شه فهمید؟

خوب اول می ریم با  دستور ps -A لیست کل پردازشها رو می بینیم بعد با grep کردن پروسس ای دی اش را در می اوریم

مثلا داریم

ps -A | grep 'saeed
حالا اگه بخواهیم دقیق تر و ریز تر بشویم می توانیم از کامند sed و cut استفاده کنیم که کاربرد های خوبی دارد

cut برای بریدن یک زیر رشته از رشته کاربرد دارد

مثلا ps -A | grep 'saeed' | cut -c2-6

یعنی از خروجی grep از کارکتر دوم تا 6 را ببر و جدا کن مثلا اگر خروجی grep برابر عبارت  
1234 saeed   888888
باشد خروجی برابر 234 s خواهد بود.( یه خورده تو این ادیتور میهن بلاگ بهم می ریزه. امیدوارم متوجه بشید)

از اون باحال تر دستور sed است. با دستور sed می توانید یک رشته را در رشته دیگر جستجو کنید و یا در خروجی تغییرات ایجاد کنید. دستور sed راباید بخونید. یه متن خوب براش می زارم توی ادامه مطلب. ولی مثلا باید حتما با یک کوتیشن و یک s شروع شود و به جاهای خوب برسید. از  regular expersion هم می تونید استفاده کنید.
من می خواستم توی رشته ام در صورتیکه به عدد خورد بین ان و قسمت بعدی فاصله بیندازد. و بعدش هم می خواستم در صورتیکه حرف توش نبود از ان استفاده کند. لذا کامند های زیر را زدم
راستی با کامند Echo ``  انرا فرستادم توی فایل. خیلی حال داد.

echo kill -9 ` ps -A | gerp 'saeed' | sed 's/[0-9]*/&            /'  | cut -c1-8 | sed 's_[^0-9]_ _g'` > /tmp/killer.sh

لازم به ذکر است که در دستور Sed می توان از / یا _  و یا : و غیره بعنوان جدا کننده استفاده کرد.


همین

منابع:

https://alvinalexander.com/linux-unix/linux-cut-command-cut-fields-columns-examples
http://wiki.linuxreview.ir/Shell-scripting-tutorial/chapter17





ادامه مطلب

use of unassigned local variable

نوشته شده توسط :سعید كلانتری
پنجشنبه 5 مرداد 1396-02:22 ب.ظ

امروز داشتم برنامه می نوشتم و میخوایتم یه متغیر string  رو به یه تابع پاس بدم که اونم متغیر  string می خواست.
ارور use of unassigned local variable    می داد. خیلی عجیب بود . همه چی به نظر درست بود. ولی نمی فهمیدم منظورش چیه.

اخرش فهمیدم باید زمانیکه تعریف می کنم متغیر رو یهع مقداری بهش بدم. تا به ارور نخوره


زیر رشته در رشته در زبان سی شارپ

نوشته شده توسط :سعید كلانتری
پنجشنبه 5 مرداد 1396-11:34 ق.ظ

من درسته خیلی وقته برنامه نویسی بلدم و یه چیزهای کوچولو نوشتم ولی خوب برنامه نویس نبودم ولی انگار دارم می رم سمتش.حالا بعدها بیشتر در موردش صحبت می کنم

ولی علی الحساب اینو داشته باشید:
برا یپیدا کردن یک رشته در یک رشته دیکه در  سی شارپ من از متود indexof  استفاده کردم. شاید روشهای بهتری هم باشد


رشته ها در زبان سی شارپ #C :

متد CopyTo : تعدادی کاراکتر را از مکان مشخص از یک رشته را در مکان خاص یک آرایه کاراکتری کپی میکند. بعنوان مثال دستورات زیر را ببینید:

string s1;

char[] charArray;

s1= "hello there";

s1.CopyTo (0,charArray,0,5);

متد CopyTo محتویات رشته s1 را در آرایه charArray کپی میکند. مکان شروع کپی در آرایه 0 و تعداد کاراکترهایی که باید کپی شوند، 5 کاراکتر است.

متد  Length : این متد طول رشته را برمیگرداند.

متد CompareTo : دو رشته را با هم مقایسه میکند. اگر رشته اول برابر رشته دوم باشد، مقدار صفر، اگر رشته اول بزرگتر از رشته دوم باشد، مقدار 1 و اگر کوچکتر باشد، 1- را برمیگرداند.

متد Equals :دو رشته را با هم مقایسه کرده تعیین میکند آیا دو رشته با یگدیگر برابر هستند یا خیر. اگر برابر باشند true وگرنه false را برمیگرداند.

متد StartWith : تعیین میکند آیا شروع یک رشته با رشته خاصی تطبیق دارد یا خیر. اگر مطابق باشد مقدار true وگرنه false را برمیگرداند.

متد EndsWith : تعیین میکند آیا انتهای رشته با رشته خاصی برابر است یا خیر.

متد IndexOf : اولین مکان وقوع رشته ای را در رشته دیگر تعیین میکند.

متد LastIndexOf : مکان آخرین وقوع رشته ای را در رشته دیگر برمیگرداند.

متد IndexOfAny : مکان اولین وقوع رشته ای را در تعدادی کاراکتر از نوع یونیکد تعیین میکند.

متد  LastIndexOfArray : مکان آخرین وقوع رشته ای را در تعدادی کاراکتر از نوع یونیکد تعیین میکند.

متد Replace : رشته ای را با رشته دیگر جایگزین میکند.

متد ToUpper : کلیه حروف کوچک رشته را به حروف بزرگ تبدیل میکند.

متد ToLower : کلیه حروف بزرگ رشته را به حروف کوچک تبدیل میکند.

متد Trim :فضای خالی سمت چپ و راست رشته را حذف میکند.

متد TrimEnd : فضای خالی انتهای رشته را حذف میکند.

متد TrimStart : فضای خالی ابتدای رشته را حذف میکند.

متد SubString : بخشی از رشته را برمیگرداند.

متد Remove : بخشی از رشته را حذف میکند.

متد Insert : رشته ای را در مکان خاصی از رشته دیگر اضافه میکند.

متد PadLeft : با افزودن فضای خالی یا کاراکتر یونیکد خاصی به سمت چپ، رشته کاراکتری را از سمت راست تنظیم میکند.

متد PadRight : با افزودن فضای خالی یا کاراکتر یونیکد خاصی به سمت راست، رشته کاراکتری را از سمت چپ تنظیم میکند.

متد Split : رشته ای را با استفاده از یک جدا کننده به چند زیر رشته تبدیل میکند.

متد Format : برای تعیین فرمت نمایش بکار میرود. این متد با کلاس string استفاده میگردد.

 
منبع  : http://www.sourcecodes.ir/post.php?id=190&title=%D8%B1%D8%B4%D8%AA%D9%87-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE-


غیرفعالسازی SMB در ویندوز

نوشته شده توسط :سعید كلانتری
چهارشنبه 10 خرداد 1396-02:57 ب.ظ

غیرفعالسازی SMB در ویندوز 8 ، 10 ، سرور 2016 و سرور 2012

– ابتدا پاورشل را با دسترسی Administrator باز کنید.

– دستور زیر را جهت غیرفعال کردن SMBv1 وارد کنید.

سپس پس از وارد کردن حرف Y را به نشانه تأیید وارد نمایید.

– دستور زیر را جهت غیرفعال کردن SMBv2 و SMBv3 وارد کنید.

نکته : در صورت بروز مشکل در SMB و سیستم File sharing در شبکه با دستورات زیر می‌توانید به حالت قبل باز گردید.

غیرفعالسازی SMB در ویندوز 7 ، ویستا ، سرور 2008 و سرور 2008R2

– پاورشل را با دسترسی Administrator باز کنید.

– دستور زیر را جهت غیرفعال سازی SMBv1 وارد نمایید.

– سپس دستور زیر را جهت غیرفعال کردن SMBv2 و SMBv3 وارد کنید.

بدین ترتیب شما پروتکل SMB Server را غیر فعال کرده و راه نفوذ را می بندید.

نکته : در نظر داشته باشید با وارد کردن کدهای بالا ممکن است در سیستم File Sharing دچار اختلال گردید. در صورت اختلال کدهای زیر را وارد کرده تا به حالت قبل باز گردید.

5- بروز نگه داشتن آنتی ویروس



قفل کردن یه پارتیشن با bitlocker

نوشته شده توسط :سعید كلانتری
یکشنبه 7 خرداد 1396-10:10 ق.ظ

گاهی لازم می شود که یک پارتیشن را که با بیت لاکر رمز کرده ایم و در حال استفاده ازش هستیم( یعنی رمزش را زدیم و باز شده است را ) دوباره قفل کنمی. راحت ترین و یا سخت ترین کار برای قفل کردن یک پارتیشن بیت لاکردار ( bitlocker ) ریست کرن سیستم است. یعنی با ری استارت کردن پارتیشن قفل می شود. ولی بعضی وقتها امکان ریست کردن کامپیوتر به دلایلی نیست. شایدم اصلا حالش نیست.

در هر صورت فرمان

manage-bde -lock -ForceDismount Drive


که البته باید جای Drive نام پارتیشن مربوطه را قرار دهید.

من خودم فرمان فوق را در یک فایل  با پسوند BAT ذخیره کرده و روی دستکتاپ گذاشتم و هروقت لازم شد فایل فوق را با Run as administrator اجرا می کنم.



convert mbr to gpt

نوشته شده توسط :سعید كلانتری
سه شنبه 29 فروردین 1396-11:01 ق.ظ

 این روزها با امدن ویندوز 10 کم کم مجبوریم به دو سمت بریم.
اولا اینکه توی بایوس باید بگیم که نحوه بوت باید  UEFI  باشه.
دوم اینکه باید نحوه پارتیشن شدن دیسک بجای اینکه MBR باشه باید  GPT  باشه.

خوب اولی که کاری نداره. ولی دومی گاهی مشکل سازه. مثلا شما سی دی ویندوز 10 رو گذاشتی داخل و داری  OS می ریزی بعد بهت می گه چون دیسکت  GPT  نیست پس برای ریختن ویندوز 10 مناسب نیست.

خوب شما که روی سیستم OS نداری و ممکنه حتی سی دی قابل بوت مناسبی هم نداشته باشی. چطوری می خوای دیسک را تبدیل به GPT کنی؟

راه حلی که من انجام دادم این بود که در صفحه اولی که می اد بالا و می گه زبان و غیره رو انتخاب کنید.( همون صفحه اول ) گزینه shift+f10 رو می زنید و می رید داخل کامند پرامپت
اونجا باید از دستور diskpart  به سکل زیر استفاده کنید:
diskpart
list disk
select disk 0
clear
convert gpt
 و معمولا مشکلی پیش نمی اد.
مگر اینکه دیسکتون رو شناسایی نکنه و یا اینکه شماره دیسک رو اشتباه بزنید.

موفق باشبد


اپدیت کردن سویچهای سیسکو

نوشته شده توسط :سعید كلانتری
چهارشنبه 18 اسفند 1395-12:46 ب.ظ

اصولا اپدیت کردن سوئیچ سیسکو یعنی بالابردن نسخه ios انها. والا خیلی معنی دیگه ای نداره.

راحت ترین کار پیدا کردن نسخه جدید و خوب رای سوئیچ شما و کپی کردن ان به فلش سوئیچ و یا روتر با استفاده از tftp  است.

ضمنا باید جای خالی هم داشته باشید( روی فلش)
تنظمیات هم یادتان باشد که روی nvram است.

بعد از جابجا کردن هم لازم است فقط سوئیچ را ریست کنید تا با ios جدید بیاد بالا.ولی اگه مثل بچه ادم نیومد و رفت با سیستم عامل قبلی امد بالا فقط یه راه دارید و اون استفاده از دستور  boot system است.

دستور فوق را باید در conf t  بزنید و بعد از کلمه system ادرس سیستم عامل جدید را بدهید.

برایتان ارزوی موفقیت می کنم.

راستی اگر سیستم عامل جدید را نخواند می رود در مود switch:  در این صورت باید با دستور boot بعد ادرس فایل قبلی اتان انرا اپدیت کنید.

دیروز می خواستم یه 2960 رو اپدیت کنم. حدودا 5 تا ios مختلف ریختم روش تا بالاخره یکیش کار کرد و اپدیت شد. قبلی ها انگار مشکل داشت.

ولی یه بار یه 3750  رو اپدیت کردم.همون اپدیت اول اکی شد. با اینکه سوئیچ هم در یک سایت دور دست بود مشکل نداشتم. ولی این سوئیچه که بغل دستم هم بود کلی سرش اذیت شدم.

پیش می اد دیگه

راستی اخرین ios رو از ادرس زیر برداشتم

ادرس منبع


ریست پسورد esxi

نوشته شده توسط :سعید كلانتری
شنبه 14 اسفند 1395-06:02 ب.ظ

قطعا راه های زیادی برای ریست پسورد ESXi وجود دارد که من بعلت نیستم.
ولی من روش زیر را انجام دادم که منبعش http://www.unixarena.com/2014/05/recover-vmware-esxi-root-password.html

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

اولا نرم افزار gparted را بصورت گرافیکی اجرا کنید. اگر بخواهید از تریمنال اجرا کنید اررور روت را می دهد.
در اوبونتو روت بصوتر پیش فرض ظاهرا لاک شده و قابل استفاده نیست. لذا هرجا  به شما گفت روت می خوام از دستور sudo قبل از فرمان استفاده کنید.

من بعد از اینکه فایل shadow را تغییر دادم. سپس قبل از فشرده سازی فولدر etc من فایلهای state.tgz و local.tgz را حذف کردم.
برای دستورات cp به /mnt  نیاز به دستور sudo بود.
دستورات من به شکل زیراصلاح شد.
 sudo mount /dev/sda5 /mnt
cp state.tgz /tmp
cd /tmp
tar -xzf state.tgz
tar -xzf local.tgz

cd etc
vi shadow
اینجا فایل shadow را تغییر می دهیم و پسورد را از درونش حذف می کنیم.

سپس با دستورات :qw ذخیره کرده و خارج می شویم و محض اطمینان می توانیم یک بار دیگه انرا ببینیم.


rm state.tgz
rm locale.tgz
tar -czf local.tgz etc
tar -czf state.tgz local.tgz
cd /mnt
sudo rm local.tgz
sudo cp /tmp/local.tgz local/tgz
sudo umount /mnt
sudo reboot now
 لازم به ذکر است که من همون اوایل رفتم یه یوزر با دسترسی administartor   ساختم. ولی فکر کنم لازم نبود .

راستی من از سی دی اوبونتو 14.0  استفاده کردم. امیدوارم شما هم مشکلی نداشته باشید.

مشکلی داشتید از اینترنت کمک بگیرید بعیده منو انلاین پیدا کنید



اشکال در convert ماشین

نوشته شده توسط :سعید كلانتری
چهارشنبه 11 اسفند 1395-06:10 ب.ظ

موقع convert کردن یک ماشین بخصوص لینوکس ممکنه با اشکال زیر مواجه بشوید
FAILED: Cannot communicate with the remote host, either due to network errors or because the host is not responding.

این اشکال یا اشکالی شبیه به این که می گه  نمی تونه به Vm در destination  هاست وصل بشه بخاطر تنظیمات helper است.

قصه این طوری است که وقتی می خواد یه ماشین را انورت کنه اول می ره توی هاست مقصد یه ماشین درست می کنه. بعد روشن می کنه بعد یه برنامه ای به agent به نام helper روش فعال می کنه که اون وظیفه انتقال و کانورت کردن را بعهده می گیره. بصورت پیش فرض این  helper از طریق شبکه سعی می کند با برنامه convertor ارتباط بگیرد و برای اینکار بصورت پیش فرض از dhcp سعی می کند ای پی بگیرد. اگر در شبکه شما  dhcp فعال نباشد که در خیلی از سرور رومها فعال نیست لذا این ارتباط برقرار نمی شود و کانورت کردن failed می شود.
لذا برای جلوگیری ازین قضیه باید در مرحله اخر وقبل از شروع convert کردن و زمانیکه می توانید تنظیمات ماشین را تغییر بدهید  ،در آخرین بخش که مربوط به تنظمیات  helper است یک ای پی دستی مناسب تنظیم بفرمایید

موفق باشید


مکان index.html در آپاچی

نوشته شده توسط :سعید كلانتری
چهارشنبه 4 اسفند 1395-03:40 ب.ظ

سلام.
یه نکته ساده و کوچیک
مکان ایندکس در آپاچی در centos بطور پیش فرض در ادرس /var/www/html  است


راه اندازی وی پی ان l2tp با فورتیگت

نوشته شده توسط :سعید كلانتری
یکشنبه 24 بهمن 1395-06:42 ب.ظ

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

مدتی بود که برای اتصال از راه دور پرسنل شرکت به شبکه سازمان لازم بود که یه Vpn l2tp راه اندازی کنم. اونم روی یک فورتی گیتی( fortigate ) که داشتیم.

خوب مطالعه کردم و راه اندازی کردم. ( البته بخاطر تایپ اشتباه یوزر یه چند وقتی الکی اسیر بودم و هی کانفیگ بالا و پایین می کردم)

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


configuring-a-FortiGate-unit-as-an-L2TP-IPsec-server

یه متن هم گذاشتم تو ادامه مطلب



ادامه مطلب

sniff fortigate

نوشته شده توسط :سعید كلانتری
سه شنبه 12 بهمن 1395-10:58 ق.ظ

گاهی لازم است برای اینکه ببینیم چه اتفاقی دارد در فروتی گیتمون می افته از کامندهای زیر استفاده کنی:

config vdom
edit vdom-wan
diagnose sniffer packet any 'host 1.1.1.1 ' 4


دستورات بالا موجب میشه که هر ترافیکی از هاست 1.1.1.1 بیاید را اسنیف کند




درباره وبلاگ:



آرشیو:


طبقه بندی:


آخرین پستها:


پیوندها:


پیوندهای روزانه:


صفحات جانبی:


نویسندگان:


ابر برچسبها:


آمار وبلاگ:







The Theme Being Used Is MihanBlog Created By ThemeBox