Linux'ta Giriş Dizini ile Kullanıcı Hesapları Nasıl Silinir
Bu eğitimde, bir Linux sisteminde bir kullanıcının hesabını ana dizini ile birlikte silmek için kullanabileceğiniz adımları anlatacağım.
Linux sistemlerde kullanıcı hesaplarının nasıl oluşturulacağını ve yönetileceğini öğrenmek için aşağıdaki bağlantılardan aşağıdaki yazıları okuyun:
- Linux'ta Kullanıcı Hesaplarını Yönetmek İçin 15 “useradd” Komut Örneği
- Linux'ta Kullanıcı Hesabı Adlarını Değiştirmek/Değiştirmek için 15 “usermod” Komut Örneği
- Linux'ta Dosya İzinleriyle Kullanıcıları ve Grupları Yönetme
Linux'ta bir Sistem Yöneticisi olarak, bir kullanıcı hesabının uzun süre hareketsiz hale gelebileceği veya kullanıcının kuruluştan veya şirketten ayrılabileceği veya başka nedenlerden dolayı bir süre sonra kullanıcı hesabını kaldırmak zorunda kalabilirsiniz.
Bir Linux sistemindeki kullanıcı hesaplarını kaldırırken, yeni sistem kullanıcıları veya diğer hizmetler için depolama aygıtlarında yer açmak amacıyla ana dizinlerini de kaldırmak önemlidir.
Ana Dizinindeki Kullanıcı Hesabını Silme/Kaldırma
1. Gösterim amacıyla, öncelikle sistemimde tecmint kullanıcısı ve linuxsay kullanıcısı olmak üzere iki kullanıcı hesabını ana dizinleriyle birlikte oluşturarak başlayacağım. adduser komutunu kullanarak sırasıyla /home/tecmint ve /home/linusay.
adduser tecmint
passwd tecmint
adduser linuxsay
passwd linuxsay
Yukarıdaki ekran görüntüsünden Linux'ta kullanıcı hesapları oluşturmak için adduser komutunu kullandım. Ayrıca useradd komutunu da kullanabilirsiniz, ikisi de aynıdır ve aynı işi yapar.
2. Şimdi daha da ileri giderek Linux'ta deluser (Debian ve türevleri için) ve userdel ( kullanarak kullanıcı hesaplarının nasıl silineceğini veya kaldırılacağını görelim. RedHat/CentOS tabanlı sistemler için) komutu.
deluser ve userdel komutları için yapılandırma dosyasının içindeki yönergeler, komutu çalıştırdığınızda bunun tüm kullanıcı dosyalarını ve dizini nasıl işleyeceğini belirler.
Ubuntu, Kali, Mint gibi Debian türevlerinde ve RHEL/CentOS/Fedora için /etc/deluser.conf
olan deluser komutunun yapılandırma dosyasına bakalım. kullanıcılar /etc/login.defs
dosyalarını görüntüleyebilirler.
Bu konfigürasyondaki değerler varsayılan değerlerdir ve ihtiyaçlarınıza göre değiştirilebilir.
vi /etc/deluser.conf [On Debian and its derivatives]
vi /etc/login.defs [On RedHat/CentOS based systems]
3. Ana dizine sahip bir kullanıcıyı silmek için, Linux sunucu makinenizde aşağıdaki adımları izleyerek gelişmiş yöntemi kullanabilirsiniz. Kullanıcılar sunucuda oturum açtıklarında hizmetleri kullanır ve farklı işlemler çalıştırırlar. Kullanıcının yalnızca sunucuda oturum açmadığında etkili bir şekilde silinebileceğini unutmamak önemlidir.
Linux'ta Kullanıcı Hesaplarını Kilitleme
Kullanıcının sisteme erişimini engellemek için kullanıcı hesabı parolasını kilitleyerek başlayın. Bu, kullanıcının sistem üzerinde işlem çalıştırmasını engelleyecektir.
–lock seçeneğini içeren passwd komutu bunu başarmanıza yardımcı olabilir:
# passwd --lock tecmint
Locking password for user tecmint.
passwd: Success
Kullanıcının Çalışan Tüm Süreçlerini Bul ve Öldür
Daha sonra, kullanıcı hesabında çalışan tüm işlemleri bulun ve aşağıdakileri kullanarak kullanıcının sahip olduğu işlemlerin PID'lerini (İşlem Kimlikleri) belirleyerek bunları sonlandırın:
# pgrep -u tecmint
1947
1959
2091
2094
2095
2168
2175
2179
2183
2188
2190
2202
2207
2212
2214
Daha sonra gösterildiği gibi aşağıdaki komutun yardımıyla kullanıcı adı, PID'ler, PPID'ler (Ana İşlem Kimlikleri), kullanılan terminal, işlem durumu, komut yolu açısından işlemleri tam biçimlendirme stilinde listeleyebilirsiniz:
# ps -f --pid $(pgrep -u tecmint)
UID PID PPID C STIME TTY STAT TIME CMD
tecmint 1947 1 0 10:49 ? SLl 0:00 /usr/bin/gnome-keyring-daemon --daemonize --login
tecmint 1959 1280 0 10:49 ? Ssl 0:00 mate-session
tecmint 2091 1959 0 10:49 ? Ss 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session
tecmint 2094 1 0 10:49 ? S 0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session
tecmint 2095 1 0 10:49 ? Ss 0:00 //bin/dbus-daemon --fork --print-pid 6 --print-address 9 --session
tecmint 2168 1 0 10:49 ? Sl 0:00 /usr/lib/dconf/dconf-service
tecmint 2175 1959 0 10:49 ? Sl 0:02 /usr/bin/mate-settings-daemon
tecmint 2179 1959 0 10:49 ? Sl 0:47 marco
tecmint 2183 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd
tecmint 2188 1959 0 10:49 ? Sl 0:00 mate-panel
tecmint 2190 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes
tecmint 2202 1 0 10:49 ? S<l 0:20 /usr/bin/pulseaudio --start --log-target=syslog
tecmint 2207 1959 0 10:49 ? S 0:00 /bin/sh /usr/bin/startcaja
tecmint 2212 1 0 10:49 ? Sl 0:03 /usr/bin/python /usr/lib/linuxmint/mintMenu/mintMenu.py
tecmint 2214 1 0 10:49 ? Sl 0:11 /usr/lib/mate-panel/wnck-applet
....
Kullanıcının çalışan tüm işlemlerini bulduktan sonra, çalışan işlemleri gösterildiği gibi öldürmek için killall komutunu kullanabilirsiniz.
killall -9 -u tecmint
-9, SIGKILL sinyalinin sinyal numarasıdır veya -9 ve yerine -KILL kullanın >-u kullanıcı adını tanımlar.
Not: RedHat/CentOS 7.x sürümlerinin ve Fedora 21+ sürümlerinin son sürümlerinde şu hata mesajını alırsınız:
-bash: killall: command not found
Bu hatayı düzeltmek için psmisc paketini gösterildiği gibi kurmanız gerekir:
yum install psmisc [On RedHat/CentOS 7.x]
dnf install psmisc [On Fedora 21+ versions]
Silmeden Önce Kullanıcı Verilerini Yedekleyin
Daha sonra kullanıcı dosyalarını yedekleyebilirsiniz; bu isteğe bağlı olabilir ancak gelecekte kullanıcı hesabı ayrıntılarının ve dosyalarının gözden geçirilmesi gerektiğinde kullanılması önerilir.
Kullanıcıların ana dizininin bir yedeğini oluşturmak için tar yardımcı programlarını aşağıdaki gibi kullandım:
tar jcvf /user-backups/tecmint-home-directory-backup.tar.bz2 /home/tecmint
Kullanıcı Hesabını ve Dosyalarını Sil/Kaldır
Artık kullanıcıyı ana dizini ile birlikte güvenli bir şekilde kaldırabilirsiniz; sistemdeki tüm kullanıcı dosyalarını kaldırmak için aşağıdaki komutta --remove-all-files
seçeneğini kullanın:
deluser --remove-home tecmint [On Debian and its derivatives]
userdel --remove tecmint [On RedHat/CentOS based systems]
Özet
Bunların hepsi kullanıcının ve ana dizininin bir Linux sisteminden kaldırılmasıyla ilgilidir. Kılavuzun takip edilmesinin yeterince kolay olduğuna inanıyorum, ancak yorum bırakarak endişenizi dile getirebilir veya daha fazla fikir ekleyebilirsiniz.