/ Etc / group ve / etc / passwd dosyalarını sıralayabilir miyim?


33

Benim /etc/groupyeni kullanıcıları ekleyerek ve kendi kullanıcılarını ve / veya gruplarını ekleyen programları kurarak büyüdü. Aynı şey için de geçerlidir /etc/passwd. Düzenleme yapı eksikliği nedeniyle biraz hantal oldu.

Sistem ve / veya paket yöneticileri üzerinde olumsuz bir etkisi olmadan bu dosyaları (örneğin, sayısal kimliğe veya isme göre alfabetik) göre sıralayabilir miyim ?

Bunun önemli olmadığını tahmin ediyorum ama sadece ikinci bir görüş almak istediğimden emin olmak için. Belki rootilk satırda mı yoksa ilk 1k satırında mı olmalı?

Aynı şey için de geçerli /etc/*shadow.


7
“Düzenleme yapı eksikliği nedeniyle biraz hantallaştı” Neden bu dosyaları el ile düzenliyorsunuz?
Kevin,

Dosyayı sıralamak düzenlemeye nasıl yardımcı olur? İlgili hesapları birlikte gruplamak ve ardından bir satır aralığında benzer değişiklikler yapmak istediğinizden mi? Ancak, kullanıcı adına veya ismine göre sıralarsanız ilgili hesap birbirine bitişik olur mu?
Barmar

@Barmar Temel olarak, kullanıcı hesaplarının aralıklar halinde gruplandırıldığı ve sistem hesaplarından (UID'ye göre sıralama yaparken) ayrıldığı için yardımcı olmuştur. Bu nedenle, örneğin, düzenleme yaparken incelemek veya değiştirmek için doğru çizgiyi bulmak daha kolaydır vi.
Ned64

Yanıtlar:


50

Sen olmalıdır Tamam bunu sıralama can, aslında makaleye göre ve belgeleri okuma: /etc/passwdve /etc/groupbirlikte UID / GID ile pwck -sve grpck -ssırasıyla.


3
@Menasheh Bu sitenin renkleri, diğer sitelerde olduğu kadar göze çarpmasını sağlamaz, ancak bu cevabın içindeki "Tamam."
KKH

2
Tamam, iyi, ama ... Genel olarak, / etc / passwd ve benzeri dosyaları elle düzenlemek için geçerli sebepler var mı? Bunlara erişmek ve bunları değiştirmek için tasarlanmış araçlar yoluyla erişmenin daha iyi olduğu düşünülmedi mi?
mickeyf_supports_Monica

@mickeyf /etc/passwdHareket eden / yeniden yapılanma nedeniyle tüm kullanıcılar için GECOS alanını değiştirmek gibi toplu değişiklikler yaparken insanları el ile düzenlediklerini gördüm (genel oda veya telefon numarası değişiklikleri vb.) Artık yaygın değil, ancak belirli olan zaman zaman ortaya çıkan sebepler.
ErikF

44

Her ne kadar ErikF bunun genel olarak doğru olması gerektiği konusunda haklı olsa da, potansiyel bir konuyu belirtmek isterim:

Farklı kullanıcı adlarını aynı UID ile eşlemenize izin verilir. Bunu kullanırsanız, bir kullanıcı kimliğini bir kullanıcı adına geri eşleyen araçlar genellikle söz konusu kullanıcı kimliği için buldukları ilk kullanıcı adını seçer /etc/passwd. Sıralama, önce farklı bir kullanıcı adının görünmesine neden olabilir. Görüntüleme amaçları için (örneğin ls -lçıktı) kullanıcı adı çalışmalıdır, ancak bazı programları, A ve B kullanıcı adlarından geldiklerini görürse, A ve B kullanıcılarından geldiğini görürse, bu istekleri reddedecekleri bir programı yapılandırmanız mümkündür. Aynı kullanıcı


Teşekkürler, yapabileceğinizi biliyorum, birkaç yıl önce Solaris'te tcsh ve uid 0 kullanan bir kullanıcı vardı. Bununla birlikte, bir Linux sistemi bu durumu kendi başına yaratmaz - bu durumla ilgili sorunların olması için bu tür bir kullanıcıyı manuel olarak oluşturmanız gerekir.
Ned64

2

İlk satırda root olması uzun zamandır fiili "standart" olmuştur ve problemlerle uğraşırken veya sistemleri kurtarırken kabuklarını düzeltmek veya şifreyi silmek zorundaysanız çok kullanışlıdır.

Aynı şekilde ben de sonunda orta ve standart kullanıcıları cinleri / utils'i kullanıcıları olmasını tercih passwdve shadow.

hvd Cevap, özellikle el ile tutulan birçok kullanıcının olduğu sistemlerde, kullanıcıların sırasını rahatsız etmekte çok iyidir.

Dosyaları yalnızca örneğin standart kullanıcılar için sıralamayı başaramazsanız, tüm kullanıcıların sırasını değiştirmekten daha mantıklı olur, imo.


1
Sayısal olarak UID'ye göre sıralarsanız, tercih ettiğiniz siparişi almanız gerekir. Kök her 0
zamandır ve zindanlarda

@Barmar Eğer UID'e göre sıralama yapıyorsanız, isme göre değil, gerçekten, hatırladığınız için teşekkürler.
Rui F Ribeiro,

0

Benzer şekilde shadow / gshadow dosyalarını güvenli bir şekilde ( vipw -s/ kullanarak vigr -s) ve komut satırından yerinde kullanarak sıralamak için biraz kıllı bash kodu :

EDITOR="/usr/bin/vi -c \"1,\\\$!awk 'BEGIN {FS = \\\":\\\"} FNR==NR {x2[\\\$1] = \\\$0; next} \\\$1 in x2 {print x2[\\\$1]}' - /etc/passwd\" -c \"wq! \" >/dev/null 2>&1" vipw -s

EDITOR="/usr/bin/vi -c \"1,\\\$!awk 'BEGIN {FS = \\\":\\\"} FNR==NR {x2[\\\$1] = \\\$0; next} \\\$1 in x2 {print x2[\\\$1]}' - /etc/group\" -c \"wq! \" >/dev/null 2>&1" vigr -s

NOT:

  1. vi -ceditör olarak atanan vim düzenleyicisine komutu iletir vipw/ ' vigrile EDITORdeğişken
  2. Awk kodu sıralar shadowtarafından passwd(ve gshadowile group)
  3. Ters eğik çizgiler, tırnak seviyelerine karşılık gelen ihtiyaç duyulan sadece kaçış seviyeleridir.
  4. İkinci komut (-c \ "wq! \") Zorlaması, sıralanan dosyayı yazar ve kapatır. Gölge / gölge gölgesi çoğu kez mod 000 (yani istenmeyen) olduğu için kuvvet gereklidir. '!' Arasındaki boşluğa dikkat edin. ve '\', kabuğun bir bash olayına atıfta bulunan '! \' şeklinde yorumlanmasını önlemek için gereklidir.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.