লিনাক্সে কেন এতগুলি / দেব / টিটি আছে?


27

উবুন্টু 10.04 এ, আমি যদি / dev এর অধীনে চেক করি তবে 50 টিরও বেশি টিটি রয়েছে। tty0, tty1, tty2 ....

আমি বুঝতে পেরেছি tty কনসোল ইনপুট / আউটপুট জন্য একটি অক্ষর ডিভাইস।

  1. কিন্তু কেন তাদের অনেক আছে? এটা কি পুলের মতো কিছু?

  2. এবং / dev / pts / 0, 1, 2 ..., / dev / tty এর মধ্যে পার্থক্য কী?

  3. যদি আমি একটি টার্মিনাল খুলি, নতুন নম্বরটি / dev / pts এর অধীনে তৈরি হবে। তবে আমি জানি না কখন / দেব / টিটি? ব্যবহৃত হয়.

    এমনকি যদি আমি একটি এসএসএইচ সংযোগ তৈরি করি তবে / dev / tty গুলি এর সংখ্যা একই।

    এবং আমি যদি না

    cat /dev/tty0
    

    এবং কীবোর্ডে কিছু টাইপ করুন, আমি একই ফলাফল খুঁজে পাই। ইহা কি জন্য ঘটিতেছে?


উত্তর:


25

Ttys কেবল ইনপুট / আউটপুট ডিভাইস নয়। তারা একটি সেশনের নিয়ন্ত্রক টার্মিনাল, যেমন সিগন্যাল প্রেরণের মতো (সিটিআরএল + সি) অভিনয় করার একটি বিশেষ কাজও করে। / dev / ttyNN হ'ল ভার্চুয়াল কনসোলগুলি, যা মনিটরে পুরো স্ক্রিন প্রদর্শন করে।

টার্মিনালগুলি / dev / tty1 থেকে শুরু হয়। আপনি এই কনসোলগুলিতে স্যুইচ করতে পারেন, সাধারণত, Ctrl + Alt + Fn কী টিপুন।

যেমন Ctrl + Alt + F1 আপনাকে প্রথম ভার্চুয়াল টার্মিনালে নিয়ে যায়। আজকাল, বেশিরভাগ লিনাক্স বিতরণ tty1 থেকে এক্স সার্ভার চালায়। সুতরাং, Ctrl + Alt + F1 টিপে কোনও প্রভাব ফেলতে পারে না।

$ ps ax | grep Xorg | grep -v grep
 1504 tty1     Ss+   44:57 /usr/bin/Xorg :0 -background none -verbose -auth /var/run/gdm/auth-for-gdm-rfsWyA/database -nolisten tcp vt1

Ctrl + Alt + F2 আপনাকে দ্বিতীয় টার্মিনালে নিয়ে যাবে। সাধারণত বিতরণগুলি ভার্চুয়াল টার্মিনালে একটি লগইন প্রোগ্রাম (অ্যাজেটি) চালায়।

$ ps ax | grep tty2 | grep -v grep
31865 tty2     Ss+    0:00 /sbin/agetty tty2 38400

লগইন প্রোগ্রামগুলি আপনাকে লগইন প্রম্পট সরবরাহ করে এবং আপনাকে ব্যবহারকারীর নাম / পাসওয়ার্ড দিয়ে লগইন করতে দেয়। Init স্ক্রিপ্টগুলি স্থির করে, যেখানে সমস্ত লগইন প্রোগ্রামটি চালিত হবে। সুতরাং এর উপর নির্ভর করে আপনি লগইন প্রম্পটটি দেখতে বা দেখতে পাচ্ছেন না, tty9 বলুন। আপনার জিইউআই ইন্টারফেসে ফিরে যেতে Ctrl + Alt + F1 টিপুন (উপরের উদাহরণস্বরূপ আউটপুট হিসাবে)।

/ dev / tty0 একটি বিশেষ ডিভাইস, যা বর্তমান টার্মিনালের দিকে নির্দেশ করে। সুতরাং, আপনি এটি যে কোনও স্থান থেকে (যে কোনও ভার্চুয়াল কনসোল) চালিয়ে যান না কেন, tty0 তে / লেখা থেকে যে কোনও কিছু পড়ে আপনার বর্তমান টার্মিনালে যায়।

'পিএস এক্স' এর দ্বিতীয় কলামটিও প্রোগ্রামটির নিয়ন্ত্রণকারী টার্মিনাল দেয়। কিছু প্রোগ্রামের জন্য, যেমন ডিমনস, আপনি দেখতে পাবেন যে কলামটি '?', যার অর্থ তারা টার্মিনালের সাথে আবদ্ধ নয়।

/ dev / pts / 0 ইত্যাদি হল psuedo- টার্মিনাল ডিভাইস, যা সিস্টেম ডিসপ্লেতে সংযুক্ত নয়। উদাহরণস্বরূপ, টার্মিনালটি আপনি যখন জিনোম-টার্মিনাল বা অন্য কোনও জিইউআই টার্মিনাল খোলেন তখন পাবেন। এগুলি ক্লায়েন্ট-সার্ভার ভিত্তিক পদ্ধতির যেখানে ক্লায়েন্ট সাইডটি ব্যাশের মতো প্রোগ্রামগুলিতে রফতানি হবে। সিউডো টার্মিনালে প্রোগ্রামের মাধ্যমে প্রেরিত ডেটাগুলি 'সার্ভার' সাইডে প্রেরণ করা হয় (যা সাধারণত জিনোম-টার্মিনালের মতো অন্য কোনও প্রোগ্রাম দ্বারা পর্যবেক্ষণ করা হয়)। নিয়ন্ত্রণের প্রক্রিয়া (সার্ভার সাইড) নির্ধারণ করে যে টার্মিনালে কী প্রেরণ করা দরকার যা শেষ পর্যন্ত ক্লায়েন্টের দ্বারা দেখা যাবে। এই ডিভাইসগুলি আপনাকে আপনার সিস্টেমে কোনও সীমা ছাড়াই একাধিক 'জিইউআই টার্মিনাল' খুলতে সহায়তা করে, তবুও একই পুরানো টার্মিনাল যেমন নিয়ন্ত্রণ (আইওকিটিএল (), রঙিন সেটিং, প্রেরণ সংকেত [সিটিআরএল + সি] ইত্যাদি) সরবরাহ করে।


2
এখানে এটি জিজ্ঞাসা করা ছাড়া এটি কীভাবে জানা উচিত? কিছু মানুষ পৃষ্ঠা?
n611x007

1
@ n611x007 - man /dev/ptsএকটি ভালো শুরু, এছাড়াও রয়েছে man termios- দয়া করে মনে রাখবেন ক্লায়েন্ট / সার্ভার ptys মধ্যে দ্বিমুখী হয় ptm এবং পয়েন্ট - যেখানে জিনোম-টার্মিনাল, অথবা xterm মত একটি ভার্চুয়াল টার্মিনাল সাধারণত মাস্টার এবং ব্যাশ মত একটি শেল, ক্রীতদাস সাথে সংযুক্ত করা হয় ।
ওল্ফগারপো

আমার সিস্টেমে /dev/ttyবর্তমান নিয়ন্ত্রণকারী টার্মিনালটি রয়েছে /dev/tty0তবে /dev/tty1লিনাক্স কেএমএসকনটি কী তা আমি জানি না । এবং /dev/tty7এক্স সার্ভার।
সিএমসিডিগ্রাগনকাই

এটি যদিও প্রশ্নের উত্তর দেয় না। ডিহি যেমন মন্তব্য করেছে, সেখানে /৪ / ডিভ / টিটিএন ডিভাইস রয়েছে। 1-8 হ'ল ভার্চুয়াল কনসোল। ptys পৃথক, / dev / pts এর অধীনে। কোন সিস্টেমে বলুন, / dev / tty30 কখন ব্যবহার করা যায় এবং কীভাবে?
অ্যান্ড্রু ম্যাকগুইনেস

1

আমি কেবল এই ধরণের জিনিসের সম্পর্কগুলি পরিষ্কার করতে চাই।

প্রথমত, / dev / tty প্রক্রিয়া স্তরে রয়েছে, এটি ttyn (tty1, tty2 , ...), ttySn (ttyS0, ttyS1), pty (pts / 0, pts / 1) এবং অন্য কিছু হতে পারে।

/ dev / tty0 হ'ল বর্তমান ( পূর্বাভাস ) ভার্চুয়াল কনসোলের একটি উপনাম, সুতরাং এটি tty1, tty2, এবং আরও হতে পারে। লক্ষ্য করুন যে ttyS0 একটি উপাধি নয়; এটি প্রথম সিরিয়াল বন্দর।

/ dev / কনসোল হল সিস্টেম কনসোল, এটি ডিফল্ট হিসাবে / dev / tty0 এ নির্দেশ করে। এটি ttyn, ttySn, ttyUSBn, lpn ইত্যাদি হতে পারে।

মোটামুটি, / dev / tty> / dev / cosole> / dev / tty0


এটি কি কোথাও একটি উদ্ধৃতি, এটির জন্য একটি রেফারেন্স আছে? আকর্ষণীয় পড়ার জন্য তৈরি করতে পারে
Xen2050

@ Xen2050 না, তবে আশা করি এই সহায়ক tldp.org/HOWTO/Remote-Serial-Console-HOWTO/…
ফিরো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.