4

CentOS 7: ошибка загрузки

Приветствую членов сообщества GNU/Linux и пикабушников, которые случайно наткнулись на данный пост!


!!! Ахтунг! Чукча не писатель! Поэтому заранее просит прощения за, возможно допущенные в ходе написания поста, грамматические ошибки, а также возможно не совсем корректное употребление некоторых терминов


Данный пост состоит из трёх частей.


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


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


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


Итак, первая часть.


Есть ноутбук Lenovo. Если нужно точное название модели -- я напишу его в комментариях. На данный ноутбук я поставил себе CentOS 7.


/*натыкался на просторах, что ставить CentOS на ноут -- это тот ещё изврат, но у меня на то были причины*/


На днях у меня при включении ноутбука отобразилась ошибка


Failed to open \EFI\BOOT\grubx64.efi - Not Found

Failed to load image \EFI\BOOT\grubx64.efi: Not Found

start_image() returned Not Found


При этом установленная система не запускалась вообще.


Теперь, плавно перейдём к тому, как именно данная проблема была мной решена.


Так получилось, что у меня под рукой была флешка с операционной системой Mint 18.3. Загрузившись с этой флешки я начал пытаться понять, что произошло с моим ноутбуком.


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


1. Зайти в BIOS, и установить для пункта Boot Mode значение UEFI.

2. Запуститься с загрузочной флешки и открыть терминал.

3. В терминале получить root-права.

4. Выполнить следующие команды:

su root

mount /dev/centos/root /mnt

mount --bind /dev /mnt/dev

mount --bind /proc /mnt/proc

mount --bind /sys /mnt/sys

modprobe efivars

chroot/mnt

efibootmgr --create --label CentOS --disk /dev/sda1 --loader "\EFI\centos\shim.efi"


5. После этого можно пробовать перезагружаться.


Далее -- мои вопросы к знатокам данной темы.


1. Является ли данная проблема специфичной для дистрибутивов CentOS или может проявиться где угодно?


Изначально у меня значение Boot Mode было [Legacy Support], но сейчас при установке этого значения ко мне возвращается исходная проблема и её приходится решать заново. Отсюда вопрос

2. В чём отличие этих двух режимов?


3. Является ли данный способ решения проблемы специфичным для тех операционных систем, которыми я располагал? Изменился ли бы алгоритм действий, если бы на ноутбуке и/или флешке были бы другие дистрибутивы?


4. Можно ли было как-то по-другому решить эту проблему? Есть ли какие-то явные недостатки у способа, описанного выше?


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

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


6. К какому разделу информатики, или администрирования, или ещё чего относится данная проблема? На какие темы следует обратить внимание для повышения собственной грамотности в данном вопросе?


Заранее спасибо всем за ответы. Надеюсь мой пост окажется полезным.

Дубликаты не найдены

+4
Из описания я так понял, у тебя в биосе на тот момент работало legacy при этом по умолчанию загрузка с флешки. И вот при запуске на флешке в UEFI (что логично) пытается загрузиться Mint (не CentOS), потом ты разрешил загрузку через UEFI, зашёл через Mint и поменял загрузчик на CentOS, в режим UEFI. После убрал загрузку с флешки и основная система стала грузиться с UEFI. Из этого отвечу на твои вопросы:
1) с дистрибутивами никак не связано

2) отличие смотри в вики, там вполне подробно и за Legacy BIOS и UEFI описано, всё вполне понятно

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

4) 5) и так понятно

6) Ну для общего развития BIOS настройки и опции поизучай, UEFI обязательно, сейчас все новые материнские платы на UEFI, что очень замечательно (не фанат legacy)
+4

Legacy Support - ну бивис же православный, а не новомодные глюкавые и не особо по стандарту (каждый производитель многое от балды реализует лишь бы 10я (8я+) вонь некросов грузилась) ефи и уефи

+2

Суть то понятна. Раньше bios тупо передавал управление определённому сектору на определённом диске, который назывался "загрузочным". А теперь всё проникло гораздо глубже - раздел EFI на диске по сути является не софтом, а частью хардвари; имя файла для загрузки прописано в nvram (пзу) материнки, и всё ради того, чтобы можно было не допустить свободного запуска любого приложения с подсунутого извне носителя (можно сгенерить ключи подписи, так же прописать их в систему, и включив secureboot с этого момента ни одна загрузочная флешка, диск и прочее не запустятся, если нужный образ не будет подписан правильным ключом).


shim всего лишь запускает grub. Но! shim подписан ключом ms, и потому может стартовать из secureboot. А grub - нет, и напрямую загружен не будет. Единственная цель shim - это как раз запустить grub. Поэтому на машине с режимом загрузки legacy нет разницы, что запускать (результат будет одинаков). А на машине с secureboot вместо прямого запуска grub нужно запускать shim.
+1

Вопрос что ты делал и как. Либо режим переключил или bios сам переключил найдя efi вариацию, например после обновления, либо что ещё сам накосячил уже руками.

+1
Проблема, однозначно, в BIOS. При переключении режимов тебе приходится заново обозначать загрузчик.

Выход - нафиг UEFI, сделай CentOS'у загрузку в Legacy. Что мешает накатить заново GRUB в этом режиме?
раскрыть ветку 1
+1
нафиг UEFI

Ну тогда и граб нафиг! Только хардкор: LiLo под Легаси! )))

0

Проблема с железом, а не с ОС. Обновляемый BIOS это довольно опасно. Недавно была новость, что Ubuntu вообще эти нотбуки убивает.

0

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

UEFI вроде должен заменить BIOS(базовая система ввода вывода) в будущем, хотя мне кажется это просто огромный костыль над биосом.

раскрыть ветку 1
+1

Как, как - если выключен csm и стоит в списке устройств первое уефи, то пожалуйста. Если легаси, то сообветственно обычный бивисовский лоадер подхватит.

0
Существует софт, не помню как зовётся (ибо сам так и не осилил в силу не-UEFIшной матери в тот момент) который является менеджером загрузки. То есть сам поищет загрузчики. Удобство в том, что поставив его на флешку, можно грузиться с других устройств, даже если БИОС про них не сильно в курсе.

На нормальных современных мамках сам BIOS может поискать загрузчики на активных дисках, и соответственно предложить загрузиться сейчас, или установить приоритет загрузки. Так что мой совет, покопайся сначала в BIOSе, что даст он.

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

Как бы поступал я: послал кхерам SentOS, и ставил приличную линуху для десктопа. SentOS серверная, и не надо делать из говна конфетку. Задача СентОС - включиться, работать на серваке, не задавать лишних вопросов, не срать багами новых версий. Грубо говоря, это тот самый старый конь, который борозды не портит. Никаких преимуществ по производительности или ресурсам эта ось тебе не даст. Только безбажность. Но и бесхребетность.
раскрыть ветку 9
+1

Чувак, бивис не умеет перебирать откуда грузиться (при наличии метки активности и подходящего бутсектора - иначе он ищет\перебирает ДО ПЕРВОГО подходящего), он умеет первый попавшийся бутсектор грузить, если не указан явно диск. Расширенные настройки ни к чему - мало того что через жопу открываются, так обычно загрузочные меню не убирает никто, учи матчасть. Загрузчики обычно умеет ефи\уефи перебирать, но обычно они под мертвоось заточены и все (кроме огрызков - там под огрызкоось).

раскрыть ветку 8
+1
А вот UEFI как раз умеет. Даже бутфлаг не нужен. Нужно что бы первый раздел был в fat32. И этого уже достаточно.
раскрыть ветку 3
+1
И майкрософт тут не при чем. Для него только Secure boot и обработчик Windows boot manager. Стандарт UEFI существует больше 10 лет и начиналось все не с вантуза.
раскрыть ветку 3
Похожие посты
79

Дополнительные репозитории Ubuntu/Mint и подобных ОС

Уже достаточно давно подсел на разные линуксы и одной из приобретенных вредных привычек стал поиск и коллекционирование сторонних репозиториев для Ubuntu/Mint и подобных им.

Надеюсь, пост будет хоть немного полезен в освоении это ОСи и не слишком утонет в минусах XD.

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


Софт для интернета


Chromium

sudo add-apt-repository ppa:chromium-daily/stable


Chrome

wget https://dl.google.com/linux/direct/google-chrome-stable_curr...

sudo dpkg -i google-chrome-stable_current_amd64.deb


Opera

sudo add-apt-repository 'deb http://deb.opera.com/opera/ stable non-free'

wget -O - http://deb.opera.com/archive.key | sudo apt-key add -


Firefox

sudo add-apt-repository ppa:mozillateam/firefox-next


Twitter-клиент Hotot

sudo add-apt-repository ppa:hotot-team


Твиттер клиент Turpial

sudo add-apt-repository ppa:effie-jayx/turpial


Qutim

Это репозиторий мощного интернет пейджера Qutim, который поддерживает многие социальные сети, такие как Vkontakte, Twitter, ICQ, Gmail, Facebook, Mail.ru, Yandex и многие другие

sudo add-apt-repository ppa:qutim/qutim


Gwibber

sudo add-apt-repository ppa:gwibber-daily/ppa

Это репозиторий twitter и facebook клиента Gwibber


VKget

sudo add-apt-repository ppa:yuberion/vkget

Это репозиторий программы VKget, предназначенной для загрузки музыки из сети vk.com


Торрент клиент Deluge

sudo apt-add-repository ppa:deluge-team/ppa


Мультимедиа


VLC

sudo add-apt-repository ppa:videolan/stable-daily


MPV (ответвление mplayer)

sudo add-apt-repository ppa:mc3man/mpv-tests

sudo add-apt-repository ppa:mc3man/trusty-media


VkAudioSaver: аудиоплеер для скачивания и прослушивания музыки из ВКонтакта

http://vkaudiosaver.ru/downloads/


Pepperflash (замена flash-player для Chromium)

sudo add-apt-repository ppa:skunk/pepper-flash

sudo apt-get update && sudo apt-get install pepflashplugin-installer


После установки вам нужно указать Chromium, что нужно пользоваться Pepper Flash Player. Для этого отредактируйте файл запуска браузера. Введите следующую команду:

sudo gedit /etc/chromium-browser/default

И в самом конце файла вставьте следующую строчку:

./usr/lib/pepflashplugin-installer/pepflashplayer.sh


Cinelerra - видеоредактор

sudo add-apt-repository ppa:cinelerra-ppa/ppa


Clementine

sudo add-apt-repository ppa:me-davidsansome/clementine

Плеер для Linux - Clementine


DeadBeef

Аудиоплеер наподобие Winamp.

sudo add-apt-repository ppa:alexey-smirnov/deadbeef


Exaile

sudo add-apt-repository ppa:exaile-devel/ppa

Репозиторий мощного медиаплеера Exaile.


XBMC

sudo add-apt-repository ppa:team-xbmc/ppa

Это репозиторий медиацентра XBMC


Nuvola

sudo add-apt-repository ppa:nuvola-player-builders/stable

Это репозиторий музыкального плеера Nuvola.


CoverChooser

Репозиторий программы, для загрузки обложек для музыкальной коллекции.

sudo add-apt-repository ppa:panthora/coverchooser-ppa


Кодеры-декодеры


Mobile Media Converter

Простой интуитивно понятный интерфейс, множество поддерживаемых форматов.

https://miksoft.net/mobileMediaConverterDown.php


Transmageddon Video Transcoder

http://www.linuxrising.org/

https://apps.ubuntu.com/cat/applications/transmageddon/

sudo add-apt-repository ppa:nilarimogard/webupd8

sudo apt-get update

sudo apt-get install transmageddon


Skype Call Recorder

Запись звонков Skype. Программа кроссплатформенная.

http://atdot.ch/scr/download/

sudo add-apt-repository ppa:dajhorn/skype-call-recorder


SimpleScreenRecorder

Запись экрана с множеством возможностей.

sudo add-apt-repository ppa:maarten-baert/simplescreenrecorder

sudo apt-get update

sudo apt-get install simplescreenrecorder


Драйвера

официальный репозиторий графических драйверов Intel

sudo add-apt-repository 'deb https://download.01.org/gfx/ubuntu/14.04/main trusty'


Nvidia Drivers

sudo add-apt-repository ppa:ubuntu-x-swat/x-updates

"Полуофициальный репозиторий" ppa новых драйверов nVidia, устанавливайте на свой страх и риск.

sudo add-apt-repository ppa:graphics-drivers/ppa

sudo apt-get update && sudo apt-get install nvidia-355


ATI drivers

sudo add-apt-repository ppa:oibaf/graphics-drivers

Этот репозиторий позволяет добавить драйвера для ноутбуков и нетбуков Samsung

sudo add-apt-repository ppa:voria/ppa


Распознавание текста


GImageReader и Tesseract

sudo add-apt-repository ppa:gezakovacs/tesseract

sudo add-apt-repository ppa:sandromani/gimagereader


Cuneiform и Yagf

sudo add-apt-repository ppa:alex-p/notesalexp

Это репозиторий, в котором есть графическая оболочка для Cuneiform - программа Yagf. Служит для распознания текста в Linux.


Настройка

Ezame – новый редактор меню для Unity

sudo add-apt-repository ppa:caldas-lopes/ppa

sudo apt-get update

sudo apt-get install gksu ezame


Ubuntu Tweak

sudo add-apt-repository ppa:tualatrix/ppa


Grub customizer

sudo add-apt-repository ppa:danielrichter2007/grub-customizer


Burg

Графическое приложение для конфигурации Grub - Burg, чтобы не копаться вручную в их многочисленных настройках в /etc.

sudo add-apt-repository ppa:bean123ch/burg


Темы, иконки

sudo add-apt-repository ppa:tiheum/equinox

sudo apt-get install faenza-icon-theme faience-icon-theme faience-theme

sudo add-apt-repository ppa:noobslab/icons

sudo apt-get install awoken-icon-theme mint-x-icons malys-ex malys-uniblack malys-uniblue acyl-icons darkenza mac-x-lion-reloaded nitrux-icons meliaesvg-icons piratunbu-icons azenis-green-icons nouvegnome-color nouvegnome-gray fs-icons hi-lights-icons matrilineare

sudo add-apt-repository ppa:upubuntu-com/icons

sudo apt-get install azenis-icons betelgeuse-icons candy-icons faenk-icons gxiria-icons hilights-icons hydroxygen-icons kalahari-icons magog-white-icons mx-icons propheticon13 sphere-icons


Панель задач в стиле Windows 7

sudo add-apt-repository ppa:webupd8team/talika

Это репозиторий панели задач в стиле windows 7 для Gnome. В последних версиях Gnome не работает.


Репозиторий Ualinux

Тут все просто, достаточно загрузить два пакета и все репозитории будут установлены.

http://archive.ualinux.com/deb/pool/all/ualinux/ualinux-repo...

http://archive.ualinux.com/deb/pool/all/ualinux/ualinux-repo...


К сожалению, помянем два проекта playdeb.net и getdeb.net. Раньше там были софт и игры, сейчас там какие-то сайты на Вордпрессе, не имеющие ничего общего с тем, что было.

Останки playdeb есть на гитхабе, но насколько оно актуально - неизвестно.

https://github.com/ckorn/PlayDeb


Google репозиторий

Можно просто потыкать мышкой и скачать следующий софт:

Google Chrome

Google Earth

Google Music Manager

Google Voice and Video Chat

mod_pagespeed for Apache

Google Web Designer

https://www.google.com/linuxrepositories/


Репозиторий ubuntuupdates.org

Большая коллекция софта, нет какого-то единого способа подключить весь репозиторий, только отдельные PPA


ubuntu.randoman.ru

Последняя версия репозиториев - Ubuntu 18.10

prostolinux.ru/repozitorii


Не слишком большой список софта на все случаи жизни без группировки по типам.

network.lamantinclub.com/42-poleznye-repozitorii-dlya-ubuntu-14-04

Репозитории для устаревший версий Ubuntu, но, теоретически, можно использовать и сейчас.


ubuntunews.ru/apps

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


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

Показать полностью
81

Выпуск дистрибутива Linux Mint 18.3

Представлен релиз дистрибутива Linux Mint 18.3, третьего обновления ветки Linux Mint 18.x, формируемой на пакетной базе Ubuntu 16.04 LTS и поддерживаемой до 2021 года. Дистрибутив полностью совместим с Ubuntu, но существенно отличается подходом к организации интерфейса пользователя и подбором используемых по умолчанию приложений. Разработчики Linux Mint предоставляют десктоп-окружение, соответствующее классическим канонам организации рабочего стола, которое является более привычным для пользователей, не принимающих новые методы построения интерфейса Unity и GNOME 3. Для загрузки доступны DVD-сборки на базе оболочек MATE 1.18 (1.8 Гб) и Cinnamon 3.6 (1.8 Гб).


Основные новшества Linux Mint 18.3 (MATE, Cinnamon):


В состав включены версии десктоп-окружений MATE 1.18 и Cinnamon 3.6, оформление и организация работы в которых продолжает развитие идей GNOME 2 - пользователю предлагается рабочий стол и панель с меню, областью быстрого запуска, перечнем открытых окон и системным лотком с запущенными апплетами.


Cinnamon основан на GTK3+ и технологиях GNOME 3. Проект развивает оболочку GNOME Shell и оконный менеджер Mutter в направлении предоставления окружения в стиле GNOME 2 с более современным оформлением и задействованием элементов из GNOME Shell, дополняющих средства классического десктопа. В новой версии Cinnamon включены по умолчанию средства для адаптации вывода на экранах с высокой плотностью пикселей (HiDPI), переработан модуль для управления установкой и настройкой апплетов, десклетов, расширений и тем оформления, добавлена поддержка GNOME Online Accounts (в том числе возможность доступа к содержимому Google Drive и OwnCloud из файлового менеджера), добавлена поддержка организации взаимодействия с устройствами ввода при помощи библиотеки Libinput.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

MATE продолжает развитие кодовой базы GNOME 2.32 и полностью избавлен от пересечений с GNOME 3, что позволяет использовать традиционный рабочий стол GNOME 2 параллельно с рабочим столом GNOME 3. В MATE 1.18 используется только GTK+3. В панель добавлены дополнительные опции для выполнения действий на рабочем столе, добавлена поддержка спецификации StatusNotifier, в экранных уведомлениях реализована возможность размещения пиктограмм для выполнения действий, реализована возможность использования libinput для работы с мышью и тачпадом. В меню приложений mintMenu добавлена секция со списком недавно запущенных программ (в настройках необходимо включить плагин Recent);

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Проведена модернизация оформления менеджера установки приложений, через который легко можно установить дополнительное ПО, не входящее в репозитории, например, для установки доступны Spotify, WhatsApp, Skype, Google Earth, Steam и Minecraft. Software Manager и Software Sources переведены на GTK3 и теперь корректно работают в окружениях с экранами HiDPI. Кроме внешнего вида большая переработка коснулась и внутренней организации работы Software Manager (например, прекращено использование WebKit), что позволило сделать программу более современной, легковесной и быстрой. Например, время запуска сократилось в три раза, а категории и списки приложений теперь открываются мгновенно.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Изменения в Software Manager также коснулись и безопасности - бэкенд был переведён на использование штатного AptDaemon, что дало возможность работы приложения только с правами обычного пользователя без необходимости периодического ввода пароля для получения списка приложений (ввод пароля теперь запрашивается один раз при установке или удалении приложений, а затем подтверждение полномочий запоминается для текущего пользователя).

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Добавлена поддержка самодостаточных пакетов программ в формате Flatpak. Необходимые для использования Flatpak компоненты теперь поставляются по умолчанию, а доступные пакеты можно выбрать из менеджера установки приложений, в котором для Flatpak создана отдельная секция. По умолчанию для Flatpak задействован репозиторий Flathub, но имеется возможность добавления дополнительных источников. Метод работы с предлагаемыми в Software Manager Flatpak-пакетами ничем не отличается от обычных пакетов, их также можно рецензировать, обсуждать, просматривать скриншоты. Flatpak удобно использовать для установки в окружении Linux Mint приложений, привязанных к более новыми версиям библиотек, например, можно установить GNOME Games 3.26, несмотря на то, что в базовой системе поставляется GTK+ 3.18.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Полностью переписан интерфейс для создания резервных копий (Linux Mint Backup Tool), а также пересмотрены методы его работы. Программа теперь работает в непривилегированном режиме и нацелена на резервное копирование только содержимого домашнего каталога пользователя, файлы из которого сохраняются в форме tar-архива.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Упрощён интерфейс выбора приложений для резервного копирования - в списке теперь предлагаются не все установленные в системе пакеты, а только программы, установленные поверх базового окружения из Software Manager.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

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

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Добавлено новое приложение "System Reports", разработанное для Linux Mint. Программа отвечает за генерацию отчётов о крахах и информационных сообщений. Отчёты о крахах включают core-файл и трассировки стека приложений во время сбоя и рассчитаны на отправку разработчикам для демонстрации условий, в которых проявляются ошибки. Информационные сообщения включают рекомендации по устранению потенциальных проблем и формируются с учётом особенностей окружения, активного рабочего стола и применяемого оборудования (CPU, графическая карта и т.п.). Например, в форме информационных сообщений выводятся предложения установить кодеки или дополнительные утилиты.

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

При использовании Cinnamon включена возможность отображения прогресса выполнения операции на кнопке в панели задач, что позволяет запустив длительную операцию перейти к решению других работ, периодически оценивая состояние выполнения операции. Новая возможность поддерживается в файловом менеджере Nemo, Backup Tool, Timeshift, Software Manager, Driver Manager, USB Stick Formatter, USB Image Writer и любых приложениях, использующих диалоговые окна Synaptic (настройки языка, Update Manager, Software Sources и т.п.).


Продолжено усовершенствование приложений, развиваемых в рамках инициативы X-Apps, нацеленной на унификацию программного окружения в редакциях Linux Mint на базе разных рабочих столов. В приложениях X-Apps применены современные технологии (GTK3 для поддержки HiDPI, gsettings и т.п.), но сохранены традиционные элементы интерфейса, такие как панель инструментов и меню. Среди таких приложений: текстовый редактор Xed, менеджер фотографий Pix, мультимедийный проигрыватель Xplayer, просмотрщик документов Xreader, просмотрщик изображений Xviewer. Функции подобных программ, универсальные для различных рабочих столов, например, управление мониторами и раскладкой клавиатуры, вынесены в отдельную библиотеку libxapp и доступны для использования в других программах;


В текстовом редакторе Xed (ответвление от Pluma/Gedit) добавлена боковая панель minimap, позволяющая быстро перемещаться между различными частями документа и наглядно оценивать содержимое в форме уменьшенных эскизов страниц;

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

В просмотрщике документов Xreader (ответвление от Atril/Evince) кнопки просмотра истории операций заменены на кнопки навигации по документу (историю можно просмотреть через меню). Кнопки масштабирования унифицированы с другими приложениями Xapps. При отображении документов обеспечен учёт DPI и размера монитора, что позволяет подогнать 100% уровень масштабирования к примерному размеру бумажной копии;

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

В мультимедийном проигрывателе Xplayer (ответвление от Totem) переработана компоновка управляющих элементов в полноэкранном режиме, которые теперь соответствуют элементам при открытии в окне;


Расширены настройки экрана входа в систему: добавлены опции для включения автоматического входа без пароля и ручного ввода логина для LDAP. Для различных элементов добавлены всплывающие подсказки;

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Улучшена поддержка средств для проверки правописания и подбора синонимов для английского, русского и других языков;


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


В менеджере установки драйверов (Driver Manager) обеспечено определение пакетов с обновлениями микрокода, доступных для применяемого CPU;

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Из базовой поставки удалены, но сохранены в репозитории, Upload Manager (mintupload) и Domain Blocker (mintnanny);


PIA Manager, инструмент для установки соединений PIA VPN, теперь выполняется с привилегиями обычного пользователя и не требует ввода пароля для запуска с правами root;

Выпуск дистрибутива Linux Mint 18.3 Linux, Linux mint, Дистрибутив, Длиннопост

Источник: https://www.opennet.ru/opennews/art.shtml?num=47634

Показать полностью 13
365

Делаем собственное облако. OwnCloud+Let's Encrypt

Наверняка вы пользуетесь какими-либо хранилищами данных в интернете. Если у вас есть почта в Gmail, значит автоматически у вас есть аккаунт в Drive.Google и именно там хранится ваша почта. Если почта от Yandex, то, точно также, вы используете Yandex.Диск. Есть еще множество вариантов облачных хранилищ. Есть платные и бесплатные, с разными характеристиками. Вы можете выбирать исходя из имеющейся задачи сохранения тех или иных данных. Но у всех этих хранилищ есть существенный недостаток — вы их абсолютно не контролируете. Кроме того, и это не секрет, те же Google и Yandex читаю вашу почту, просматривают ваши файлы для таргетирования рекламы. Менее именитые хранилища порой становились фигурантами утечек данных об аккаунтах пользователей, а значит хранимая в них информация подвергалась разной степени компрометации.


В общем очевидно, что неплохо было бы иметь собственное хранилище данных. Возможно не очень большое, но пригодное для хранения чувствительной информации. Конечно же подключение и обмен с таким хранилищем должны быть защищены. Само хранилище желательно расположить там, где до него не дотянутся Яровая и прочие Мизулины. Ну и хранимые файлы не блохо бы зашифровать. Вперед, к облакам!

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

В этой статье будет рассказано, как установить и настроить собственное хранилище на базе решения ownCloud. Нам подойдет любой VPS с количеством оперативной памяти от 512МБ. Вычислительные способности не очень важны, если пользоваться хранилищем будет малое число клиентов. А вот места на жестком желательно побольше. Сколько именно — решать вам. Применение SSD, опять же, при малом числе клиентов, не обязательно. Трафик тоже прикидывайте сами. Если у вас хранилище в районе 100ГБ, то и 512ГБ исходящего трафика в месяц будет достаточно. Важнее, чтобы реальная скорость канала была большая. Не стоит гнаться за тарифами с безлимитным трафиком, но с плохими каналами.


Небольшое отступление: Есть ответвление от ownCloud под названием Nextcloud. Он новее и прогрессивнее, но пока не блещет стабильностью и поддержкой. Ветки не сильно разошлись и Nexcloud настривается точно также. Для ознакомления и пробы сил я всё-таки рекомендую ownCloud. Он лучше документирован, по нему море статей, все баги и особенности давно разобраны.


Под ownCloud нам потребуется установить и настроить LEMP сервер. Устанавливать его мы будем на CentOS 7 x64. Желательно использовать дистрибутив с минимальным набором пакетов. Такой есть у любого хостера, называться будет примерно так: centos-7-x86_64-minimal. Все необходимые пакеты мы поставим в процессе настройки. Минимальный дистрибутив позволит избежать конфликтов пакетов и занятых портов.


Ещё нам понадобиться доменное имя. Второго или третьего уровня. Возможно у вас уже есть какой-нибудь домен. Тогда вы можете сделать поддомен вида, например, mycloud.example.com


Или же вы давно хотели заиметь свой домен (например для почты), но всё не решались. Тогда самое время перейти на сайт регистратора (godaddy.com, reg.ru и тысячи их. Не реклама!) и зарегистрировать доменное имя. Естественно, это будет стоить денег. Причем ежегодно. Можно получить доменное имя бесплатно. Например, перейдём на dot-tk (вместо - поставьте точку) и поищем свободное имя в зонах tk .ml .ga .cf .gq

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Если у вас уже есть домен, то просто добавьте А запись, вида (вместо 123.123.123.123 вставить IP-адрес вашего VPS):

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Если вы решили получить новый платный домент, то действуйте по инструкциям выбранного регистратора, а потом добавьте А запись, как показано выше.


Если ваш маленький еврей бунтует, то продолжим получать бесплатный домен у dot-tk

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Как видите, я выбрал для домена такое немного колхозное, но понятное имя mydomen.ml (я знаю, что правильно mydomain, но все простые имена уже были заняты или платные). На его примере я и буду рассказывать дальше.

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Так как у вас еще нет своего сайта/блога/etc, то вместо 123.123.123.123 вписываете IP-адрес вашего VPS.


Дальше вам предложат зарегистрироваться и домен за вами. Попадаем в clientarea

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

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


Откроем консоль управления доменом.

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Откроем управление DNS-записями

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

И добавим запись. Нужно заполнить новую запись в разделе Add Record (выделено красным). Вместо 123.123.123.123 вписываете IP-адрес своего VPS

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Не забудьте нажать кнопку «Save Changes» под новой записью.


Так мы создадим домен третьего уровня, ведущий на наш VPS с ownCloud.


В дальнейшем, в том месте, где обведено зелёным, вы сможете написать другой IP. Например IP сервера с вашим сайтом.


Тогда домен mydomen.ml будет вести на сайт, а домен mycloud.mydomen.ml на VPS с ownCloud. Сейчас и тот и другой ведут на ваш VPS.


Мы будем использовать mycloud.mydomen.ml


Настройте SSH и подключитесь к серверу с помощью Pytty и WinSCP. Как это сделать, ищите здесь.


Выполним стандартные телодвижения по подготовке CentOS к работе:

yum -y install epel-release
yum -y update

Установим web-сервер Nginx:

yum -y install nginx

Добавим репозиторий webtatic (предоставляет для CentOS пакеты, относящиеся к PHP):

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Теперь установим PHP7-FPM и еще несколько дополнительных пакетов (в числе прочего будет установлен Redis), которые понадобятся в рамках этой статьи:

yum -y install php70w-fpm php70w-cli php70w-gd php70w-mcrypt
yum -y install php70w-pear php70w-xml php70w-mbstring php70w-pdo
yum -y install php70w-json php70w-pecl-redis php70w-mysql
yum -y install dialog crontabs wget unzip redis git bc

Проверим версию PHP, чтобы убедится, что всё хорошо встало

php -v

Должно быть примерно так:

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Настроим PHP7-FPM


С помощью WinSCP откроем файл /etc/php-fpm.d/www.conf и найдем строчки:

; RPM: apache Choosed to be able to access some dir as httpd
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache

Исправим на:

; RPM: apache Choosed to be able to access some dir as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

Найдем:

listen = 127.0.0.1:9000

Проверяем, чтобы был именно порт 9000.

Находим:

;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp

и превращаем в

env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

Сохраняем и закрываем файл.

Теперь сделаем рабочий каталог для PHP:

mkdir -p /var/lib/php/session

Назначим его владельцем пользователя nginx

chown nginx:nginx -R /var/lib/php/session/

Запустим php-fpm, redis и nginx

systemctl start redis
systemctl start php-fpm
systemctl start nginx

Убедимся, что с ними всё хорошо

systemctl status php-fpm
systemctl status nginx
systemctl status redis
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

И добавим в атозагрузку

systemctl enable php-fpm
systemctl enable nginx
systemctl enable redis
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Теперь на нужна СУБД MariaDB. Установим:

yum -y install mariadb mariadb-server

Запустим:

systemctl start mariadb

Проверим:

systemctl status mariadb

И добавим в автозагрузку

systemctl enable mariadb

Теперь выполним первоначальную настройку MariaDB:

mysql_secure_installation

На вопрос

Enter current password for root (enter for none):

просто жмём Enter. На вопрос:

Set root password? [Y/n]

отвечаем Y и жмём Enter, придумываем и два раза вводим стойкий пароль.

Навсе последующие вопросы отвечаем Y и жмём Enter.

Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Создадим новую базу данных с названием ‘owncloud_db’ с пользователем ‘ownclouduser’.

mysql -u root -p

СУБД спросит пароль, вводим пароль придуманный выше.

Вводим команду (не забывайте «;» )

create database owncloud_db;

В следующей команде вместо ownclouduser_pass придумайте, запомните и впишите стойкий пароль (да, ещё один).

create user ownclouduser@localhost identified by 'ownclouduser_pass';

Дадим пользователю права на новую базу (вместо ownclouduser_pass впишите пароль из предыдущей команды)

grant all privileges on owncloud_db.* to ownclouduser@localhost identified by 'ownclouduser_pass';

И отменим все другие права:

flush privileges;

Чтобы выйти из консоли СУБД введите

quit;

Теперь настроим бесплатный сертификат Let’s Encrypt для нашего Nginx и автоматизируем его обновление.

Клонируем репозиторий проекта letsencrypt из GitH

git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

Теперь создадим сертификат

ВНИМАНИЕ: к этому моменту ваш домен (в моём случае mycloud.mydomen.ml) уже должен пинговаться.

Чтобы это проверить, на компьютере с Windows нажимаем сочетание клавиш Win+R и вписываем

ping mycloud.mydomen.ml

в ответ мы должны получить четыре строчки вида «Ответ от 123.123.123.123: число байт=32 время=79мс TTL=51». Если в ответ мы получаем «При проверке связи не удалось обнаружить узел…», то нужно просто подождать. После регистрации домена и добавление строчки с доменом третьего уровня может пройти до 24 часов, прежде чем они начнут пинговаться.

Выполним последовательно команды:

cd /opt/letsencrypt
./letsencrypt-auto certonly -a webroot --webroot-path=/usr/share/nginx/html/ -d mycloud.mydomen.ml

В процессе нас попросят ввести e-mail для уведомлений (вводим реально существующий):

Enter email address (used for urgent renewal and security notices) (Enter ‘c’ tocancel)

принять лицензионное соглашение (ввести A)

Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.... You must agree
in order to register with the ACME server at
https://acme-v01.api.letsencrypt.org/directory
——————————————————————————-
(A)gree/(C)ancel:

и ответить на вопрос об информационной рассылке (ввести Y или N, тут уж как сами хотите.)

Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let’s Encrypt project and the non-profit
organization that develops Certbot? We’d like to send you email about EFF and
our work to encrypt the web, protect its users and defend digital rights.
——————————————————————————-
(Y)es/(N)o:

В конце получим сообщение вида:

Congratulations! Your certificate and chain have been saved at…

Теперь сделаем ключ для алгоритма Диффи-Хелмана.

openssl dhparam -out /etc/ssl/certs/dhparam.pem 4096

Процесс долгий. Занимает несколько минут.


Теперь научим наш Nginx применять полученные сертификаты, а также добавим некоторые настройки для ownCloud. Открываем конфиг Nginx по пути /etc/nginx/nginx.conf и находим в нем секцию, которая выглядит примерно так:

server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /usr/share/nginx/html;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}

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


Удаляем эту секцию и вместо неё вставляем секции следующего содержания:

upstream php-handler {
server 127.0.0.1:9000;
}
server {
# перенаправление с 80 порта, а также с www
server_name mycloud.mydomen.ml www.mycloud.mydomen.ml
listen 80;
return 301 https://mycloud.mydomen.ml$request_uri;
}

server {
listen 443 ssl;
server_name mycloud.mydomen.ml;
# Указываем пути к сертификатам
ssl_certificate /etc/letsencrypt/live/mycloud.mydomen.ml/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mycloud.mydomen.ml/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
# позволяем серверу прикреплять OCSP-ответы, тем самым уменьшая время загрузки страниц у пользователей
ssl_stapling on;
ssl_stapling_verify on;
add_header Strict-Transport-Security max-age=15768000;
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
location ~ /.well-known {
allow all;
log_not_found off;
access_log off;
}
# The rest of your server block
root /usr/share/nginx/html;
index index.php index.html index.htm;
location = /.well-known/carddav {
return 301 $scheme://$host/remote.php/dav;
}
location = /.well-known/caldav {
return 301 $scheme://$host/remote.php/dav;
}
location /.well-known/acme-challenge { }
# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;
# Disable gzip to avoid the removal of the ETag header
gzip off;
# Uncomment if your server is build with the ngx_pagespeed module
# This module is currently not supported.
#pagespeed off;
error_page 403 /core/templates/403.php;
error_page 404 /core/templates/404.php;
location / {
rewrite ^ /index.php$uri;
}
location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
return 404;
}
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
return 404;
}
location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+|core/templates/40[34])\.php(?:$|/) {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param HTTPS on;
fastcgi_param modHeadersAvailable true; #Avoid sending the security headers twice
fastcgi_param front_controller_active true;
fastcgi_pass php-handler;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}
location ~ ^/(?:updater|ocs-provider)(?:$|/) {
try_files $uri $uri/ =404;
index index.php;
}
# Adding the cache control header for js and css files
# Make sure it is BELOW the PHP block
location ~* \.(?:css|js)$ {
try_files $uri /index.php$uri$is_args$args;
add_header Cache-Control "public, max-age=7200";
# Add headers to serve security related headers (It is intended to have those duplicated to the ones above)
# Before enabling Strict-Transport-Security headers please read into this topic first.
#add_header Strict-Transport-Security "max-age=15552000; includeSubDomains";
add_header X-Content-Type-Options nosniff;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
# Optional: Don't log access to assets
access_log off;
}
location ~* \.(?:svg|gif|png|html|ttf|woff|ico|jpg|jpeg)$ {
try_files $uri /index.php$uri$is_args$args;
# Optional: Don't log access to other assets
access_log off;
}
}

Смотрим внимательно в приведённый выше конфиг. Все mycloud.mydomen.ml заменяем на название своего домена.

Проверим, что всё хорошо

nginx -t

Должны получить в ответ:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Применим новые настройки

systemctl reload nginx

letsencrypt выдаёт сертификаты со сроком действия 90 дней. Их нужно заблаговременно продлевать. Процесс этот можно и нужно автоматизировать. Само обновление запускается командой

/opt/letsencrypt/letsencrypt-auto renew

Если вы выполните эту команду прямо сейчас, то она проверит все ваши сертификаты и уведомит, что их продление не требуется.

——————————————————————————-
Processing /etc/letsencrypt/renewal/mycloud.mydomen.ml.conf
——————————————————————————-
Cert not yet due for renewal
The following certs are not due for renewal yet:
/etc/letsencrypt/live/mycloud.mydomen.ml/fullchain.pem (skipped)
No renewals were attempted.

Для автопродления воспользуемся встроенным в Linux планировщиком cron. Для этого командой

crontab -e

откроем crontab для редактирования. Появится пустое чёрное поле.

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Нажмите кнопку Insert на клавиатуре, снизу появится уведомление —ISERT —. Теперь впишите/вставьте следующие две строчки

00 3 * * 1 /opt/letsencrypt/letsencrypt-auto renew >> /var/log/le-renew.log
10 3 * * 1 /usr/bin/systemctl reload nginx
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Нажмите на клавиатуре кнопку Esc, режим —INSERT — пропадёт. Теперь введите (просто вводите, в нижней строчке оно появится само)

:wq

и нажмите Enter

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Мы вернемся в консоль с сообщением

crontab: installing new crontab

Теперь каждый понедельник ночью в 3:00 будет обновляться сертификат, а в 3:10 перезапускаться Nginx. Вы можете контролировать выполнение задания в логе /var/log/le-renew.log.


Это всё была присказка, т.е. только подготовка к установке ownCloud. Промежуточным итогом мы имеем Web-сервер, который умеет в правильный https, имеет все необходимые библиотеки и СУБД. Т.е. мы установили и настроили (ну почти) обещанный LEMP сервер.


Остановим пока Nginx

systemctl stop nginx

Узнать последнюю версию ownCloud и получить ссылку на скачивание можно здесь.

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост
Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Скачаем архив

cd /tmp
wget https://download.owncloud.org/community/owncloud-10.0.2.zip

Распаковываем его

unzip owncloud-10.0.2.zip

С помощью WinSCP удалим из папки /usr/share/nginx/html/ все папки и файлы кроме папки .well-known


И скопируем туда файлы ownCloud

cp /tmp/owncloud/. /usr/share/nginx/html/ -r

Теперь, с помощью WinSCP, в папке /root/ создадим файл oc-set со следующим содержимым:

#!/bin/bash
ocpath='/usr/share/nginx/html'
htuser='nginx'
htgroup='nginx'
rootuser='root'
printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
mkdir -p $ocpath/updater
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/assets/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown -R ${htuser}:${htgroup} ${ocpath}/updater/
chmod +x ${ocpath}/occ
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
then
chmod 0644 ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocpath}/data/.htaccess ]
then
chmod 0644 ${ocpath}/data/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
fi

И выставим ему права 0755.

После выполним полученный скрипт:

/root/oc-set

Скрипт отработает. Создаст все необходимые каталоги для ownCloud и выставит правильные права. В результате работы скрипта будут выведены строчки:

Creating possible missing Directories
chmod Files and Directories
chown Directories
chmod/chown .htaccess

Запустим Nginx

systemctl start nginx

Теперь можно в браузере переходить по адресу cloud.mydomen.ml


Нас встречает окно создания учётной записи администратора

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Придумываем логин-пароль администратора и нажимаем «Завершить установку». Пароль должен быть стойким.


Если вы сейчас зайдёте в наше вновьсозданное облако, то увидите, что ownCloud ругается на отсутствие кэширования, что может замедлять работу. Настроим кэширования с помощью Redis.


В WinSCP откроем файл /usr/share/nginx/html/config/config.php. Смотрим на последнюю строчку, она выглядит так:

);

Перед ней добавим строчки

'filelocking.enabled' => true,
'memcache.local' => '\OC\Memcache\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
'timeout' => 0.0,
),

запятые в конце строчек не забудьте.


Должно получиться так

‘filelocking.enabled’ => true,
‘memcache.local’ => ‘\OC\Memcache\Redis’,
‘redis’ => array(
‘host’ => ‘localhost’,
‘port’ => 6379,
‘timeout’ => 0.0,
),
);

Сохранить и закрыть.

С помощью WinSCP откроем файл /etc/sysctl.conf и добавим строчку:

vm.overcommit_memory=1

Сохраним и закроем файл.


Перезапустим службы:

systemctl restart redis
systemctl restart php-fpm
systemctl restart nginx

Теперь можно в браузере заходим в наше облако cloud.mydomen.ml. Он будет ругаться на СУБД и пр. — не обращайте внимания, это для данной задачи не критично.


Обязательно зайдите в основные настройки и установите настройку планировщика задач на Cron

Делаем собственное облако. OwnCloud+Let's Encrypt Owncloud, Linux, Centos, Letsencrypt, Настройка, Nginx, Redis, Инструкция, Длиннопост

Облако настроено, можно пользоваться. Теперь настроим немного безопасности.


Установим и запустим файрволл

yum -y install firewalld
systemctl start firewalld

И откроем порты для необходимых сервисов

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload

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


Добавим файрволл в автозагрузку

systemctl enable firewalld

На этом настрока ownCloud завершена. Консоль putty и менеджер WinSCP нам больше не нужны.


В качестве последнего штриха включим шифрование наших файлов в хранилище. Заходим в настройки (Ищите свой логин в правом верхнем углу окна браузера. Там, в выпадающем меню «Настройки»). В разделе Администрирование открываем пункт «Приложения». Жмём кнопку «Показать отключённые приложения». Находим приложение «Default encryption module» и нажмём рядом с ним кнопку «включить».


Теперь Настройки->Администрирование->Шифрование. Ставим галочку «Включить шифрование на стороне сервера», читаем предупреждение и жмём в конце него «Включить шифрование». Ниже, в появившихся настройках модуля шиврования выбираем «Мастер-ключ» и применяем настройку. Нас попросят перелогинится, сделаем это. Опять идём Настройки->Администрирование->Шифрование и видим надпись

Encryption type: Master Key

Шифрование работает.


Для работы с облаком вам нужен клиент на вашем устройстве. Не рекомендую использовать для повседневного подключения к ownCloud созданную выше (при первом входе) учетную запись администратора. Оставьте её для администрирования. Щелкните по логину администратора в правом верхнем углу и выбирете «Пользователи» в выпадающем списке. В открывшемся окне, слева, добавьте группу для обычных пользователей. Например, назовите её Users. После создания группы в правой части окна, вверху, заполните данные на нового пользователя: логин, пароль (стойкий), группу (выбираем Users). Нажмите «Создать». В таблице добавиться строчка с новым пользователем. Установите ему квоту. Максимум, что вы можете выделить, это общий размер диска вашего VPS минус 3ГБ. Т.е. если у вас диск 100ГБ, в квоту вы можете вписать не более чем 97 GB. Всё, пользуйтесь новой учётной записью.


Клиентские приложения практически под все распространенные операционные системы можно найти здесь.


К сожалению, клиенты для мобильных устройств платные (копейки конечно, но тем не менее). Для Android бесплатный клиент здесь. Но нужно понимать, что он от стороннего разработчика. Для подключения вам понадобятся адрес сервера (в моём случае это https://mycloud.mydomen.ml) и логин-пароль. Настройка подключения элементарная, описывать не буду.


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


Если у вас есть вопросы, то все контакты для обратной связи вы найдёте здесь.

Показать полностью 20
47

Linux + directX11 + unreal engine 4

Товарищи прекрасная новость! команда Wine CSMT наконец победила "защиту от запуска игр" называемую Directx11


Divinity original sin 2

https://www.youtube.com/watch?v=swxDhsQhXsc

чуть позже после записи было выяснено что если убрать тени - то игра идет на 60 FPS

но увы вовремя недогадался.



Я специально сделал целых 3 релиза на 3 разных основах чтобы каждый мог потестить систему с уже установленным wine  и wineprefix

Выбраны были: Linux mint 18.1 x64 lts  c Mate, ubuntu 16.04.1.lts x64 c mate, mx-linux 16 x64 c mate. Все системы debian based и на всех можно запускать игры с Steamos тоже разумеется.


https://rutracker.cr/forum/viewtopic.php?t=5343942 - Минт

https://rutracker.cr/forum/viewtopic.php?t=5345515 - Убунту

https://rutracker.cr/forum/viewtopic.php?t=5352658 - МХ


я лично протестировал Divinity o.s. 2 и если не записывать ролики то можно даже полноценно играть без единого графического бага где то на 40fps



также пользуясь случаем выкладываю скомпилированный мной unreal engine 4.14 с комплектом из marketplaсe (установить комплект это целая история не меньше чем установить и правильно настроить систему и wine + wineprefix + всё обновить и поставить ядро) . Контент обычным образом не скачать т.к. для скачки требуется microsoft windows.

тут epic games конечно выпендрилась. к движку и игре полностью идущим на линукс требовать качалку требующую виндовс...


https://rutracker.cr/forum/viewtopic.php?t=5352050

https://rutracker.cr/forum/viewtopic.php?t=5355600

Надеюсь кому то это будет полезно и пригодится.

Linux + directX11 + unreal engine 4 Linux, Игры, Linux mint, Ubuntu, Mate desktop, Divinity: Original Sin 2, Wine, Wine-Staging
Показать полностью 1
Похожие посты закончились. Возможно, вас заинтересуют другие посты по тегам: