From dd91a75a82f8a2d0bace95565c412822daa08949 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 00:54:33 +0300 Subject: [PATCH 1/9] Create TempCleaner --- TempCleaner | 1 + 1 file changed, 1 insertion(+) create mode 100644 TempCleaner diff --git a/TempCleaner b/TempCleaner new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/TempCleaner @@ -0,0 +1 @@ + From 0c0368b4996c63959663f4b35d8ed7e3cc6d1e91 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 00:55:28 +0300 Subject: [PATCH 2/9] Delete TempCleaner --- TempCleaner | 1 - 1 file changed, 1 deletion(-) delete mode 100644 TempCleaner diff --git a/TempCleaner b/TempCleaner deleted file mode 100644 index 8b13789..0000000 --- a/TempCleaner +++ /dev/null @@ -1 +0,0 @@ - From 986af8d4a4a3f2659a7079f3f77c99b3b323c43b Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Thu, 18 Jul 2024 22:16:01 +0000 Subject: [PATCH 3/9] TempCleaner --- TempCleaner/Readme.md | 1 + TempCleaner/package.json | 16 ++++++++++++ TempCleaner/tempCleaner.js | 50 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 TempCleaner/Readme.md create mode 100644 TempCleaner/package.json create mode 100644 TempCleaner/tempCleaner.js diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md new file mode 100644 index 0000000..945c9b4 --- /dev/null +++ b/TempCleaner/Readme.md @@ -0,0 +1 @@ +. \ No newline at end of file diff --git a/TempCleaner/package.json b/TempCleaner/package.json new file mode 100644 index 0000000..60215de --- /dev/null +++ b/TempCleaner/package.json @@ -0,0 +1,16 @@ +{ + "name": "temp-cleaner", + "version": "1.0.0", + "description": "A Node.js script to clean unused temp files", + "main": "tempCleaner.js", + "scripts": { + "start": "node tempCleaner.js" + }, + "dependencies": { + "node-cron": "^3.0.0", + "fs-extra": "^10.0.0" + }, + "author": "NuriBartu", + "license": "MIT" + } + \ No newline at end of file diff --git a/TempCleaner/tempCleaner.js b/TempCleaner/tempCleaner.js new file mode 100644 index 0000000..dbf20ee --- /dev/null +++ b/TempCleaner/tempCleaner.js @@ -0,0 +1,50 @@ +const cron = require('node-cron'); +const fs = require('fs'); +const path = require('path'); +const { promisify } = require('util'); +const readdir = promisify(fs.readdir); +const stat = promisify(fs.stat); +const unlink = promisify(fs.unlink); + +const TEMP_DIR = '/tmp'; +const DAYS_UNUSED = 7; +const MILLISECONDS_IN_A_DAY = 24 * 60 * 60 * 1000; + +async function cleanOldTempFiles() { + try { + const files = await readdir(TEMP_DIR); + const now = Date.now(); + + for (const file of files) { + const filePath = path.join(TEMP_DIR, file); + const fileStat = await stat(filePath); + + // Son erişim tarihini kontrol et + const lastAccessTime = new Date(fileStat.atime).getTime(); + const fileAge = (now - lastAccessTime) / MILLISECONDS_IN_A_DAY; + + if (fileAge > DAYS_UNUSED) { + await unlink(filePath); + console.log(`Silindi: ${filePath}`); + } + } + } catch (error) { + console.error(`Hata oluştu: ${error.message}`); + } +} + +// Kod çalıştırıldığında temizlik yap +console.log('Kullanılmayan temp dosyaları temizleniyor...'); +cleanOldTempFiles().then(() => { + console.log('İlk temp dosya temizleme işlemi tamamlandı.'); +}); + +// Her 12 saatte bir çalışacak cron job tanımlaması +cron.schedule('0 */12 * * *', () => { + console.log('Kullanılmayan temp dosyaları temizleniyor...'); + cleanOldTempFiles().then(() => { + console.log('Temp dosya temizleme işlemi tamamlandı.'); + }); +}); + +console.log('Temp dosya temizleyici cron job başlatıldı.'); \ No newline at end of file From 49414efae316f1e056a4bc66380f13fcf2750d97 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:47:44 +0300 Subject: [PATCH 4/9] Update Readme.md --- TempCleaner/Readme.md | 94 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 93 insertions(+), 1 deletion(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index 945c9b4..95cf63b 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -1 +1,93 @@ -. \ No newline at end of file +

Gereksiz Temp Temizleme

+ + +> UYARI : Bunu kullanmak herkesin kendi mesuliyetindedir. + +Bu yöntem ile tx botlarının oluşturduğu gereksiz temp dosyalarını silerek depolamamızda yer açıyoruz. Kodu çalıştırdığınızda ve bunu takip eden her 12 saatte kullanılmayan temp dosyaları siliniyor. + +> 80gb dolmuş sunucuda denediğimde 64gb gereksiz dosya silindi. + +

Kurulum

+ +> Sunucuzda npm ve node.js kurulu ise bu kısmı geçebilirsiniz. + +Npm ve node.js kurulumu + +``` +# komutları sırasıyla girelim: +curl -sL https://deb.nodesource.com/setup_20.x -o /tmp/nodesource_setup.sh +sudo bash /tmp/nodesource_setup.sh +sudo apt install nodejs + +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash +source ~/.bashrc +nvm install v20.10.0 +nvm use v20.10.0 +npm install -g npm@latest + +``` +Screen Açalım + +> Screen indirelim. + +``` +apt install screen + +``` + +> Screen oluşturalım. + +``` +screen -S tempcleaner + +``` + +> Sonra yeni bir klasör oluşturalım. Ardından npm ile proje oluşturalım. Hepsini enter ile geçebilirsiniz. + +``` +cd $HOME +mkdir tempcleaner +cd tempcleaner +npm init + +``` + +> tempCleaner.js dosyasını oluşturun. Bu repodaki index.js değiştirmeden yapıştırın. Ctrl+X Y sonra Enter ile kaydedin. + +``` + +nano tempCleaner.js + +``` + +> package.json dosyasını oluşturun. Ctrl+K ile hepsini sil. Githubdan package.json kopyala yapıştır. Ctrl+X Y sonra Enter ile kaydedin. + +``` + +nano package.json + +``` + +> En son aşağıdakileri çalıştıralım + +``` +npm install +node tempCleaner.js + +``` + + Ctrl+A+D ile çıkabilirsiniz. +> Screen içine girmek için; + +``` +screen -r tempcleaner + +``` + +Depolama kontrol kodu + +``` +df -h + +``` +> Bu kod ile kullanılan ve boş depolama miktarınızı görebilirsiniz. From b55c6d29781315ba5fda3ada6c1daf58a580fea3 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:49:09 +0300 Subject: [PATCH 5/9] Update Readme.md --- TempCleaner/Readme.md | 29 +++++++++-------------------- 1 file changed, 9 insertions(+), 20 deletions(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index 95cf63b..dd237a5 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -13,7 +13,7 @@ Bu yöntem ile tx botlarının oluşturduğu gereksiz temp dosyalarını silerek Npm ve node.js kurulumu -``` +```console # komutları sırasıyla girelim: curl -sL https://deb.nodesource.com/setup_20.x -o /tmp/nodesource_setup.sh sudo bash /tmp/nodesource_setup.sh @@ -24,70 +24,59 @@ source ~/.bashrc nvm install v20.10.0 nvm use v20.10.0 npm install -g npm@latest - ``` Screen Açalım > Screen indirelim. -``` +```console apt install screen - ``` > Screen oluşturalım. -``` +```console screen -S tempcleaner - ``` > Sonra yeni bir klasör oluşturalım. Ardından npm ile proje oluşturalım. Hepsini enter ile geçebilirsiniz. -``` +```console cd $HOME mkdir tempcleaner cd tempcleaner npm init - ``` > tempCleaner.js dosyasını oluşturun. Bu repodaki index.js değiştirmeden yapıştırın. Ctrl+X Y sonra Enter ile kaydedin. -``` - +```console nano tempCleaner.js - ``` > package.json dosyasını oluşturun. Ctrl+K ile hepsini sil. Githubdan package.json kopyala yapıştır. Ctrl+X Y sonra Enter ile kaydedin. -``` - +```console nano package.json - ``` > En son aşağıdakileri çalıştıralım -``` +```console npm install node tempCleaner.js - ``` Ctrl+A+D ile çıkabilirsiniz. > Screen içine girmek için; -``` +```console screen -r tempcleaner - ``` Depolama kontrol kodu -``` +```console df -h - ``` > Bu kod ile kullanılan ve boş depolama miktarınızı görebilirsiniz. From b78f2c5000a9e85b3bfeade76a26ae0af61c58fa Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:50:15 +0300 Subject: [PATCH 6/9] Update Readme.md --- TempCleaner/Readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index dd237a5..4c32003 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -1,4 +1,4 @@ -

Gereksiz Temp Temizleme

+

Gereksiz Temp Temizleme

> UYARI : Bunu kullanmak herkesin kendi mesuliyetindedir. @@ -7,7 +7,7 @@ Bu yöntem ile tx botlarının oluşturduğu gereksiz temp dosyalarını silerek > 80gb dolmuş sunucuda denediğimde 64gb gereksiz dosya silindi. -

Kurulum

+

Kurulum

> Sunucuzda npm ve node.js kurulu ise bu kısmı geçebilirsiniz. From d07c9d31148a758ade7a17e4310906d8ec2e8301 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:50:28 +0300 Subject: [PATCH 7/9] Update Readme.md --- TempCleaner/Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index 4c32003..d01278e 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -1,4 +1,4 @@ -

Gereksiz Temp Temizleme

+

Gereksiz Temp Temizleme

> UYARI : Bunu kullanmak herkesin kendi mesuliyetindedir. From 82ccdd143274b3c56dee96fe015d29e43fbf41f6 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Fri, 19 Jul 2024 18:50:51 +0300 Subject: [PATCH 8/9] Update Readme.md --- TempCleaner/Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index d01278e..c38dfde 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -7,7 +7,7 @@ Bu yöntem ile tx botlarının oluşturduğu gereksiz temp dosyalarını silerek > 80gb dolmuş sunucuda denediğimde 64gb gereksiz dosya silindi. -

Kurulum

+

Kurulum

> Sunucuzda npm ve node.js kurulu ise bu kısmı geçebilirsiniz. From 9b25b94aa2a379961d0b14e43119e7e2958f5018 Mon Sep 17 00:00:00 2001 From: NuriBartu <110860267+NuriBartu05@users.noreply.github.com> Date: Thu, 25 Jul 2024 23:46:37 +0300 Subject: [PATCH 9/9] Update Readme.md --- TempCleaner/Readme.md | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/TempCleaner/Readme.md b/TempCleaner/Readme.md index c38dfde..4e413a6 100644 --- a/TempCleaner/Readme.md +++ b/TempCleaner/Readme.md @@ -3,11 +3,31 @@ > UYARI : Bunu kullanmak herkesin kendi mesuliyetindedir. + +

Elle temizleme

+ Kesin çalışır 2-3 günde bir yapsanız yeterli. + +> Depolama Kontrol +```console +df -h +``` +> Temp Silme +```console +rm -rf /tmp/* +``` +> Tekrar Depolama Kontrol +```console +df -h +``` +> Bu kadar. + +

Oto Temizleme

+ Bu yöntem ile tx botlarının oluşturduğu gereksiz temp dosyalarını silerek depolamamızda yer açıyoruz. Kodu çalıştırdığınızda ve bunu takip eden her 12 saatte kullanılmayan temp dosyaları siliniyor. > 80gb dolmuş sunucuda denediğimde 64gb gereksiz dosya silindi. -

Kurulum

+

Kurulum

> Sunucuzda npm ve node.js kurulu ise bu kısmı geçebilirsiniz.