SU Error – su: not running setuid
Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYFh8fPz' (Errcode: 28 - No space left on device) in /usr/share/nginx/html/syslogs/wp-includes/class-wpdb.php on line 2349
Geçenlerde yeni kurduğum bir freebsd 8.0 üzerinde rebuild world işlemi yaptıktan sonra sistem, normal kullanıcıdan root kullanıcısına geçişlerde “su: not running setuid” hatasını verir oldu. Böyle bir durumda sisteminiz ssh üzerinden direk root login'e izin veriyorsa sorun yok; ama bildiğiniz gibi freebsd sistemlerde öntanımlı ssh yapılandırması root login'e izin vermez. Bu yüzden öncelikle non-root bir kullanıcı ile sisteme login olmanız gerekir.
Benim sistemimde de durum bu şekildeydi ve fakat non-root bir kullanıcı ile ssh üzerinde login olduktan sonra su root yapamıyordum. Bu sorunun neden kaynaklandığını bilmiyorum, ancak sorun /usr/bin/su ‘nun setuid izininin olmamasından kaynaklanıyor. Siz de benzer bir sorun yaşıyorsanız /usr/bin/su ‘nun izinlerini yeniden set etmeniz gerekir. Aşağıdaki şekilde bu işlemi yapabilirsiniz..
İşlemleri yapabilmek için sisteme elbette root kullanıcısı ile bağlı olmanız gerekir. Eğer ssh servisi öntanımlı (ve güvenli) ayarlarla çalışıyorsa, yani ssh üzerinden direk root erişimi sağlayamıyorsanız konsol üzerinde root ile login olmanız gerekir.
Sisteme bağlandıktan sonra /usr/bin/su ‘nun izinleri kontrol edildiğinde setuid izni olmadığı görülüyor:
# stat -x /usr/bin/su File: "/usr/bin/su" Size: 14492 FileType: Regular File Mode: (0550/-r-xr-x---) Uid: ( 0/ root) Gid: ( 0/ wheel)
Şu şekilde setuid izni veriyoruz:
# chmod 4555 /usr/bin/su
Böylece problem ortadan kalkıyor.
Demin de dediğim gibi bu durumun neden kaynaklandığını bilemiyorum ancak en azından dosya izinleri ile ilgili basit bir sorun.
Bu yazılar da ilginizi çekebilir:
- Bash History’sine Tarih ve Saat Bilgisi Eklemek
- SUID ve SGID Bit’ler ve Bu Bitlere Sahip Dosyaların Bulunması
- PSSH ile Birden Fazla Sunucuyu Tek Merkezden Yönetmek
- iotop İle Disk Aktivitesini Görüntülemek | I/O Monitoring
- SQL Server – Error-14274
Yorumlar
Trackbacks
Yorumda bulunun.
aşağıdaki gibi /etc/group altına root group için “ben” örnegindeki gibi kendinizi eklemeniz yetebilirdi diye düşünüyorum.
wheel:*:0:root,ben
[Cevapla]
Merhaba,
Normal bir kullanicinin su yetkisi olabilmesi icin elbette wheel grubuna dahil bir kullanici olmasi gerekir. Benim kullanicim da o sekildeydi zaten. Aksi halde su komutunu kullanamazlar.
Burada sorun su calistirma yetkisi olan bir kullanicinin bunu yapamamasiydi.
[Cevapla]