Kullanıcı uygulamalarını kurarken, “en iyi uygulamalar” nerede bulunurlar?

183

Bazen, apt veya başka bir paket yöneticisi kullanmak yerine uygulamaları manuel olarak yüklüyorum.

Kullanıcı uygulamalarının yüklenmesi için "en iyi uygulamalar" tarafından hangi konum ( /usr/ , /usr/local/ , /opt/ , /home/ vb.) öneriliyor?

    
sordu citadelgrad 05.08.2010 16:42

6 cevap

163

Bu, gerçekten bağlıdır. Uygulama bir makefile sahipse (python uygulamaları için) distutils ( setup.py dosyası var) veya benzer bir build / install sistemi kullanıyorsa, /usr/local/ (varsayılan davranış) içine koyun.

Sadece bir tarpayı çıkarmanız ve doğrudan çalıştırmanız gerekiyorsa (ör. Thunderbird, Firefox), /opt/ 'ye yerleştirin.

Neden? Anladığım kadarıyla, /usr/local/ 'si /usr/ ' ya benzer bir hiyerarşiye sahiptir. Bu nedenle, /usr/ dosyasına "yüklenmesi" beklenen bir program /usr/local/ 'da iyi çalışmalıdır. Sadece bir dizine ihtiyaç duyan ve bu dizine göre tüm dosyaları / kütüphaneleri alabilen bir program, /opt/ dizininde kendiliğinden bir dizin alabilir.

    
verilen cevap Umang 05.08.2010 16:53
99

/usr 'nin kullanıcı için değil, sistem kaynaklarını unix için durmadığını hatırlamakta fayda var.

Bu nedenle, herhangi bir dağıtımın, /usr, içeriğinin her yerine yüklenme haklarına sahip olduğunu ve sisteme yapılan özel eklemelerimin, yükseltme yapmadan önce koruduğum /usr/local sürümünü kullanabileceğini düşünüyorum.

Bu arada, uygulamalar ve diğer şeyler /opt dizinine giriyor.

Bazı insanlar bu konvansiyonu nadiren takip etsem de, /home öğesinde bir şeyler koymakta rahat hissediyorlar.

Tüm söylediğim gibi, dağıtım paketi yöneticisinin önce işleri yoluna koymasına izin verdim ve sonra elden geçirme işlerini yaparken yukarıdakileri yapalım.

    
verilen cevap Walt Stoneburner 17.09.2010 19:39
30

/ home / user / opt / dizinindeki firefox devel gibi kararsız programlar yüklemek, onu hangi sürümde kullanması gerektiği konusunda daha kolay bir hale getiriyor ve diğer kullanıcılar için bir karışıklık yaratmıyor ... Bu yüzden eğer küresel bir program değilse kullanın, ana dizininizdeki bir alt klasöre yükleyin.

Programları hiçbir zaman / usr / 'a yüklemeyin, kaosa neden olması muhtemeldir, / usr /' da kurulu olan şeyler sadece dağıtım paketleri içindir. / usr / local / yerel olarak derlenmiş paketler içindir. Ve srtucture tam olarak aynı şekilde çalışır! / usr / local dosyasındaki dosyalar / usr /

içindeki dosyalar üzerinden önceliklendirilir Önceden derlenmiş (ikili) paketlerin (Thunderbird, Eclipse, Netbeans, IBM NetSphere, vb.) ve benzerlerinin yüklenmesi için

/ opt / kullanılmalıdır. Ancak, sadece tek bir kullanıcı için ise, ev dizininize konulmalıdır.

Eğer "tuhaf" bir yerde (/ home / user / opt / firefox / gibi) yüklü bir programı çalıştırabilmek istiyorsanız, tüm yolu yazarak $ PATH değişkeninize eklemelisiniz. /home/user/.profile adresinde buna benzer bir satır ekliyor

export PATH=/home/user/opt/firefox:$PATH

Klasör adı, çalıştırmanız gereken yürütülebilir dosyanın bulunduğu yerde olmalıdır.

    
verilen cevap LassePoulsen 07.08.2010 10:40
25

Linux Dosya Sistemi Hiyerarşi Standardı /usr/local değerini gösterir.

İşte 'den:

  

'/ usr / local' in arkasındaki orijinal fikir ayrı ('yerel') olmalıydı.   '/ usr' dizini yanında her makinede '/ usr'   Salt okunur başka bir yerden. Yapısını kopyalar   '/ Usr. Bu günlerde, '/ usr / local' genel olarak iyi bir yer olarak kabul edilir.   kendi kendini derleyen veya üçüncü taraf programlarını tutmak için. / Usr / local   hiyerarşi, yükleme sırasında sistem yöneticisi tarafından kullanılıyor   yerel olarak yazılım. Ne zaman üzerine yazıldığından güvenli olması gerekir.   sistem yazılımı güncellendi. Bu programlar ve veriler için kullanılabilir   Bir grup ev sahibi arasında paylaşılabilir, ancak / usr bulunamadı. lokal olarak   Yüklü yazılım / usr / usr / local yerine yerleştirilmelidir.   / usr içinde yazılımı değiştirmek veya yükseltmek için kurulmadığı sürece.

    
verilen cevap popey 05.08.2010 16:45
5

Evimde genellikle "Programlar" adlı bir klasörüm var, bu programları yüklerim, şu anda tüm java şeyleri yeterince garip (veya değil).

Benim için büyük bir avantajı var, bilgisayarları yeniden yüklediğimde veya değiştirdiğimde evimin geri kalanıyla birlikte hareket ediyorlar. Açık bir dezavantajı var, bu uygulamalar sadece benim kullanıcı için kullanılabilir.

    
verilen cevap Javier Rivera 05.08.2010 16:57
1

Yabancı paketinizi bir debiğe dönüştürmek için "checkinstall" komutunu kullanın, böylece paket yöneticisi kullanılarak kaldırılamaz.

Yapılandırma dosyalarının genellikle yapılandırma dosyaları olarak ele alınmayacağını unutmayın (belki de göz ardı edilmiş ya da belki de uygulamanın bir parçası olarak ele alınabilir), ve kurulum öncesi ve sonrası komut dosyaları bazen küfürlenir, ancak genellikle sizi uyarır. Deb'in ön yükleme veya yükleme sonrası bir betiğe sahip olacağını düşünüyor.

    
verilen cevap A Student at a University 16.08.2010 03:41

Etiketlerdeki diğer soruları oku