2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
अयं लेखः शङ्घाई कृत्रिमबुद्धिप्रयोगशालाद्वारा आयोजितस्य तृतीयस्य विद्वान् बृहत्-परिमाणस्य आदर्श-अभ्यास-शिबिरस्य टिप्पणीः अस्ति यत् केवलं व्यक्तिगत-शिक्षण-सहायक-सन्दर्भार्थम् अस्ति ।ट्यूटोरियल मूल लिंक。
पञ्जीकरणार्थं कृपया WeChat इत्यत्र "The Third Scholar Model Practical Camp" इति अन्वेषणं कुर्वन्तु ।
इयं टिप्पणी मूलपाठ्यक्रमस्य आधारेण परिवर्तिता व्यक्तिगतरूपेण टिप्पणीकृता टिप्पणी अस्ति ।
😀Hello大家好,欢迎来到विद्वान् बृहत् आदर्शव्यावहारिकशिबिरम्, अत्र प्रथमवारं व्यावहारिकशिबिरे भागं गृह्णन्तः छात्राणां कृते, तथा च विविध-उद्योगानाम् छात्राणां कृते येषां कृते लिनक्स-विषये मूलभूत-ज्ञानं नास्ति, अत्र वयं भवन्तं तस्य उपयोगं कथं कर्तव्यम् इति शिक्षयामः |InternStudio विकास यन्त्र, तथा केचन मूलभूतविषयेषु निपुणतालिनक्स ज्ञान , येन सर्वेषां कृते निम्नलिखितपाठ्यक्रमेषु कुतः आरम्भः करणीयः इति कल्पना न भविष्यति इति आशासे सर्वेषां कृते सहायकं भविष्यति। अत्र स्तरकार्येषु वयं भवद्भ्यः केचन स्तरकार्यं सज्जीकृतवन्तः यदा भवान् आवश्यकानि स्तरकार्यं सम्पन्नं करोति तथा च चेक इन करोति तदा भवान् वर्तमानस्तरस्य कम्प्यूटिंगशक्तिपुरस्कारं प्राप्स्यति।आरभामः !
InternStudio 是大模型时代下的云端算力平台。基于 InternLM 组织下的诸多算法库支持,为开发者提供开箱即用的大语言模型微调环境、工具、数据集,并完美兼容 🤗 HugginFace 开源生态。
यदि भवान् InternStudio विषये अधिकं ज्ञातुम् इच्छति तर्हि निम्नलिखितदस्तावेजान् पश्यतु: InternStudio
https://studio.intern-ai.org.cn/ .
प्रथमं InternStudio इत्यत्र प्रवेशार्थं उपरिष्टात् लिङ्क् उद्घाटयन्तु, भवन्तः स्वयमेव console interface -इत्यत्र कूर्दन्ति, यथा अधोलिखिते चित्रे दर्शितम् अस्ति ।
प्रत्येकस्य क्रमाङ्कस्य अनुरूपपृष्ठानां कार्याणि वदामि :
उपर्युक्तं InternStudio मञ्चस्य संक्षिप्तपरिचयः अस्ति यत् वयं गृहपृष्ठं गत्वा " इति क्लिक् कुर्मः ।विकासयन्त्रं रचयन्तु”
अत्र वयं सृजितुं चिनोमःव्यक्तिगत विकास यन्त्र, नामपरीक्षा,कुडासंस्करणं १२.२, ९.संसाधनविनियोगः10% चिनोतु पूर्वनिर्धारितकालः सुष्ठु अस्ति ।
सृष्टेः समाप्तेः अनन्तरं इविकास यन्त्रभवान् इदानीं एव निर्मितं विकासयन्त्रं अन्तरफलके द्रष्टुं शक्नोति विकासयन्त्रं प्रविष्टुं क्लिक् कुर्वन्तु ।
विकासयन्त्रे प्रवेशानन्तरं विकासयन्त्रस्य मुख्यपृष्ठं द्रष्टुं शक्नुवन्ति विकासयन्त्रे त्रयः मोडाः सन्ति ।JupyterLab, टर्मिनल् तथा VScode
इत्यस्मिन्:
उपरि वयं परिचयं कृतवन्तःInternStudio मंच, तथा च विकासयन्त्रं कथं निर्मातव्यम् इति अस्मिन् खण्डे वयं किम् इति अवगन्तुं इच्छामःSSH、दूरस्थसंयोजनस्य उपयोगः किमर्थम्, SSH इत्यस्य उपयोगः कथं भवतिदूरस्थसंयोजनम्विकासयन्त्रं किम्पोर्ट मैपिंगकथं प्रवर्तेत इति चपोर्ट मैपिंग。
SSHपूर्णं नाम Secure Shell इति, यत् चीनीभाषायां secure shell इति अनुवादितम् अस्ति It is aसंजालसुरक्षाप्रोटोकॉल , एन्क्रिप्शन-प्रमाणीकरण-तन्त्राणां माध्यमेन सुरक्षित-प्रवेशं सञ्चिका-स्थानांतरणं च अन्य-सेवानां च साक्षात्कारं कुर्वन्ति । SSH प्रोटोकॉल असुरक्षितजालवातावरणे संजालदत्तांशस्य गोपनं प्रमाणीकरणं च कृत्वा सुरक्षितजालसेवाः प्रदाति ।
SSH इति (C/S architecture) द्वारासर्वरःतथाग्राहिकासुरक्षितं SSH चैनलं स्थापयितुं द्वयोः पक्षयोः प्रथमं TCP संयोजनं स्थापयितुं, ततः संस्करणसङ्ख्यां, प्रयुक्तानि विविधानि एल्गोरिदम् च वार्तालापं कृत्वा, समानं जनयितुं आवश्यकम्सत्रकुंजी तदनन्तरं सममितगुप्तीकरणार्थं प्रयुक्तम् । उपयोक्तृप्रमाणीकरणं सम्पन्नं कृत्वा पक्षद्वयं दत्तांशविनिमयार्थं सत्रं स्थापयितुं शक्नोति ।
ततः अनन्तरं अभ्यासे वयं करिष्यामःSSH कुञ्जीः विन्यस्यताम्, विन्यासकुंजी अस्ति यत् यदा वयं दूरस्थरूपेण विकासयन्त्रेण सह सम्बद्धाः भवेम तदा अस्माभिः कूटशब्दं पुनः पुनः प्रविष्टुं न प्रयोजनम्, तर्हिदूरस्थरूपेण किमर्थं संयोजयितुं ??
दूरस्थसंयोजनस्य लाभः अस्ति यत् यदि भवान् दूरस्थकार्यालयस्य उपयोगं करोति तर्हि SSH मार्गेण विकासयन्त्रेण सह दूरस्थरूपेण संयोजितुं शक्नोति, येन भवान् स्थानीयरूपेण विकासं कर्तुं शक्नोति । तथा च यदि भवान् किञ्चित् स्थानीयसङ्केतं चालयितुं प्रवृत्तः अस्ति तथा च वातावरणं नास्ति तर्हि दूरस्थसंयोजनम् अतीव आवश्यकम् अस्ति ।
प्रथमं वयं SSH remote connection कृते password प्रविष्टुं विधिं उपयुञ्ज्महे पश्चात् वयं password-free login कथं विन्यस्तं कर्तव्यमिति वदामः ।
विकासयन्त्रस्य निर्माणं सम्पन्नं कृत्वा अस्माभिः अस्माकं सङ्गणकस्य powerShell टर्मिनल् उद्घाट्य उपयोगः करणीयःWin+R run box उद्घाटयितुं, powerShell प्रविष्टुं, powerShell टर्मिनल् उद्घाटयितुं च shortcut कीलस्य उपयोगं कुर्वन्तु । (यदि भवान् Linux अथवा Mac ऑपरेटिंग् सिस्टम् चालयति तर्हि निम्नलिखितपदार्थाः समानाः सन्ति)
वयं विकासयन्त्रमञ्चं प्रति आगत्य प्रविशामःविकास यन्त्रपृष्ठे अस्माभिः निर्मितं विकासयन्त्रं अन्विष्य क्लिक् कुर्वन्तुSSH संयोजनम्。
ततः प्रतिलिपिं कुर्वन्तुलॉगिन् आदेशः, 37367 अत्र विकासयन्त्रेण प्रयुक्तः SSH पोर्ट् अस्ति सामान्यतया, पोर्ट् 22 उपयुज्यते, एतत् पोर्ट् सङ्ख्यां विना, भवान् SSH इत्यनेन सह सम्बद्धः कर्तुं न शक्नोति, तथा च सर्वेषां पोर्ट् भिन्नः अस्ति, अतः यदि भवान् विकासयन्त्रेण सह सम्बद्धः अस्ति , भवद्भिः पश्यितव्यं यत् पोर्ट् गलत् अस्ति वा इति ।
प्रतिलिपिकृतं आदेशं powershell मध्ये चिनोतु तथा Enter नुदन्तु अत्र वयं login आदेशस्य अधः गुप्तशब्दं प्रतिलिख्य टर्मिनल् मध्ये चिनोतु ।ध्यानं कुर्वन्तु यत् गुप्तशब्दस्य प्रतिलिपिं कृत्वा, तत् चिनोतुम् राइट्-क्लिक् कुर्वन्तु केषुचित् सङ्गणकेषु चिनोतुः शेल् शॉर्टकट् कीलम् अस्तिshift+ins
, अत्र चिनोति गुप्तशब्दः न प्रदर्शितः भविष्यति, एतत् सामान्यम् अस्ति ।
अन्ते Enter नुदन्तु ततः सफलतां सूचयति निम्नलिखितसामग्री दृश्यते ।
विकासयन्त्रेण सह सम्बद्धस्य अनन्तरं वयं उपयोक्तुं शक्नुमःhostname
विकासयन्त्रनाम द्रष्टुं, उपयोगं कुर्वन्तुuname -a
विकासयन्त्रस्य कर्नेल् सूचनां द्रष्टुं, उपयोगं कुर्वन्तुlsb_release -a
विकासयन्त्रसंस्करणसूचनाः द्रष्टुं, उपयोगं कुर्वन्तुnvidia-smi
GPU सूचनां पश्यन्तु यदि भवान् दूरस्थसंयोजनात् निर्गन्तुं इच्छति तर्हि द्विवारं प्रविशतु ।exit
इति ।
परन्तु यदा वयं विकासं कुर्मः अध्ययनं च कुर्मः तदा प्रतिवारं दूरस्थरूपेण गुप्तशब्दं प्रविष्टुं कष्टकरं भवति वयं गुप्तशब्दं प्रविष्टुं पदं त्यक्तुं SSH कीलं सेट् कर्तुं शक्नुमःश्श-कीगेन्कुञ्जीम् उत्पन्नं कर्तुं आदेशः
SSH कुञ्जी एकः सुरक्षितः सुलभः च प्रवेशप्रमाणीकरणविधिः अस्ति, यस्य उपयोगः SSH प्रोटोकॉलमध्ये प्रमाणीकरणाय, एन्क्रिप्टेड् संचाराय च भवति ।
श्श-कीगेन्RSA तथा DSA प्रमाणीकरणकुंजीद्वयं समर्थयति ।
सामान्यतया प्रयुक्ताः मापदण्डाः सन्ति : १.
अत्र वयं कीलं जनयितुं RSA एल्गोरिदम् उपयुञ्ज्महे, आदेशः अस्ति :
ssh-keygen -t rsa
आदेशं प्रविष्ट्वासर्वं मार्गं प्रविशतुतत् एव, अत्र कीलं पूर्वनिर्धारितरूपेण in उत्पद्यते~/.ssh/
निर्देशिकायाः अधः, .~
गृहनिर्देशिका इत्यर्थः, यदि विण्डोस् अस्ति तर्हि अस्तिC:Users{your_username}
.powerShell इत्यस्मिन् उपयोक्तुं शक्यतेGet-Content
उत्पन्नं कीलं द्रष्टुं आदेशः, यस्य उपयोगः कर्तुं शक्यते यदि एतत् Linux प्रचालनतन्त्रम् अस्तिcat
आदेशः।
ततः वयं development machine platform इत्यत्र आगत्य मुखपृष्ठे Configuration इति नुदामःSSH कीलम्, ततः क्लिक् कुर्वन्तुSSH सार्वजनिककुंजी योजयन्तु,
भवता अधुना एव उत्पन्नं कुञ्जी प्रतिलिख्य सार्वजनिककुंजीपेटिकायां चिनोतु नाम स्वयमेव ज्ञास्यति अन्ते, इदानीं योजयतु इति नुदन्तु, ततः SSH कुञ्जीविन्यासः पूर्णः भवति ।
SSH Key निर्माणं सम्पन्नं कृत्वा पुनः आरभतterminalदूरस्थरूपेण संयोजयन् गुप्तशब्दप्रवेशस्य सोपानं त्यक्तं भविष्यति ।
अवश्यं, भवान् SSH दूरस्थसंयोजनसॉफ्टवेयरं अपि उपयोक्तुं शक्नोति, यथा:पवनकाल、Xterminal प्रतीक्षतु। अत्र वयं दूरस्थसंयोजनाय VScode इत्यस्य उपयोगं कुर्मः VScode इत्यस्य उपयोगस्य लाभः अस्ति यत् एतत् कोड एडिटर अस्ति, यत् कोड् परिवर्तनस्य अन्यस्य च कार्याणां कृते अतीव सुविधाजनकम् अस्ति ।
यदि वयं VScode मध्ये दूरस्थरूपेण संयोजयितुम् इच्छामः तर्हि अस्माकं प्लग-इन्-समूहः अपि संस्थापनीयः अस्ति यत् भवान् VScode कथं संस्थाप्यते इति ऑनलाइन अन्वेष्टुं शक्नोति । (विकासयन्त्रे vscode एतत् प्लग-इन् अन्वेष्टुं न शक्नोति, परन्तु स्थानीयः vscode कर्तुं शक्नोति)
यदि भवान् VScode संस्थापितवान् तर्हि वामतः विस्तारपृष्ठे क्लिक् कृत्वा अन्वेषणपेटिकायां "SSH" इति प्रविष्टुं शक्नोति प्रथमं प्लग-इन् वयं संस्थापयितुम् इच्छामः ।
प्लग-इन् संस्थापनानन्तरं, पार्श्वपट्टिकायां दूरस्थसंयोजनचिह्नं नुदन्तु, SSH मध्ये "+" बटनं नुदन्तु, विकासयन्त्रस्य SSH संयोजनाय प्रवेश आदेशं योजयन्तु
वयं login आदेशं प्रतिलिख्य, ततः आदेशं pop-up विण्डो मध्ये चिनोमः, अन्ते Enter नुदामः:
पूर्वनिर्धारितविन्याससञ्चिका सम्यक् अस्ति अवश्यं, भवान् तत् अनुकूलितुं अपि शक्नोति विन्याससञ्चिकायाः विशिष्टा सामग्री निम्नलिखितम् अस्ति: (एतत् भवतः सर्वा दूरस्थसंयोजनसूचनाः समाविष्टाः सन्ति) ।
Host ssh.intern-ai.org.cn #主机ip也可以是域名
HostName ssh.intern-ai.org.cn #主机名
Port 37367 #主机的SSH端口
User root #登录SSH使用的用户
StrictHostKeyChecking no
UserKnownHostsFile /dev/null
यदि भवान् निम्नलिखितविन्यासविकल्पानां केचन स्वहस्तेन योजयितुम् इच्छति तर्हि उपर्युक्तस्वरूपानुसारं तत्सम्बद्धान् भागान् परिवर्तयितुं आवश्यकम् ।
यदि *
StrictHostKeyChecking
no
तथाUserKnownHostsFile
*/dev/null
अङ्गुलिचिह्नसत्यापनार्थं यत् पॉप-अप-विण्डो पॉप-अप भविष्यति तत् विलोपयन्तु:
StrictHostKeyChecking no
कठोर होस्ट् कीलपरीक्षणं अक्षमम् इति सूचयति । अस्य अर्थः अस्ति यत् नूतन-SSH-सर्वर-सङ्गतिं कुर्वन् सर्वरस्य होस्ट्-कुंजी कठोररूपेण सत्यापितं न भविष्यति, यत् निश्चितं सुरक्षा-जोखिमं जनयितुं शक्नोति ।
UserKnownHostsFile /dev/null
एतत् उपयोक्त्रेण ज्ञातां होस्ट् कीलसञ्चिकां /dev/null इति सेट् करोति, यत् मूलतः ज्ञातानां होस्ट् कीलानां रिकार्डिङ्ग्, उपयोगं च अवहेलयति ।परन्तु सामान्यसुरक्षाव्यवहारे कठोर होस्ट्-कुंजी-परीक्षणं मनमानारूपेण निष्क्रियं कर्तुं न अनुशंसितम् ।
ततः विकासयन्त्रेण सह दूरतः संयोजयितुं अधः दक्षिणकोणे दृश्यमाने प्रॉम्प्ट् विण्डो मध्ये "Connect" नुदन्तु ।
दूरस्थसंयोजनस्य समाप्तेः अनन्तरं भवान् उद्घाटयितुं पुटं चिन्वतु, यत् कार्यनिर्देशिका इति अपि वक्तुं शक्यते भवान् विकासयन्त्रे पुटं वा स्थानीयं वा चिन्वतु ।मेघचक्रम्。
यदा भवान् अग्रिमे समये दूरस्थं संयोजनं करोति तदा प्रथमसंयोजनस्य विकासयन्त्रसूचनाः द्रष्टुं केवलं vscode इत्यस्य दूरस्थसंयोजनं उद्घाटयितुं न प्रयोजनम्, यथाroot
यदा वयं प्रथमवारं विकासयन्त्रेण सह सम्बद्धाः भवेम तदा वयं उपयुञ्ज्महे इति तात्पर्यम्/root
कार्यसूची।
अधोलिखिते च चित्रे->
विकासयन्त्रं प्रविष्टस्य अनन्तरं भवद्भिः कार्यनिर्देशिकायाः पुनः चयनं करणीयम् इति सूचयति:
अधोलिखिते च चित्रे->
अन्तिमविकासयन्त्रेण चयनितकार्यनिर्देशिकायाः प्रवेशं सूचयति:
प्रत्येकं समये चयनिता कार्यनिर्देशिका विकासयन्त्रसूचनायाः अधः प्रदर्शिता भविष्यति: (अत्र lagent कृते अतिरिक्तकार्यनिर्देशिका अस्ति)
तदनन्तरं वयं कदा इति परिचयं करिष्यामःपोर्ट मैपिंग。
पोर्ट मैपिंग इयं जालप्रौद्योगिकी अस्ति या आन्तरिकजालस्य बाह्यजालस्य च मध्ये संचारं साकारयितुं बाह्यजालस्य कस्यापि पोर्टस्य आन्तरिकजालस्य तत्सम्बद्धे पोर्ट् प्रति नक्शाङ्कनं कर्तुं शक्नोति पोर्ट् मैपिङ्ग् इत्यस्य माध्यमेन इन्ट्रानेट् मध्ये सेवाः अथवा अनुप्रयोगाः बाह्यजालतः अभिगन्तुं शक्यन्ते येन सम्पूर्णे जालपुटे सुविधाजनकसञ्चारः प्राप्तुं शक्यते ।
अतः विकासयन्त्रस्य उपयोगं कुर्वन् अस्माभिः पोर्ट् मैपिङ्ग् किमर्थं कर्तव्यम् ?
यतः अनन्तरपाठ्यक्रमेषु वयं आदर्शान् आचरणं करिष्यामःजाल_प्रदर्शनम् परिनियोजनाभ्यासे अस्मिन् प्रक्रियायां भवन्तः जाल ui इत्यस्य अपूर्णभारस्य समस्यां सम्मुखीकुर्वन्ति इति संभावना वर्तते ।यतो हि विकासयन्त्रे Web IDE मध्ये web_demo चालयति समये विकासयन्त्रे http/https सेवां प्रत्यक्षतया अभिगन्तुं प्रॉक्सी समस्याः भवितुम् अर्हन्ति ।ui संसाधनम्न पूर्णतया भारितम्।
अतः एतस्याः समस्यायाः समाधानार्थं अस्माभिः web_demo चालितं संयोजनं पोर्ट् मैप् करणीयम्, तथा चबाह्यजाललिङ्काः अस्माकं स्थानीयहोस्ट् प्रति मैप् भवन्ति , एतस्य प्रॉक्सीसमस्यायाः समाधानार्थं वयं स्थानीयसंयोजनप्रवेशस्य उपयोगं कुर्मः । अधुना अभ्यासं कुर्मः।
प्रथमं आरेखस्य आधारेण विकासयन्त्र-पोर्ट-मानचित्रणं कथं कार्यं करोति इति अवगच्छामः :
अधः व्यावहारिकपदार्थाः सन्ति प्रथमं पोर्ट् मैपिंगं कथं कर्तव्यम् इति अवगच्छन्तु ।
ssh -p 37367 [email protected] -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyChecking=no
उपरिष्टाद् पोर्ट् मैपिंग आदेशः अस्ति पोर्ट् मैपिङ्ग् कर्तुं एतत् आदेशं चालयन्तु ।
व्यक्तिगत PC दूरतः विकासयन्त्रस्य एकमात्रं उजागरित-पोर्ट् 37367 -सङ्गणकं करिष्यति (एतत् SSH-काले उल्लिखितम् अस्ति, तथा च प्रत्येकस्य विकासयन्त्रस्य उजागरित-पोर्ट् भिन्नम् अस्ति), सुरङ्ग-विकल्पान् च सेट् करिष्यति उजागरिताः बन्दरगाहाः यातायातस्य अग्रे प्रेषणार्थं स्थानान्तरणस्थानकरूपेण कार्यं कुर्वन्ति ।
-C
: स्थानान्तरितदत्तांशस्य परिमाणं न्यूनीकर्तुं संपीडनं सक्षमं कुर्वन्तु।-N
: दूरस्थान् आदेशान् न निष्पादयति, केवलं सुरङ्गं स्थापयति ।-g
: दूरस्थ-होस्ट्-स्थानानि स्थानीयतया अग्रे प्रेषित-पोर्ट्-सङ्गतिं कर्तुं अनुमतिं ददातु ।यदा एषः SSH आदेशः व्यक्तिगत-PC मध्ये निष्पादितः भवति तदा SSH क्लायन्ट् स्थानीययन्त्रस्य पोर्ट् 7860 इत्यत्र श्रोष्यति ।
स्थानीय-पोर्ट् 7860 प्रति प्रेषितं यत्किमपि यातायातं SSH सुरङ्गेन दूरस्थसर्वरस्य 127.0.0.1-पतेः पोर्ट् 7860 प्रति अग्रे प्रेषितं भविष्यति ।
अस्य अर्थः अस्ति यत् विकासयन्त्रस्य एतत् पोर्ट् प्रत्यक्षतया बाह्यजालस्य सम्मुखं न भवति चेदपि वयम् अस्याः सुरङ्गस्य माध्यमेन दूरस्थसर्वरस्य सेवासु सुरक्षितरूपेण प्रवेशं कर्तुं शक्नुमः .
वयम् अद्यापि विकासयन्त्रस्य अन्तरफलकं गत्वा अस्माकं विकासयन्त्रं अन्विष्य क्लिक् कुर्मःकस्टम सेवाएँ, प्रथमादेशं प्रतिलिख्य, .
ssh -p 37367 [email protected] -CNg -L {本地机器_PORT}:127.0.0.1:{开发机_PORT} -o StrictHostKeyChecking=no
तस्मै आदेशस्य प्रत्येकभागस्य अर्थं परिचययामः ।
-p 37367
: 37367 कृते SSH संयोजनाय पोर्ट् निर्दिशति, यत् पूर्वं उक्तम् आसीत् ।[email protected]
: प्रयोगं सूचयति root
उपयोक्तृपरिचयः सम्बद्धः भवतिssh.intern-ai.org.cn
अयं गणः ।-CNg
:
-C
सामान्यतया संपीडनं सक्षमीकरणाय उपयुज्यते ।-N
दूरस्थ आदेशाः निष्पादिताः न भवन्ति, परन्तु पोर्ट् अग्रे प्रेषणार्थम् इत्यादिषु केवलं संयोजनानि स्थापितानि इति सूचयति ।-g
दूरस्थ-होस्ट्-स्थानीयरूपेण अग्रे प्रेषित-पोर्ट्-सङ्गतिं कर्तुं अनुमतिं ददातु ।-L {本地机器_PORT}:127.0.0.1:{开发机_PORT}
: इदं स्थानीययन्त्रस्य निर्दिष्टं पोर्ट् अग्रे प्रेषयितुं स्थानीय-पोर्ट् अग्रेषणं स्थापयितुं भवति (by {本地机器_PORT}
प्रतिनिधित्वं करोति) दूरस्थं होस्ट् प्रति (अत्र अर्थात्) अग्रे प्रेषितम् ।ssh.intern-ai.org.cn
)इत्यस्य 127.0.0.1
(अर्थात् स्थानीयं लूपबैक् पता) तथा निर्दिष्टं विकासयन्त्रपोर्टं (द्वारा परिभाषितम्{开发机_PORT}
व्यक्त)।-o StrictHostKeyChecking=no
: प्रथमवारं संयोजयन् अज्ञात-होस्ट्-कुंजी-कारणात् प्रॉम्प्ट् अथवा त्रुटयः परिहरितुं सख्त-होस्ट्-कुंजी-परीक्षणं निष्क्रियं कुर्वन्तु ।यदा भवान् जालप्रदर्शनं चालयति तदा भवान् एतत् आदेशं पोर्ट्-मैपिङ्ग् कर्तुं उपयोक्तुं शक्नोति, यथा-
वयं hello_world.py सञ्चिकां निर्मामः (सञ्चिकां निर्मातुं विकासयन्त्र-अन्तरफलके राइट्-क्लिक् कृत्वा नाम hello_world.py इति परिवर्तयामः) सञ्चिकायां निम्नलिखितसामग्रीम् पूरयामः ।
import socket
import re
import gradio as gr
# 获取主机名
def get_hostname():
hostname = socket.gethostname()
match = re.search(r'-(d+)$', hostname)
name = match.group(1)
return name
# 创建 Gradio 界面
with gr.Blocks(gr.themes.Soft()) as demo:
html_code = f"""
<p align="center">
<a href="https://intern-ai.org.cn/home">
<img src="https://intern-ai.org.cn/assets/headerLogo-4ea34f23.svg" alt="Logo" width="20%" style="border-radius: 5px;">
</a>
</p>
<h1 style="text-align: center;">☁️ Welcome {get_hostname()} user, welcome to the ShuSheng LLM Practical Camp Course!</h1>
<h2 style="text-align: center;">😀 Let’s go on a journey through ShuSheng Island together.</h2>
<p align="center">
<a href="https://github.com/InternLM/Tutorial/blob/camp3">
<img src="https://oss.lingkongstudy.com.cn/blog/202406301604074.jpg" alt="Logo" width="20%" style="border-radius: 5px;">
</a>
</p>
"""
gr.Markdown(html_code)
demo.launch()
सम्पादनानन्तरं स्मर्यताम्ctrl+s
रक्ष्
कोडं चालयितुं पूर्वं भवद्भिः उपयोक्तव्यम्pip install gradio==4.29.0
निम्नलिखितनिर्भरतासङ्कुलं संस्थापयितुं आदेशः (आदेशं प्रतिलिपिं कृत्वा टर्मिनल् मध्ये चिनोतु), ततः Web IDE इत्यस्य टर्मिनल् मध्ये एकं चालयन्तुpython hello_world.py
आदेशः
यदि पोर्ट् मैपिंग न क्रियते तर्हि स्थानीय IP इत्यस्य उपयोगेन तत् प्राप्तुं न शक्यते ।
अहं निम्नलिखित आदेशस्य उपयोगेन एतत् powerShell मध्ये प्रविष्टुं शक्नोमि ।
ssh -p 37367 [email protected] -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyChecking=no
एतेन सफलतायाः प्रतिनिधित्वं भवति । (सूचना: एषः आदेशः किमपि सामग्रीं न प्रत्यागच्छति, यस्य अर्थः अस्ति यत् पोर्ट् मैपिंग चाल्यते, ततः भवन्तः जालपुटे संयोजनं उद्घाट्य web ui अन्तरफलकं द्रष्टुं शक्नुवन्ति)
अवश्यं, यदि वयं भिन्नानि web UIs चालयामः तर्हि अस्माभिः पुनः पुनः आदेशाः प्रविष्टव्याः, यत् अतीव कष्टप्रदम् अस्ति, अस्माकं VScode इत्यस्य उपयोगः अपि आवश्यकः ।वयं SSH मार्गेण विकासयन्त्रं दूरतः संयोजितवन्तः VScode स्वचालितरूपेण पोर्ट् मैपिंगं प्रदाति अस्माकं "Ctrl+Shift+~" शॉर्टकट् कीलस्य उपयोगं कर्तुं शक्यते ।टर्मिनल् जागृतु, पोर्ट् विकल्पाः टर्मिनल् इत्यस्य दक्षिणभागे द्रष्टुं शक्यन्ते:
अत्र भवान् पोर्ट् मैपिंग सूचनां द्रष्टुं शक्नोति यदि भवान् पोर्ट् परिवर्तयितुं शक्नोति तर्हि पोर्ट् स्तम्भे पोर्ट् सङ्ख्यां परिवर्तयितुं शक्नोति ।
अस्मिन् भागे अहं भवन्तं Linux इत्यस्य केचन पक्षाः अवगन्तुं नेष्यामि ।मूलभूतक्रियाः , तथा केचन साधनानि उपयुज्यताम्। येन सर्वे समस्यायाः सम्मुखीभवन्ति चेत् स्वयमेव तस्य समाधानं कर्तुं शक्नुवन्ति यदि भवन्तः किमपि समस्यां प्राप्नुवन्ति तर्हि भवन्तः अपि अत्र टिप्पणीं कर्तुं शक्नुवन्ति अहं च समये एव उत्तरं दास्यामि।
यतः वयं उपयुञ्ज्महेविकास यन्त्रदुर्लभतया प्रयुक्तम्प्राधिकरण प्रबन्धन , अतः वयं तस्य परिचयं न करिष्यामः । (निम्नलिखितानि क्रियाणि सर्वाणि VScode टर्मिनल् मध्ये क्रियन्ते)
Linux मध्ये सामान्यसञ्चिकाप्रबन्धनक्रियासु अन्तर्भवन्ति : १.
touch
आदेशः रिक्तसञ्चिकां निर्माति ।mkdir
आदेशः।cd
आदेशः।pwd
आदेशः।cat
सञ्चिकायाः सम्पूर्णं सामग्रीं प्रत्यक्षतया प्रदर्शयन्तु,more
तथाless
पृष्ठेषु द्रष्टुं शक्यते।vi
वाvim
सम्पादकस्य प्रतीक्षां कुरुत।cp
आदेशः।ln
आदेशः।mv
आदेशः।rm
आदेशः।rmdir
(केवलं रिक्तनिर्देशिकाः विलोपयितुं शक्यन्ते) अथवा rm -r
(अशून्यनिर्देशिकाः विलोपयितुं शक्यन्ते)।find
आदेशः।ls
आदेशः, यथा प्रयोगः ls -l
निर्देशिकायां सञ्चिकानां विषये विस्तृतां सूचनां पश्यन्तु ।sed
आदेशः।अत्र वयं पाठ्यक्रमे उपयुञ्ज्महे अनेके आदेशाः सन्ति ।
शीघ्रं सञ्चिकाः निर्मातुं वयं touch इत्यस्य उपयोगं कर्तुं शक्नुमः, अतः तानि निर्मातुं अस्माभिः हस्तचलितरूपेण क्लिक् कर्तुं न प्रयोजनम् ।यथा - वयं कdemo.py
प्रलेख:
तथैव यदि भवान् नामकं सञ्चिकां निर्मातुम् इच्छतिtest
निर्देशिका : १.
एषः आदेशः सर्वाधिकं प्रयुक्तः आदेशः भविष्यति तस्य उपयोगात् पूर्वं भवद्भिः छात्राणां कृते निर्देशिकासंरचना व्याख्यातव्या येषां सङ्गणककौशलं नास्ति तथा च सर्वेषां अवगमनाय चित्रं आकर्षयितुं आवश्यकम् ।
अधुना वयं यत् उपयुञ्ज्महे तत् अस्तिroot
निर्देशिका, या मूलप्रयोक्तुः गृहनिर्देशिका अपि अस्ति ।~
, linux प्रचालनतन्त्रे/
मूलनिर्देशिकायाः प्रतिनिधित्वं करोति मूलनिर्देशिकायां प्रणालीद्वारा आवश्यकाः बहवः निर्देशिकाः सन्तिroot
निर्देशिका, येषु.
वर्तमाननिर्देशिकां प्रतिनिधियति, ...
प्रतिनिधित्वं कृतवती मातापितृनिर्देशिका ।यदि अहम् इदानीं प्रविष्टः भवेयम्test
निर्देशिकां कृत्वा ततः प्रति गच्छन्तुroot
निर्देशिका, वयम् एतत् कर्तुं शक्नुमः:
वयं उपयोक्तुं शक्नुमःpwd
वर्तमाननिर्देशिकां द्रष्टुं आदेशः : एतेन अस्माकं कृते सम्प्रति कस्मिन् निर्देशिकायां स्मः इति निर्धारयितुं सुकरं भवति ।
cat
आदेशः सञ्चिकायाः विषयवस्तुं द्रष्टुं शक्नोति, अधिकानि आदेशानि च उपयोक्तुं शक्यन्ते--help
द्रष्टुं आदेशः : १.
यदा सञ्चिकाः सम्पादयितुं आवश्यकाः सन्ति तदा वयं तस्य उपयोगं कर्तुं शक्नुमःvi
वाvim
आदेशः, यदा भवान् सञ्चिकासम्पादनं प्रविशति तदा त्रयः मोडाः सन्ति ।
उपयोगाय सम्पादनविधिं प्रविशन्तुi
, vim इत्यस्य सुविधा अस्ति यत् भवान् टर्मिनल् मध्ये सरलसञ्चिकासंशोधनं कर्तुं शक्नोति ।
**cp
**आदेशस्य उपयोगः निम्नलिखितपाठ्यक्रमेषु बहुधा भविष्यति ।
cp 源文件 目标文件
cp -r 源目录 目标目录
परन्तु यदि वयं मॉडल् उपयोक्तुं इच्छामः तर्हि एतत् ऑपरेशनं बहु डिस्कस्थानं गृह्णीयात्, अतः वयं सामान्यतया उपयुञ्ज्महेln
आदेशः, एतत् windows shortcut इत्यस्य समानम् अस्ति । लिनक्स इत्यस्मिन् लिङ्क् द्वौ प्रकारौ स्तः ।हार्ड लिंक(हार्ड लिंक)सहsoft link (symbolic link), हार्ड लिङ्क् इत्यस्य अर्थः अस्ति यत् सञ्चिकायाः बहुनामानि भवितुम् अर्हन्ति, यदा तु मृदुलिङ्क् विशेषसञ्चिकां जनयति यस्याः सामग्री अन्यसञ्चिकायाः स्थानं सूचयति । एकस्मिन् सञ्चिकातन्त्रे हार्डलिङ्क् विद्यते, परन्तु मृदुलिङ्क् भिन्नसञ्चिकातन्त्रेषु व्याप्तुं शक्नोति ।
अतः वयं सामान्यतया मृदुसंयोजनानां उपयोगं कुर्मः तस्य सामान्यप्रयोगविधयः निम्नलिखितरूपेण सन्ति ।
ln [参数][源文件或目录][目标文件或目录]
मापदण्डाः निम्नलिखितरूपेण सन्ति ।
mv
आज्ञा चrm
आदेशाः अपि तथैव प्रयुक्ताः, किन्तुmv
सञ्चिकानां निर्देशिकानां वा स्थानान्तरणाय अस्य उपयोगः भवति, तस्य नाम परिवर्तनमपि कर्तुं शक्यते ।rm
आदेशः सञ्चिकाः अथवा निर्देशिकाः विलोपयितुं उपयुज्यते ।
सामान्यतया प्रयुक्ताः पद्धतयः निम्नलिखितरूपेण सन्ति ।
सामान्यतया प्रयुक्ताः मापदण्डाः : १.
-i
: अन्तरक्रियाशीलः मोडः, अधिलेखनात् पूर्वं पृच्छन्तु ।-f
: बलव्याप्तिः।-u
: केवलं तदा एव चालयन्तु यदा स्रोतसञ्चिका लक्ष्यसञ्चिकायाः अपेक्षया नूतना भवति ।उपयोगस्य उदाहरणम् : १.
mv file1.txt dir1/
: सञ्चिकां चालयन्तु file1.txt
निर्देशिकां प्रति गच्छन्तुdir1
मध्यं।
mv file1.txt file2.txt
: सञ्चिकां चालयन्तु file1.txt
नामान्तरं कुर्वन्तुfile2.txt
。
rm आदेशः:
सामान्यतया प्रयुक्ताः मापदण्डाः : १.
-i
: अन्तरक्रियाशीलः मोडः, विलोपनात् पूर्वं पृच्छन्तु।-f
: बलात् विलोपनं, अस्तित्वहीनसञ्चिकानां अवहेलना, पुष्टिकरणं विना।-r
:एकं निर्देशिकां तस्याः सामग्रीं च पुनरावर्तनीयरूपेण विलोपयन्तु।उपयोगस्य उदाहरणम् : १.
rm file.txt
:सञ्चिकाः विलोपयन्तु file.txt
。rm -r dir1/
: पुनरावर्तनीयरूपेण निर्देशिकाः विलोपयन्तु dir1
तस्य सर्वाणि च सामग्रीनि।निर्देशिकां विलोपयितुं आदेशः अपि उपयोक्तुं शक्यतेrmdir
。
find
आदेशः Linux प्रणाल्यां एकं शक्तिशालीं सञ्चिका-अन्वेषण-उपकरणं अस्ति यत् निर्दिष्ट-निर्देशिकायां तस्य उपनिर्देशिकासु च शर्ताः पूरयन्तः सञ्चिकाः अथवा निर्देशिकाः अन्वेष्टुं तत्सम्बद्धानि कार्याणि कर्तुं च शक्नोति ।
निम्नलिखितम् अस्तिfind
आदेशस्य केचन सामान्याः प्रयोगाः : १.
-name
सञ्चिकानाम्ना सञ्चिकाः अन्वेष्टुं विकल्पः । उदाहरणतया,find /path/to/directory -name "file.txt"
निर्दिष्टं निर्देशिकां तस्य उपनिर्देशिकां च नामकं अन्वेषयिष्यतिfile.txt
प्रलेख।-type
सञ्चिकाप्रकारेण सञ्चिकाः अन्वेष्टुं विकल्पः । उदाहरणतया,find /path/to/directory -type f
निर्दिष्टनिर्देशिकायां तस्य उपनिर्देशिकासु च सर्वाणि साधारणसञ्चिकाः प्राप्यन्ते ।-size
सञ्चिकायाः आकारेण सञ्चिकाः अन्वेष्टुं विकल्पः । उदाहरणतया,find /path/to/directory -size +100M
निर्दिष्टनिर्देशिकायां तस्य उपनिर्देशिकासु च 100MB इत्यस्मात् बृहत्तराणि सञ्चिकाः प्राप्स्यति ।-mtime
、-atime
वा-ctime
विकल्पाः सञ्चिकाः तेषां परिवर्तनसमयस्य, अभिगमनसमयस्य, अथवा स्थितिपरिवर्तनसमयस्य आधारेण अन्वेषयन्ति । उदाहरणतया,find /path/to/directory -mtime -7
निर्दिष्टनिर्देशिकायां तस्य उपनिर्देशिकासु च सञ्चिकाः अन्वेषयिष्यति ये 7 दिवसेषु परिवर्तिताः सन्ति ।-perm
सञ्चिकानुमतीनां आधारेण सञ्चिकाः अन्वेष्टुं विकल्पः । उदाहरणतया,find /path/to/directory -perm 755
निर्दिष्टनिर्देशिकायां तस्य उपनिर्देशिकासु च अनुमतियुक्तानि सञ्चिकाः 755 अन्वेषयिष्यति ।-user
वा-group
विकल्पाः स्वस्वामिना वा समूहेन वा सञ्चिकाः अन्वेषयन्ति । उदाहरणतया,find /path/to/directory -user username
निर्दिष्टं निर्देशिकां तस्य उपनिर्देशिकां च उपयोक्तुः अन्तर्गतं अन्वेषयिष्यतिusername
प्रलेख।-exec
विकल्पाः प्राप्तसञ्चिकासु तत्सम्बद्धानि कार्याणि कर्तुं शक्नुवन्ति । उदाहरणतया,find /path/to/directory -name "*.txt" -exec rm {} ;
इत्यनेन समाप्ताः सर्वाणि प्राप्तानि विलोपयिष्यति.txt
अन्ते सञ्चिका ।ls
आदेशस्य उपयोगेन निर्देशिकायाः सामग्रीं सूचीबद्धं कर्तुं शक्यते तथा चवर्णन。
सामान्यतया प्रयुक्ताः मापदण्डाः उपयोगविधयः च निम्नलिखितरूपेण सन्ति ।
-a
: सर्वाणि सञ्चिकानि निर्देशिकाश्च प्रदर्शयन्तु, यत्र गुप्तसञ्चिकाः (परतः.
सञ्चिका अथवा निर्देशिका या .) इत्यनेन आरभ्यते।-l
: दीर्घस्वरूपेण विस्तृतसूचनाः प्रदर्शयति, यत्र सञ्चिकायाः अनुमतिः, स्वामिः, आकारः, परिवर्तनसमयः इत्यादयः सन्ति ।-h
:तथा-l
सञ्चिकायाः आकारं मानवपठनीयरीत्या प्रदर्शयितुं संयोजनेन उपयुज्यते (उदा.K
、M
、G
प्रतीक्षतु)।-R
: उपनिर्देशिकानां सामग्रीं पुनरावर्तनीयरूपेण सूचीबद्धं कुर्वन्तु।-t
: सञ्चिकासंशोधनसमयस्य क्रमेण प्रदर्शयन्तु। , ९.sed
आदेशः एकः धारा सम्पादकः अस्ति, यः मुख्यतया पाठसंसाधनार्थं प्रयुक्तः भवति यदा जटिलसञ्चिकासञ्चालनानां संसाधनं भवति तदा तस्य उपयोगः भवति ।sed
सामान्यतया प्रयुक्ताः मापदण्डाः, आदेशानां उपयोगस्य उदाहरणानि च निम्नलिखितरूपेण सन्ति ।
-e<script>
वा--expression=<script>
: पाठसंसाधनार्थं आदेशपङ्क्तौ प्रत्यक्षतया स्क्रिप्ट् निर्दिशन्तु ।-f<script文件>
वा--file=<script文件>
: पाठसंसाधनार्थं निर्दिष्टलिपिसञ्चिकातः स्क्रिप्ट् पठन्तु ।-n
वा--quiet
वा--silent
: केवलं स्क्रिप्ट् द्वारा संसाधितानि आउटपुट् परिणामानि मुद्रयन्तु, अतुलनीयपङ्क्तयः न मुद्रयन्तु ।a
: निर्दिष्टं पाठस्ट्रिंग् वर्तमानपङ्क्तौ अग्रिमपङ्क्तौ योजयन्तु ।c
: निर्दिष्टा रेखापरिधिं निर्दिष्टपाठस्ट्रिंग् इत्यनेन प्रतिस्थापयति ।d
: निर्दिष्टं पङ्क्तिं विलोपयन्तु।i
: निर्दिष्टं पाठस्ट्रिंग् वर्तमानपङ्क्तौ पूर्वपङ्क्तौ योजयन्तु ।p
: चयनितपङ्क्तयः मुद्रयन्तु।प्रायः सह-n
पैरामीटर्-सहितं उपयुज्य केवलं मेल-रेखाः एव मुद्रिताः भवन्ति ।s
: पाठप्रतिस्थापनार्थं नियमितव्यञ्जनानां उपयोगं कुर्वन्तु। उदाहरणतया,s/old/new/g
सर्वाणि "InternLM" "InternLM yyds" इत्यनेन प्रतिस्थापयन्तु ।उदाहरणे प्रयुक्तम्echo
आदेशः, एतत् पायथन् इत्यत्र इव अस्तिprint
समानं, सामग्रीं मुद्रयितुं प्रयुक्तम्, अत्र पाइप् वर्णस्य उपयोगं कुर्वन्तु>
सञ्चिकासञ्चिकायां InternLM मुद्रयन्तु सामान्यतया प्रयुक्ताः पाइप् वर्णाः सन्ति<
तथा|
, यथा वयं उपयोक्तुं शक्नुमःgrep
संस्थापितं द्रष्टुं आदेशः python मध्ये अन्तर्भवतिos
क्षेत्रसङ्कुलम् : १.
grep
एकं शक्तिशालीं पाठसन्धानसाधनम् अस्ति। सामान्यतया प्रयुक्ताः मापदण्डाः निम्नलिखितरूपेण सन्ति ।
-i
: प्रकरणं न कृत्वा अन्वेषणं कुर्वन्तु।-v
: मेलनं विपर्ययति अर्थात् असङ्गतपङ्क्तयः प्रदर्शयति ।-n
: रेखासङ्ख्यां प्रदर्शयन्तु।-c
: मेलपङ्क्तयः संख्यां गणयन्तु।प्रक्रिया प्रबन्धनआदेशाः प्रणालीनिरीक्षणस्य प्रक्रियाप्रबन्धनस्य च महत्त्वपूर्णसाधनाः सन्ति सामान्यतया प्रयुक्ताः प्रक्रियाप्रबन्धननिर्देशाः निम्नलिखितम् अन्तर्भवन्ति ।
विकासयन्त्रे विशेषादेशः अपि अस्तिnvidia-smi
, यत् NVIDIA System Management Interface इत्यस्य आदेशपङ्क्तिसाधनम् अस्ति, यत् NVIDIA GPU उपकरणानां निरीक्षणाय प्रबन्धनाय च उपयुज्यते । एतत् GPU-स्थितिः, उपयोगः, तापमानं, स्मृति-उपयोगः, शक्ति-उपयोगः, GPU-इत्यत्र चालितानां प्रक्रियाणां च सूचनां द्रष्टुं द्रुतमार्गं प्रदाति ।
प्रत्येकस्य आदेशस्य उपयोगस्य उदाहरणानि निम्नलिखितरूपेण सन्ति ।
ps
: वर्तमानप्रणाल्यां प्रक्रियाणां सूचीं कुर्वन्तु। भिन्नविकल्पानां उपयोगेन भिन्नाः प्रक्रियासूचनाः प्रदर्शयितुं शक्यन्ते, यथा-ps aux # 显示系统所有进程的详细信息
top
: प्रणाल्यां प्रक्रियाणां स्थितिं गतिशीलरूपेण प्रदर्शयन्तु। एतत् प्रक्रियासूचीं वास्तविकसमये अद्यतनं करोति, उच्चतम CPU तथा स्मृतिप्रयोगयुक्तानि प्रक्रियाणि दर्शयति ।top # 启动top命令,动态显示进程信息
pstree
: वर्तमानकाले प्रचलितानि प्रक्रियाणि तेषां मातापितृ-सन्ततिसम्बन्धं च वृक्षचित्ररूपेण प्रदर्शयति । pstree # 显示进程树
pgrep
: मापदण्डेन सह मेलनं कुर्वन्ति प्रक्रियाः अन्वेष्टुम्। प्रक्रियानाम, उपयोक्ता इत्यादीनां शर्तानाम् आधारेण प्रक्रियाः अन्वेष्टुं शक्नुवन्ति ।pgrep -u username # 查找特定用户的所有进程
nice
: कस्यापि प्रक्रियायाः प्राथमिकता परिवर्तयन्तु।nice
मूल्यं यथा न्यूनं भवति तथा प्रक्रियाप्राथमिकता अधिका भवति ।nice -n 10 long-running-command # 以较低优先级运行一个长时间运行的命令
jobs
: वर्तमान टर्मिनलसत्रे कार्याणां सूचीं प्रदर्शयति, यत्र पृष्ठभूमितः चालिताः प्रक्रियाः अपि सन्ति । jobs # 列出当前会话的后台作业
bg
तथाfg
:bg
निलम्बिता प्रक्रियां पृष्ठभूमितः चालयितुं स्थापयन्तु,fg
पृष्ठभूमिप्रक्रियाम् पुनः अग्रभूमिं प्रति आनयन्तु।bg # 将最近一个挂起的作业放到后台运行
fg # 将后台作业调到前台运行
kill
: निर्दिष्टप्रक्रियायाः कृते संकेतं प्रेषयन्तु, प्रायः प्रक्रियां मारयितुं प्रयुक्तम् । kill PID # 杀死指定的进程ID
सूचना,kill
आदेशः पूर्वनिर्धारितरूपेण प्रेषितः भवतिSIGTERM
संकेतः, यस्य उपयोगः कर्तुं शक्यते यदि प्रक्रिया प्रतिक्रियां न ददाति-9
उपयुञ्जताम्SIGKILL
संकेतः बलात् प्रक्रियां मारयति : १.
kill -9 PID # 强制杀死进程
SIGTERM
(Signal Termination) संकेतः एकः मानकसंकेतः अस्ति यस्य उपयोगः Unix तथा Unix-सदृशेषु प्रचालनप्रणालीषु प्रक्रियासमाप्तेः अनुरोधाय भवति । प्रायः एषः संकेतः तदा प्रेष्यते यदा प्रणाली वा उपयोक्ता वा प्रक्रियां ललिततया निरुद्धं कर्तुम् इच्छति ।तथाSIGKILL
संकेताः भिन्नाः सन्ति, .SIGTERM
संकेताः प्रक्रियाद्वारा गृहीतुं सम्भालितुं च शक्यन्ते, येन निर्गमनपूर्वं प्रक्रिया स्वच्छा भवति । (अन्तर्जालतः) २.
निम्नलिखितम् अस्ति nvidia-smi
आदेशानां केचन मूलभूताः आदेशप्रयोगाः : १.
nvidia-smi
nvidia-smi -l 1
एषः आदेशः प्रत्येकं १ सेकेण्ड् मध्ये स्थितिसूचनाम् अद्यतनं करिष्यति ।
nvidia-smi -h
nvidia-smi pmon
nvidia-smi --id=0 --ex_pid=12345
एतेन GPU ID 0 इत्यत्र PID 12345 इत्यनेन सह प्रक्रिया बलात् समाप्तं भविष्यति ।
nvidia-smi -pm 1
nvidia-smi -i 0 -pm 1
प्रथमः आदेशः सर्वान् GPUs प्रदर्शनविधाने सेट् करिष्यति, द्वितीयः आदेशः केवलं ID 0 इत्यनेन सह GPU लक्ष्यं करोति ।
nvidia-smi --id=0 -r
एतेन ID 0 इत्यनेन सह GPU पुनः आरभ्यते ।
nvidia-smi -h
चित्रस्य माध्यमेन GPU सूचनायाः परिचयः निम्नलिखितम् अस्ति ।
अत्र एकं साधनम् अस्तिTMUX
,TMUX
एकः टर्मिनल् मल्टिप्लेक्सरः अस्ति । एतेन बहुविध-टर्मिनल्-मध्ये स्विच्-करणं, तान् विच्छेदनं (एतेन टर्मिनल्-इत्येतत् न मार्यते, ते पृष्ठभूमितः एव चालयन्ति) अन्येषु टर्मिनल्-मध्ये पुनः संयोजयितुं च सुलभं भवति किमर्थम् अस्य साधनस्य परिचयः करणीयः ?यतः पश्चात् क्रियतेXtuner
मॉडलस्य सूक्ष्म-समायोजनं कुर्वन् बहुकालं यावत् उपयुज्यतेTmux
यत्र कार्यक्रमः मारितः भवति, बाधितः च भवति तस्य स्थितिः समाधानं कर्तुं शक्नोति अत्र कथं संस्थापनं, उपयोगः च भवति ।
यतः विकासयन्त्रं ubuntu प्रचालनतन्त्रस्य उपयोगं करोति, भवान् उपयोक्तुं शक्नोतिlsb_release -a
ubuntu प्रणालीसूचनाः द्रष्टुं आदेशः:
ततः प्रयोगःapt install tmux
tmux संस्थापनार्थं आदेशः संस्थापनस्य समाप्तेः अनन्तरं भवान् तस्य उपयोगं कर्तुं शक्नोति ।tmux
आदेशेन सह tmux उपयोक्तुं शक्नुथ यदि भवान् tmux निर्गन्तुं इच्छति तर्हि " " इति उपयोक्तुं शक्नोषि ।Ctrl+d"शॉर्टकट कुञ्जी।"
विकासयन्त्रे केवलं /root मार्गस्य अधः सञ्चिकाः निरन्तरं संगृह्यन्ते अन्यमार्गेषु संस्थापिताः सॉफ्टवेयरः पुनः आरम्भस्य अनन्तरं पुनः सेट् भविष्यति ।
विशिष्टानि उपयोगविधयः अत्र द्रष्टुं शक्यन्ते :
https://www.ruanyifeng.com/blog/2019/10/tmux.html इति ग्रन्थः
कोण्डा इति मुक्तस्रोतसङ्कुलप्रबन्धनं वातावरणप्रबन्धनप्रणाली च यत् विण्डोज, macOS, Linux च इत्यत्र चाल्यते । एतत् शीघ्रमेव सॉफ्टवेयर-सङ्कुलानाम्, तेषां आश्रयाणां च संस्थापनं, चालनं, अद्यतनीकरणं च करोति । Conda इत्यस्य उपयोगेन भवान् स्वस्थानीययन्त्रे भिन्नानि वातावरणानि सहजतया निर्मातुम्, रक्षितुं, लोड् कर्तुं, स्विच् कर्तुं च शक्नोति ।
विकासयन्त्रे पूर्वमेव स्थापितःconda
, वयं प्रत्यक्षतया तस्य उपयोगं कर्तुं शक्नुमः, विकासयन्त्रे अपि अन्तर्निर्मितः अस्तिconda
आदेशःstudio-conda
, वयं अधः परिचयं करिष्यामःconda
मूलप्रयोगः, चstudio-conda
कथं प्रयोगः परिचयः चstudio-conda
कथं सिध्यति ?
वयं निम्नलिखितभागेषु तस्य परिचयं करिष्यामः ।
वयं उपयोक्तुं शक्नुमःconda --version
वर्तमानविकासयन्त्रं द्रष्टुंconda
संस्करणसूचना: १.
यदा वयं उपयोगं कर्तुम् इच्छामःconda
संकुलस्य संस्थापनसमये अतीव मन्दं भविष्यति वयं संस्थापनवेगं सुधारयितुम् domestic mirroring सेट् कर्तुं शक्नुमः ।
#设置清华镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
परन्तु वयं प्रायः उपयुञ्ज्महेpip
संकुलं संस्थाप्य वयं पश्चात् तस्य परिचयं करिष्यामःpip
तथाconda
अंतरण।
यदि वयं conda इत्यस्य विन्याससूचनाम् द्रष्टुम् इच्छामः तर्हि वयं उपयोक्तुं शक्नुमःconda config --show
आदेशः, यदि विकासयन्त्रस्य पूर्वनिर्धारितं सेटिङ्ग् अस्ति, तर्हि एतत् प्रत्यागमिष्यति: (सूचनायाः भागः)
एते विन्यासाः मध्ये सन्तिConda
पर्यावरणविन्यासः सॉफ्टवेयरसङ्कुलस्थापनस्य, अद्यतनीकरणस्य, पर्यावरणप्रबन्धनस्य अन्येषां च कार्याणां पद्धतीनां परिणामानां च प्रभावं करिष्यति ।
अयं भागः अस्तिconda
中非常重要的一部分,掌握了这一部分大家就可以将开发环境玩转到飞起了😀。
वयं उपयोक्तुं शक्नुमःconda create -n name python``=3.10
वर्चुअल् वातावरणं रचयन्तु, यस्य अर्थः अस्ति यत् Python संस्करणं 3.10 इत्यनेन सह वर्चुअल् वातावरणं निर्मितं भवति तथा च नाम निर्मितम् अस्ति ।सृष्टेः अनन्तरं भवन्तः शक्नुवन्ति.conda
निर्देशिकायाः अधःenvs
निर्देशिकायां प्राप्तम् ।
यदा python संस्करणं निर्दिष्टं न भवति तदा नवीनतमं python संस्करणम् आधारितं आभासी वातावरणं स्वयमेव निर्मितं भविष्यति । तस्मिन् एव काले वयं वर्चुअल् वातावरणं निर्माय आवश्यकानि संकुलं संस्थापयितुं शक्नुमः :conda create -n name numpy matplotlib python=3.10
(किन्तु अहं भवन्तं न अनुशंसयामि यत् एतादृशं प्रयोगं कुर्वन्तु)
आभासीवातावरणस्य निर्माणार्थं सामान्यमापदण्डाः निम्नलिखितरूपेण सन्ति ।
यदि वयं द्रष्टुम् इच्छामः यत् अस्माकं के के वर्चुअल् वातावरणाः सन्ति तर्हि वयं निम्नलिखितम् आदेशं उपयोक्तुं शक्नुमः ।
conda env list
conda info -e
conda info --envs
तस्मिन् एव काले वयं यत्र वातावरणं स्थितम् अस्ति तत् निर्देशिकाम् अपि द्रष्टुं शक्नुमः ।
वर्चुअल् वातावरणं निर्माय वयं उपयोक्तुं शक्नुमःconda activate name
आभासी वातावरणं सक्रियं कर्तुं आदेशः, स्विचः सफलः अस्ति वा इति कथं परीक्षितुं शक्यते?सुलभम् अस्ति, केवलं पश्यन्तु(base)
निर्मितस्य आभासीवातावरणस्य नाम भवति वा।
यदि भवान् आभासीवातावरणात् निर्गन्तुं इच्छति तर्हि भवान् निम्नलिखितम् उपयोक्तुं शक्नोति:
conda activate
conda deactivate
उभयम् आदेशः पुनः आगमिष्यतिbase
पर्यावरणं यतःbase
कोण्डायाः मूलभूतं वातावरणम् अस्ति यदि भवान् सम्यक् अवलोकयति तर्हि ।base
अन्येभ्यः आभासीपर्यावरणनिर्देशिकाभ्यः अपेक्षया पर्यावरणनिर्देशिका उच्चस्तरीयः अस्ति ।
यदि भवान् आभासीवातावरणं विलोपयितुम् इच्छति तर्हि उपयोक्तुं शक्नोतिconda remove --name name --all
, यदि भवान् आभासीवातावरणे केवलं एकं वा केचन संकुलं विलोपयति तर्हि भवान् उपयोक्तुं शक्नोतिconda remove --name name package_name
आभासी वातावरणस्य निर्यातनं विशिष्टवातावरणस्य कृते अतीव आवश्यकं भवति, यतः केषाञ्चन सॉफ्टवेयरसङ्कुलानाम् आश्रयाः अतीव जटिलाः सन्ति, तथा च स्वयमेव पुनः सृजितुं विन्यस्तुं च कष्टप्रदं भविष्यति यदि वयं विन्यस्तं वातावरणं निर्यातयामः तर्हि अग्रिमे समये पुनः स्थापयितुं शक्नुमः तथा च अन्यैः सह अपि विन्यासं साझां कर्तुं शक्नुवन्ति ।
#获得环境中的所有配置
conda env export --name myenv > myenv.yml
#重新还原环境
conda env create -f myenv.yml
यथा वयं करिष्यामःxtuner0.1.17
आभासी वातावरणं निर्यातितं भवति तथा च विन्याससूचना निम्नलिखितरूपेण भवति ।
एतेषु अन्तर्भवतिपरिवेशनाम、आभासीपर्यावरणसङ्कुलानाम् कृते ऑनलाइन-भण्डारस्य स्थानंतथाआभासी वातावरणनिर्भरता . पश्चात् वयं आभासीवातावरणं शीघ्रं पुनःस्थापयितुं उन्नतप्रयोगविधिनाम् उपयोगं करिष्यामः ।
अस्मिन् भागे वयं केषाञ्चन परिचयं कुर्मःconda
तथाpip
केचन भेदाः : १.
चक्र इदं पायथन् संस्थापनसङ्कुलस्य प्रारूपम् अस्ति ।
इदं पूर्वसंकलितं द्विचक्रीयवितरणस्वरूपम् अस्ति, यत् कोण्डायां संकलितद्विचक्रीयानां सदृशम् अस्ति ।
Wheel प्रारूपस्य मुख्यलाभाः सन्ति- १.
- द्रुतस्थापनम् : यतः पूर्वसंकलनं कृतम् अस्ति, संस्थापनकाले स्रोतसङ्केतस्थापनवत् संकलनप्रक्रियायाः माध्यमेन गन्तुं आवश्यकता नास्ति, समयस्य रक्षणं भवति
- संगतिः : संस्थापनपरिणामानां भिन्नप्रणालीषु वातावरणेषु च सुसंगताः इति सुनिश्चितं करोति ।
यथा, यदि भवान् विशालं पायथन् पुस्तकालयं संस्थापयितुम् इच्छति तर्हि Wheel प्रारूपस्य उपयोगेन भिन्नयन्त्रेषु संकलनवातावरणेषु भेदेन संस्थापनसमस्याः परिहर्तुं शक्यन्ते अपि च, येषां प्रणालीनां कृते संकलनवातावरणं नास्ति अथवा दुर्बलसंकलनक्षमता अस्ति, तेषां कृते Wheel प्रारूपं संस्थापनप्रक्रियाम् सुचारुतरं कर्तुं शक्नोति
अयं भागः विस्तारितः भागः अस्ति, यतः अहं मन्ये अयं भागः अतीव रोचकः अतीव व्यावहारिकः च अस्ति, अतः यदि भवान् रुचिं लभते तर्हि भवान् तत् ज्ञातुं शक्नोति ।
प्रथमं परिचयं कुर्मःstudio-conda
, यत् विकासयन्त्रस्य अन्तःनिर्मितः आदेशः अस्ति तथा च Shell स्क्रिप्ट् मार्गेण कार्यान्वितः भवति । शेल् स्क्रिप्ट् इति किम् ?
शेल् लिपि Unix/Linux अथवा तत्सदृशे ऑपरेटिंग् सिस्टम् वातावरणे कार्याणि स्वचालितं कर्तुं विशिष्टक्रमेण व्यवस्थापितानां आदेशानां श्रृङ्खलां समाविष्टा पाठसञ्चिका ।
Shell स्क्रिप्ट् प्रायः Shell भाषायां लिख्यन्ते Common Shell भाषाः यथा Bash, Sh इत्यादयः मूलभूताः Linux आदेशाः सन्ति ये वयं पूर्वं प्रवर्तयामः, ये Shell भाषायाः सन्ति ।
अस्य निम्नलिखित महत्त्वपूर्णविशेषताः सन्ति ।
तत्studio-conda
अस्माकं विकासयन्त्रे मूलप्रयोक्तुः bash वातावरणस्य विन्याससञ्चिका अस्ति.bashrc
, परन्तु वस्तुतः मुख्यविन्याससञ्चिका अस्ति/share/.aide/config/bashrc
, अस्मिन् सञ्चिकायां केचन आदेशाः लिखिताः सन्ति ये अस्मान् केचन कार्याणि शीघ्रतरं कर्तुं शक्नुवन्ति, यथा:
export no_proxy='localhost,127.0.0.1,0.0.0.0,172.18.47.140'
export PATH=/root/.local/bin:$PATH
export HF_ENDPOINT='https://hf-mirror.com'
alias studio-conda="/share/install_conda_env.sh"
alias studio-smi="/share/studio-smi"
export
वातावरणचरं सेट् कर्तुं उपयुज्यते ।alias
इति sh सञ्चिकां चरमध्ये प्रतिलिख्य एतत् टर्मिनल् मध्ये Our इति आदेशरूपेण निष्पादयितुं शक्यतेstudio-conda
इति ।
अत्रstudio-smi
यदा वयं उद्घाटयामः तदा वर्चुअल् मेमोरी इत्यस्य उपयोगं परीक्षितुं तस्य उपयोगः भवति/share/studio-smi
सञ्चिका द्रष्टुं शक्यते : १.
#!/bin/bash
if command -v vgpu-smi &> /dev/null
then
echo "Running studio-smi by vgpu-smi"
vgpu-smi
else
echo "Running studio-smi by nvidia-smi"
nvidia-smi
fi
एषा लिपिः अस्ति वा इति परीक्षितुं प्रयुज्यते vgpu-smi
आदेशः, यदि वर्तते तर्हि चालितः भविष्यतिvgpu-smi
आभासी GPU (vGPU) कृते स्थितिसूचना प्रदर्शयितुं यदि नास्ति तर्हि तत् चालयिष्यतिnvidia-smi
NVIDIA GPU स्थितिसूचना प्रदर्शयितुं । यथा अधः दर्शितम् : १.
nvidia-smi
भौतिक NVIDIA GPU उपकरणानां निरीक्षणाय प्रबन्धनाय च एकं साधनम् अस्ति, तथा च...vgpu-smi
NVIDIA vGPU प्रौद्योगिक्याः माध्यमेन वर्चुअलाइज्ड् GPU संसाधनानाम् निरीक्षणाय प्रबन्धनाय च डिजाइनं कृतम् ।
वयं पश्यामः/share/install_conda_env.sh
सञ्चिकायाः विषयवस्तु यथा भवति ।
#!/bin/bash
# clone internlm-base conda env to user's conda env
# created by xj on 01.07.2024
# modifed by xj on 01.19.2024 to fix bug of conda env clone
# modified by ljy on 01.26.2024 to extend
XTUNER_UPDATE_DATE=`cat /share/repos/UPDATE | grep xtuner |awk -F= '{print $2}'`
HOME_DIR=/root
CONDA_HOME=$HOME_DIR/.conda
SHARE_CONDA_HOME=/share/conda_envs
SHARE_HOME=/share
list() {
cat <<-EOF
预设环境 描述
internlm-base pytorch:2.0.1, pytorch-cuda:11.7
xtuner Xtuner(源码安装: main $(echo -e "033[4mhttps://github.com/InternLM/xtuner/tree/main033[0m"), 更新日期:$XTUNER_UPDATE_DATE)
pytorch-2.1.2 pytorch:2.1.2, pytorch-cuda:11.8
EOF
}
help() {
cat <<-EOF
说明: 用于快速clone预设的conda环境
使用:
1. studio-conda env -l/list 打印预设的conda环境列表
2. studio-conda <target-conda-name> 快速clone: 默认拷贝internlm-base conda环境
3. studio-conda -t <target-conda-name> -o <origin-conda-name> 将预设的conda环境拷贝到指定的conda环境
EOF
}
clone() {
source=$1
target=$2
if [[ -z "$source" || -z "$target" ]]; then
echo -e "033[31m 输入不符合规范 033[0m"
help
exit 1
fi
if [ ! -d "${SHARE_CONDA_HOME}/$source" ]; then
echo -e "033[34m 指定的预设环境: $source不存在033[0m"
list
exit 1
fi
if [ -d "${CONDA_HOME}/envs/$target" ]; then
echo -e "033[34m 指定conda环境的目录: ${CONDA_HOME}/envs/$target已存在, 将清空原目录安装 033[0m"
wait_echo&
wait_pid=$!
rm -rf "${CONDA_HOME}/envs/$target"
kill $wait_pid
fi
echo -e "033[34m [1/2] 开始安装conda环境: <$target>. 033[0m"
sleep 3
tar --skip-old-files -xzvf /share/pkgs.tar.gz -C ${CONDA_HOME}
wait_echo&
wait_pid=$!
conda create -n $target --clone ${SHARE_CONDA_HOME}/${source}
if [ $? -ne 0 ]; then
echo -e "033[31m 初始化conda环境: ${target}失败 033[0m"
exit 10
fi
kill $wait_pid
# for xtuner, re-install dependencies
case "$source" in
xtuner)
source_install_xtuner $target
;;
esac
echo -e "033[34m [2/2] 同步当前conda环境至jupyterlab kernel 033[0m"
lab add $target
source $CONDA_HOME/bin/activate $target
cd $HOME_DIR
echo -e "033[32m conda环境: $target安装成功! 033[0m"
echo """
============================================
ALL DONE!
============================================
"""
}
······
dispatch $@
तेषु एकः*list
*()
तिष्ठतु, सर्वंstudio-conda
function, यत् कतिपयानि ऑपरेशन्स् कार्यान्वितुं शक्नोति, उदाहरणार्थं, वयं उपयोक्तुं शक्नुमःstudio-conda env list
पूर्वनिर्धारितं वातावरणं द्रष्टुं :
इत्यस्मिन्*clone
*()
कार्यस्य मुख्यं कार्यं वातावरणस्य प्रतिलिपिः भवति, परन्तु केवलं पूर्वनिर्धारितवातावरणात् प्रतिलिपिं कर्तुं शक्यते मुख्यसङ्केतः वस्तुतः :
tar --skip-old-files -xzvf /share/pkgs.tar.gz -C ${CONDA_HOME}
conda create -n $target --clone ${SHARE_CONDA_HOME}/${source}
पूर्वनिर्धारितपर्यावरणस्य संपीडितं संकुलं अनजिप् कुर्वन्तु, ततः क्लोनद्वारा आभासीवातावरणं रचयन्तु तथापि, किञ्चित् तर्कः अपि शेल् स्क्रिप्ट् मध्ये सेट् भवति, परन्तु केवलं किञ्चित् निर्णयः अस्ति यदि भवान् कस्यापि प्रोग्रामिंगभाषायाः परिचितः अस्ति to understand it.यदि भवन्तः तत् अवगन्तुं न शक्नुवन्ति तर्हि इदमपि महती समस्या नास्ति।
अतः वयं स्वस्य निर्मितं वातावरणं कथं योजयामःstudio-conda
मध्यं किम् ?
प्रथमं सोपानं /share/conda_envs इत्यस्य अन्तर्गतं नूतनं कोण्डा वातावरणं निर्मातुं भवति
conda create -p /share/conda_envs/xxx पायथन = 3.1x
द्वितीयं सोपानं स्थानीययन्त्रे /root/.conda/pkgs इत्यस्य अधः सञ्चिकानां प्रतिलिपिं /share/pkgs इत्यत्र कृत्वा पुनः संपीड्य प्रतिस्थापयितुं (एतत् सोपानं कोण्डा निर्माणप्रक्रियायाः समये बृहत् सार्वजनिकसङ्कुलानाम् संग्रहणं भवति यत् पुनः पुनः डाउनलोड् न भवति)
cp -r -n /मूल/.कोंडा/पीकेजीएस/* /शेयर/पीकेजीएस/
cd /शेयर && टार -zcvf pkgs.tar.gz pkgs
तृतीयः सोपानः install_conda_env.sh इत्यस्मिन् सूचीकार्यं अद्यतनं कृत्वा नूतनं कोण्डा वातावरणविवरणं योजयितुं भवति ।
उपरिष्टाद् विकासयन्त्रेण पूर्वनिर्धारितरूपेण प्रदत्तः विधिः अस्ति वस्तुतः अन्यः विधिः अस्ति, यस्याः वयं पूर्वं उपयोगं कृतवन्तःconda
निर्यातितम्xtuner0.1.17
वर्चुअल् वातावरणानां कृते विन्याससञ्चिकाः, वयं उपयोक्तुं शक्नुमःconda env create -f xtuner0.1.17.yml
आभासीवातावरणं पुनःस्थापयितुं आदेशः ।एतत् ऑपरेशनं कार्यान्वितुं सरलं Shell स्क्रिप्ट् लिखामः: वयं रचयामःtest.sh
सञ्चिकायां, निम्नलिखितसामग्री लिखन्तु:
#!/bin/bash
# 定义导出环境的函数
export_env() {
local env_name=$1
echo "正在导出环境: $env_name"
# 导出环境到当前目录下的env_name.yml文件
conda env export -n "$env_name" > "$env_name.yml"
echo "环境导出完成。"
}
# 定义还原环境的函数
restore_env() {
local env_name=$1
echo "正在还原环境: $env_name"
# 从当前目录下的env_name.yml文件还原环境
conda env create -n "$env_name" -f "$env_name.yml"
echo "环境还原完成。"
}
# 检查是否有足够的参数
if [ $# -ne 2 ]; then
echo "使用方法: $0 <操作> <环境名>"
echo "操作可以是 'export' 或 'restore'"
exit 1
fi
# 根据参数执行操作
case "$1" in
export)
export_env "$2"
;;
restore)
restore_env "$2"
;;
*)
echo "未知操作: $1"
exit 1
;;
esac
Shell स्क्रिप्ट् इत्यस्य निर्माणं सम्पन्नं कृत्वा स्क्रिप्ट् इत्यस्य अनुमतिः दातव्या अस्ति ।chmod +x test.sh
, ततः प्रविशतु./test.sh restore xtuner0.1.17
तथा च वर्चुअल् वातावरणं पुनःस्थापयितुं Enter नुदन्तु ।
परन्तु प्रत्यक्षप्रयोगात् एतत् बहु भिन्नं नास्ति यदि एतस्य क्रियायाः तुलना विकासयन्त्रे क्रियायाः सह क्रियते ।studio-conda
आदेशानां संयोजनम् अतीव सुलभं भविष्यति, परन्तु वातावरणस्य प्रतिलिपिकरणस्य पद्धतयः भिन्नाः सन्ति ।अतः यदि भवान् तत् कार्यान्वितुं इच्छति तर्हि भवता करणीयम्/share/install_conda_env.sh
सञ्चिकायाः तर्कः परिवर्तितः भवति ।
ठीकम्, उपरिष्टाद् अस्माकं स्तरस्य सर्वा सामग्री अस्ति इति आशासे यदि भवान् Linux विषये अधिकं ज्ञातुम् इच्छति तर्हि अहं न पठामि Linux ज्ञात्वा अस्माकं कृते शिक्षणं सहायकं भविष्यति बृहत् मॉडल् इत्यस्य बहु प्रभावः नास्ति, परन्तु यदि भवान् Linux सम्यक् शिक्षते तर्हि बृहत् मॉडल् इत्यस्य शिक्षणं अतीव सुचारुरूपेण करिष्यति। अन्ते वयं पूर्वं निर्धारितं स्तरं पूर्णं कर्तुं मा विस्मरन्तु!
ब्लोग् लिङ्क् : १.linux इति
सावधानीपूर्वक निष्पादित करें ! ! ! !सर्वे दत्तांशाः नष्टाः भविष्यन्ति।एतत् केवलं InternStudio मञ्चे एव उपलभ्यते।
rm -rf /root
, प्रतीक्षां कर्तुं प्रायः १० निमेषाः यावत् समयः स्यात्ln -s /share /root/share
स्तरस्य मिशनं उत्तीर्णं कर्तुं भवद्भिः प्रमुखपदेषु स्क्रीनशॉट् ग्रहीतुं आवश्यकम् अस्ति:
मिशनस्य विवरणम् | पूर्णतायै समयः आवश्यकः | |
---|---|---|
नियोग | SSH संयोजनं पोर्ट् मैपिंगं च सम्पूर्णं कृत्वा चालयन्तुhello_world.py | १०मि |
वैकल्पिकं कार्यम् 1 | विकासयन्त्रे मूलभूतं Linux आदेशं सम्पूर्णं कुर्वन्तु | १०मि |
वैकल्पिकं कार्यम् २ | विकासयन्त्रेण सह दूरतः सम्बद्धं कर्तुं तथा च कोण्डा वातावरणं निर्मातुं VSCODE इत्यस्य उपयोगं कुर्वन्तु | १०मि |
वैकल्पिकं कार्यम् 3 | रचयित्वा चालयन्तुtest.sh प्रलेख | १०मि |