Yeni bir gruba kullanıcı ekledikten sonra izinleri yenilemek için yeniden başlatma gerekli midir?


26

Ubuntu sunucusunda, bir defadan fazla, bir kullanıcıyı bir kullanıcıyı ekledikten sonra, sistemi yeniden başlatana kadar kullanıcının grup izinlerine sahip olmadığını fark ettim. Örneğin:

'Hudson' kullanıcısı 'root: shadow / etc / shadow' dizinini okuma izni gerekiyor. Bu yüzden shadow grubuna hudson ekliyorum. Hudson hala okuyamıyor. Böylece, 's -r-r şimdi' kapatma sudo ve sistem tekrar geldiğinde kullanıcı hudson okuyabilir.

Yeniden başlatma gerekli mi yoksa kullanıcıyı gruba ekledikten sonra izinleri almak için daha iyi bir yol var mı?


Gelecekte başvurmak için aşağıya gerçek bir çözüm ekledim. Bu bir sorun oldu şaşırdım. Umarım yardımcı olur.
TryGirişle

Yanıtlar:


25

Bir çözüm arıyordum, bu yazıya rastladım ve daha sonra bir tane buldum!

Aslında başkalarının faydalanabilmesi için bir çözüm önerebileceğimi düşünmüştüm. Giriş ve çıkış çok 1995.

Dan alınan:

https://arkaitzj.wordpress.com/2010/03/08/linux-add-user-to-a-group-without-logout/

Dolayısıyla, cdromgrubun izinlerini almanız gerekiyorsa , kullanıcınızı şuraya eklediniz:

newgrp cdrom 

Örneğin

Yani adımlar şöyle olurdu:

#adduser my_user cdrom

ve sonra

$newgrp cdrom

İşe yaradığını onayladım.

$groupsCLI'den yapılan basit bir kontrol, kullanıcının grupta olduğunu gösterir. Ve bu grup çalışmasından gerekli imtiyazlara sahip hızlı bir işlem.

Pencerelerinizi öldürmeye ve giriş yapıp oturumu kapatmanıza gerek yok! Umarım bu başkalarına yardım eder!

Ek Bilgiler (jytou'nun yararlı yorumuna dayanarak): "[Bu] çözüm yalnızca mevcut açık kabuk için işe yarayacak. Başka bir açık kabuk varsa, değişiklikleri dikkate almak için aynı komutu kullanmanız gerekir."


1
Bu harika, gerçekten işe yarıyor !!! : D
dadexix86

3
TryTryAgain'in çözümünün yalnızca mevcut açık kabuk için işe yarayacağını unutmayın. Açık olan başka bir kabuğunuz varsa, değişiklikleri hesaba katmak için aynı komutu kullanmanız gerekir.
jytou

Yine de, çalışan X seansı için bunu yapacak mısın?
artfulrobot

@artfulrobot üzgünüm, ne demek istediğini tam olarak anlamadım. Yeni bir soru açmak ve bu yazıya ve çözüme en iyi şekilde yardımcı olmak için başvuruda bulunmak isteyebilirsiniz.
TryTryAgain 'te

19

Yeni bir gruba bir kullanıcı eklerken, kullanıcının etkili olması için oturumu kapatması ve tekrar oturum açması gerekir. Bir yeniden başlatma bunu başaracaktır, ancak gerekli olmamalıdır.


Bir paketi kurarken yetenek tarafından oluşturulan bir kullanıcıyı nasıl kapatırım?
Michael Prescott,

Hangi paket hudsonkullanıcıyı oluşturur ?
womble

Justin cevaplarken, hizmeti durdurmayı ve başlatmayı deneyin.
Scott Pack,

Bu benim işim. Sadece çıkış yapın ve tekrar giriş yapın.
Trent Scott

Aslında, neyse ki oturumu kapatıp tekrar girmenize gerek yok. Aşağıda çalışan bir çözüm önerdim. Test edildi ve MUTLU!
TryGirişle

8

Bir gruba kullanıcı eklemek, şu anda oturum açmış kullanıcıları etkilemez.

Bir daemon durumunda, yeni grupların uygulanması için yeniden başlatmanız gerekir.

Ayrıca, arka planda bir seçenek kullanarak arka plan programı başlatmak, şu anki ortamı devralacak gibi çalışmayacaktır.

Çalışmasını sağlamanın en kolay yolu, arka plandaki programı tam olarak durdurmak ve yeniden başlatmaktır.

/etc/init.d/foo stop ; /etc/init.d/foo start

4

bu çok daha kolaydır, şu anki erişim seviyenizi yazarak kontrol edebilirsiniz:

id

Gruplarınızı yeniden yüklemek için ihtiyacınız olan sadece:

su - $USER

Bundan sonra tekrar erişim seviyesi kontrol edin:

id

ve yeni grubun aktif olduğunu göreceksiniz.


1

Burada da ele alınması gereken farklı bir başarısızlık modu var.

Yönetici güncellendiyse /etc/groupancak güncellenemiyorsa /etc/gshadow(bu kurulumu yapan sistemlerde), oturumunuzu kapatıp tekrar açmak sizi gerçekten yeni gruba atamaz.

Ait, groupssize gerçek, mevcut durumu gösterir, oysa idyanlış olduğunu gösterir çıktı yazdırır olan düzgün grubunun bir üyesi.

tripleee@vbvntv$ groups
tripleee

tripleee@vbvntv$ id
uid=1234(tripleee) gid=1234(tripleee) groups=1234(tripleee),4(adm)

tripleee@vbvntv$ ls -l /var/log/mail.log
-rw-r----- 1 root adm 15728 May 26 14:26 /var/log/mail.log

tripleee@vbvntv$ tail /var/log/mail.log
tail: cannot open `/var/log/mail.log' for reading: Permission denied

newgrpBir şifre istediği için kullanamıyorum ve bir şifrem yok, yalnızca SSH ortak anahtar doğrulaması.

Çözüm, yöneticinin elle yapılan düzenlemeyi geri alması /etc/groupsve ardından tekrar yapması sudo gpasswd -a tripleee adm; veya alternatif olarak, grpconvdeğişiklikleri birleştirmek için kullanmak ( /server//a/389719/98333 adresinden aldığım )


Aslında, asıl sorunun, SSH master oturumunu tekrar kullanmamdan kaynaklandığını gösteriyor . ControlPath soketini çıkarıp tekrar giriş yapmanız sorunu çözdü.
üçlü
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.