Linux – Her kullanıcıya ayrı TEMP klasörü tanımlama
Bu da nerden çıktı şimdi, tüm kullanıcılar paşa paşa tek bir TEMP klasörünü kullansınlar, ne gereği var ? diyebilirsiniz.
Yanıtı : Eğer bir programı farklı kullanıcılarda aynı anda çalıştırmak isterseniz, aynı TEMP klasörünü kullandığı için ikinci çalıştıracağınız program ” program zaten çalışıyor ” diyerek hata verecektir. Bunu çözmenin yolu da her kullanıcıya farklı TEMP klasörü tanımlamaktan geçiyor. Ben size Linux ta bunun nasıl yapılacağını aşağıda anlatacağım.
Anlatacağım işlemi Centos 6 , centos 7, Ubuntu 14, Ubuntu 16 işletim sistemlerinde denedim. Muhtemelen diğer işletim sistemlerinde de sorunsuz çalışacaktır. Böyle bir işleme ihtiyacınız varsa denemenizi tavsiye ederim.
TEMP klasörünü her kullanıcıya ayrı tanımlamak için yapacağımız işlem kısa ve basittir. İşleme başlamadan önce nano editör sisteminizde yüklü değilse işletim sisteminize göre aşağıdaki komutu terminal ekranına girerek nano editör ü yükleyin. Ben başka editör kullanacağım derseniz bu adımı atlayabilirsiniz
[su_note note_color=”#e0e0e0″]
# CENTOS 5 , CENTOS 6 CENTOS 7
yum -y install nano
# UBUNTU 10, 12, 14, 16 – DEBIAN
sudo apt-get -y install nano
[/su_note]
Aşağıdaki komut satırını terminal ekranına yazarak /etc/profile dosyasını nano editör ile açın.
[su_note note_color=”#e0e0e0″]
sudo nano /etc/profile
[/su_note]
Aşağıdaki kodu ilk satırdan itibaren kopyala yapıştır yapın. Yapıştırdıktan sonra CTRL + O ya basın, ENTER ‘ a basarak kaydedin ve CTRL + X ‘ e basarak nano editörden çıkın.
[su_note note_color=”#e0e0e0″]
if [[ -O /home/$USER/tmp && -d /home/$USER/tmp ]]; then
TMPDIR=/home/$USER/tmp
else
# You may wish to remove this line, it is there in case
# a user has put a file ‘tmp’ in there directory or a
rm -rf /home/$USER/tmp 2> /dev/null
mkdir -p /home/$USER/tmp
TMPDIR=$(mktemp -d /home/$USER/tmp/XXXX)
fi
TMP=$TMPDIR
TEMP=$TMPDIR
export TMPDIR TMP TEMP
[/su_note]
Sisteminizi REBOOT ettikten sonra artık her kullanıcının kendine ait bir TEMP klasörü olacaktır. TMP klasörünün yolu /home/kullanıcı_adı/tmp altında olacaktır. Artık aynı TMP klasörünü kullandığı için birden fazla kullanıcıda çalışmayan scriptleriniz, programlarınız sorunsuz ve sınırsız kullanıcıda çalışacaktır.
BONUS :
Her kullanıcıya ayrı TMP kLasörü oluşturduğumuz için artık ” her tmp klasörünü tek tek temizleme zahmeti bonusu” kazandık 🙂
İşin kolayı varken, her TMP klasörünü elle temizlemeyeceğimiz için aşağıdaki işlemi yapıyoruz veee kullanıcı logout yaptığında tmp klasörü otomatik olarak temizleniyor. Bu zahmetten de kurtulmuş oluyoruz.
Aşağıda yolu belirtilen doSyayı nano editörle, komutu terminal ekranına girerek açıyoruz.
[su_note note_color=”#e0e0e0″]
sudo nano /etc/skel/.bash_logout
[/su_note]
Aşağıdaki satırı açtığımız dosyanın içine kopyala yapıştır yapıyoruz. CTRL + O ya basıyoruz ENTER ‘a basarak kaydediyoruz ve CTRL + X e basarak nano editörden çıkıyoruz. Sistemi Reboot ettiğimizde işlem devreye girmiş oluyor.
[su_note note_color=”#e0e0e0″]
if [ -O $TMPDIR && -d $TMPDIR ]; then
rm -rf $TMPDIR/*
fi
[/su_note]
Linux’ un ihtiyaçları nızı düşünüp karşılayan, esnek bir işletim sistemi olduğunu , bu konu itibariyle bir kez daha görmüş olduk. Bol güneşli günler dilerim, sağlıcakla kalın.
Son yorumlar