আমি কীভাবে দূরবর্তী টার্মিনাল উইন্ডোটি দেখতে পারি?


8

আমি একটি সক্রিয় টার্মিনাল উইন্ডোটি একটি সেন্টোস 7 সার্ভারে স্ক্রিপ্ট চালিয়ে এর আগে অফিস থেকে বের হয়েছি। এখন আমি বাসা থেকে এসএসএইচিং করেছি এবং আমি কোথায় দেখতে পেলাম তা দেখতে চাই। এটা কি সম্ভব? আমি কি আবার এখান থেকে একই টার্মিনাল উইন্ডোতে যোগ দিতে পারি?


সম্ভাব্য সদৃশ: unix.stackexchange.com/questions/367370/…
জাকুজে

আমি নীচের সমস্ত উত্তরের সাথে টমেট.আইও যুক্ত করতে চাই
ওয়েবকনাজেড

একটি বিকল্প হ'ল: strace -e write -p 12345(আপনার আগ্রহী প্রক্রিয়াটির পিডের বিকল্প দিন)। আরেকটি বিকল্প হ'ল: strace -e read -p 12345(টার্মিনাল এমুলেটরের পিড বিকল্পযুক্ত)। নীতিগতভাবে এটি ptraceএকইভাবে তথ্য সংগ্রহ করার জন্য সিস্টেম কল ব্যবহার করার জন্য একটি প্রোগ্রাম straceলিখতে এবং এটি সরাসরি নিজস্ব টার্মিনালে লিখতে সম্ভব হবে। আমি জানি না যে এই জাতীয় প্রোগ্রাম উপস্থিত রয়েছে কিনা তবে এটি আপনার প্রশ্নের মধ্যে উল্লিখিত প্রয়োজনীয়তাগুলি কভার করবে।
ক্যাস্পারড

একটি সম্ভাব্য উপায়, টার্গেট কম্পিউটারে আরপিসি (রিমোট পদ্ধতি কল) সক্ষম করুন তারপরে আপনি স্বতন্ত্র উইন্ডোজ সহ স্ক্রিনে (দূরবর্তীভাবে) সংযোগ স্থাপন করতে এবং নিয়ন্ত্রণ করতে পারবেন। দ্রষ্টব্য: এটি একটি দুর্বলতা উন্মুক্ত করে তাই RPC হয়ে গেলে অবশ্যই অক্ষম করে নিন।
ব্যবহারকারী 362929249

উত্তর:


14

@ সভেন যেমন উল্লেখ করেছেন, সর্বোত্তম বিকল্পটি ব্যবহার করা screenবা tmux। এগুলি হ'ল "টার্মিনাল মাল্টিপ্লেক্সারস" হিসাবে পরিচিত। এগুলি আপনাকে শেল সেশন তৈরি করার অনুমতি দেয় যা প্রকৃত লগইন থেকে সংযুক্ত এবং আনথচ করা যেতে পারে। এই সরঞ্জামগুলি কেবলমাত্র অন্য টার্মিনাল থেকে আপনার কাজ যাচাই করার জন্য দরকারী নয়, তবে অন্য ব্যবহারকারীর সাথে আপনার সেশন ভাগ করে নেওয়ার এবং আপনার ইন্টারনেট সংযোগটি আলগা করে রাখলে আপনার কমান্ডটি থামবে না তা নিশ্চিত করার সাথে অন্যান্য বৈশিষ্ট্য রয়েছে। আপনি যদি অনুসন্ধান করে থাকেন তবে আপনি screen"জিএনইউ স্ক্রিন" অনুসন্ধানের চেষ্টা করতে পারেন। এই দুটি সরঞ্জামই বেশিরভাগ লিনাক্স সিস্টেমে উপলব্ধ।

সাধারণত, আপনি অধিবেশন শুরু করবেন, এবং তারপরে সেই অধিবেশনটির অভ্যন্তরে আপনার আদেশটি কার্যকর করবেন ute তবে, আপনি যদি ইতিমধ্যে কমান্ডটি শুরু করে থাকেন, আপনি চলমান কমান্ডটিকে স্ক্রিন সেশনে স্থানান্তরিত করতে কোনও নিবন্ধ সন্ধান করতে পারেন। যাইহোক, আমি কোনও গুরুত্বপূর্ণ বিষয় নিয়ে প্রথমবার চেষ্টা করার পরামর্শ দেব না। এই প্রশ্নটি কিছুটা কার্যকর হতে পারে:

ইতিমধ্যে চলমান প্রক্রিয়াটিকে স্ক্রিনে সরানো হচ্ছে

আপনি যদি কেবল প্রক্রিয়াটি চলছে কিনা তা পরীক্ষা করতে চান তবে আমার প্রিয় সরঞ্জামটি স্ট্রেস হবে। এই সরঞ্জামটি আপনাকে কোনও প্রক্রিয়া দ্বারা তৈরি প্রতিটি কার্নেল কল দেখতে দেয়। আউটপুটটি বুঝতে কিছু দক্ষতা নিতে পারে, তবে প্রক্রিয়াটি চলমান থাকলে কমপক্ষে আপনাকে একটি ধারণা দেওয়া উচিত এবং যদি আপনি যথেষ্ট পরিমাণে ঘড়ি দেখেন তবে ফাইলগুলির নামগুলি এটি খোলার সম্ভাবনা রয়েছে। এটি করার জন্য, প্রথমে পিআইডি সন্ধান করুন, সম্ভবত অনুসন্ধানের মাধ্যমে ps aux|grep yourcommandএবং তারপরে:

strace -fp YOUR_PID

আপনি সেখান থেকে বেরিয়ে আসতে পারেন। সে। এটি আপনাকে পুনরায় সংযুক্ত করার মঞ্জুরি দেয় না, তবে আপনি কেবল এটি কী করছে তা জানতে চাইলে তা যথেষ্ট হওয়া উচিত।


এটি আপনাকে পুনরায় সংযুক্ত করার অনুমতি দেয় না কেন?
এইচএসমাল

@ এইচএসমেল আমি নিশ্চিত না যে আমি আপনার প্রশ্নটি বুঝতে পেরেছি। আপনি যদি স্ট্রেসের কথা উল্লেখ করছেন তবে সেই প্রোগ্রামটি আপনাকে কোনও টার্মিনাল দেয় না। এটি আপনাকে দেখায় যে কার্নেল কলগুলি করা হচ্ছে। অনেক সময়, যখন আমি সন্দেহ করি যে কোনও প্রক্রিয়াটি স্তব্ধ হয়ে গেছে তখন স্ট্রেস আমাকে এই মুহুর্তে কাজ করছে এমন সঠিক ফাইলগুলি দেখিয়েছে, তাই আমি জানি কোথায় এটি রয়েছে এবং এটি স্থিত নয়।
ডেকেিং

এটি আমার দ্বারা একটি মিস্রেড ছিল আমি ভেবেছিলাম আপনি এটিতে স্ট্রেস পুনরায় সংযুক্ত করতে পারবেন না, তবে আপনি এর অর্থ একটি টার্মিনাল পুনরায় সংযুক্ত করতে চান।
এইচএসমাল

9

এটি করার একটি উপায়: টিএমইউএক্স

বেশিরভাগ উত্তর যেমন ইতিমধ্যে চিহ্নিত হয়েছে - যদি বিদ্যমান এসএসএইচ সেশনে থাকে - আপনি কমান্ডটি দিয়ে tmux(বা screen) ব্যবহার করেন

tmux

আপনি এখন একটি নতুন বাশ সেশনে আছেন, যাতে আপনি আপনার প্রোগ্রাম / কমান্ড শুরু করতে পারেন। আপনি যেকোন সময় এটি বন্ধ করতে পারেন (তবে উইন্ডোটি বন্ধ করে দিয়ে সিটিআরএল + ডি দিয়ে নয়) এবং একই মেশিনে একই ব্যবহারকারীর সাথে একটি এসএসএইচ সংযোগ স্থাপন করে এবং কমান্ডটি লিখে এটিতে ফিরে আসতে পারেন

tmux attach

নামগুলি দিয়ে আপনি একাধিক tmux সেশনও রাখতে পারেন

tmux new -s myname

আপনি এর tmuxসাথে আপনার ব্যবহারকারীর জন্য সমস্ত ওপেন সেশনের একটি তালিকা দেখতে পারেন

tmux ls

এবং এর সাথে একটি নামযুক্ত tmuxঅধিবেশন সংযুক্ত করুন

tmux a -t myname

tmux cheat sheet এখানে একটি বিস্তৃত সন্ধান করুন

একটি চলমান প্রোগ্রামের জন্য

এখনও অবধি উত্তরগুলি এই বিষয়ে সচেতন বলে মনে হচ্ছে না যে আপনি ইতিমধ্যে চলমান প্রক্রিয়াটিকে অন্যটিতে নিয়ে যেতে পারেন tmux/ screenযেমন এই উত্তরটি উল্লেখ করেছে। যে প্রোগ্রামটি কাজ করে তাকে ডাকা হয় reptyrএবং উবুন্টু / ডেবিয়ান এর অধীনে আপনি এটিকে একটি সাধারণ মাধ্যমে ইনস্টল করতে পারেন

sudo apt-get install reptyr

এর পরে, আপনার চলমান প্রোগ্রামের প্রক্রিয়া আইডিটি সন্ধান করুন (উদাহরণস্বরূপ topবা এর সাথে htop), একটি tmuxসেশন এবং একটি সহজ শুরু করুন

reptyr PID

আপনার tmuxবাশ সেশনে চলমান প্রক্রিয়াটিকে পুনরায় সংযুক্ত করবে ।


5

ভবিষ্যতে, আপনি ব্যবহার করতে পারেন screenবা tmuxএবং তারপর একটি চলমান অধিবেশন পুনরায় সংযুক্ত করতে পারেন।


3

আমি বাইবু ব্যবহার করছি এবং আমি অবিশ্বাস্যভাবে শক্তিশালী মনে করি। ব্যোবু একটি জিপিএলভি 3 ওপেন সোর্স টেক্সট-ভিত্তিক উইন্ডো ম্যানেজার এবং টার্মিনাল মাল্টিপ্লেজার।

সুতরাং আপনি কেবল "বাইবো" টাইপ করে একটি বাইবু সেশনটি খুলতে পারেন। এবং তারপরে আপনি Ctrl + F2 দিয়ে নতুন ট্যাব তৈরি করতে পারেন এবং পিছনের জন্য Ctrl + F3, এগিয়ে জন্য Ctrl + F4 সহ ট্যাবগুলির মধ্যে স্থানান্তর করতে পারেন। আপনি Ctrl + F6 এর সাহায্যে একটি ট্যাব বন্ধ করতে পারেন বা Shift + F6 এর সাথে একটি সেশন থেকে আলাদা করতে পারেন। আপনি পরে আবার "বাইবু" টাইপ করে সেশনে পুনরায় সংযুক্ত হন।

বাইবুু অন্যান্য অভিনব বৈশিষ্ট্যের মধ্যে উল্লম্ব এবং অনুভূমিক বিভাজন, পূর্ণ স্ক্রিন সমর্থন করে। এটি উবুন্টু / ডেবিয়ান, সেন্টস / ফেডোরা / রেডহ্যাট এবং ফ্রিবিএসডি-তে উপলব্ধ।


বাইবুুকে একটি টার্মিনাল মাল্টিপ্লেক্সার কল করতে কিছুটা বিভ্রান্তিকর বলে মনে হচ্ছে। এটি সত্যিই কেবল একটি ফ্রন্ট-এন্ড tmuxএবং screenএটি অনেকেরই বাক্সের বাইরে করার চেয়ে আরও ভাল ব্যবহারকারী-অভিজ্ঞতা সরবরাহ করে।
বি লেয়ার

2

এটি ইতিমধ্যে চিহ্নিত করা হয়েছিল, আমি ব্যবহার tmuxবা screenভবিষ্যতে ব্যবহারের পরামর্শ দিচ্ছি , তবে আপনি যদি আগেই এটি সম্পর্কে ভেবে থাকেন তবে তা কেবল কার্যকর হয়।

আমি আপনার পরিস্থিতিতে বেশ কয়েকবার ছিলাম। আপনি যে টার্মিনালটি চালাচ্ছেন তা যদি আপনার অফিসের ডেস্কটপ পিসিতে থাকে তবে আপনি আপনার পিসিতে এসএসএইচ করতে পারেন এবং একটি ভিএনসি সার্ভার শুরু করতে পারেন। এইভাবে, আপনি কমপক্ষে উন্মুক্ত টার্মিনালটি পরীক্ষা করতে পারেন।


0

সবাই উল্লিখিত হিসাবে, tmux ব্যবহার করা যেতে পারে। যেখানে আপনি একাধিক ব্যক্তির সাথে স্ক্রিনটি ভাগ করতে চান সেখানে পর্দা কার্যকর নয়।

সর্বোপরি আমি প্রত্যেককে https://tmate.io/ এমনকি স্থানীয়ম্যাচনে অস্থায়ী অ্যাক্সেস দেওয়ার চেষ্টা করার পরামর্শ দিচ্ছি। টমেট উপরের সমস্তটি সমর্থন করে :)

https://tmate.io/

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.