Debian'ı ve türevlerini tek bir komutla yükseltme [Script]

Görüyorsunuz, bunu yapmaya karar verdim çünkü tepsimdeki çürüyen silgiyi kullanmak zorunda kaldım, bu yüzden çok önemli olmayan bir komut dosyasını paylaşıyorum, sadece 2 satırı var ve root şifresini veya sudoers'ı isteyeceğim.

SCRIPT: güncelleme

#! / bin / bash sudo aptitude update sudo aptitude full-upgrade

Ve işte, bu kadar çok satırlık karmaşık programlama (Alaycılık) ile boğulmayacaklar.

Kaydettikten sonra, yürütme izinleri verir, dosya tarayıcımıza kök olarak gireriz, komut dosyasını kopyalayıp yapıştırırız, böylece böyle bir şeye sahip olurlar:

Şimdi kapatıyoruz, bir terminal açıyoruz ve 'güncelleme' yazıyoruz (tabii ki tırnak işaretleri olmadan)

Aşağıdaki görselde göreceğiniz gibi depolar güncellendi:

Biz mal Y neyin yükleneceğini ve / veya güncelleneceğini kabul etmek ve umarım güncellemeler indirilir ve kurulur ve terminal aşağıdaki gibi görünür:

Ve şimdi sisteminizi tek bir komutla güncellediniz.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: Miguel Ángel Gatón
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.

  1.   exe dijo

    Senaryo nerede?

    1.    Debianite merlin dijo

      Yazının ilk 3 satırından sonra bulunur.

      1.    exe dijo

        Bu yazıyı gerçekten anlamıyorum.

  2.   Hugo dijo

    Bazı kullanıcıların, sorunu basit bir takma adla çözebildiklerinde komut dosyaları ve izinlerle karmaşıklaşmayı tercih etmeleri beni meraklandırıyor. Aslında, bu gönderi, "basitleştirme komutları" üzerine yeni yayınlanan bir yazıya çok benziyor ve bu arada, bu yazıda yayınlananlardan daha eksiksiz bir takma adla bir yorum koydum. . Her neyse, topluluğa katkıda bulunmak istemek asildir, ancak gönderiler çok benzer olduğunda yardımcı olmuyor.

    1.    Atheyus dijo

      Debianite olduğumda bununla "karmaşıklaştım":

      http://paste.desdelinux.net/4680

      Takma adlar borular ve ve ~ _ ~ içindir, ancak GNU / Linux bir şeyler yapmanın birçok yolunu sevdiği şey budur, sadece dosyaların izinlerini hesaba katmanız gerekir.

  3.   berbellon dijo

    Hepimizin bir işletim sistemini (Windows, GNU / Linux, vb.) Yönetmede iyi olmadığımızı anlıyorum, ama en azından onlar hakkında biraz bilgi sahibi olmalısınız (kullandığınız).
    Hugo'nun dediği gibi, "Debian'ı ve türevlerini tek bir komutla [Script] güncelleyin" ve "Komutları basitleştirin", en azından benim için, eğer bu .bashrc dosyasını düzenleyip ekleyerek çözülürse bir anlam ifade etmiyor:

    takma ad güncellemesi = 'sudo aptitude -y update && sudo aptitude -y safe-upgrade'

    Şerefe… ..

    Not: Gerçekten ihtiyacınız olduğunda, kendinizi kodla boğmanız gerekir.

    1.    Debianite merlin dijo

      Haklı olduğunuzu kabul ediyorum, ama en azından senaryoyu yapmak ya da takma ad vermek benim için aynı derecede kolay.

      1.    msx dijo

        İşleri doğru yapanla yanlış yapan arasındaki fark burada devreye girer.
        Yeni başlıyorsanız ve hala ALIAS komutunu bilmiyorsanız, GNU / Linux'a hoş geldiniz ve (kirli) hack'inizin tadını çıkarın.

        Sizin durumunuzda durum farklıdır: Bir GNU / Linux sisteminin kullanım standartlarını yanlış kullanarak tamamen bilgisiz ve ihmalkâr olduğunuzu kanıtlıyorsunuz. Sizin durumunuzda konsoldan ne kadar uzaklaşırsanız o kadar iyidir.

    2.    Debianite merlin dijo

      Bir dene:
      çünkü "alias update = 'sudo aptitude -y update && sudo aptitude -y safe-upgrade'"
      Benim için işe yaramadı ve teoride çalışmalı.

      Ve aynı adı taşıyan komut dosyasını kaldırırsanız ve hatta başka bir takma ad denerseniz.

      1.    Hugo dijo

        İki komutu bir satırda birleştirmek işe yaramazsa, bunun nedeni sisteminizde bir şeyin bozuk olmasıdır, çünkü koşullu yürütme standart bash işlevselliğidir.

        PC'nizde Debian'ın ve / veya türevlerinin farklı sürümlerinden paketleri birleştiriyor olmanız olabilir mi? Senin yerinde olsam, bash'ı veya hatta tüm sistemi yeniden yüklerdim, çünkü senin tarif ettiğin bu belirti, çünkü sistemin kararlı bir şekilde davranacağına artık güvenemezdim.

        1.    Debianite merlin dijo

          gerçek şu ki, birkaç launchpad ve linuxmint depom var, ancak tüm sistemi yeniden yüklemek kadar zor olduğunu düşünmüyorum.

          1.    Hugo dijo

            Bu işleri biraz temizler. Açıkça, bir sistemin kararlılığının önemi konusunda farklı kriterlerimiz var. 😉

            Sonuçta bu sizin sisteminiz; Açıkçası Debian'ı Ubuntu ve Linux Mint depolarıyla karıştırmakla birlikte ... saygısızlık gibi gerçek bir Debianite için onu tamamen bu şekilde kullanma hakkına sahipsiniz. Dahası, birçok Debianite apt-pinning kullanmaya bile kaşlarını çattı.

            Bana göre, bu depo karışıklığına sahip olmak için, Debian Cut, Sid, Sid'in bir türevini veya belki Ubuntu, Fedora, Arch, LFS vb. Gibi başka bir şeyi kullanmanız daha iyi olur.

  4.   Christopher dijo

    Her şeyi tek bir satıra koymak çok daha kolay olabilir

    sudo aptitude update && sudo aptitude dist-upgrade

    1.    Debianite merlin dijo

      gerçek tek seferlik bir süreç ve şimdi bunu yapmak için sadece "güncelleme" yazmam gerekiyor ve her satıra koymuyorum.

  5.   Alf dijo

    Anlamadığım bir şey var çünkü Desde linux Öyle:
    Hakkımızda

    <° Linux nedir?
    <° Linux (diğer adıyla DesdeLinux) Özgür Yazılım ve Teknolojilerle ilgili konulara ayrılmış bir sitedir. Amacımız, GNU/Linux dünyasına yeni başlayan tüm kullanıcılara yeni bilgileri mümkün olan en kolay şekilde edinebilecekleri bir yer sağlamaktan başkası değildir.

    İlgi alanlarımız:
    Bilgileri herkesle paylaşın ve edinin.
    GNU / Linux, Yazılım ve Özgür Teknolojiler ile ilgili olduğu sürece herhangi bir konuda tartışma.
    Yardım ve Destek için bir topluluk alanı oluşturun.
    Deneyimlerin paylaşılacağı bir Kullanıcılar Topluluğu oluşturun.

    Öyleyse neden birisi bir şeyi her paylaştığında eleştiri sıçrıyor?

    1.    Hugo dijo

      Bunun nedeni muhtemelen çoğu Linux kullanıcısının verimli çözümleri sevmesidir ve iyileştirilebileceğini düşündükleri bir şey görürlerse, bunu söylerler. Şimdiye kadar ve bu blogun yaratıcılarını bildiğim kadarıyla, tüm kullanıcıların kriterlerine saygı göstermeye çalışıyorlar; Başka bir deyişle, bir makale hakkında yorum yapmak için diğer kullanıcılar kadar bir makale yayınlama hakkına sahiptir.

      Bakalım, yapıcı bir şekilde yapılırsa makaleleri çok zenginleştirebileceği için eleştiri kötü bir şey değildir. Açıkçası, yıkıcı eleştiriler (yani argümandan yoksun olanlar, yanlış veya saldırgan olanlar) zararlıdır, ancak şu ana kadar burada bu tür eleştiriler gördüğümü hatırlamıyorum.

      1.    msx dijo

        Bence bizi en çok rahatsız edebilecek şey, yazının yazarının sistemi doğru kullanmasına aldırış etmemesi ve aynı zamanda eylemiyle övünmesi:

        "Haklı olduğunuzu kabul ediyorum, ancak en azından benim için senaryoyu yapmak veya takma ad vermek benim için çok kolay."

        Ekstra ücret ödemeden iyi yapma olanağınız varken yanlış bir şey yaptığınızı biliyorsanız - daha fazla, ek faydalarla - ama yanlış yapmakta ısrar ediyorsanız:
        1. Sen sebebi olmayan asi bir küçük çocuksun.
        2. sen bir aptalsın.

        Konuyla ilgili daha fazla dönüş yok, GNU / Linux'un en iyi uygulamalarını öğrenmeye ve onu en verimli şekilde kullanmaya çalışan herhangi bir kullanıcının ne düşündüğünü sadece yazılı kelimelerle yazıyorum.

        "Çirkin hackler" yaratmak için, sadece kirlenmeden önce yetkinliği göstermeniz gerekir.

        1.    Debianite merlin dijo

          hmm belki de 2 numara çünkü noktayı anlamadım.

          XD

        2.    Debianite merlin dijo

          2 komutun adını değiştiremezsiniz, en yakın şey benim takma adımda zaten sahip olduğum şeydi; güncelleme komut dosyasının yaptığını yapmak için güncelleme && yükseltme. Sorunun henüz nerede olduğunu anlamıyorum. Ya da güncelleme ve & yükseltme yazamayacak kadar tembelim.

          bu arada, makale yazmadan önce sahip olduğum takma adlarım.

          takma ad rm = 'rm -i'
          alias cp = 'cp -i'
          takma ad mv = 'mv -i'
          takma ad yükseltme = 'yetenek tam yükseltme'
          takma ad güncellemesi = 'yetenek güncellemesi'
          takma ad yükleme = 'aptitude yükleme'
          alias remove = 'aptitude remove'
          takma ad temiz = 'temiz yetenek'

        3.    msx dijo

          Ubuntu Sunucusu 12.04 LTS ev sunucusu için takma adlarım bunlar:

          $ cat ~ / .bash_aliases
          ...

          ##################################
          # Ubuntu / Debian'a özgü takma adlar
          # ———————————-

          alias UpdateSystem = 'sudo aptitude update && sudo aptitude safe-upgrade && sudo aptitude full-upgrade'
          takma ad Kaldır = 'sudo aptitude purge'
          takma ad SearchLocal = 'dpkg -l | grep -i'
          takma ad Arama = 'yetenek arama'
          alias Install = 'sudo aptitude install'
          takma ad Göster = 'yetenek gösterisi'
          alias Clean = 'ağartıcı && gksudo ağartıcı && sudo apt-get autoremove && sudo apt-get autoclean && sudo deborphan | xargs sudo apt-get -y kaldır –purge && sudo aptitude clean && sudo aptitude autoclean && sudo deborphan | xargs sudo apt-get -y kaldır –purge '
          alias Cleancli = 'bleachbit -d deepscan.tmp system.desktop_entry system.localizations system.rotated_logs system.tmp && sudo bleachbit -d deepscan.tmp system.desktop_entry system.localizations system.rotated_logs system.tmp && sudo apt-get autoremove && sudo apt-get autoclean && sudo deborphan | xargs sudo apt-get -yr \
          emove –purge && sudo aptitude clean && sudo aptitude autoclean && sudo deborphan | xargs sudo apt-get -y kaldır –purge '

          1.    Debianite merlin dijo

            2'den fazla komut koyarsam, benim için çalışmıyorlar :(, yoksa Ubuntu'da mı çalışıyorlar? (Değiştirilenle aynı dosya olamaz, değil mi?).

          2.    msx dijo

            Tıpkı hepimiz, özellikle sistem yöneticileri ve programcıları gibi, paçavralar olduğumuz gibi, mümkün olduğunca az tuşa basmak zorunda olmak için takma adları ve hack'leri kullanır, kötüye kullanır ve yeniden kötüye kullanırız; Herhangi bir yönetici veya kodlayıcının ideali, sistemi güncelleyen ve evi temizleyen tek harfli bir takma ada sahip olma noktasına gelmektir (aşçı, ben pişiririm).
            Cidden, buradaki nokta, gereksiz görevleri en verimli, pratik ve rahat şekilde otomatik hale getirmektir.

            Takma ad politikam aşağıdaki gibidir:
            1 Farklı sistemlerde aynı ~ / .bash_alias'larda paylaştığım * birçok * takma adım olduğu için, neredeyse her zaman takma adlarımı büyük harfle başlatırım, bu da sonunda sisteme özgü bazı komutlarda _ adım atmamı engeller.
            2. Kullandığım takma adların miktarı için, iyi bir diğer ad beni 4'ten fazla tuşa basmamalı, 5 anahtar genellikle 4. tuş SEKME tuşudur.
            Bu şekilde takma adın ilk iki veya üç harfini yazmam yeterli -> TAB -> ENTER.
            3. İyi tanımlanmış takma adlara sahip olarak, karmaşık komutları yapılandırabilir veya karmaşık görevleri otomatikleştirebilirsiniz.
            $ Artış [TAB] && Cleanc [TAB]
            osea
            # UpdateSystem && Cleancli
            Sistemi güncelleyin ve temizleyin. Her zaman çalışan bir tmux örneğine sahip olduğum için, terminali çözüyorum, ssh oturumunun bağlantısını kesiyorum ve sunucunun kendi kendine çalışmasına izin veriyorum.

            Son olarak, takma ad komutlarının yuvalanamayacağını, yani başka bir takma ad içinde bir takma ad kullanamayacağınızı unutmayın.
            Bir noktada, sistemi güncelleyecek ve ardından temizleyicileri etkinleştirecek bir UpdateFull takma adı tanımlamıştım ancak kullanmayı bıraktım çünkü sistemleri güncellemek ve temizlemek önemsiz bir iş değil - geliştiriciler hayatımızı kolaylaştırsa da - ve daha fazla kontrole sahip olmayı tercih ediyorum bu eylemler hakkında iyi.

          3.    Hugo dijo

            Bu takma adlardan bazıları çok ilginç, hehe. Kaydedilmiş web sayfalarındaki küçük bir sorunu çözmek için normal ifadelerle oynayarak hazırladığım şuna bakın desde Linux Garip karakterlere sahip olması nedeniyle daha sonra Windows'tan açılamayan bir flaşa:

            alias fixnames='sudo find . -depth -regextype posix-extended -regex '\''.*(\s+|:+|\\+|>+|+|<+|"+|\*+|\?+|\|+)/_/g'\'' "{}" \;'

            Bu arada, Windows'tan yorum yapmamı affet, bazı oyunlara yer açmak için Linux bölümümü sildim.

          4.    Hugo dijo

            Pekala, pardon ama ilk etapta msx'e yanıt verdim (yorum iç içe geçme seviyelerinin sınırı nedeniyle çok net değildi) ve ikincisi, görünüşe göre blog takma adımın bir kısmını yedi (görünüşe göre onları pek sevmiyorsun) regex), bu yüzden yapıştırın içine koydum: http://paste.desdelinux.net/4685

      2.    msx dijo

        Mükemmel takma ad @Hugo!
        Perl'i keşfettiğimde normal ifadelere aşık oldum (birlikte yenilmezler!), Çok kötüler ki, onları yarattıktan ve çalıştıklarını doğruladıktan 20 dakika sonra, ne yaptıklarını unuttum ve adım adım çözmeye başlamak zorundayım! xD

        Orada test etmek için yapıştırdığınız ER'yi kopyaladım, eğer o kadar yararlıysanız, hepsinin olduğu bir gönderiye hoş geldiniz 😉

    2.    berbellon dijo

      Belki bu komut dosyası veya / bin dizininde yaptıkları size doğru geliyor (Komutları basitleştirme konusuna bakın).

      Bu, bu hatayı vurgulayan yapıcı bir eleştiridir, böylece gelecekteki GNU / Linux kullanıcıları (herhangi bir kişiye atıfta bulunmadan) bu tür aptallığa düşmezler.

      Bu durumda doğru olan, .bashrc dosyasını düzenlemek ve uygun olduğunu düşündüğünüz satırları tanıtmaktır.

      Şerefe… ..

      1.    msx dijo

        ~ / .bash_aliases

        1.    Hugo dijo

          Görünüşe göre tüm dağıtımlar bu dosyayı sağlamıyor (dikkatimi çekmeyi bırakmayan bir şey). Böyle bir durumda .bashrc dosyasına böyle bir şey koyarak kolayca düzeltilebilir.

          if [ ! -f ~/.bash_aliases ] ; then
          {
          echo "HISTIZE=5000"
          echo "HISTCONTROL=ignoreboth"
          } > ~/.bash_aliases
          fi
          if [ -f ~/.bash_aliases ] ; then
          source ~/.bash_aliases
          fi

          1.    Hugo dijo

            Maalesef bu HISTSIZE. Bu arada, histize, geçmişte tutulacak komutların sayısını tanımlamaktır ve HISTCONTROL = ignoreboth, tekrarlanan komutların ve boşlukla başlayan komutların geçmişe kaydedilmemesidir. Her ikisinin de HISTIGNORE ile birlikte çok kullanışlı olduğunu buldum, bu da .bash_aliases'ime koyduğum bir seçenek.

        2.    berbellon dijo

          Eh, Debian'ı örnek alırsam, sadece .bashrc olduğunu göreceksiniz, ancak biraz merak ediyorsanız ve satırları okuyorsanız, bir bölüm göreceksiniz:
          (a) # biraz daha ls takma adı ve
          (b) # Takma ad tanımları. Tüm eklemelerinizi doğrudan buraya eklemek yerine ~ / .bash_aliases gibi ayrı bir dosyaya koymak isteyebilirsiniz. Bash-doc paketinde / usr / share / doc / bash-doc / örneklerine bakın.

          eğer [-f ~ / .bash_aliases]; sonra
          . ~ / .bash_aliases
          fi

          Ve elbette bunun için $ vim ~ / .bash_aliases (çünkü onu yaratmanız gerekir). XX takma adı = 'XXXXXX' girin, kaydedin ve dosyadan çıkın.

          Şimdi ArchLinux ile .bashrc'nizin neredeyse boş olduğu ortaya çıktı. Ve eğer .bashrc bu işlevi yerine getirirse (diğer ad), .bash_aliases oluşturma gereğini görmüyorum. Ama onu halletmek zorundasın.

          Şerefe… ..

          1.    berbellon dijo

            Not: Takma adlarımın bir görevde çok özel olmadığını göz önünde bulundurun.

            Selamlar MSX, Hugo.

          2.    msx dijo

            Merhaba @Berbellon,
            Şahsen, Arch'ın ~ / .bashrc'sinin daha sağlam olmasını istiyorum, yani günlük olarak kullandığımız çeşitli ortam değişkenleri ayarlarıyla, çünkü GNU / Linux hakkında ne kadar çok şey öğreniyor ve en karanlık köşeleri aydınlatmaya çalışsak da her zaman vardır Bizden kaçan bazı kaplumbağalar (evet, bu birçok sistem değişkeni örneğiyle birlikte gelir ama her şey kesinlikle yorumlanmıştır).
            Şimdi, Arch'ın neredeyse tamamen soyulmuş ~ / .bashrc'si anlaşılabilir çünkü dağıtım, geliştiriciler, bilim adamları, sistem yöneticileri ve sistemi öğrenerek ve nasıl yapılandırılacağını okuyarak kendi beğenilerine ve kişisel kullanımına göre yapılandırmak isteyen herkes için tasarlandı - boşuna değil Arch - yanılmıyorsam - en saf GNU / Linux dağıtımlarından biridir, çünkü sistemin parçası olan her pakete, örneğin apache web sunucusuna mümkün olduğunca az dokunulur. httpd (uygulamanın gerçek adı) ve / etc / httpd içine, onu apache olarak adlandıran ve onu biraz… kişisel dosya yapılandırmasıyla / etc / apache2 içine yükleyen Debian'ın aksine yükler.

            «Ve eğer .bashrc bu işlevi yerine getirirse (diğer ad), .bash_aliases oluşturma gereğini görmüyorum. Ama onu düzenli tutmalısın. "
            Aslında ~ / .bashrc, Arch Linux sistemin kullanımında iyi uygulamaları teşvik etmeye çalıştığı için bu işlevi yerine getirmez, bu nedenle takma adları kaydetmek için ~ / .bash_aliases kullanılması açıkça önerilir.
            Bununla birlikte, takma adların tanımı için bu ayrım - ~ / .bashrc - ~ / .bash_aliases - tamamen yönetimseldir ve sistem yöneticisinin ~ dosyası iyi kullanılabildiğinden, sistemini modüler ve temiz bir şekilde organize edebilmesi için sağlanır. /.bashrc kullandığımız tüm takma adları tanımlamak için.

      2.    Debianite merlin dijo

        Doğru, ancak bazen takma adda bazı komutlarınız vardır ve bazen bunları ayrı ayrı ve diğer zamanlarda birlikte yapmanız gerekir ve yukarıda bana daha önce de söyledikleri gibi, zaten sahip olduğunuz bir komutu başka biriyle iç içe olsa bile takma ad veremezsiniz ve bu arada bende yok bozuk sistem ve sadece bir jdownloader launchpad'im var ve linuxmint debian edition one onu kaldırdım çünkü bana indirgeyici göründü.

  6.   Patz dijo

    ciddi mi? ve bu, sistemi güncelleyen ve tek adımda yeniden başlatılan bir komut dosyasıdır
    #! / Bin / bash
    sudo aptitude update
    sudo aptitude tam yükseltme
    sudo reboot

    normalde sürekli yapılan şeyler betik yazılmayı hak eden şeylerdir, tam bir yükseltme sabit değildir, debian'da çok daha az….

    1.    Debianite merlin dijo

      Genellikle bunu sık sık yaparım. : p

      1.    msx dijo

        Semplice (Openbox + tint2 ile harika kararlı ve güzel Debian Sid), aptosid / Sidduction (Debian Sid neredeyse sabit ve çok şişkin), Arch (şimdiye kadarki en iyi RR dağıtımı), Gentoo / Sabayon veya diğer RR dağıtımlarını denemelisiniz.
        Debian kullanırsanız Semplice'a bir şans verirdim, Crunchbang'den (Debian Stable) daha modern ve mükemmel çalışıyor.

        1.    Debianite merlin dijo

          Nasıl olduğunu göreceğim ve eğer beni ikna ederse, onu yeni dizüstü bilgisayara yükleyebilirim.

          1.    msx dijo

            Ve yeni bir gönderi? 😉

      2.    Patz dijo

        Debian'ın yeni bir sürümü ne sıklıkla görünür?

        1.    Debianite merlin dijo

          Her 2 yılda bir yakl. Testte kararlı kullanırsanız, Rolling Release olduğu, yani neredeyse her gün çevrimiçi olarak güncellendiği ve sistemi yeniden yüklemenize gerek olmadığı söylenebilir.

  7.   Debianite merlin dijo

    Hmm muhtemeldir. Sanırım ikinci kez aptal gibi davranmak o kadar da kötü değil.

    XD

    1.    msx dijo

      Uhh, devam et, o şampiyon deri nerede !!! xD
      Seni kaçırmasına izin ver yaşlı kadın!

  8.   scraf23 dijo

    Bir sistem yöneticisi olarak, yalnızca tekrarlayan ve zorlu görevler için kod yazıyorum, bu xD durumu gibi görünmüyor

  9.   mikro bölge dijo

    Bana tuhaf deyin, ancak sık kullandığınız komutlar için takma ad kullanmak işe yarıyor, ancak yılda bir kez yapılan bir şey için? (Ubuntu lts kullanıyorum daha çok demek istiyorum) mantıklı değil.

    Hem takma adı kullanmanın hem de başka birinin makinesini değiştirmenin yanı sıra, -h 🙂

    1.    mikro bölge dijo

      Koymayı unuttum ama senaryo için de aynısını düşünüyorum