วิธีสร้างสคริปต์หลังการติดตั้ง

เฮ้ สวัสดี GNU / Linuxeros วันนี้ฉันมาพร้อมกับรายการที่มีประโยชน์และรวดเร็วเป็นพิเศษซึ่งจะมีประโยชน์อย่างมากเมื่อกระโดดจาก Distro หนึ่ง (หรือการกระจาย) ไปยังอีกเครื่องหนึ่ง (Distro-hopping) หรือเมื่อฟอร์แมตพีซีด้วยการกระจายเดียวกัน ฉันหยุดเต้นไปรอบ ๆ พุ่มไม้แล้วเราก็เริ่มกันเลย

สคริปต์นี้ใช้เพื่อติดตั้งโปรแกรมโดยอัตโนมัติเมื่อคุณเรียกใช้สคริปต์ซึ่งมีประโยชน์มากสำหรับนักกลั่นอย่างฉัน

ด้วยคำสั่งนี้เราสร้างไฟล์ install.sh (.sh เป็นไฟล์ bash)

touch install.sh

และด้วยคำสั่งนี้เราทำให้ไฟล์ install.sh ทำงานได้ sudo เพราะมิฉะนั้นจะไม่อนุญาตให้เราแก้ไขสิทธิ์

sudo chmod a+x install.sh

ที่นี่คุณเลือกโปรแกรมแก้ไขข้อความที่คุณชอบมากที่สุด: vim, nano, emacs, kate, gedit ... คุณรู้จักคนที่คุณชอบมากที่สุดและฉัน sudo เพื่อบันทึกการเปลี่ยนแปลงสำหรับส่วนของฉันฉันจะเลือก เป็นกลุ่ม

sudo vim install.sh

เมื่อเรากำลังแก้ไขที่จุดเริ่มต้นของทุกสิ่งที่เราต้องเขียน

#!/bin/bash

แล้ว

# -*- ENCODING: UTF-8 -*-

ต่อไปอีกหน่อยเราเขียนคำสั่งเพื่ออัปเดตการแจกจ่ายของเรา:

debian, อูบุนตู และอีกหลายล้าน อนุพันธ์ :

su && apt update && apt upgrade

CentOS y หมวกสีแดง ชอบ:

sudo yum update

ใน Fedora เวอร์ชันล่าสุดได้มีการแนะนำ dnf ซึ่งเป็นลูกโดยตรงของยำ

Fedora:

sudo dnf update

OpenSUSE:

sudo zypper update

Arch ลินุกซ์, Manjaro, Antergos, KaOS ...:

sudo pacman -Syu o yaourt -Syua

หรืออื่น ๆ เช่น Gentoo หรือ Slackware ใช้คำสั่งอัพเดตและการติดตั้ง ... ในกรณีของฉันฉันใช้ Arch Linux ดังนั้นในสคริปต์ของฉันควรเป็น:

Snap1

หลังจากเขียนเสร็จเราจะแบ่งประเภทโปรแกรมที่จะติดตั้งออกเป็น 7 ประเภท:

  1. ยูทิลิตี้
  2. อินเทอร์เน็ต
  3. เกมส์
  4. DE (สภาพแวดล้อมเดสก์ท็อปหรือเดสก์ท็อป)
  5. มัลติมีเดีย
  6. ผลผลิต
  7. พัฒนาการ

พวกเราเขียน:

# ยูทิลิตี้ # การพัฒนา # อินเทอร์เน็ต # เกม # DE และ WM # มัลติมีเดีย # ผลผลิต

เราใส่สิ่งนี้เพื่อจัดประเภทแอปพลิเคชันและยูทิลิตี้เป็นกลุ่มให้ดีขึ้นเล็กน้อยต่อมาเราเขียนคำสั่งการติดตั้งตามการกระจายของแพ็คเกจที่เราต้องการโดยปกติคุณควรรู้ว่าการแจกจ่ายของคุณคืออะไรและจะติดตั้งแพ็คเกจอย่างไรเพื่อให้เราติดตั้ง เราต้องการตัวอย่างเช่นโครเมียมไอน้ำและ gnome-shell

sudo pacman -S โครเมียม sudo pacman -S ไอน้ำ sudo pacman -S gnome-shell gnome-extra

ในตอนท้ายเราบันทึกสคริปต์ของเราและ:

cd (สคริปต์อยู่ที่ไหน) && ./install.sh

ตัวอย่างคือ:

Snap2

ทั้งหมดนี้สำหรับวันนี้ฉันหวังว่าคุณจะพบว่ามีประโยชน์มากและพบกันในโพสต์อื่น


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   อิกนาซิโอ dijo

    รายการที่ดีมากสำหรับพวกเราที่ไม่มีความคิดมากนัก แต่พวกเราชอบที่จะแยกส่วนติดตั้งสิ่งต่างๆและในที่สุดก็ทำลายการกระจายฮ่า ๆ ๆ ๆ

    1.    เอรุซามะ dijo

      นี่เป็นฐานที่ง่ายที่สุดในภายหลังสามารถทำให้ซับซ้อนมากขึ้นได้

  2.   นักล่า dijo

    ฉันมีของฉันสำหรับ Debian แต่มันสามารถแก้ไขได้ค่อนข้างง่ายสำหรับ distro อื่น ๆ

    https://github.com/xr09/kaos

    1.    เอรุซามะ dijo

      ขอบคุณสำหรับการแสดงความคิดเห็นฉันได้เห็นสคริปต์ของคุณและจากนั้นฉันจะสร้างสคริปต์ที่ซับซ้อนของฉัน
      ฉันได้เห็นบล็อกของคุณเช่นกันและเป็นการดีถ้าฉันมีข้อสงสัยเกี่ยวกับ PyQT ฉันรู้ว่าจะถามใคร

      1.    นักล่า dijo

        ฉันดีใจที่มันทำหน้าที่เป็นฐานสคริปต์นั้นได้รับแรงบันดาลใจจากสิ่งที่ฉันเห็นในที่ทำงานเพื่อติดตั้ง Fedora ที่ดีมาก ชื่อที่ฉันใส่ "KaOS" ไม่มีส่วนเกี่ยวข้องกับดิสโทรอันที่จริงฉันคิดว่าเมื่อฉันเริ่มสคริปต์ดิสโทรยังไม่ได้รับการประกาศ

  3.   มานูเอลบลังโกมอนเตโร dijo

    Lihuen กับสภาพแวดล้อมเดสก์ท็อป► LXDE พร้อมการรวม► LibreOffice
    พวกเขาเข้ากันได้ดีมากมันเป็นความสำเร็จที่รวดเร็วและสมบูรณ์มากฉันกำลังติดตั้งหลายคนและฉันกำลังใช้อยู่เวอร์ชันนี้เป็นเวอร์ชันเดียวในโลกที่ได้รับการเผยแพร่พร้อมกับสภาพแวดล้อมนี้: LXDE จึงมีประสิทธิภาพร่วมกับ LibreOffice ลินุกซ์ภาษาสเปนทั้งหมด
    เช่น Canaima; ทริสเควล; GuadaLinex; lliurex ใช้สภาพแวดล้อมที่หนักมากและช้าเช่น GNone และ KDE เป็นค่าเริ่มต้น%
    พวกเขาไม่มีคุณสมบัติในการออกแบบเหมือนอย่างที่เคยมีคุณเป็นคนเดียวที่คิดจะทำให้ Linux ที่เร็วและเสถียรเป็นไปได้
    และด้วยแพ็คเกจโปรแกรมที่มีประโยชน์มากบนแพลตฟอร์ม: 32Bit & 64Bit
    และแบ่งออกเป็นสี่ Needs Desktop Lihuen LXDE และ Lihuen Educational Applications และ Linux สำหรับนักเรียน Informatica
    = ฉันจินตนาการถึงโลกที่ใช้สิ่งแวดล้อมเป็นฐาน: LXDE และ Cinnamon
    -> ฉันขอแสดงความยินดีกับคุณระบบปฏิบัติการที่ยอดเยี่ยมพวกเขาเอา UD / s ออกมา
    ขอบคุณพระเจ้าที่ฉันจ่ายเงินให้พวกเขา ...
    "หวังว่ารัฐบาลเวเนซุเอลาจะใช้ Linux Lihuen นี้และวางไว้ใน Canaima และส่งเสริมในเวเนซุเอลาในประชากรและในสถาบันสาธารณะและในบ้านเพื่อความรวดเร็ว"
    -> ฉันจะโปรโมตในมหาวิทยาลัยในรัฐของฉันและในเพื่อน ๆ และครอบครัวของฉันฉันชอบวิธีการติดตั้งที่รวดเร็วและง่ายดาย
    มีคิวการนำเสนอ
    -> ขอบคุณสำหรับช่วงเวลาดีๆจากเวเนซุเอลา -> Trujillo State
    Q รับ Linux Lihuen เสมอฉันจะดาวน์โหลดและใช้งานและแนะนำทุกคน Q Know Q ใช้พีซี

  4.   ชาวสเปนอิตาเลียนหรือโปรตุเกส dijo

    คำชี้แจง KaOS ไม่ใช้ yaourt เนื่องจากไม่ได้ใช้ Arch จึงใช้ kcp
    อาศิรพจน์

    1.    เอรุซามะ dijo

      ฉันรู้ว่าฉันใช้ KaOS มาระยะหนึ่งแล้วมันบอกว่า pacman เป็นเรื่องธรรมดาระหว่างสอง distros yaourt เป็นเรื่องปกติของ Arch และ kcp คือ KaOS, kcp -i package

  5.   สวิชเชอร์ dijo

    ฉันไม่รู้ในการแจกแจงอื่น ๆ แต่ด้วย Gentoo ปัญหานั้นง่ายกว่าเล็กน้อยเนื่องจากการแสดงรายการโปรแกรมที่ติดตั้งทั้งหมดก็เพียงพอที่จะทำ
    cat /var/lib/portage/world
    เช่น ดังนั้น ไฟล์โลกของฉันมีลักษณะอย่างไร (รวมการจัดหมวดหมู่ไว้แล้ว)
    สำหรับสคริปต์ฉันจะปรับปรุงเล็กน้อยโดยใช้อาร์เรย์ดังนี้:
    declare -a paquetes

    Si bien pareciera que las categorías están dentro del array, estas son ignoradas ya que son comentarios

    paquetes=(

    categoría1

    paquete1
    paquete2
    paquete3

    categoría2

    paquete4
    paquete5
    )

    Iteramos sobre el array para instalar los paquetes secuencialmente

    for contador in ${!paquetes[@]}
    do
    sudo apt-get install ${paquetes[$contador]}
    done

    นอกจากนี้ยังช่วยให้เปลี่ยนคำสั่งการติดตั้งได้ง่ายขึ้น (อีกปัญหาหนึ่งคือหากแพ็กเกจใช้ชื่อเดียวกันในการแจกแจงที่ต่างกัน)
    และในการติดตั้งแพ็คเกจทั้งหมดในเวลาเดียวกันคุณสามารถเปลี่ยน for loop ของรหัสก่อนหน้าสำหรับสิ่งนี้:
    sudo apt-get install $(echo ${paquetes[@]})

    Seria lo mismo que escribir sudo apt-get install paquete1 paquete2 paquete3...

    หากคุณต้องการใช้อักขระอื่นเป็นตัวคั่นแทนช่องว่างด้วยเหตุผลบางประการ ที่นี่ มีการอธิบายวิธีการบางอย่าง

    1.    สวิชเชอร์ dijo

      เห็นได้ชัดว่า WordPress ตีความการแบ่งบรรทัดและตัวเลข / แผ่นรองตามที่ต้องการภายในโค้ดแท็ก (หรือฉันทำอะไรผิดพลาด) ฉันแค่ใส่รหัสสคริปต์ ที่นี่ เพื่อให้เข้าใจได้ดีขึ้น

      1.    เอรุซามะ dijo

        Gracias por El aporte

  6.   อินุคาเสะ dijo

    คุณสามารถทำสิ่งที่สมบูรณ์ยิ่งขึ้นได้โดยใช้ bash ตัวอย่างเช่นฉันเน้นว่ามันเป็นเพียงตัวอย่างเดียว:

    คุณสามารถทำสิ่งที่สมบูรณ์ยิ่งขึ้นได้โดยใช้ bash เป็นต้น

    #! / bin / ทุบตี

    -- การเข้ารหัส: UTF-8 --

    Title = »โปรแกรมปรับปรุง Distros หรือ Derivatives »
    คำถาม = »กรุณาเลือกตัวเลือก: »
    Distros = (
    ArchLinux
    “ เดเบียน”
    "CentOS"
    "Fedora"
    "OpenSuSE"
    "ออกไป"
    )

    ฟังก์ชัน distro () {

    ตรวจสอบว่า / etc / issue อยู่หรือไม่

    if test -f /etc/issue
    then

    DISTRO_DESTINO="Manjaro Linux"
    DISTRO_ISSUE=$(cat /etc/issue | grep "$DISTRO_DESTINO" | cut -d " " -f01,02)

    if [ $DISTRO_ISSUE = $DISTRO_DESTINO ] then
    DISTRO=ArchLinux
    fi

    DISTRO_DESTINO="Debian"
    DISTRO_ISSUE=$(cat /etc/issue | grep "$DISTRO_DESTINO" | cut -d " " -f01)

    if [ $DISTRO_ISSUE = $DISTRO_DESTINO ] then
    DISTRO=Debian
    fi

    DISTRO_DESTINO="Ubuntu"
    DISTRO_ISSUE=$(cat /etc/issue | grep "$DISTRO_DESTINO" | cut -d " " -f01,02)

    if [ $DISTRO_ISSUE = $DISTRO_DESTINO ] then
    DISTRO=Debian
    fi

    DISTRO_DESTINO="Elementary"
    DISTRO_ISSUE=$(cat /etc/issue | grep "$DISTRO_DESTINO" | cut -d " " -f01,02)

    if [ $DISTRO_ISSUE = $DISTRO_DESTINO ] then
    DISTRO=Debian
    fi

    DISTRO_DESTINO="Fedora"
    DISTRO_ISSUE=$(cat /etc/issue | grep "$DISTRO_DESTINO" | cut -d " " -f01)

    if [ $DISTRO_ISSUE = $DISTRO_DESTINO ] then
    DISTRO=Fedora
    fi

    สิ้นสุด "ตรวจสอบว่า / etc / issue อยู่"

    fi

    หากไม่มีให้ส่งกลับข้อความ "Unknown Distro"

    อื่น

    echo '
    Distro desconocida
    '

    fi
    }

    Update_Distro () {

    case $1 in
    ArchLinux)
    sudo pacman -Syu
    yaourt -Syua
    ;;
    Debian)Versiones
    sudo apt-get update
    sudo apt-get -y upgrade
    ;;
    CentOS)
    sudo yum update
    ;;
    Fedora)
    sudo dnf update
    ;;
    OpenSuSE)
    sudo zypper update
    ;;
    esac

    }

    ไปจนถึงจุดสิ้นสุด😀

    เสียงสะท้อน
    echo 'กรุณาใช้หมายเลข'
    echo 'เพื่ออัปเดต Distro ที่ต้องการ'
    เสียงสะท้อน
    ก้อง "$ Title"
    PS3 = » $ คำถาม»

    เลือกตัวเลือกใน "$ {Distros [@]}"; ทำ
    printf "\ n"
    กรณี "$ REPLY" ใน

    1 ) echo "Has escogido la Opcion Numero : $REPLY" $'\n' "$(Actualizar_Distro $Opcion)" $'\n' $'\n\n' "$DISTRO La distro ha sido actualizada por Inukaze (De Venezuela)" $'\n'; break;;
    2 ) echo "Has escogido la Opcion Numero : $REPLY" $'\n' "$(Actualizar_Distro $Opcion)" $'\n' $'\n\n' "$DISTRO La distro ha sido actualizada por Inukaze (De Venezuela)" $'\n'; break;;
    3 ) echo "Has escogido la Opcion Numero : $REPLY" $'\n' "$(Actualizar_Distro $Opcion)" $'\n' $'\n\n' "$DISTRO La distro ha sido actualizada por Inukaze (De Venezuela)" $'\n'; break;;
    4 ) echo "Has escogido la Opcion Numero : $REPLY" $'\n' "$(Actualizar_Distro $Opcion)" $'\n' $'\n\n' "$DISTRO La distro ha sido actualizada por Inukaze (De Venezuela)" $'\n'; break;;
    5 ) echo "Hasta La Proxima!" $'\n' && break;;
    Salir ) echo "Hasta La Proxima!" $'\n' && break;;
    $(( ${#Distros[@]}+1 )) ) echo && echo "Hasta Luego!" && echo; break;;
    *) echo "Opcion Invilada. Por Favor Elige Una Opcion Valida." $'\n';continue;;
    esac

    ทำ
    fi

    สิ้นสุดตัวอย่าง ฉันขอแนะนำว่าหากคุณกำลังจะทำอะไรที่ซับซ้อนและซับซ้อนในกรณีนั้นคุณควรใช้ "กล่องโต้ตอบ" เพื่อสร้างโปรแกรมติดตั้งแบบข้อความเช่นเดียวกับที่ Debian

    คุณสามารถดูตัวอย่างได้ที่นี่ -> http://bash.cyberciti.biz/guide/Bash_display_dialog_boxes

    1.    เอรุซามะ dijo

      ฉันรู้ว่าจะทำอะไรได้บ้างถ้าเป็นเช่นนั้นฉันจะทำมันด้วยตัวเองอย่างไรฉันจะสร้างสคริปต์ให้สมบูรณ์ที่สุดเท่าที่จะเป็นไปได้พร้อมกับสิ่งที่แตกต่างทั้งหมดที่ฉันรู้และขอบคุณสำหรับความช่วยเหลือคุณได้ชี้แจงฉัน ต้องทำอย่างไรบ้างเมื่อฉันเขียนบทเสร็จฉันจะส่งต่อให้คุณ

  7.   ก่อกวน dijo

    สนใจ Slackware ตรงนี้! คนที่จะช่วย?

    1.    เอรุซามะ dijo

      ฉันคิดว่าด้วย sabopkg - ฉันเป็นแพ็คเกจแทนที่จะเป็น apt get หรือ pacman และเพื่ออัปเดตฉันไม่รู้ฉันยังไม่ได้ผ่าน distro นั้น

  8.   ลึก dijo

    @eruzama

    เป็นแนวทางที่ยอดเยี่ยมสำหรับโพสต์นี้ฉันชอบมันมากนั่นคือโหมดโดยใช้คำสั่งที่ FreeBSD Unix เคลื่อนไหวตอนนี้ฉันค่อยๆเข้าใจเกี่ยวกับสคริปต์คุณสามารถทำแบบเดียวกันใน FreeBSD Unix ได้หรือไม่ฉันต้องการ GUI ของ เช่นการกำหนดค่าและปรับแต่งเดสก์ท็อป Fluxbox และ LXDE บนระบบเช่น Gentoo หรือ Slackware แต่วิกิจะสร้างความสับสนให้กับผู้ใช้ใหม่

  9.   เดฟริเวร่า dijo

    เกรดดีมาก. เมื่อเร็ว ๆ นี้ฉันต้องติดตั้งระบบปฏิบัติการใหม่และพบปัญหาในการติดตั้งทุกสิ่งที่ต้องการใหม่ดังนั้นให้สร้างสคริปต์หลังการติดตั้ง: https://gist.github.com/daverivera/7d47761a98c3dd995225#file-install-sh

    สร้างขึ้นสำหรับ Arch กำหนดค่าและติดตั้งแพ็คเกจบางอย่าง มันถูกสร้างขึ้นจากฟังก์ชันที่สามารถแสดงความคิดเห็นเพื่อใช้เฉพาะที่จำเป็นเท่านั้น ทันใดนั้นยังสามารถให้บริการใครบางคนเป็นฐาน

  10.   Jaraneda dijo

    บทความนี้น่าสนใจมากฉันคิดว่าสิ่งที่ดีที่สุดคือสคริปต์สามารถรับรายการสิ่งที่ติดตั้งและบันทึกไว้สำหรับการจัดรูปแบบในอนาคตมันจะติดตั้งสิ่งที่มาจากรายการนั้นนั่นคือเหตุผลที่ฉันไม่ได้เปลี่ยนระยะห่างเมื่อเร็ว ๆ นี้
    ขอบคุณมาก

  11.   กานนน dijo

    โพสต์ที่ดี 10 คะแนนที่ชื่นชอบแล้วคมแห่งภูเขา

    ฉันจะขุดลึกลงไปในสคริปต์เหล่านี้เพื่อสร้างของฉันสำหรับ Ubuntu
    ฉันจำได้ว่าในหน้า Slice of Linux พวกเขาเคยใส่สคริปต์เหล่านั้นในโพสต์ของ«สิ่งที่ต้องทำหลังจากติดตั้ง ... »

  12.   นอสเฟอราทักซ์ dijo

    ทักทายชุมชน .. !!

    ว้าว. !!
    ฉันเห็นว่าสคริปต์นี้ซับซ้อนและสมบูรณ์เท่าที่คุณต้องการเมื่อฉันได้อ่านความคิดเห็น
    ตัวอย่างเช่นฉันพบสคริปต์หลังการติดตั้งสำหรับ xubuntu ที่รวมถึงรหัสสีเพื่อให้ดูเรียบร้อยมากขึ้นสมมติว่าฉันกล้าเล่นด้วยซ้ำ

    ที่นี่ฉันต้องการคิดว่าฉันสามารถสร้างสคริปต์แรกที่โดยใช้เงื่อนไข if แล้ว fi สามารถตรวจสอบได้ก่อนว่ามันคืออะไรและอยู่ในเงื่อนไขที่เกี่ยวข้อง เรียกใช้สคริปต์ที่เหมาะสมสำหรับการติดตั้งแพ็กเกจบน distro ที่เกี่ยวข้อง

    สิ่งนี้เพื่อให้ง่ายที่สุดเท่าที่จะเป็นไปได้และสคริปต์ดังกล่าวไม่ได้กว้างขวางหรือซับซ้อนมากนักและง่ายต่อการบำรุงรักษา / อัปเดต