インストール後のスクリプトを作成する方法

ねえこんにちはGNU / Linuxeros、今日私は非常に便利で超高速のエントリが付属しています。これは、あるディストリビューション(またはディストリビューション)から別のディストリビューション(ディストリビューションホッピング)にジャンプするとき、または同じディストリビューションでPCを再フォーマットするときに確かに非常に便利です。茂みの周りを殴るのをやめて、始めます。

このスクリプトは、スクリプトの実行時にプログラムを自動的にインストールするために使用され、私のようなディストリビューションホッパーにとって非常に便利です。

このコマンドを使用して、install.shファイルを作成します(.shはbashファイルです)

touch install.sh

このコマンドを使用して、install.shファイルをsudoで実行可能にします。そうしないと、アクセス許可を編集できなくなります。

sudo chmod a+x install.sh

ここで彼らは彼らが最も好きなテキストエディタを選択します:vim、nano、emacs、kate、gedit ...まあ、あなたはあなたが最も好きなものを知っています、そして私は変更を保存できるようにsudoします、私の部分では私はVimを選択します。

sudo vim install.sh

私たちがすべての最初に編集しているとき、私たちは書かなければなりません

#!/bin/bash

その後

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

もう少し下に、ディストリビューションを更新するコマンドを記述します。

Debianの, Ubuntu そしてその何百万もの デリバティブ :

su && apt update && apt upgrade

CentOSの y レッドハット 以下のように:

sudo yum update

Fedoraの最新バージョンでは、yumの直接の子であるdnfが導入されています。

フェドーラ:

sudo dnf update

openSUSEの:

sudo zypper update

アーチのLinux, マンジャロ, 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クロムsudopacman-Sスチームsudopacman -S gnome-shellgnome-extra

最後に、スクリプトを保存して、次のことを行います。

cd(スクリプトはどこにありますか)&& ./install.sh

例はこれです:

Snap2

さて、これで今日はすべてです。非常に役立つと思い、他の投稿でお会いしましょう。


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   イグナシオ

    あまりアイデアがない私たちにとっては非常に良いエントリーですが、私たちはディストリビューションを飛び越えてインストールし、最終的にディストリビューションを台無しにするのが好きです

    1.    エルウザマ

      これは最も単純なベースですが、後でさらに複雑にすることができます

  2.   ハンター

    私はDebian用に私のものを持っていますが、他のディストリビューション用に比較的簡単に変更できます。

    https://github.com/xr09/kaos

    1.    エルウザマ

      コメントありがとうございます。あなたのスクリプトを見ました。そこから複雑なスクリプトを作成します。
      私もあなたのブログを見ました、そしてそれは良いです、私がPyQTについて疑問があるならば、私は誰に尋ねるべきか知っています。

      1.    ハンター

        まあ、それがベースとして機能することを嬉しく思います。そのスクリプトは、Fedoraをインストールするために仕事で見た非常に優れたスクリプトに触発されました。 私が「KaOS」と名付けたのは、ディストロとは何の関係もありません。実際、スクリプトを開始したとき、ディストロはまだ発表されていなかったと思います。

  3.   マヌエルブランコモンテロ

    デスクトップ環境を備えたLihuen►LibreOfficeを統合したLXDE
    彼らは非常によく合います、それは速くて非常に完全な成功です、私は何人かの人々をインストールしています、そして私は現在それを使っています。
    例:カナイマ; Trisquel; GuadaLinex; lliurexこれらはデフォルトとしてGNoneやKDEのような非常に重くて遅い環境を使用します%
    彼らは彼らが持っていたようなデザインの資質を持っていません。あなただけがそのような高速で安定したLinuxを可能にすることを考えています
    プラットフォーム上の非常に便利なプログラムパッケージ:32ビットおよび64ビット。
    そして、Informaticaの学生向けのXNUMXつのニーズデスクトップLihuenLXDEとLihuen教育アプリケーションおよびLinuxに分割されました
    =環境をベースとして使用する世界を想像してみてください:LXDEとCinnamon
    ->おめでとうございます優れたオペレーティングシステム彼らはUD / sを取り出しました
    私が彼らに支払った神に感謝します...
    「うまくいけば、ベネズエラ政府はこのLinux Lihuenを使用してカナイマに置き、ベネズエラの人口、公的機関、家庭でそのスピードを宣伝します。」
    ->私は自分の州の大学でそれを宣伝するつもりですそして私の友人や家族で私は素晴らしいものをインストールするのがどれほど速くて簡単であるかが好きでした
    プレゼンテーションQは
    ->ベネズエラから楽しい時間を過ごしていただきありがとうございます->トルヒーヨ州。
    Q常にLinuxLihuenを入手します。ダウンロードして使用し、すべての人に推奨します。

  4.   ダゴ

    明確化すると、KaOSはyaourtを使用しません。これは、Archに基づいていないため、kcpを使用します。
    ご挨拶。

    1.    エルウザマ

      私はしばらくの間KaOSを使用してきましたが、pacmanはXNUMXつのディストリビューションで共通であり、yaourtはArchの典型であり、kcpはKaOS、kcp-iパッケージであると言われています。

  5.   スウィッチャー

    他のディストリビューションではわかりませんが、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ループを次のように変更できます。
    sudo apt-get install $(echo ${paquetes[@]})

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

    何らかの理由で、スペースの代わりに他の文字を区切り文字として使用したい場合は、 ここで それを行ういくつかの方法が説明されています。

    1.    スウィッチャー

      どうやらWordPressはタグコード内で必要に応じて改行と数字/パッドを解釈します(または私が何か間違ったことをしました)。 スクリプトコードを入れるだけです ここで それがよりよく理解されるように。

      1.    エルウザマ

        入力をありがとう

  6.   犬風

    たとえば、bashを使用して、より完全なことを行うことができます。これはXNUMXつの例にすぎないことを強調します。

    たとえば、bashを使用してより完全なことを行うことができます

    #!/ bin / bashに

    -エンコード:UTF-8-

    タイトル=»ディストリビューションまたはデリバティブアップデーター»
    質問=»オプションを選択してください:»
    ディストリビューション=(
    ArchLinux
    「Debian」
    「CentOS」
    「Fedora」
    「OpenSuSE」
    "外出する"
    )

    関数ディストリビューション(){

    / etc /問題が存在するかどうかを確認します

    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 /問題が存在するかどうかを判断する」の終わり

    fi

    存在しない場合は、「UnknownDistro」というテキストを返します

    ほかに

    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 '数字を使用してください'
    echo '必要なディストリビューションを更新するには'
    echo
    エコー「$タイトル」
    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.    エルウザマ

      もしそれならfiでそれができることはすでに知っています、私がそれを自分でどうやってやるのか、私が知っているすべてのディストリビューションで可能な限り完全なスクリプトを作成します、そして助けてくれてありがとう、あなたは明確にしましたスクリプトの作成方法を少し教えてください。スクリプトが完成したら、それを渡します。

  7.   ハリー

    ここでSlackwareに興味があります! 誰か助けてくれませんか?

    1.    エルウザマ

      私はsabopkgで考えています-aptgetやpacmanの代わりにiパッケージを使用しますが、更新するために私にはわかりませんが、まだそのディストリビューションを通過していません。

  8.   デリン

    @エルザマ

    この投稿の素晴らしいガイド、私はそれが本当に好きでした、それはFreeBSD Unixが移動するコマンドによるモードです、今私はスクリプトについてゆっくり理解しています、あなたはFreeBSDUnixで同じことをすることができますか?、私はのGUIが欲しいですGentooやSlackwareなどのシステムでFluxboxやLXDEデスクトップを構成およびカスタマイズするようなものですが、Wikiは新しいユーザーにとって非常に混乱します。

  9.   デイブリベラ

    とても良いグレードです。 最近、OSを再インストールする必要があり、必要なものをすべて再インストールするという問題が発生したため、インストール後のスクリプトを作成します。 https://gist.github.com/daverivera/7d47761a98c3dd995225#file-install-sh

    Arch用に作成されており、いくつかのパッケージを構成してインストールします。 必要なものだけを使用するようにコメントできる機能で作られています。 突然、それは誰かを拠点としても役立つことができます。

  10.   ジャラネダ

    この記事は非常に興味深いものです。スクリプトがインストールされたもののリストを取得し、将来のフォーマットのために保存して、そのリストからのものをインストールすることができるのが最善だと思います。そのため、最近ディストリビューションを変更していません。
    どうもありがとうございます。

  11.   カノン

    良い投稿、10ポイントはすでに山のリンクスをお気に入りにしています

    これらのスクリプトをもう少し深く掘り下げて、Ubuntu用の私のものを作成します。
    Slice of Linuxページで、「インストール後に何をすべきか...」の投稿にそれらのスクリプトを配置していたことを覚えています。

  12.   nosfeatuxx

    あいさつコミュニティ.. !!

    ワオ。 !!
    コメントを読んだだけで、このスクリプトは必要に応じて複雑で完全になる可能性があることがわかります。
    たとえば、xubuntuのインストール後のスクリプトを見つけました。このスクリプトには、見栄えを良くするためのカラーコードも含まれています。たとえば、あえて遊んでみました。

    ここで、if then fi条件を使用して、最初にそれがどのディストリビューションであるかを、それぞれの条件内で検証できる最初のスクリプトを作成できると考えたいと思います。 対応するディストリビューションにパッケージをインストールするための適切なスクリプトを呼び出します。

    これは、それらを可能な限り単純にし、前述のスクリプトがそれほど広範でも複雑でもなく、保守/更新が容易になるようにするためです。