مشاهده نسخه کامل
: اجرا کردن برنامه در لینوکس
سلام
من یه وی پی اس گرفتم که لینوکسه.
میخوام وش یه گیم سرور بزنم ولی مشکل دارم.
برای اجرا کردن یه برنامه تو لینوکس حتما" باید به سرورس ریموت شم؟
راهی نیست که از طریف ssh اون برنامه رو اجرا کنم؟
برنامه شما گرافیکیه یا تحت ترمینال؟
برای تحت ترمینال از همون ssh می تونید استفاده کنید. برای برنامههای گرافیکی هم احتمالا مجبورید یه دستکتاپ نصب کنید و بعد با ریموت به سرور وصل بشید.
برنامه نیست بازیـه D:
میخوام واسه یه بازی سرور بزنم.
فایل های بازی رو اوردم تو لینوکس الان فقط موندم چطوری اجراش کنم.
جیپ هم هست واسه unzip کردنش چیکار کنم؟
فکر کردم منظورتون از گیم سرور یه چیز مثل تراوین هست.
اگه سرور بازی فقط گرافیکی باشه و نشه با خط فرمان اجرا و تنظیمش کرد به احتمال زیاد باید از همون ریموت استفاده کنید
برای unzip کردن کافیه دستور unzip رو با اسم فایل وارد کنید.
من از طریق wget یک فایلی رو وارد سرور کردم و بعد از طریق sftp وارد سرور شدم ولی اون فایل رو پیدا نمیکنم.
مسیر اون فایل کجاست؟
بدون محیط گرافیکی میشه اجراش کرد ولی من بلد نیستم که چطوری رانش کنم.
دستور ران کردن یه برنامه تو لینوکس چیه؟
اگه مسیر برنامه رو بدم خودش اجرا میکنه؟
با دستورات cd و ls و pwd می تونید فایل رو پیدا کنید برای آشنایی بیشتر با این دستورات تو خط فرمان man sftp رو وارد کنید.
بله اگه مسیر برنامه رو بدید خودش اجرا می شه.
دلیلش اینه که فرمت فایل zip نیست بلکه tar.gz هست برای خارج کردن از حالت زیپ فکر کنم باید از دستور زیر استفاده کنید:
tar zxfv filename
ممکنه این فایلی که شما گرفتید سورس باشه و نه باینری قابل اجرا. در اون صورت باید بازی کامپایل هم بکنید. اگه سرورتون دیبان هست فکر کنم بتونید مستقیما برنامه رو نصب کنید تا نیازی به کارهای اضافی نباشه.
کانفیگ سرور teeworlds هم فکر نمی کنم کاری داشته باشه. تا اون جایی که یادمه تنها با اجرا کردن برنامه سرور بازی تونستم وصل بشم. در ضمن فکر نمی کنم سرور بازی محیط گرافیکی داشته باشه و فقط می شه از خط فرمان اون رو تنظیم کرد.
من باید این رو وارد کنم تا برنامه اجرابشه:
cd /root/tee1
teeworlds_srv -f generatedServer.cfg
ولی وقتی این وارد میکنم تو putty این میاد:
teeworlds_srv: command not found
این می گه که فایل پیدا نشد پس حتما فایل برنامه جای دیگهاس. با این دستورات پیداش کنید:
updatedb
locate teeworlds_srv
فایل دقیقا" همون جاست دستورات شما رو هم اجرا کردم ولی اثری نکرد.
Linux
Open up a terminal and use the command "cd" to enter the teeworlds directory.
To start the server, type
teeworlds_srv -f serverconfig.cfgwhere you replace "serverconfig.cfg" with the name of your config file.
احتمالا فایل یه اسکریپته این دستور رو اجرا کنید:
chmod 755 teeworlds_srv
کار نکرد متاسفانه.
امکان داره مشکل از puty باشه.
شما خودتون چطور ران کردید سرور تی رو؟
تو همون پوشه دستور زیر رو اجرا کنید و خروجی رو اینجا بزارید
ls -l
فکر نمی کنم مشکل از puty باشه.
دقیقا یادم نیست چطور بود فقط همین یادمه که با اجرای برنامه سرور تونستم وصل بشم
drwxr-xr-x 10 root root 4096 Apr 6 08:16 data
-rw-r--r-- 1 root root 901 Mar 31 13:16 generatedServer.cfg
-rw-r--r-- 1 root root 862 Jul 31 2011 storage.cfg
-rw-r--r-- 1 root root 837198 Jul 31 2011 teeworlds
-rwxr-xr-x 1 root root 395891 Jul 31 2011 teeworlds_srv
آها ببخشید من اصلا حواسم نبود.
به اول دستور نقطه و اسلش اضافه كنيد. اين جوري
./teeworlds_srv -f generatedServer.cfg
ویرایش شد
سرور اجرا شد از کمک های شما ممنونم ولی سرور تو لیست سرور ها نمایش داده نمیشه.
اگه تو کامپیوتر خودم بود فایر وال رو می بستم تا نمایش بده ولی نمیدونم تو لینوکس چیکار کنم.
چطوری یه برنامه در حال اجرا رو ببندم؟
با وارد کردن ip سرور می تونید بهش وصل بشید؟
احتمالا برای وارد شدن به لیست سرورها باید کار خاصی انجام بدید.
اگه برنامه در حال اجرا در پس زمینهاس مثل دانلود wget با کلیدهای Ctrl+C می تونید اون رو ببندید
ولی اگه برنامه تو پیش زمینه اجرا می شه باید یا از killall به همراه نام فایل اجرایی استفاده کنید مثلا
killall teeworlds_srv
یا اینکه با ps aux | grep filename پیآیدی یا pid برنامه رو بدست بیارید و با دستور زیر اون رو به قتل برسونید
kill -9 pid
فایر وال رو خاموش کردم درست شد ولی چند مشکل دارم که عجیبو غریبه:
سرور بازی بعد چند ساعت خود به خود کنسل میشه!
تو سرور vote گزاشتم برای تعویض مپ وقتی vote pass شد سرور خود به خود کنسل شد.
دومین مشکل هم اینکه وقتی میخوام xxlddrace ران کنم با این پیغام مواجه میشم:
[root@srv6641 tee1]# ./XXLDDRace64-Server_32 -f generatedServer.cfg
./XXLDDRace64-Server_32: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./XXLDDRace64-Server_32)
GLIB رو چطوری آپدیت کنم؟
احتمالا برنامه باگی چیزی داره در هر صورت باید یه پیغام خطا بده اگه اون پیام باشه می شه یه کاری کرد.
ظاهرا GLIB اصلا نصب نیست. بسته به توزیع لینوکسی که دارید ممکنه تو مخازن باشه و براحتی نصب بشه و ممکن هم هست که تو مخازن نباشه و مجبور باشید که اون رو از سورس کامپایل کنید که در اون صورت وابستگیها ممکنه کار رو سخت کنند.
تو کجاست و چطوری نصب کنم؟
-
مشکل از رم نیست؟ که خود به خود سرور اف میشه؟
فکر نمی کنم مشکل از رم باشه.
رم سرور چه قدره؟ توزیعش دیبانه یا CentOS؟
256 mb,
centOS,
وقتی putty رو میبندم سرور اف میشه!
کتاب خونه های c++ رو چطوری آپدیت کنم؟ +ddrace هم خواستم ران کنم همین ارور رو داد.
mehrankhanhoy
09-05-2012, 20:56
دوستان برای -- کردن چه لینوکسی خوبه ؟ من red hat دارم خوبه ؟ :13:
برای اینکه بعد از بستن putty سرور بازی بسته نشه از nohup استفاده کنید.
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کار کردن با خط فرمان لینوکس می تونه تجربه ای پر از یادگیری باشه به شرطی که شما بتونی طریقه یاد گرفتن کار باهاش رو یاد بگیرید. شما اگه به هر مشکلی بر خوردید نمی تونید سریع برید از کس دیگه ای بپرسید. اگه بتونید توی گوگل مشکل رو سرچ کنید خیلی سریع تر به نتیجه می رسید مخصوصا اگه بتونید به انگلیسی سرچ کنید مثلا اگه توی گوگل سرچ کنید How to keep program running after closing" ssh session توی اولین نتیجه می بینید که یه نفر قبلا همین سوال رو پرسیده و جواب گرفته.
البته یه راه حل بهتر استفاده از screen هست که کارش فراتر حل این مشکله و من به شما توصیه نمی کنم.
vBulletin , Copyright ©2000-2025, Jelsoft Enterprises Ltd.