Ubuntu — различия между версиями
Kirill (обсуждение | вклад) (→Какие сторонние репозитории стоит подключить?) |
Kirill (обсуждение | вклад) (→Какие сторонние репозитории стоит подключить?) |
||
Строка 46: | Строка 46: | ||
=== Какие сторонние репозитории стоит подключить? === | === Какие сторонние репозитории стоит подключить? === | ||
<ul> | <ul> | ||
+ | <li> | ||
+ | Android SDK | ||
+ | <pre>sudo add-apt-repository ppa:upubuntu-com/sdk</pre> | ||
+ | </li> | ||
<li> | <li> | ||
Blender | Blender |
Версия 12:09, 26 апреля 2016
Содержание
- 1 Настройки
- 2 Авторизация
- 3 Работа с пакетами
- 4 Работа с процессами
- 5 Бэкапы и образы
- 6 Права доступа
- 7 Логические и физические диски
- 8 SMB-сервер
- 9 FTP-сервер
- 10 MySQL-сервер
- 11 HTTP-сервер
- 12 Удаленное управление
- 13 Ubuntu Customization Kit
- 14 Решение проблем
- 14.1 unable to connect to upstart
- 14.2 unable start cron, gdm
- 14.3 Черный экран при старте KDE4
- 14.4 Вывод изображения через HDMI на видеокарты ATI не на полный экран
- 14.5 kdenlive не работает с libx264
- 14.6 Setting locale failed при настройке пакетов
- 14.7 Cannot connect to X server :0. при запуске приложения от имени другого пользователя
- 14.8 Некорректный рендеринг Qt-приложений в Ubuntu 15.10
- 15 Разное
Настройки
Где хранится путь к dm по-умолчанию для пользователя?
/etc/X11/defautl-display-manager
Где хранится сессия, запускаемая по-умолчанию?
Поле Session секции [Desktop] файла ~.dmrc Возможные значения:
- ubuntu
- ubuntu-2d
- Lubuntu
- ...
Где настройка, позволяющая входить пользователем root в сеанс KDE?
Поле AllowRootLogin файла /etc/kde4/kdm/kdmrc.
Где хранятся настройки рабочего стола LXDE?
Секция desktop файла ~/.config/pcmanfm/lubuntu/pcmanfm.conf.
Где хранятся файлы настроек новых создаваемых пользователей?
/etc/skel
Авторизация
Как настроить авторизацию с помощью сканера отпечатков?
-
Установить необходимое ПО:
sudo apt-get install libpam-fprintd libfprint0 fprint-demo fprintd
-
Настроить режимы авторизации (можно выбрать все):
sudo pam-auth-update
-
Задать эталоны отпечатков:
fprintd-enroll
Работа с пакетами
Как устанавливать пакеты для другой архитектуры?
Для установки скачанного пакета в терминале:
sudo dpkg --force-architecture -i <имя пакета>
Для использования репозиториев:
sudo dpkg --add-architecture {архитектура}
где {архитектура} может быть, например i386.
Какие сторонние репозитории стоит подключить?
-
Android SDK
sudo add-apt-repository ppa:upubuntu-com/sdk
-
Blender
sudo add-apt-repository ppa:thomas-schiex/blender
для trusty и более новых, либо
sudo add-apt-repository ppa:irie/blender
для trusty и более старых.
-
GIMP
sudo add-apt-repository ppa:otto-kesselgulasch/gimp
-
Google Chrome
sudo add-apt-repository 'deb http://dl.google.com/linux/chrome/deb/ stable main'
-
Mono
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list
-
Node.js
curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
или
curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
-
Oracle® Java
sudo add-apt-repository ppa:webupd8team/java
-
qutIM
sudo add-apt-repository ppa:qutim/qutim
-
Tizen Development Tools
sudo add-apt-repository 'deb http://download.tizen.org/tools/latest-release/Ubuntu_14.10 /'
-
VirtualBox
wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add - add-apt-repository 'deb http://download.virtualbox.org/virtualbox/debian/ xenial contrib'
-
WINE
sudo add-apt-repository ppa:ubuntu-wine/ppa
-
XNeur
sudo add-apt-repository ppa:andrew-crew-kuznetsov/xneur-stable
Как обновить индекс пакетов для muon или synaptic, если поиск не работает?
sudo update-apt-xapian-index -f
Как исправить ошибку dpkg "чтение списка файлов пакета «{имя пакета}»: Ошибка ввода/вывода"
Исправить или удалить файл /var/lib/dpkg/info/{имя пакета}.list.
Работа с процессами
Как вывести список процессов?
Для текущего сеанса в терминале:
ps
Для всех сеансов:
ps -a
Бэкапы и образы
Как сделать бэкап файлов папки?
В терминале:
cd {путь к папке}
далее зависимости от нужного контейнера:
tar -cvpaf {имя бэкапа}.tar.gz * tar -cvpaf {имя бэкапа}.tar.xz *
Как восстановить бэкап файлов папки?
В терминале:
cd {путь к папке} tar -xf {путь к файлу бэкапа}
Как создать сжатый образ dd?
В терминале:
dd if={источник} | tar -cz {имя архива}.raw tar -czvf {имя архива}.tar.gz {имя архива}.raw rm {имя архива}.raw
Как восстановить сжатый образ dd?
В терминале:
tar -xzOf {имя архива}.tar.gz | dd of={назначение} conv=noerror
Как следить за статусом dd?
Если за всеми запущенными dd, то в терминале
watch -n {период обновления в секундах} killall -s USR1 dd
Если известен PID нужного процесса, то в терминале:
watch -n {период обновления в секундах} kill -USR1 {PID}
Права доступа
Как добавить бит SUID?
В терминале
sudo chmod u+s {имя файла}
Логические и физические диски
Как узнать UUID логического диска?
В терминале:
sudo blkid
Как перемонтировать раздел согласно правилам fstab?
sudo mount -o remount {точка монтирования}
Как получить список доступных дисков?
sudo fstab -l
Как добавить поддержку exFAT?
В терминале:
sudo apt-get install fuse-exfat
Для подключения дополнительного репозитория на старых версиях:
sudo add-apt-repository ppa:relan/exfat sudo apt-get update
Как уменьшить нагрузку на раздел диска?
Для файловых систем ext3 и ext4 отключить журналирование при монтировании со стандартными параметрами
sudo tune2fs -o journal_data_writeback /dev/{id раздела}
и удалить журнал
sudo tune2fs -O ^has_journal /dev/{id раздела}
и еще
sudo tune2fs -m 0 /dev/{id раздела} sudo tune2fs -c 0 /dev/{id раздела}
и зафиксировать изменения
sudo e2fsck -f /dev/{id раздела}
Уменьшить количество обращений к разделу после монтирования: в файле /etc/fstab исправить строку, соответствующую разделу
UUID={UUID раздела} {точка монтирования} {тип файловой системы} noatime,nodiratime,discard,errors=remount-ro,commit=60 0 1
- noatime - не записывать время обращения к файлам
- nodiratime - не записывать время обращения к папкам
- discard - включить TRIM (распределенная нагрузка на SSD)
- commit=60 - частота обращения к диску
Если раздел системный, то перенести запись временных файлов в оперативную память: в файл /etc/fstab добавить строки
tmpfs /run tmpfs rw 0 0 tmpfs /run/lock tmpfs rw 0 0 tmpfs /tmp tmpfs rw,size=128m 0 0 tmpfs /var/log tmpfs rw,size=16m 0 0
Изменить параметры ядра: в файл /etc/sysctl.conf добавить строки
# Увеличение времени suspend режима. vm.laptop_mode = 5 # Таймаут времени записи буферов на диск равен 150 секундам. vm.dirty_writeback_centisecs = 15000 # swap подключается, когда оперативной памяти остается 10%. # Можно не менять этот параметр, а использовать zRam. vm.swappiness = 10
и выполнить в терминале:
sudo sysctl -p
или перезагрузить.
Дополнительная информация на help.ubuntu.ru.
Как использовать окружение системы, установленной на другой логический диск?
Пусть раздел с другой установленной системой /dev/sdxi.
sudo mount /dev/sdxi /mnt sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo chroot /mnt
SMB-сервер
Как перезапустить samba?
В терминале:
sudo service smbd restart
Как отключить запрос пароля на сервере при подключении через smb?
В файле /etc/samba/smb.conf задать параметр
security = share
FTP-сервер
proftpd
Один из наиболее гибких FTP-серверов.
Установка:
sudo apt-get install proftpd
Настройки хранятся в файле /etc/proftpd/proftpd.conf, после его изменения нужно перезапустить сервер:
sudo service proftpd restart
Примеры настроек
Изменить имя сервера:
ServerName "my-ftp-server"
Отображение скрытых файлов:
ListOptions -la
Увеличить максимальное количество одновременных подключений (для защиты от DoS атак рекомендуется не выставлять более 30):
MaxInstances 60
Сделать загруженные и каталоги (второе число) файлы полностью доступными владельцу, и группе только для чтения:
Umask 017 017
Ограничить пользователя домашним каталогом:
DefaultRoot ~
MySQL-сервер
sudo apt-get install mysql-server
При запросе указать пароль для администратора MySQL.
HTTP-сервер
Apache
Установка ПО
1. Установить Apache:
sudo apt-get install apache2
2. Установить php5 с библиотеками:
sudo apt-get install php5 libapache2-mod-php5 libapache2-mod-auth-mysql php5-mysql php-image-graph imagemagick php5-gd php5-curl
3. Перезапустить Apache:
sudo service apache2 restart
Настройка Virtual Hosts
1. Остановить Apache:
sudo service apache2 stop
2. Создать конфигурации для хостов (на примере new.site).
- 2.1. Создать конфигурационный файл по адресу /etc/apache2/sites-available/new.site с содержимым:
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/new.site/www ServerName new.site ServerAlias "new.site" "www.new.site" <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/new.site/www> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/www/new.site/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog /var/www/new.site/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> </VirtualHost>
- 2.2. Создать необходимые директории:
sudo mkdir /var/www/new.site sudo mkdir /var/www/new.site/www
- 2.3. Подключить новый хост:
sudo a2ensite new.site
- Потом отключить можно будет так:
sudo a2dissite new.site
3. Обновить конфигурацию Apache:
sudo service apache2 reload
4. Запустить Apache:
sudo service apache2 start
Безопасная настройка
1. Ограничить права:
chmod 640 /etc/apache2 chmod 640 /etc/php5
2. Установить модуль Apache:
sudo apt-get install apache2-mpm-itk
3. Дополнить конфигурации хостов (далее для пользователя {user} и группы {group}):
AssignUserId {user} {group} # пользователь и группа, соответствующие правам работы сервера #php_admin_value open_basedir /home/{user}/www/:. #php_admin_value safe_mode on # включить безопасный режим php php_admin_value upload_tmp_dir /home/{user}/tmp # временный каталог для загрузок php_admin_value session.save_path /home/{user}/tmp # временный каталог для сессий
4. Создать папку для временных файлов:
mkdir /home/{user}/tmp
Настройка mod_rwrite
1. Активировать модуль:
sudo a2enmod rewrite
2. В файлах конфигурации хостов изменить
AllowOverride None
на
AllowOverride All
3. Перезапустить сервер:
sudo service apache2 restart
Добавление акселератора PHP
1. Установить акселератор на выбор
- APC:
sudo apt-get install php-apc
- xcache:
sudo apt-get install php5-xcache
Настройки хранятся в /etc/php5/conf.d/xcache.ini
2. Добавить кэширование:
sudo apt-get install memcached php5-memcached
3. Перезапустить сервер
sudo service apache2 restart
Настройка почтовой службы
Для работы отправки почты можно выбрать одну из следующих утилит.
sendmail
1. Установить sendmail:
sudo apt-get install sendmail-bin
2. В файле /etc/php5/apache2/php.ini заменить строку
;sendmail_path =
на
sendmail_path = /usr/sbin/sendmail -t -i
Важно: возможные тормоза могут быть вызваны некорректным hostname.
ssmtp
1. Установить ssmtp:
sudo apt-get install ssmtp
2. В файле /etc/php5/apache2/php.ini заменить строку
;sendmail_path =
на
sendmail_path = /usr/sbin/ssmtp -t
3. В файле /etc/ssmtp/ssmtp.conf прописать настройки (на примере smtp.gmail.com)
root={обратный почтовый адрес} mailhub=smtp.gmail.com:587 FromLineOverride=YES AuthUser={имя пользователя}@gmail.com AuthPass={пароль} UseSTARTTLS=YES
4. Обезопасить доступ к /etc/ssmtp/ssmtp.conf:
adduser www-data mail chmod 2555 /usr/sbin/ssmtp chgrp mail /usr/sbin/ssmtp chmod 640 /etc/ssmtp/ssmtp.conf chown root:mail /etc/ssmtp/ssmtp.conf deluser www-data mail
nginx
1. Установка:
apt-get install nginx php5-cli php5-common php5-suhosin php5-cgi php5-fpm mysql-server php5-mysql php5-gd php5-apc memcached php5-memcached
2. Основной файл конфигурации (/etc/nginx/nginx.conf):
Устранение уязвимости: в файле /etc/php5/fpm/php.ini добавить настройку:
cgi.fix_pathinfo=0
Отключение автоопределения HTTPS: в файле /etc/nginx/fastcgi_params закомментировать fastcgi_param HTTPS.
Удаленное управление
x11vnc
Позволяет запустить сервер vnc для подключения, например, к текущему сеансу.
Примеры использования:
- задать пароль для дальнейших подключений
x11vnc -storepasswd <пароль> ~/.vnc/passwd
- остановить серверы
x11vnc -kill
- не выходить после отключения
x11vnc -forever
- использовать запущенный локальный сеанс
-x11vnc -display :0
- спрашивать пароль при подключении
x11vnc -usepw
tightvncserver
Позволяет запустить сервер vnc для подключения к отдельной x-сессии.
При первом запуске vncserver предложит указать пароль, который будет в дальнейшем использоваться для подключения.
Примеры использования:
- запустить сервер с x-сессией размера 1024x600
vncserver -geometry 1024x600
x-сессия будет запущена на первом свободном виртуальном дисплее. Если дисплей i, то порт для подключения 590i.
- остановить сервер, соответствующий виртуальному дисплею 2
vncserver -kill :2
Настройки запуска хранятся в ~/.vnc/xstartup. Пример для запуска сессии lubuntu:
xrdb $HOME/.Xresources xsetroot -solid grey x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & startlubuntu &
OpenSSH
Команда
sudo apt-get install ssh
установит метапакет клиента и сервера ssh.
Настройки хранятся в файле /etc/ssh/sshd_config, после его изменения нужно перезапустить сервер:
sudo service ssh restart
Примеры настроек
Запретить доступ суперпользователю:
PermitRootLogin no
Разрешить доступ только группам adm и ssh:
AllowGroups adm, ssh
Ubuntu Customization Kit
Проблемы, возникающие при сборке образа
Faild to build gfxboot theme
Установить пакет libfribidi-bin.
Unable to extract gfxboot-theme-ubuntu source package
Костыль: в файле /usr/lib/uck/customization-profiles/localized_cd/customize_iso заменить
GFXBOOT_THEME_UBUNTU_SOURCE_PACKAGE=http://archive.ubuntu.com/ubuntu/ubuntu/ubuntu/pool/main/g/gfxboot-theme-ubuntu/$(zgrep gz "$APT_SOURCES_TMP_DIR"/Sources.gz | grep gfxboot-theme-ubuntu | sed -n 1p | awk '{ print $3 }')
присвоением корректно ссылки на gz-архив с gfxboot-theme-ubuntu, например,
GFXBOOT_THEME_UBUNTU_SOURCE_PACKAGE=http://archive.ubuntu.com/ubuntu/ubuntu/ubuntu/pool/main/g/gfxboot-theme-ubuntu/gfxboot-theme-ubuntu_0.20.0.tar.xz
И, поскольку поменялось расширение, заменить там же
tar xfz *.tar.gz ||
на
tar xf *.tar.xz ||
You asked for a hybrid ISO but isohybrid command was not found
Установить пакет syslinux-utils.
language-pack-touch-en : Conflicts: language-pack-en
В файле /usr/lib/uck/customization-profiles/localized_cd/customize заменить
add=`echo "$REPO_LANGS" | grep -- -"$l" | grep -Ev "kde|gnome"`
на
add=`echo "$REPO_LANGS" | grep -- -"$l" | grep -Ev "kde|gnome|touch"`
Источник: Question #261894 : Questions : Ubuntu Customization Kit:
Решение проблем
unable to connect to upstart
Дело в том, что в режиме chroot невозможно выполнять задачи upstart. Нужно сделать следующее в терминале из-под chroot:
dpkg-divert --local --rename --add /sbin/initctl ln -s /bin/true /sbin/initctl
unable start cron, gdm
Снова дело в chroot. Судя по всему, нужно сделать по аналогии в терминале из-под chroot:
dpkg-divert --local --rename --add /sbin/start ln -s /bin/true /sbin/start
Черный экран при старте KDE4
Скорее всего, проблемы с видеокартой . Нужно отключить визуальные эффекты (Alt + Shift + F12) . Если рабочий стол отобразится, то можно пробовать подружить систему с эффектами (после каждого шага проверить помогло или нет)
- обновить драйвер видеокарты,
- в настройках переключить рендер эффектов на XRender,
- отключить автоматическую активацию эффектов и не трогать их.
Вывод изображения через HDMI на видеокарты ATI не на полный экран
1. Установить Catalyst Control Center (пакет fglrx-amdcccle).
2. В настройках Scaling выставить в нуль.
kdenlive не работает с libx264
- Закрыть программу.
- Удалить файл ~.kde/share/config/kdenliverc.
- Запустить программу.
Setting locale failed при настройке пакетов
Если во время настройки или установки пакетов появляется сообщение
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = (unset), LC_ALL = (unset), LANG = "ru_RU.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C"). locale: Cannot set LC_CTYPE to default locale: No such file or directory locale: Cannot set LC_MESSAGES to default locale: No such file or directory locale: Cannot set LC_ALL to default locale: No such file or directory
нужно сгенерировать и обновить настройки локалей:
# locale-gen ru_RU ru_RU.UTF-8 en_US en_US.UTF-8 # dpkg-reconfigure locales
Ссылки:
Cannot connect to X server :0. при запуске приложения от имени другого пользователя
Выполнить от имени пользователя, который работает с X-сервером:
xhost +local:{имя пользователя}
где {имя пользователя} указывает с чьими правами нужно будет запустить приложение.
Ссылки:
Некорректный рендеринг Qt-приложений в Ubuntu 15.10
В /etc/environment добавить
QT_GRAPHICSSYSTEM=native
Ссылки:
Разное
Как узнать тип установленной оперативной памяти?
sudo dmidecode -t memory
Как настроить работу с zRam?
$ sudo apt-get install zram-config
Ссылки:
Как установить ядро версии 4?
Пример для версии 4.0.6:
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0.6-wily/linux-headers-4.0.6-040006_4.0.6-040006.201506222135_all.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0.6-wily/linux-headers-4.0.6-040006-generic_4.0.6-040006.201506222135_amd64.deb wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.0.6-wily/linux-image-4.0.6-040006-generic_4.0.6-040006.201506222135_amd64.deb sudo dpkg -i linux-headers-4.0.6*.deb linux-image-4.0.6*.deb sudo reboot
Для удаления:
sudo apt-get remove 'linux-headers-4.0.6*' 'linux-image-4.0.6*'