Проект

Общее

Профиль

Программа "Updater": обновите ОС на своих ПК

Обновление системы и проверка свободного дискового пространства при помощи программы, код которой я распространяю бесплатно.
Добавил(а) Михаил Губин 3 месяца назад

В современном мире компьютеры играют важную роль в нашей жизни, и их эффективная работа зависит от регулярного обновления программного обеспечения. Однако, обновление системы может быть сложной задачей, особенно для пользователей, которые не имеют достаточных технических знаний. В этой статье мы рассмотрим программу, которая автоматизирует процесс обновления системы и предоставляет информацию о свободном дисковом пространстве.

Программа использует язык программирования C# и библиотеку log4net для записи информации в журнал. Она также использует класс Process для запуска команд в командной строке.

Функции программы

Программа выполняет следующие функции:

  1. Программа определяет версию операционной системы, используя утилиту lsb_release. Это позволяет ей адаптироваться к различным дистрибутивам Linux.

  2. Программа запускает процесс обновления системы, используя команды sudo apt-get update и sudo apt-get full-upgrade для дистрибутивов Debian и Ubuntu, и команду sudo yum update -y для RED OS.

  3. Программа собирает информацию о свободном дисковом пространстве на всех доступных локальных дисках.

  4. Информация о дистрибутиве и свободном дисковом пространстве записывается в журнал с помощью библиотеки log4net.

Преимущества использования программы

Использование данной программы имеет несколько преимуществ:

  • Пользователи могут обновить свою систему без необходимости вручную вводить команды в командной строке.
  • Программа поддерживает различные дистрибутивы Linux, что делает ее полезной для широкого круга пользователей.
  • Программа предоставляет информацию о свободном дисковом пространстве, что помогает пользователям оценить доступность ресурсов для установки новых приложений или хранения данных.

Исходник

private static void UpdateSystem()
{
    Console.WriteLine("Обновление системы...");

    // Проверка операционной системы
    string distro = GetDistro();
    if (distro.Equals("RED OS", StringComparison.OrdinalIgnoreCase))
    {
        // Использование команды для RED OS
        Process process = new Process();
        process.StartInfo.FileName = "bash";
        process.StartInfo.Arguments = "-c \"sudo yum update -y\"";
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.RedirectStandardOutput = true;
        process.Start();
        process.WaitForExit();

        // Вывод результатов обновления
        Console.WriteLine($"Результат обновления системы: {process.StandardOutput.ReadToEnd()}");
    }
    else if (distro.Contains("Debian") || distro.Contains("Ubuntu"))
    {
        // Использование команд для Debian и Ubuntu
        Process process = new Process();
        process.StartInfo.FileName = "bash";
        process.StartInfo.Arguments = "-c \"sudo apt-get update && sudo apt-get full-upgrade -y\"";
        process.StartInfo.UseShellExecute = false;
        process.StartInfo.RedirectStandardOutput = true;
        process.Start();
        process.WaitForExit();

        // Вывод результатов обновления
        Console.WriteLine($"Результат обновления системы: {process.StandardOutput.ReadToEnd()}");
    }
    else
    {
        // Если операционная система не распознана, выводим сообщение об ошибке
        Console.WriteLine("Неизвестная операционная система. Обновление системы не выполнено.");
    }
}

Скомпилированная софтина добавлена к статье, весит примерно 400 кб.

Запуск: dotnet updater.dll.

updater.zip (391 КБ) updater.zip Скомпилированная программа Михаил Губин, 23.08.2024 13:28

Комментарии