Инструкция

Создание загрузочного USB диска Acerium

После установки системы проведите обновление до версии Ubuntu 17.10.1!

Для использования последней версии ядра WIP 4.17.*-avl- * проведите обновление до версии Ubuntu 18.04!

standard-readme compliant Donate with Bitcoin Donate with Ethereum

_config.yml

Kernel 4.8.4 для Acer Aspire SW5-012/Fendi2 (Z3537F)

(базовая система Ubuntu 16.10 Yakkety Yak)

Порядок действий:

Обновить BIOS до версии 1.20

  • тестировалась, рабочая версия

Обязательно выключите данные опции в настройках BIOS:

D2D Recovery - Disable

FTPM Support - Disable

Secure Boot - Disable

Acer Aspire SW5-012 / Fendi2, BIOS V1.20 23/03/2016

Загрузить образ Acerium USB Live CD

Распаковать образ

$ tar xzf acerium-live-cd-16.10-kernel_4.8.4.tar.gz

Подготовить Flash Drive

$ gdisk /dev/sdX
- где X буква вашей подключенной флешки

Удалить все имеющиеся разделы (команда d) и создать загрузочный UEFI раздел (команда n)
Обязательно указать при создании тип раздела "ef00"
Записать изменения (команда w)

Обновить разделы в системе

$ partprobe

Создать файловую систему FAT32 на созданном разделе Flash Drive

$ mkfs.vfat -F 32 -n Acerium /dev/sdX1
- где X буква вашей подключенной флешки

Примонтировать Flash Drive

$ mount /dev/sdX1 /mnt
- где X буква вашей подключенной флешки

Скопировать содержимое папки с образом на Flash Drive

$ rsync -av /home/user/acerium-live-cd-16.10-kernel_4.8.4/* /mnt

Отмонтировать Flash Drive

$ umount /mnt

Загрузиться на Acer Aspire Switch 10 в режим Live CD или Install и установить систему.

* образ диска протестирован и устанавливает систему без ошибок

Рекомендуемая таблица разделов при установке системы:

Модель: MMC HCG8e (sd/mmc)
Диск /dev/mmcblk1: 62,5GB
Размер сектора (логич./физич.): 512B/512B
Таблица разделов: gpt
Флаги диска: 

Номер Начало Конец Размер Файловая система Имя Флаги
1 1049kB 120MB 118MB fat32 загрузочный, esp
2 120MB 58,1GB 58,0GB btrfs
3 58,1GB 58,2GB 80,7MB non-fs bios_grub
4 58,2GB 62,5GB 4344MB linux-swap(v1)

Обратите внимание на флаги и метки разделов.


Если у вас WiFi чипсет RTL8723BS

Загрузите rtl8723bs firmware


Распакуйте архив и скопируйте все файлы в /lib/firmware/rtlwifi

  Используйте модуль ядра r8723bs,
  добавьте загрузку модуля r8723bs в etc/modules

  или загрузите в консоли # sudo modprobe r8723bs

Bluetooth

  Загрузите модуль ядра btusb  в консоли # sudo modprobe btusb
или добавьте модуль в загрузку ялраю

 Добавьте эти строки в файл /etc/rc.local

rfkill unblock bluetooth
hciattach /dev/ttyS4 bcm2035 921600 flow

Регулировка яркости экрана

Загрузите, распакуйте и скопируйте файл brightness.sh в /etc/acpi/

Использование:

Яркость больше
# /etc/acpi/brightness.sh up

Яркость меньше
# /etc/acpi/brightness.sh down


Подключите скрипт к горячим клавишам в настройках рабочего стола.

Поворот экрана

Скрипт поворота экрана от Peter Nelson:

Скачать


Рекомендованная конфигурация системы

  • /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=!! spectre_v2=auto pti=auto systemd.gpt_auto=0 ipv6.disable=1 noresume apparmor=0 intel_idle.max_cstate=0 edd=skipmbr tsc=reliable clocksource=tsc nmi_watchdog=0"

Если ваше обновление микрокода CPU поддерживает «IBRS/IBPB»
тогда включите IBRS:

"spectre_v2=ibrs"

IBPB will be turned on automatically.

Например:

$ dmesg | egrep microcode

[0.000000] microcode: microcode updated early to revision 0x836, date = 2018-01-10
[2.783816] microcode: sig=0x30678, pf=0x2, revision=0x836
[2.786372] microcode: Microcode Update Driver: v2.2.

$ dmesg | egrep Spectre

[0.012444] Spectre V2 : ibrs selected on command line.
[0.012445] Spectre V2 : Mitigation: Indirect Branch Restricted Speculation
[0.012446] Spectre V2 : IBPB - Enabling Indirect Branch Prediction Barrier
[0.012447] Spectre V2 : IBRS - Enabling Restricted Speculation for firmware calls

~$ grep . /sys/devices/system/cpu/vulnerabilities/*

/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation:PTI
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Mitigation:__user pointer sanitization
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Mitigation:Indirect Branch Restricted Speculation,IBPB
  • /boot/grub/custom.cfg

Измените UUID на ваше значение!

menuentry "Start Ubuntu Bionic" --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-1897a202-d46f-4aa6-aa5b-b9a7cf9aaed2' {
                recordfail
                load_video
                insmod gzio
                insmod xzio
                insmod part_gpt
                insmod btrfs
                set root='hd0,gpt3'
                search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 1897a202-d46f-4aa6-aa5b-b9a7cf9aaed2
                echo    'Loading Linux 4.15.14-wip-x44-atom …'
                linux   /@/boot/vmlinuz-4.15.14-wip-x44-atom root=UUID=1897a202-d46f-4aa6-aa5b-b9a7cf9aaed2 ro rootflags=subvol=@  acpi_osi=!! spectre_v2=ibrs pti=auto systemd.gpt_auto=0 ipv6.disable=1 noresume apparmor=0 intel_idle.max_cstate=0 edd=skipmbr tsc=reliable clocksource=tsc nmi_watchdog=0
                echo    'Loading initrd …'
                initrd  /@/boot/initrd.img-4.15.14-wip-x44-atom
}
  • /etc/initramfs-tools/modules
# Add these lines to the file
intel_rapl
hid_acer
hid_multitouch
  • /etc/modprobe.d/blacklist.conf
# Add these lines to the file
blacklist mei
blacklist mei_txe
blacklist hid_generic
blacklist b43
blacklist b43legacy
blacklist ssb
blacklist bcm43xx
blacklist cm3218
blacklist cm32181
blacklist ov2722
blacklist atomisp_ov2722
blacklist v4l2_common
blacklist videodev
blacklist zfs
blacklist mac_hid
blacklist acer_wmi
# Fix bug for init Power key, view config rc.local
blacklist gpio_keys
blacklist soc_button_array
  • /etc/fstab
# / was on /dev/mmcblk1p2 during installation
UUID=your_disk_UUID / btrfs space_cache,thread_pool=2,compress=lzo,defaults,ssd,autodefrag,subvol=@ 0 1

# /home was on /dev/mmcblk1p2 during installation
UUID=your_disk_UUID /home btrfs space_cache,thread_pool=2,compress=lzo,defaults,noatime,nodiratime,ssd,autodefrag,subvol=@home 0 2
  • /etc/sysctl.conf
# Network
vm.min_free_kbytes = 32768
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.tcp_max_orphans = 65536
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 1800
net.ipv4.tcp_keepalive_intvl = 15
net.ipv4.tcp_keepalive_probes = 5
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.tcp_syn_retries = 3
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_mem = 50576   64768   98152
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_orphan_retries = 0
net.ipv4.tcp_syncookies = 1
net.netfilter.nf_conntrack_max = 16777216
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_sack = 1
net.ipv4.tcp_congestion_control = westwood
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.route.flush = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.lo.rp_filter = 1
net.ipv4.conf.wlan0.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.lo.accept_source_route = 0
net.ipv4.conf.wlan0.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.ip_forward = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_echo_ignore_all = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 1000
net.core.rmem_default = 65536
net.core.wmem_default = 65536
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
fs.inotify.max_user_watches = 16777216
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.ip_default_ttl = 63
net.ipv4.tcp_ecn = 1
net.core.default_qdisc = fq_codel
#
# Lowlatency Kernel Tuning
kernel.perf_cpu_time_max_percent=0
#
# IO shedulers
vm.dirty_background_bytes=67108864
vm.dirty_bytes=134217728
  • /etc/network/interfaces
wireless-power off
  • /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
[connection]
wifi.powersave = 2
  • /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#
rfkill unblock bluetooth
#
hciattach /dev/ttyS4 bcm2035 921600 flow
#
# Fix brcmfmac error
sleep 20
iwconfig wlan0 power off
#
# Fix bug for init Power key
sleep 5
modprobe gpio_keys
modprobe soc_button_array
#
exit 0

и выполните команду:

sudo systemctl enable rc-local.service


Исправление старта X сессии

Добавьте в конфиг /etc/default/grub

i915.modeset=1

и перегенерируйте конфигурацию:

update-grub2
Добавьте этот конфигурационный файл - /etc/X11/xorg.conf.d/20-intel.conf:

Section "Device"
Identifier  "Intel Graphics"
Driver      "modesetting"
Option      "AccelMethod"    "glamor"
EndSection
Если не стартуют иксы и в системном журнале есть ошибки вида:

lightdm[1182]: PAM unable to dlopen(pam_kwallet.so): 
/lib/security/pam_kwallet.so: cannot open shared object file: No such file or directory

то выключите все строки pam_kwallet.co and pam_kwallet5.so in
во всех файлах в директории /etc/pam.d

Intel – Fix for Atom MMC/GPT warning.


 I had been getting a warning on boot with recent kernels on my 
Intel Atom-based UP system, and found a workaround.
The error flagged is – apparently – harmless, and is due to systemd
not being able to recognise some mmc disk partitions at that stage of the boot process.

......
[ 5.124250] systemd-gpt-auto-generator[416]: Failed to dissect: Input/output error
......

Решение, добавьте systemd.gpt_auto=0 в опции загрузки ядра.


_config.yml

Обновите ядро пакетами моей сборки (DEB packages), BUILDBOX автоматически собирает пакеты, смотрите на дату файлов и номер сборки

Рекомендуется:

Ядро для Ubuntu 18.04 LTS Bionic

WIP Kernel

  • Адаптировано для версии Ubuntu 18.04 LTS Bionic.
  • Оптимизировано для сборки GCC8.
  • Оптимизировано чтобы в полной мере использовать высокопроизводительные решения.
  • Поддерживает все новейшие 64-разрядные версии систем на базе Debian и Ubuntu.

Основные характеристики:

  • Сборка для процессоров платформ Intel i5/i7/Atom и Amd k10.
  • Настроенный планировщик центрального процессора PDS CPU Scheduler & Multi-Queue I/O Block Layer w/ BFQ-MQ для высокой производительности.
  • Кэширование, диспетчер виртуальной памяти и улучшенный регулятор CPU.
  • Multitasking Kernel.
  • Скомпилирован GCC8
  • Оптимизация производительности подсисттемы DRM.
  • Intel CPUFreq (пассивный режим P-State).
  • Доступны ZFS, BFQ и Ureadahead.

Полная поддержка:

  • Indirect Branch Restricted Speculation (IBRS)
  • Indirect Branch Prediction Barrier (IBPB)

Интегрирован модуль Linux Kernel Runtime Guard (LKRG)

Linux Kernel Runtime Guard (LKRG) - загружаемый модуль ядра, который выполняет проверку целостности среды выполнения ядра Linux и обнаружение уязвимостей в системы безопасности ядра.

Установка

Обновите Intel микрокод для использования IBRS/IBPB:

Download

Загрузите установочные пакеты для вашего процессора, только пакеты x86_64:

Download Download


(EOL) Kernel 4.14.* for Acer Aspire SW5-012/Fendi2 ONLY!

  • Acerium - это ядро Linux с пользовательскими настройками.
  • Оптимизировано чтобы в полной мере использовать высокопроизводительные решения для Acer Aspire SW5-012/Fendi2.
  • Поддерживает все новейшие 64-разрядные версии систем на базе Debian и Ubuntu.

Основные характеристики:

  • Сборка для процессора платформы ATOM.
  • Настроенный планировщик центрального процессора и блока ввода/вывода для высокой производительности.
  • Кэширование, диспетчер виртуальной памяти и улучшенный регулятор CPU.
  • Multitasking Kernel.
  • Скомпилирован GCC 7.2.0.
  • Оптимизация производительности подсисттемы DRM.
  • Westwood + контроль перегрузки TCP.
  • Intel CPUFreq (пассивный режим P-State).
  • Доступны AUFS, BFQ и Ureadahead.

Загрузить пакеты Прочитайте это перед установкой GitHUB репозиторий Aspire-SW5-012_Kernel_4.14

Устаревшая версия ядра (EOL):

Kernel 4.8.17-27.29-acerium+MuQSS [EOL]
Включен по умолчанию MuQSS (Multiple Queue Skiplist Scheduler)

Загрузить пакеты GitHUB репозиторий Aspire-SW5-012_Kernel_4.8


_config.yml

_config.yml

_config.yml

_config.yml

Отблагодарить

Donate with Bitcoin Donate with Ethereum


Written on November 5, 2016