Архив метки: Linux

Что такое Amazon Linux 2?

Amazon является крупнейшим игроком на рынке облачных вычислений, и его платформа облачных вычислений Amazon Web Services (AWS) сохраняет очень высокие темпы роста с момента запуска в 2006 году.

Чтобы помочь своим клиентам в полной мере воспользоваться преимуществами своего облачного предложения, компания создала собственную серверную операционную систему Linux под названием Amazon Linux. Amazon Linux, основанный на Red Hat Enterprise Linux (RHEL), выделяется своей тесной интеграцией со многими сервисами Amazon Web Services (AWS), долгосрочной поддержкой, а также компилятором, набором инструментов для сборки и ядром LTS, настроенным для повышения производительности на Amazon EC2.

В декабре 2017 года Amazon анонсировала вторую версию своей операционной системы Linux: Amazon Linux 2. Как и его предшественник, Amazon Linux 2 будет поддерживаться в течение 5 лет с обновлениями безопасности и обслуживания до 30 июня 2023 года.

 

Встречайте Amazon Linux 2

У Amazon много клиентов по всему миру, чьи приложения и инфраструктура полностью размещены на облачных серверах. Для таких клиентов имеет смысл использовать операционную систему, которая была разработана так, чтобы легко интегрироваться с платформой облачных вычислений Amazon и выжать из нее максимум производительности.

 

Стабильный Bleeding Edge

С Amazon Linux 2 клиенты также получают два преимущества, которые не часто сочетаются друг с другом: долгосрочную поддержку и доступ к последним версиям популярных программных пакетов. Долгосрочная поддержка распространяется на основные пакеты (полный список которых можно найти на странице часто задаваемых вопросов по Amazon Linux 2). Amazon обещает предоставлять обновления безопасности и исправления ошибок в течение 5 лет.

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

На момент написания ядром по умолчанию в Amazon Linux 2, которое получает долгосрочную поддержку со стороны Amazon, является ядро ​​Linux 4.14. Однако пользователи могут легко перейти на оптимизированное для AWS ядро ​​Linux 4.19, установив его из каталога Extras, репозитория новейшего программного обеспечения, включая ядра, среды выполнения, инструментальные средства, базы данных, веб-стеки и многое другое.

Установка ядра Linux 4.19 выполняется одной простой командой:

sudo amazon-linux-extras install kernel-ng

Другое доступное программное обеспечение в каталоге Extras можно просмотреть с помощью следующей команды:

amazon-linux-extras list

0  ansible2                 available    [ =2.4.2  =2.4.6  =2.8 ]

2  httpd_modules            available    [ =1.0 ]

3  memcached1.5             available    [ =1.5.1  =1.5.16 ]

5  postgresql9.6            available    [ =9.6.6  =9.6.8 ]

6  postgresql10             available    [ =10 ]

8  redis4.0                 available    [ =4.0.5  =4.0.10 ]

9  R3.4                     available    [ =3.4.3 ]

10  rust1                    available    

[ =1.22.1  =1.26.0  =1.26.1  =1.27.2  =1.31.0 ]

11  vim                      available    [ =8.0 ]

13  ruby2.4                  available    [ =2.4.2  =2.4.4  =2.4.7 ]

15  php7.2                   available    

[ =7.2.0  =7.2.4  =7.2.5  =7.2.8  =7.2.11  =7.2.13  =7.2.14

=7.2.16  =7.2.17  =7.2.19  =7.2.21 ]

16  php7.1                   available    

[ =7.1.22  =7.1.25  =7.1.27  =7.1.28  =7.1.30  =7.1.31 ]

17  lamp-mariadb10.2-php7.2  available    

[ =10.2.10_7.2.0  =10.2.10_7.2.4  =10.2.10_7.2.5

=10.2.10_7.2.8  =10.2.10_7.2.11  =10.2.10_7.2.13

=10.2.10_7.2.14  =10.2.10_7.2.16  =10.2.10_7.2.17

=10.2.10_7.2.19  =10.2.10_7.2.21 ]

18  libreoffice              available    [ =5.0.6.2_15  =5.3.6.1 ]

19  gimp                     available    [ =2.8.22 ]

20  docker=latest            enabled      

[ =17.12.1  =18.03.1  =18.06.1 ]

21  mate-desktop1.x          available    [ =1.19.0  =1.20.0 ]

22  GraphicsMagick1.3        available    [ =1.3.29  =1.3.32 ]

23  tomcat8.5                available    

[ =8.5.31  =8.5.32  =8.5.38  =8.5.40  =8.5.42 ]

24  epel                     available    [ =7.11 ]

25  testing                  available    [ =1.0 ]

26  ecs                      available    [ =stable ]

27  corretto8                available    

[ =1.8.0_192  =1.8.0_202  =1.8.0_212  =1.8.0_222 ]

28  firecracker              available    [ =0.11 ]

29  golang1.11               available    

[ =1.11.3  =1.11.11  =1.11.13 ]

30  squid4                   available    [ =4 ]

31  php7.3                   available    

[ =7.3.2  =7.3.3  =7.3.4  =7.3.6  =7.3.8 ]

32  lustre2.10               available    [ =2.10.5 ]

33  java-openjdk11           available    [ =11 ]

34  lynis                    available    [ =stable ]

35  kernel-ng                available    [ =stable ]

36  BCC                      available    [ =0.x ]

37  mono                     available    [ =5.x ]

38  nginx1                   available    [ =stable ]

39  ruby2.6                  available    [ =2.6 ]

Локальная разработка и тестирование

Вероятно, вас не удивит, что Amazon Linux 2 доступен как образ машины Amazon (AMI) для использования в Amazon Elastic Compute Cloud (AmazonEC2) и как образ контейнера Docker, совместимый с Amazon Elastic Container Service (Amazon ECS).

Что вас может удивить, так это то, что вы также можете загрузить образы виртуальных машин для решений виртуализации VMware, Oracle VM VirtualBox и Microsoft Hyper-V для локальной разработки и тестирования программного обеспечения.

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

 

От SysVinit к systemd

Предыдущая версия Amazon Linux полагалась на SysVinit для начальной загрузки пользовательского пространства Linux и последующего управления системными процессами.

Несмотря на свою простоту и компактность, SysVinit не был разработан для удовлетворения потребностей современных пользователей и запуска большого количества процессов, на которые пользователи привыкли полагаться на протяжении многих лет. Кроме того, SysVinit запускает процессы поочередно, что означает, что он должен ждать загрузки каждого процесса, прежде чем он сможет начать загрузку следующего процесса. Настройка порядка загрузки процессов — это большая работа, а не удовольствие.

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

 

Безопасность прежде всего

Amazon Linux 2 ограничивает подверженность уязвимостям системы безопасности за счет уменьшения количества некритических пакетов, установленных на инстансе. Репозитории Amazon Linux 2 yum служат основным каналом для доставки обновлений безопасности, но обновления безопасности также достигают пользователей через обновленные образы машин Amazon (AMI), а также образы виртуальных машин и контейнеров.

Все события безопасности перечислены в Центре безопасности Amazon Linux AMI, который также предоставляет удобный RSS-канал. Пользователи, которые хотят еще больше усилить свою киберзащиту, могут воспользоваться преимуществами сотен решений безопасности, доступных на AWS Marketplace, включая Trend Micro Deep Security.

«Компания Trend Micro любит Linux, потому что наши клиенты любят Linux. Linux — действительно первоклассный гражданин в Trend Micro, и наша запускаемая поддержка AL2 — еще один пример нашей приверженности защите изменяющихся рабочих нагрузок наших клиентов », — говорится в сообщении Trend Micro на своем веб-сайте. «Независимо от того, используете ли вы свой AL2 в AWS, на виртуальных серверах или в контейнерах, Deep Security обеспечивает многоуровневую защиту для вашей гибридной среды».

Варианты поддержки клиентов премиум-класса доступны через подписку на AWS Support, но они не охватывают использование Amazon Linux 2 локально, что отличает их от аналогичных вариантов подписки, предлагаемых Red Hat.

 

Вывод

Когда дело доходит до запуска рабочих нагрузок Linux на AWS, Amazon Linux 2 — простой выбор. Сочетая долгосрочную поддержку с удобным доступом к новейшему программному обеспечению, этот дистрибутив Linux на основе RHEL обеспечивает удобную точку входа в мир Amazon Web Services и безграничные возможности, которые с ним связаны.



2021-02-18T18:33:36
Amazon Linux

Я хочу удалить Apache в Ubuntu. Как это сделать?

Это краткое руководство показывает студентам и новым пользователям, как удалить Apache и/или очистить Ubuntu 20.04 | 18.04.

Если вы веб-мастер и хотите удалить веб-сервер Apache со своего хоста, вам помогут следующие шаги.

Существует два основных способа удаления или удаления программ из систем Ubuntu и Linux.

Вы можете запустить apt remove или apt purge.

Когда вы используете опцию remove с apt, команда удалит программный пакет из системы, но оставит файлы конфигурации.

Использование очистки с apt приведет к удалению пакета программного обеспечения, включая все файлы конфигурации и настройки.

Если вы хотите удалить Apache из Ubuntu, выполните следующие действия:

Удалить Apache

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

Если вы думаете об удалении Apache для переустановки, вы можете использовать опцию очистки.

Если вы просто хотите удалить пакет Apache, но сохраните все файлы конфигурации, выполните следующие команды:

sudo apt remove apache2

Приведенные выше команды удаляют Apache, но файлы конфигурации сайта в каталоге  /etc/apache2  остаются без изменений, включая каталог содержимого в /var/www.

Очистить Apache

Параметр очистки с apt удалит Apache и все файлы конфигурации из Ubuntu.

Если вы хотите полностью удалить Apache, включая файлы конфигурации и настройки, используйте опцию очистки.

Файлы в каталоге /etc/apache2 будут удалены. Однако содержимое сайта в /var/www останется в покое.

Выполните приведенные ниже команды, чтобы удалить Apache вместе с его файлами конфигурации.

sudo apt purge apache2

Переустановка Apache

Когда вы используете опцию переустановки с apt, команда удаляет apache и устанавливает.

Параметр переустановки не изменяет и не удаляет какой-либо файл конфигурации или содержимое сайта в /var/www.

Он просто удалит и переустановит пакеты apache.

Чтобы переустановить apache, выполните следующие команды:

sudo apt reinstall apache2

Это должно сработать!

Вывод:

В этом посте показано, как удалить, очистить или переустановить apache. Если вы обнаружите какую-либо ошибку выше, пожалуйста, используйте форму комментария ниже, чтобы сообщить.



2021-02-17T12:40:57
Вопросы читателей

Лучшие дистрибутивы на основе Arch Linux

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

Некоторые производные Arch Linux делают дистрибутив более доступным для неопытных пользователей, а некоторые были созданы в ответ на различные ключевые решения по проектированию системы, принятые разработчиками Arch Linux. Ниже перечислены 5 лучших дистрибутивов Linux на основе Arch, о которых вы должны знать в 2020 году.

 

Топ 5 лучших дистрибутивов Linux на основе Arch

1. Manjaro

Лучшие дистрибутивы на основе Arch Linux

Manjaro (названный в честь горы Килиманджаро) на сегодняшний день является самым популярным дистрибутивом Linux, основанным на Arch в 2020 году. Его первая версия была выпущена в 2011 году с целью объединить передовой характер Arch Linux с упором на удобство использования и доступность.

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

Если вы решите попробовать Manjaro, вам нужно будет выбрать, какую версию вы хотите загрузить. Существует три официальных выпуска со средой рабочего стола (XFCE, KDE Plasma и GNOME) и одна минимальная версия, которую вы можете использовать для создания собственной системы на основе Manjaro с нуля. Кроме того, сообщество Manjaro отвечает за несколько неофициальных выпусков.

Если у вас есть одноплатный компьютер на базе ARM, такой как Raspberry Pi, вы будете рады узнать, что существует несколько редакций ARM, поддерживаемых командой Manjaro, в том числе одна, основанная на KDE Plasma.

 

2. Anarchy Linux

Лучшие дистрибутивы на основе Arch Linux

Многие пользователи Linux, которые хотят попробовать Arch Linux, боятся его ручной установки, которая подробно описана в Arch Wiki. Anarchy Linux — это простой в использовании установщик Arch Linux, который пытается сделать процесс установки более доступным.

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

Разработчики Anarchy Linux предоставляют пять полностью настраиваемых окружений рабочего стола и менеджеров окон (Cinnamon, GNOME, Openbox, XFCE и Budgie), но вы также можете установить общие версии других DE и WM.

Когда вы закончите установку, вы можете продолжить работу с учебными пособиями, опубликованными на Arch Wiki, но ваша система должна быть в основном готова к использованию.

 

3. Artix Linux

Лучшие дистрибутивы на основе Arch Linux

В октябре 2012 года systemd, базовое программное обеспечение, запускающее остальную часть системы, стало по умолчанию в новых установках Arch Linux. Принятию решения предшествовал жаркий обмен мнениями между членами сообщества Arch, многие из которых были убеждены, что systemd не соответствует простой природе Arch Linux.

Большинство пользователей Arch Linux в конечном итоге приняли это изменение, но небольшая часть придерживалась своего мнения, что PID1 должен быть простым, безопасным и стабильным. Эта небольшая часть создала Artix Linux, скользящий выпуск, основанный на Arch Linux, который использует OpenRC, runit или s6 в качестве init.

Установка Artix Linux подробно описана на его веб-сайте, и любой, кто когда-либо успешно устанавливал Arch Linux, не должен иметь с ней никаких проблем.

Как производная от Arch Linux, Artix Linux предназначена в основном для опытных пользователей, которые видят в systemd серьезную угрозу безопасности. У обычных пользователей нет абсолютно никаких причин избегать использования systemd, особенно с учетом того, что он уже некоторое время используется в большинстве других основных дистрибутивов Linux.

 

4. Chakra

Лучшие дистрибутивы на основе Arch Linux

Если вам нравится среда рабочего стола KDE, вам стоит попробовать Chakra, потому что она ориентирована исключительно на программное обеспечение KDE, сводя к минимуму использование других наборов инструментов виджетов.

Этот дистрибутив начался как проект упаковки KDEmod, который был создан группой преданных пользователей Arch Linux для улучшения и упрощения стандартной установки KDE с Arch Linux. В конце концов, группа решила выпустить KDEmod как собственный ISO-образ и еще больше интегрировать его с программным обеспечением KDE. В 2010 году была выпущена первая независимая версия Chakra 0.2, завершившая разработку KDEmod.

Chakra сочетает модель скользящего выпуска, используемую Arch Linux, с собственными основными пакетами, которые замораживаются на определенный период времени и обновляются только при обнаружении серьезных проблем с безопасностью. Эта модель полуавтоматического выпуска обеспечивает отличную стабильность при сохранении доступа к новейшим программным приложениям.

Chakra live ISO содержит загрузочную среду, которая позволяет вам опробовать систему перед ее установкой с помощью включенной независимой от дистрибутива среды установки Calamares, с которой вы, возможно, знакомы по таким дистрибутивам, как Manjaro, Lubuntu или KaOS.

 

5. Velt/OS

Лучшие дистрибутивы на основе Arch Linux

Материальный дизайн Google повлиял на многих дизайнеров пользовательских интерфейсов, научив их использовать адаптивную анимацию и переходы, сеточные макеты, отступы и эффекты глубины, чтобы сделать программное обеспечение более удобным в использовании и более привлекательным. Velt/OS — это экспериментальная среда рабочего стола в стиле Material Design, которую можно установить на любой существующей установке Arch Linux или легко протестировать через ISO-образ на основе Arch Linux.

Разработка Velt/OS неуклонно прогрессирует уже полдесятилетия, и ее разработчики, похоже, пришли к чему-то поистине великому. Макет явно вдохновлен Windows, но Material Design придает Velt/OS уникальный вид, который является долгожданным отходом от обычных настольных сред.

К сожалению, у двух главных людей, стоящих за этим захватывающим проектом, Эйдана Шафрана и Стефана Квечински, похоже, много дел, потому что прогресс был довольно медленным. Но даже если Velt/OS никогда не станет основной средой рабочего стола, она продолжит служить подтверждением концепции, демонстрируя достоинства Material Design будущим разработчикам с открытым исходным кодом и пользователям Arch Linux.



2021-02-16T21:13:26
ArchLinux

MongoDB против MySQL: какую базу данных использовать

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

В этом руководстве мы рассмотрим основы MySQL и MongoDB, а затем расскажем о различиях между ними и о том, что вы должны использовать для различных случаев использования.

Что такое MongoDB?

MongoDB, разработанная в 2007 году, представляет собой популярную систему управления нереляционными базами данных (СУБД) NoSQL, в которой для хранения данных используются документы вместо таблиц или строк. Эта модель данных позволяет манипулировать связанными данными за одну операцию с базой данных.

Документы MongoDM — это документы и файлы, подобные JSON, и они поддерживают JavaScript (JS). Поля документа могут различаться, что упрощает изменение структуры с течением времени.

MongoDB считается schema-less, поскольку для нее не требуется заранее заданная схема базы данных. MongoDB использует гибкие пары ключ-значение, называемые документами, для хранения данных.

Поскольку MongoDB не содержит схемы, вам не нужно определять фиксированную структуру. Разработчикам легко использовать и изучать его, то есть его могут использовать как администраторы, так и разработчики. Он поддерживает все основные языки программирования и операционные системы, включая Mac, Linux и Windows.

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

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

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

Ограничения MongoDB

  • MongoDB не поддерживает объединения, поэтому в зависимости от того, как вы хотите получить доступ к данным, вам, возможно, придется регулярно обновлять свои документы.
  • Она может потреблять много памяти из-за пар ключ-значение, которые могут привести к избыточности данных.
  • Документы имеют лимит 16 МБ.
  • Поскольку ACID не соблюдается строго, сложные транзакции могут усложняться.

    MongoDB не поддерживает хранимые процедуры, поэтому вы не можете реализовать бизнес-логику на уровне базы данных.

Что такое MySQL?

MySQL — это система управления реляционными базами данных (СУБД) с открытым исходным кодом, которая хранит данные в таблицах и строках. Он использует SQL (язык структурированных запросов) для передачи данных и доступа к ним. Операции JOIN упрощают запросы и корреляцию. Он следует архитектуре клиент-сервер и поддерживает многопоточность.

С момента создания базы данных MySQL у нее есть огромное сообщество, обширное тестирование и стабильность. Он доступен для всех основных платформ вместе с коннекторами для многих языков, включая C, Java, C ++, Python и PHP.

Общие варианты использования MySQL:

MySQL обычно используется для критически важных веб-сайтов с высокой посещаемостью, приложений электронной коммерции, хранилищ данных и приложений для ведения журналов.

Ограничения MySQL

Ограничения MySQL такие же, как и у любой другой СУБД, включая:

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

Различия между MongoDB и MySQL

В этом разделе мы рассмотрим некоторые из основных различий между MongoDB и MySQL.

Представление данных

MongoDB представляет данные как документы JSON, тогда как MySQL представляет данные в строках и таблицах.

В MongoDB это будет выглядеть следующим образом:

{ 

    First Name: 'John',

    Last Name: 'Doe', 

    Employee_ID: 1234, 

    Status: 'Active'

}

Встраивание данных

MySQL не предлагает никаких вариантов для вложения или встраивания данных. Вы можете использовать JOIN, но они могут привести к увеличению размера таблиц с ненужными полями. Соединения также могут быть трудоемкими и требовательными к производительности.

MongoDB позволяет вставлять связанные данные. У вас также есть возможность ссылаться на данные из другого документа, если вы чувствуете, что документ может слишком сильно увеличиться. Пример включает:

{

    id: 13,

    name: ‘John Doe’,

    age: 23,

    address: {

        City: 'New Jersey,

        Street: 'London',

        Zip_code: 9876

    }

}

Язык запроса

MySQL использует SQL, тогда как MongoDB использует MQL, язык запросов MongoDB. В этом разделе мы сравним некоторые общие операции с базой данных в таблице Employee.

Выбор данных в MySQL

select * from employee;

Вставка данных в MySQL

INSERT INTO employee (employee_id, department, status)

VALUES (12, 'Sales', 'Active');

Обновление данных в MySQL

UPDATE employee SET department = 'Finance' WHERE employee_id = 14;

Выбор данных в MongoDB *

db.find.employee()

Вставка данных в MongoDB

db.employee.insert ({employee_id:'12', department.Sales', status:'Active'})

Обновление данных в MongoDB

db.employee.update({employee_id::{$eq:14}},{$set{ department:'Finance'}},{multi:true})

Оптимизация индекса

Обе базы данных используют индексы для оптимизации. Если MySQL не находит релевантного индекса для запроса, он ищет всю таблицу.

MongoDB просматривает каждый документ в коллекции, если нет индексов.

Развертывание базы данных

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

Скорость и производительность

Поскольку MongoDB — это база данных NoSQL, она быстрее MySQL.

Группировка данных

MongoDB хранит документы, принадлежащие одному классу или группе в коллекции. MySQL хранит строки похожих типов в таблице.

Кластеризация/репликация

MySQL поддерживает репликацию master-slave и master-master, позволяя воспроизводить данные из нескольких основных баз данных параллельно. MongoDB, с другой стороны, поддерживает встроенное сегментирование, репликацию и автоматические выборы.

Шардинг позволяет осуществлять горизонтальное масштабирование, а автоматические выборы позволяют настраивать вторичные базы данных, которые вступят во владение, если ваша первичная база данных выйдет из строя.

Безопасность

MySQL использует модель безопасности на основе привилегий, которая аутентифицирует пользователей и дает им привилегии для определенных операций с базой данных. На транспортном уровне он использует закодированные соединения между серверами и клиентами.

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

Масштабируемость

MySQL масштабируется по вертикали, что означает, что вы можете увеличить нагрузку на один сервер, увеличив ОЗУ или характеристики ЦП. MongoDB масштабируется по горизонтали, то есть вы можете создать кластер MongoDB с несколькими серверами, добавив больше серверов в свою базу данных.

Поддержка и документация

MySQL предлагает пожизненную поддержку на трех уровнях:

  • Premier: от 1 до 5 лет.
  • Extended: 6-8 лет.
  • Sustain: от 9 лет.

Для каждого уровня он предлагает круглосуточную техническую поддержку, а также доступ к патчам, исправлениям ошибок, выпускам обслуживания и обновлениям. Документация MySQL поддерживается корпорацией Oracle.

MongoDB предлагает поддержку корпоративного уровня. Это дает вам возможность обновлять версии в удобном для вас темпе. Документация MongoDB поддерживается MongoDB, Inc.

Когда использовать MongoDB или MySQL

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

MySQL — хороший выбор, если:

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

MySQL — хороший выбор, если вы работаете с устаревшим приложением, которое требует многострочных транзакций и имеет структурированные данные с четкой схемой.

MongoDB — хороший выбор, если:

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

MongoDB может быть правильным выбором, если вы работаете с аналитикой в ​​реальном времени, мобильными приложениями, Интернетом вещей и т.д., где у вас могут быть структурированные или неструктурированные данные, которые могут быстро расти.

Что учить дальше

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

  • Соединения SQL
  • Хранимые процедуры
  • Индексирование
  • NoSQL
  • Хранилища «ключ-значение»
  • Node.js драйверы



2021-02-15T10:17:51
Вопросы читателей

Как обновить рабочую станцию ​​Fedora в автономном режиме?

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

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

В этом руководстве вы узнаете, как обновить рабочую станцию ​​Fedora в автономном режиме.

 

Автономное обновление Fedora

Fedora — это современный дистрибутив Linux с надежным управлением пакетами. Благодаря менеджерам пакетов (DNF и YUM) можно обновлять Fedora без подключения к Интернету. Тем не менее, для наилучшего восприятия автономный компьютер может быть подключен к Интернету на короткое время.

Настоятельно рекомендуется использовать интерфейс командной строки для обновления Fedora в автономном режиме.

 

Получение списка обновлений пакета

Первый шаг — определить, для каких пакетов доступны обновления. Только для этого шага необходимо подключение к системе через Интернет.

 

Список обновлений пакетов с использованием YUM:

Следующая команда YUM выведет список всех пакетов, для которых доступны обновления.

$ yum repoquery --upgrade --queryformat '%{name}.%{arch}'

Для следующего шага нам нужно, чтобы этот список был экспортирован в текстовый файл.

$ yum repoquery --upgrade --queryformat '%{name}.%{arch}' > update_list.txt

Список обновлений пакетов с использованием DNF:

Следующая команда DNF выведет список всех пакетов, для которых доступны обновления.

$ dnf repoquery --upgrade --queryformat '%{name}.%{arch}'

Экспортируйте список в текстовый файл.

$ dnf repoquery --upgrade --queryformat '%{name}.%{arch}' > update_list.txt

Список пакетов с использованием RPM:

Если подключение к Интернету недоступно, альтернативной стратегией является получение списка всех установленных пакетов и работа с ним. Конечно, такой способ значительно увеличит продолжительность процесса. Это не рекомендуется и следуйте только в случае необходимости.

Скачайте все установленные пакеты в удобном формате.

$ rpm -qa --queryformat "%{NAME}n"

Экспортируйте этот список в текстовый файл.

$ rpm -qa --queryformat "%{NAME}n" > update_list.txt

Скачивание пакетов

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

Сначала проверьте, содержит ли текстовый файл только список пакетов и ничего больше.

$ vim update_list.txt

Загрузите пакеты обновлений с помощью YUM:

Следующая команда YUM загрузит пакеты, перечисленные в текстовом файле, и сохранит их в указанном каталоге. Чтобы избежать проблем, связанных с зависимостями, используйте флаг «–resolve».

$ yum download --resolve $(cat update_list.txt) --downloaddir="<directory>

"

Загрузите пакеты обновлений с помощью DNF:

Подобно YUM, следующая команда DNF загрузит и сохранит все пакеты (и зависимости) в определенном каталоге.

$ dnf download --resolve $(cat update_list.txt) --downloaddir="<directory>"

Установка обновлений

Наконец, пришло время обновить автономную машину. Экспортируйте пакеты обновлений в автономную систему и выполните любой из следующих методов для установки пакетов RPM.

 

Установите обновления с помощью YUM:

Следующая команда установит все пакеты RPM с помощью YUM.

$ sudo yum install /<path_to_rpm>/*.rpm

Установите обновления с помощью DNF:

Следующая команда установит все пакеты RPM с использованием DNF.

$ sudo dnf install /<path_to_rpm>/*.rpm

Последние мысли

Это полное руководство по автономному обновлению рабочей станции Fedora. Этот метод будет работать в любой современной версии Fedora, и это совсем не сложная задача.

Единственный недостаток этого подхода — время и усилия, которые он требует. Хотя ручная задача минимальна, самая трудоемкая часть — это загрузка и установка всех этих пакетов RPM (особенно, если список слишком длинный).

Удачных вычислений!



2021-02-13T12:39:45
Fedora

Как обновить Fedora Linux?

Fedora — это дистрибутив Linux, спонсируемый Red Hat. Лучше всего то, что он бесплатный и с открытым исходным кодом. Он также доступен для настольных компьютеров, серверов и систем Интернета вещей. У него другая среда рабочего стола, такая как KDE Plasma, XFCE, LXQT и т.д.

Что мы будем освещать?

В этом руководстве мы расскажем, как обновить Fedora 32 до Fedora 33. Мы увидим три различных способа обновления Fedora:

  • Обновление с помощью Software Center
  • Плагин обновления системы DNF
  • Обновление с помощью диспетчера пакетов только с dnf

Что нужно сделать перед началом

Прежде чем приступить к процессу обновления, нам необходимо выполнить определенные действия.

Во-первых, вы всегда должны делать резервную копию своих данных перед попыткой обновления. Настоятельно рекомендуется для любой производственной системы. Если вы экспериментируете с виртуальной машиной, то вам не о чем беспокоиться. Во-вторых, у вас должна быть учетная запись root или, по крайней мере, учетная запись пользователя с привилегиями root-доступа. Это необходимо, поскольку вы не можете запускать команды обновления без прав суперпользователя.

Метод 1. Обновление с помощью Software Center (рекомендуется для выпуска Fedora Workstation)

Это наиболее рекомендуемый способ обновления Fedora Workstation, а также самый простой способ для новичков. Начиная с версии Fedora 23 Workstation, уведомление о новом выпуске Fedora начинает появляться всякий раз, когда появляется новый стабильный выпуск. Просмотрите уведомление или перейдите в графический центр программного обеспечения Fedora, вам будет представлено простое окно обновления, как показано ниже:

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

Способ 2. Использование плагина обновления системы DNF

Это официально рекомендуемый метод обновления для всех установок Fedora, за исключением Fedora Workstation. При обновлении системы он использует dnf-plugin-system-upgrade. На самом деле это метод командной строки, поскольку он требует запуска некоторой команды. Хорошо, давайте посмотрим, как это будет работать.

Шаг 1. Сначала обновите вашу систему Fedora с помощью команды:

# dnf upgrade --refresh

Это позволит установить все необходимые обновления в систему перед обновлением. Фактический размер загрузки может отличаться для каждой системы.

Загрузка и установка всех обновлений может занять значительное время в зависимости от скорости вашего интернет-соединения и оборудования системы.

Шаг 2. После завершения установки обновлений перезагрузите систему.

Шаг 3. После перезагрузки системы откройте терминал и установите плагин: dnf-plugin-system-upgrade. Для этого используйте команду ниже:

# dnf install dnf-plugin-system-upgrade

Шаг 4. Теперь мы будем использовать плагин dnf для загрузки пакетов обновления выпуска. Выполните приведенную ниже команду:

# dnf system-upgrade download --refresh --releasever=33

Когда вы запустите указанную выше команду, она попросит запустить команду «dnf upgrade –refresh», чтобы убедиться, что система обновлена. Нажмите «y» и нажмите «Enter», чтобы можно было загрузить любое новое обновление.

Аргумент releasever используется для указания версии Fedora OS мы хотим установить. Здесь мы указали номер версии 33, которая на данный момент является последней доступной версией. Для обновления до разветвленной версии нам нужно использовать 34, или мы можем использовать rawhide для обновления до версии rawhide.

После завершения процесса обновления вы можете загрузить обновления, как показано ниже:

Как видите, это обновление версии имеет размер около 1,3 Гб, поэтому загрузка и установка всех этих обновлений может занять много времени. Подождите, пока процесс завершится.

Во время процесса обновления он импортирует ключ gpg и попросит вас подтвердить его, просто нажмите здесь ‘y’:

Процесс установки практически завершен, осталось выполнить команду:

# dnf system-upgrade reboot

Примечание. Не выполняйте никаких других команд, кроме «dnf system-upgrade reboot», в противном случае вам может потребоваться перезапустить весь процесс.

Система перезагрузится, чтобы применить загруженные обновления системы, как показано ниже:

После завершения процесса обновления вы должны увидеть новый экран входа в ОС Fedora 33, как показано здесь:

Мы можем проверить версию Fedora с помощью команды:

# cat /etc/os-release

Поскольку мы использовали версию Fedora 32 xfce, мы обновились до Fedora 33 xfce. Это должно быть то же самое, если вы обновляетесь с версии gnome, вам следует перейти на gnome Fedora.

Метод 3. Обновление с помощью диспетчера пакетов только с dnf (без использования подключаемого модуля обновления системы DNF)

Последний метод — использование DNF, что на самом деле не рекомендуется Fedora. При обновлении таким способом вы можете столкнуться с общими проблемами зависимости. По любым подобным вопросам вы можете обратиться к справочным страницам и другим сообщениям, связанным с руководством по установке. Это очень сложный метод, и его должны использовать только опытные системные администраторы.

Шаг 1. Откройте терминал, войдите в систему как пользователь root и выполните следующую команду:

# systemctl isolate multi-user.target

Шаг 2. На этом этапе мы должны обновить пакеты нашей текущей ОС Fedora с помощью следующей команды:

# dnf upgrade

Шаг 3. В случае обновления трех или более выпусков или обновления старой версии Fedora до Fedora 20 вам может потребоваться импортировать и установить ключ подписи пакета. В противном случае это не требуется для обновления двух или менее выпусков версии Fedora 20 или более поздней.

Итак, если требуется импортировать ключ, выполните следующую команду:

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-23-x86_64

Не забудьте заменить «23» на ваш целевой выпуск, например 32 или 33 для последней версии Fedora. Также замените «x86_64» архитектурой вашей системы.

Шаг 4. Очистите весь кеш dnf, запустив:

# dnf clean all

Шаг 5 . Запустите процесс обновления командой:

# dnf --releasever=<target_release_number> --setopt=deltarpm=false distro-sync

Шаг 6. Установите новые пакеты для новой версии:

# dnf groupupdate 'Minimal Install'

Другие группы, такие как Рабочий стол GNOME, Инструменты администрирования, также можно обновить, как показано здесь:

# dnf groupupdate "GNOME Desktop"

# dnf groupupdate “Administration Tools”

Шаг 7. Установите загрузчик для вашего загрузочного устройства с помощью команды:

# /usr/sbin/grub2-install BOOTDEVICE

Загрузочным устройством обычно является /dev/sda или /dev/sdb, в зависимости от вашего жесткого диска. Если вы используете виртуальную машину, это может быть как dev/vda.

Шаг 8. Теперь удалите ненужные файлы кеша и другие избыточные файлы, очистив систему. Эти файлы часто находятся в следующих каталогах:

  • /var/cache/dnf
  • /var/lib/mock
  • /var/cache/mock

Заключение

В этом руководстве мы увидели, как обновить Fedora Linux тремя различными способами. Мы также узнали основное различие в использовании этих методов обновления. Это руководство было успешно протестировано на Fedora 32 для обновления до Fedora 33. Если вам понравилось это руководство, поделитесь им с другими.



2021-02-10T18:41:09
Вопросы читателей