4.4 KiB
Настройка окружения bash
Оболочка командной строки bash
использует множество стартовых скриптов. С их помощью можно задать различные переменные, функции, алиасы, настройки bash
Ниже будут предложены команды по созданию минимальных версий стартовых скриптов bash
:
/etc/profile
Вы могли заметить файлы ~/.profile
, ~/.bash_profile
и ряд других. Они используются для задания элементов окружения для оболочки пользователя. Например, umask
, а также переменных PS1
или PATH
. То же самое и с файлом /etc/profile
, только он используется для задания общесистемных параметров, а файлы в каталоге пользователя - для задания параметров конкретного пользователя системы.
{{ include('../scripts/profile.sh') }}
О CFLAGS и CXXFLAGS
С помощью данных переменных можно задать флаги компилятора, влияющие в том числе на оптимизацию. Есть следующие уровни оптимизации (и соответствующие флаги)
-O0
- без оптимизации. Не рекомендуется.
-O1
- простейшие минимальные оптимизации. Не рекомендуется.
-O2
- стандартная оптимизация. По умолчанию в GCC.
-O3
- агрессивная оптимизация, почти все пакеты собираются и работают, рекомендуется нами.
-Ofast
- чрезвычайно агрессивная оптимизация, некоторые пакеты не собираются.
-Os
- оптимизация по размеру.
-Og
- оптимизация для отладки.
Вы можете сообщить компилятору оптимизировать код для вашего процессора добавив опцию -march=native
, однако возможность запуска такого кода на других процессорах будет потеряна.
Bash-completion
bash-completion
расширяет существующие возможности дополнения в bash, позволяя вводить сложные командные строки нажатием буквально нескольких клавиш. Целью является создание программируемых процедур дополнения для большинства распространённых команд Linux/UNIX, которые позволили бы системным администраторам и программистам сократить количество нажатий клавиш при выполнении ежедневных задач.
{{ include('../scripts/completion.sh') }}
Dircolors
Этот файл нужен для цветного вывода таких утилит, как ls
. Пример: ls --color=auto
.
{{ include('../scripts/dircolors.sh') }}
Readline
Этот файл нужен для настройки inputrc
. Если пользователь не имеет индивидуальных установок, он использует глобальный файл.
{{ include('../scripts/inputrc.sh') }}
Umask
Установка значения umask
важна для безопасности. Здесь права доступа для записи группы по умолчанию выключены для пользователей системы и когда имена пользователя и группы не совпадают.
{{ include('../scripts/umask.sh') }}
Другие стартовые скрипты
{{ include('../scripts/other.sh') }}
Применить изменения
bash --login +h