TL; DR : มีพื้นที่สีเทามากมายและขึ้นอยู่กับสิ่งที่คุณทำ ส่วนใหญ่ศูนย์ซอฟต์แวร์และวิธีบรรทัดคำสั่งทำสิ่งที่คล้ายกันเมื่อมาถึง.deb
แพ็คเกจ แต่แพคเกจซอฟต์แวร์อื่น ๆ อาจต้องใช้ขั้นตอนที่แตกต่างกัน
ความแตกต่างระหว่างการติดตั้งซอฟต์แวร์ในศูนย์ซอฟต์แวร์ Ubuntu และบรรทัดคำสั่งคืออะไร
นี่คือความจริง: การติดตั้งไม่มีอะไรมากไปกว่าการทิ้งไฟล์ที่มาพร้อมกับชุดซอฟต์แวร์ลงในไดเรกทอรีที่เหมาะสม ไม่สำคัญว่าจะทำผ่านบรรทัดคำสั่งหรือผ่าน Software Center - พวกเขาทำสิ่งเดียวกัน - โยนไฟล์ลงในไดเรกทอรีที่เกี่ยวข้อง สิ่งที่สำคัญคือแพคเกจและวิธีจัดการกับมัน ที่นี่ฉันจะพูดถึงแพ็คเกจพื้นฐานที่คุณสามารถจัดการกับ Ubuntu ได้ สำหรับความแตกต่างระหว่างบรรทัดคำสั่งและศูนย์ซอฟต์แวร์ความแตกต่างพื้นฐานที่สุดคือในศูนย์ซอฟต์แวร์ที่คุณคลิกปุ่ม ในบรรทัดคำสั่งคุณพิมพ์คำสั่ง ฉันรู้ว่า Software Center ใช้รหัสหลามจำนวนมาก แต่ในบรรทัดคำสั่งมันขึ้นอยู่กับยูทิลิตี้ที่คุณใช้ นอกจากนี้ยังมีจำนวนศูนย์ซอฟต์แวร์ที่สามารถลบได้ (อ่านด้านล่างเกี่ยวกับเรื่องนั้น)
แพคเกจซอฟต์แวร์สำหรับ Ubuntu สามารถมาได้สามวิธี: .deb
ไฟล์.run
ไฟล์และเพียงแค่ซอร์สโค้ดดิบในการบีบอัดzip
หรือtar
เก็บถาวร การติดตั้งบรรทัดคำสั่งอาจมีความเจ็บปวดได้ไม่มากก็น้อย นี่ไม่ใช่สิ่งที่คุณเป็นผู้ใช้ใหม่ควรกังวลอย่างน้อยในปีแรกของการใช้ Linux
คุณจะเห็น.deb
ไฟล์ส่วนใหญ่- เป็นแพ็กเกจซอฟต์แวร์ที่รวบรวมไว้ล่วงหน้าพร้อมใช้งาน สิ่งเหล่านี้เจ็บปวดน้อยกว่า พวกเขามักจะระบุการพึ่งพา - ซอฟต์แวร์อื่น ๆ ที่ไม่มีโปรแกรมของคุณจะไม่ทำงาน อรรถประโยชน์บรรทัดคำสั่งเช่นapt
และapt-get
จะติดตั้งการพึ่งพาโดยอัตโนมัติสำหรับคุณ ในความเป็นจริงแล้ว Software Center ใช้apt-get
เป็นแบ็คเอนด์ดังนั้นจึงติดตั้งการพึ่งพาโดยอัตโนมัติ
.run
ไฟล์มักเป็นไฟล์ไบนารีที่เป็นกรรมสิทธิ์และเข้ารหัส คุณไม่สามารถเห็นสิ่งที่พวกเขากำลังทำ
ด้วยซอร์สโค้ดดิบคุณต้องทำทุกอย่างด้วยตัวเอง - สร้างซอฟต์แวร์และติดตั้งการพึ่งพา
นอกจากนี้ยังมีวิธีในการติดตั้งแพคเกจจาก distros อื่น ๆ เช่น.rpm
แพ็คเกจ แต่ทำได้ไม่บ่อยนัก
นอกจากนี้ยังมีคลาสของซอฟต์แวร์ที่เรียกว่าคอนเทนเนอร์ มีนักเทียบท่าและlxd
ตู้คอนเทนเนอร์ เมื่อเร็ว ๆ นี้ Ubuntu ได้เปิดตัวsnap
แพ็คเกจที่รู้จักกันดี สิ่งที่ดีเกี่ยวกับสิ่งเหล่านั้นคืออะไร? สามารถทำงานได้ทุกที่แยกจากระบบหลักของคุณอย่างปลอดภัยและสามารถติดตั้ง / ติดตั้งใหม่ได้อย่างรวดเร็ว ซอฟต์แวร์ประเภทนี้ไม่สามารถติดตั้งผ่าน Software Center และโดยทั่วไปสำหรับผู้ดูแลระบบมืออาชีพหรือผู้ใช้งานด้านเทคนิค / ขั้นสูง ในฐานะผู้ใช้ใหม่คุณไม่ต้องกังวลเกี่ยวกับสิ่งเหล่านั้นเพียงแค่รับรู้ว่าพวกเขามีอยู่และพวกเขายอดเยี่ยม :)
ในที่สุดบางอย่างเช่นสคริปต์ (และโดยทั่วไปจะเป็นไฟล์เดียว) ก็อาจถูกพิจารณาว่าเป็นแอปพลิเคชันและอีกครั้ง - การติดตั้งนั้นไม่มีอะไรมากไปกว่าการขว้างปาไฟล์นั้นในที่ที่มันเป็นของหรือควรจะเป็นของมัน
เหตุใดซอฟต์แวร์บางตัวที่ติดตั้งโดยใช้บรรทัดคำสั่งไม่สามารถค้นหาได้ในศูนย์ซอฟต์แวร์ (กดปุ่มหน้าต่าง)
อีกครั้งนี้ขึ้นอยู่กับแพคเกจ หากนักพัฒนาซอฟต์แวร์ตัดสินใจรวม.desktop
ไฟล์ไว้ในแพ็คเกจของพวกเขาคุณจะสามารถค้นหาได้ใน Dash .desktop
ไฟล์ต่าง ๆ เช่นทางลัดของ Windows แม้ว่ามันจะทำอะไรได้มากกว่า ตัวอย่างที่ดีของยูทิลิตีบรรทัดคำสั่งที่มาพร้อมกับ.desktop
ไฟล์คือ Byobu ซึ่งเป็นโปรแกรมที่มีประโยชน์มากสำหรับการแยกเทอร์มินัลออกเป็นแท็บ / หน้าต่างพิเศษ
อย่างไรก็ตามคุณสามารถสร้าง.desktop
ไฟล์ของคุณเองสำหรับแต่ละโปรแกรมและวางลงใน~/.local/share/applications/
โฟลเดอร์
สิ่งนี้ไม่เกี่ยวข้องกับแอพที่เป็นบรรทัดคำสั่งหรือ GUI ขึ้นอยู่กับตัวเลือกที่ผู้พัฒนาแอพทำขึ้น
คำสั่งที่ถูกต้องในการติดตั้งซอฟต์แวร์จากบรรทัดคำสั่งคืออะไรเพื่อให้ฉันสามารถค้นหาได้
อีกครั้งขึ้นอยู่กับสิ่งที่คุณทำ หากคุณกำลังติดตั้งซอฟต์แวร์จากที่เก็บ Ubuntu อย่างเป็นทางการคุณก็สามารถทำได้sudo apt-get install my-software
หากคุณกำลังติดตั้ง.deb
แพคเกจที่คุณอาจจะใช้อย่างใดอย่างหนึ่งคำสั่งหรือdpkg
apt-get
นี่คือตัวอย่างของฉันที่ติดตั้งแพ็คเกจ deb google-chrome ด้วย apt-get หมายเหตุ : ในขณะที่ทำการติดตั้งฉันอยู่ในไดเรกทอรีเดียวกันกับ.deb
ไฟล์ดังนั้นต้องระบุชิ้น./
ส่วน
$ sudo apt-get install ./google-chrome-stable_current_amd64.deb
[sudo] password for xieerqi:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'google-chrome-stable' instead of './google-chrome-stable_current_amd64.deb'
The following NEW packages will be installed:
google-chrome-stable
0 upgraded, 1 newly installed, 0 to remove and 54 not upgraded.
Need to get 0 B/50.0 MB of archives.
After this operation, 190 MB of additional disk space will be used.
Get:1 /home/xieerqi/下载/google-chrome-stable_current_amd64.deb google-chrome-stable amd64 53.0.2785.101-1 [50.0 MB]
Selecting previously unselected package google-chrome-stable.
(Reading database ... 476104 files and directories currently installed.)
Preparing to unpack .../google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (53.0.2785.101-1) ...
Processing triggers for menu (2.1.47ubuntu1) ...
Processing triggers for bamfdaemon (0.5.3~bzr0+16.04.20160701-0ubuntu1) ...
Rebuilding /usr/share/applications/bamf-2.index...
Processing triggers for gnome-menus (3.13.3-6ubuntu3.1) ...
Processing triggers for desktop-file-utils (0.22-1ubuntu5) ...
Processing triggers for mime-support (3.59ubuntu1) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up google-chrome-stable (53.0.2785.101-1) ...
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/x-www-browser (x-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/gnome-www-browser (gnome-www-browser) in auto mode
update-alternatives: using /usr/bin/google-chrome-stable to provide /usr/bin/google-chrome (google-chrome) in auto mode
Processing triggers for menu (2.1.47ubuntu1) .
เป็นสิ่งที่ดีเกี่ยวกับapt-get
อะไร มี--purge
ตัวเลือกที่อนุญาตให้คุณลบทุกอย่างที่เกี่ยวข้องกับโปรแกรม ตัวอย่างเช่นถ้าฉันเพิ่งลบออกด้วยsudo apt-get remove google-chrome-stable
หรือทำผ่าน Software Center มันอาจทิ้งไฟล์ config ไว้ดังนั้นเมื่อคุณติดตั้งซอฟต์แวร์ใหม่มันก็พร้อมใช้งานเหมือนก่อนหน้านี้ --purge
ตัวเลือกจะลบไฟล์กำหนดค่าด้วย สะดวกถ้าซอฟต์แวร์ของคุณพังและคุณต้องการติดตั้งใหม่ทั้งหมด ศูนย์ซอฟต์แวร์ไม่ได้ทำเช่นนั้นจึงเป็นข้อแตกต่างอีกประการหนึ่ง
หากคุณกำลังจัดการกับ.run
ไฟล์คุณจะต้องทำให้ไฟล์นั้นทำงานได้และเรียกใช้ แบบนี้:
$ sudo chmod +x ./software.run
$ sudo ./software.run
ฉันสำรองข้อมูลและคืนค่าระบบของฉันหนึ่งครั้ง แต่คำสั่งบางคำสั่งใช้งานได้ก่อน (เช่น "subl") ไม่ทำงานหลังจากกู้คืนระบบ
ขึ้นอยู่กับประเภทของการสำรองข้อมูลที่คุณทำ หากการสำรองข้อมูลของคุณมีไฟล์ทั้งหมดที่จำเป็นต่อsubl
การทำงานแล้วมันก็น่าจะใช้ได้ อาจเป็นไปได้ว่าการสำรองข้อมูลของคุณเกิดขึ้นก่อนที่จะsubl
ถูกติดตั้ง ให้แน่ใจว่าคุณกำหนดค่าการสำรองข้อมูลของคุณอย่างถูกต้อง
ฉันคิดว่าคำถามเหล่านี้เกี่ยวกับ $ PATH แต่ฉันไม่สามารถหาเนื้อหาเกี่ยวกับเรื่องนี้ วัสดุพิเศษใด ๆ ที่จะได้รับการชื่นชม
$PATH
ตัวแปรมีความเกี่ยวข้องกับเปลือก (แปลคำสั่งที่คุณใส่คำสั่ง) ไม่เกี่ยวข้องกับ Unity Dash จริงๆ $PATH
ตัวแปรเป็นรายการไดเรกทอรีจริงๆโดยที่เชลล์จะค้นหาโปรแกรมที่มีชุดสิทธิ์อนุญาตการใช้งาน Dash เกี่ยวข้องกับ.desktop
ไฟล์จริงๆเท่านั้น ตัวอย่างเช่นฉันสามารถมีโปรแกรมนั่งใน/usr/bin
โฟลเดอร์และสามารถเปิดผ่านทางบรรทัดคำสั่ง แต่ Dash จะไม่เพราะไม่มี.desktop
ไฟล์ที่เกี่ยวข้อง
หากคุณต้องการหาข้อมูลเพิ่มเติมเกี่ยวกับการ$PATH
รับหนังสือเกี่ยวกับสคริปต์เปลือก Linux เป็นหนึ่งในรายการความรู้พื้นฐานสำหรับผู้ใช้ Linux ที่ต้องการใช้บรรทัดคำสั่ง
บางความคิดปิด : ความซับซ้อนของการติดตั้งซอฟต์แวร์สำหรับ Linux บางครั้งอาจทำให้ผู้ใช้ใหม่ที่มาจาก Windows หรือ Mac ตกตะลึง ในความเป็นจริงมันเป็นหลักการเดียวกัน - ทิ้งทุกอย่างที่มันเป็นและมันจะทำงานได้ คุณไม่พบทางลัดไปยังโปรแกรมของคุณใช่ไหม ทำหนึ่ง - มันเป็นเพียงไฟล์ข้อความ! คอมพิวเตอร์เป็นเครื่องจักรและพวกเขาตั้งใจที่จะดำเนินการ Windows ยังมี%PATH%
ตัวแปรสำหรับบรรทัดคำสั่งของคุณคุณไม่เคยรู้เกี่ยวกับมันเพราะบรรทัดคำสั่งของ Windows มีความหลากหลายน้อยกว่าและใช้น้อยกว่าบน Linux กล่าวโดยย่ออย่ากลัวทุกสิ่งที่คุณเห็นเพราะพื้นฐานทุกวันมันเป็นคำสั่งหรือการกระทำที่ใช้บ่อยที่สุดประมาณ 20% และพวกเขาให้งานถึง 80%