Application des scripts Python dans la maintenance des serveurs Linux - exemples de codes spécifiques
Résumé :
Avec le développement de la technologie Internet, le système d'exploitation Linux joue un rôle très important dans la maintenance des serveurs. Cet article explique comment utiliser des scripts Python pour automatiser les tâches courantes de maintenance du serveur Linux afin d'augmenter l'efficacité. Parallèlement, nous fournissons quelques exemples de code spécifiques pour expliquer comment écrire ces scripts en utilisant Python.
import shutil import datetime # 设置源文件和目标目录 source_dir = '/var/www/html' target_dir = '/backup' # 在目标目录中创建以当前日期为名称的子目录 current_date = datetime.datetime.now().strftime("%Y%m%d") target_path = target_dir + '/' + current_date os.makedirs(target_path) # 复制源目录到目标目录中 shutil.copytree(source_dir, target_path)
Le code ci-dessus utilise la fonction copytree() de la bibliothèque Shutil pour copier les fichiers et sous-répertoires du répertoire source vers le répertoire cible. En obtenant la date actuelle et en l'utilisant comme nom de sous-répertoire, vous pouvez facilement gérer et différencier les données de sauvegarde de différentes dates.
import os import psutil # 获取系统负载平均值和内存使用情况 avg_load = os.getloadavg() mem_usage = psutil.virtual_memory() # 打印监控结果 print("系统负载:", avg_load) print("内存使用情况:", mem_usage)
Les bibliothèques os et psutil sont utilisées dans le code ci-dessus pour obtenir la charge moyenne du système et l'utilisation de la mémoire en appelant les fonctions correspondantes. En imprimant ces résultats de surveillance, vous pouvez comprendre l'état de fonctionnement du serveur à tout moment.
import os import glob # 定义日志文件目录和最大保留天数 log_dir = '/var/log' max_days = 30 # 获取当前日期 current_date = datetime.datetime.now() # 遍历日志文件并删除过期的文件 for file_path in glob.glob(log_dir + '/*.log'): file_name = os.path.basename(file_path) file_date_str = file_name.split('.')[0] file_date = datetime.datetime.strptime(file_date_str, "%Y%m%d") # 计算文件的存储天数 delta = current_date - file_date file_age = delta.days # 如果文件的存储天数超过最大保留天数,则删除 if file_age > max_days: os.remove(file_path)
Dans le code ci-dessus, le répertoire de stockage et les jours de conservation maximum des fichiers journaux sont d'abord définis. Ensuite, calculez le nombre de jours pendant lesquels le fichier a été stocké en parcourant le fichier journal et en analysant les informations de date dans le nom du fichier. Si un fichier est stocké pendant plus que le nombre maximum de jours de conservation, le fichier est supprimé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!