Это старая версия документа!
Например, инсталятор Debian'а не позволяет создавать пользователей, чьи имена содержат нижнее подчёркивание, что может идти в разрез с исторически сложившимися традициями с одной стороны, с другой стороны ручное создание пользователя может противоречить требованию единого id пользователя при работе с файловой системой на кластере.
В общем, разные бывают ситуации, иногда переименовать пользователя необходимо, сохранив его id.
groupmod --new-name newuser olduser usermod --login newuser --home /home/newhome olduser
mv /home/oldhome /home/newhome
Создание самоподписанного SSL-сертификата состоит из следующих этапов.
openssl genrsa -des3 -out jurik-phys.net.key 2048
openssl req -new -key jurik-phys.net.key -out jurik-phys.net.csr
В поле «Common Name» ввести доменное имя сайта, несколько имён через запятую, или маску сайта, например, *.jurik-phys.net
mv jurik-phys.net.key jurik-phys.net.key.org openssl rsa -in jurik-phys.net.key.org -out jurik-phys.net.key
openssl x509 -req -days 365 -in jurik-phys.net.csr -signkey jurik-phys.net.key -out jurik-phys.net.crt
Внимание! Использование самоподписанного сертификата будет вызывать в браузере предупреждение безопасности
В файле /etc/rc.local добавить:
su - user_name -c "vncserver -geometry 1920x1080 -depth 24 -deferupdate 0" &
В файле ~/.vnc/xstartup
exec /usr/bin/xfce4-session & # x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & # x-window-manager &
update-alternatives --list editor
update-alternatives --config editor
select-editor
Русские буквы в консоли Debian/Ubuntu. После очередного обновления можно столкнуться с «квадратами» вместо букв. Решение:
dpkg-reconfigure console-setup
Выбрать:
UTF-8 Combined - Latin; Slavic and non-Slavic Cyrillic Fixed Размер по вкусу.
Шрифт Fixed т.к., Terminus может отображаеться квадратами.
Закрепить результат:
update-initramfs -u
Дополнительная информация по ссылке.
Один из простых способов отправить электронную почку из шелла - использовать консольный почтовый клиент mutt в связке с внешним smtp сервером.
vim ~/.muttrc
set imap_user="mail_login" set imap_pass="mail_password" set realname = "Printed info" set smtp_url="smtps://$imap_user@smtp.mail.ru:465" set smtp_pass="$imap_pass" set ssl_force_tls=yes
vim mail-send.sh
#! /bin/bash subject="Email from bash" body="This email send using a bash scritpt" from="mail_login@mail.ru" to="resieve_email@mail.ru" echo "Sending email..." echo "$body" | mutt -s "$subject" -e "my_hdr From:$from" -b $from "$to"
В файле /etc/ssh/sshd_config установить
PermitRootLogin no
или
PermitRootLogin without-password
На удалённую машину:
scp local_file user_name@server_name:/path/to/new/place/
С удалённой машины:
Обратно тоже можно: scp user_name@server_name:/path/to/remote_file /local_path/
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote
scp ~/.ssh/id_rsa.pub user@remote:id_rsa.pub
ssh user@remote
# создаем директорию и даём права [ -d ~/.ssh ] || (mkdir ~/.ssh; chmod 711 ~/.ssh) # добавляем открытый ключ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys # делаем правильные права chmod 600 ~/.ssh/authorized_keys # удаляем не нужное rm ~/id_rsa.pub
ssh user@remote
PasswordAuthentication no
ssh -D 127.0.0.1:8080 -f -N user.name@remote.domain.name
Образ системы на VPS зачастую идёт с пустыми ключами шифрования, о чём можно судить по ошибкам в /var/log/authorize «No supported key exchange format» и нулевым размерам ключей в /etc/ssh/. Сервис ssh в данном случае не запускается.
Решение заключается в генерации новых ключей:
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key
ssh [user]@[server] '[command]'
Работу DNSCrypt можно оценить через один из сервисов проверки DNS:
Идея: зарегистрировать N учётных записей Yandex.Disk'а по 10GB и примонтировать с помощью WebDAV N каталогов, объединить все N каталогов в единое облачное хранилище размером в N*10GB, прикрутить шифрование на стороне клиента и пользоваться сервисом для хранения редко используемых данных.
Особенности регистрации. Похоже, что за один подход лучше не регистрировать более 3-х учётных записей, иначе при переходе в Яндекс.Диск можно словить блокировку (мобильный в помощь):
Доступ временно ограничен
Соответственно, диск через WebDAV не монтируется c ошибкой:
402 Payment Required
Итог. Прежде чем переходить к следующему этапу, необходимо убедиться через Web-интерфейс, что Яндекс.Диск доступен для всех предполагаемых к использованию учётных записей.
Реализация Net.Storage в статье.
В /etc/fstab, mail_user - имя пользователя
https://webdav.cloud.mail.ru/ /mnt/mail.ru davfs uid=mail_user,file_mode=666,dir_mode=777,user,noauto 0 0
В /etc/davfs2/secrets
/mnt/mail.ru mail_user@mail.ru "password"
Монтирование:
mount /mnt/mail.ru
Cогласно договору, mail.ru получает авторские права на все загружаемые данные, и может использовать их по своему усмотрению. Данные надо шифровать.
Например, с помощью EncFS, которая использует директорию для хранения зашифрованных файлов, а не специально подготовленную ФС.
Создадим точку монтирования для расшифрованного каталога:
mkdir /mnt/crypt.mail.ru
Установка пакета encfs
apt-get install encfs
Подключение зашифрованного каталога в облаке.
encfs /mnt/mail.ru/.encfs /mnt/crypt.mail.ru
При первом запуске утилита попросит ввести пароль для шифрования. Если каталог уже зашифрован, то утилита спросит пароль для расшифровки. После этого все операции необходимо производить через /mnt/crypt.mail.ru.
Отключение зашифрованного каталога
fusermount -u /mnt/crypt.mail.ru
Разрешить не root пользователям монитровать EncFS.
Файл /etc/fuse.conf:
user_allow_other
Добавить пользователя в группу fuse
usermod -a -G fuse $USER
Руководство по настройке перенаправления на лету вывода звука приложения между передними выходами звуковой карты (front-left,front-right) и задними выходами (rear-left,rear-right).
Данный способ позволяет подключить к компьютеру акустическую систему на передние выводы, а на задние, например, наушники и при необходимости перенаправлять вывод звука на то или иное устройство.
Однако, как выяснилось, при создании виртуальных sink'ов в /etc/pulse/default.pa, согласно руководству, монофонические файлы не будут слышны при воспроизводстве, увы. Проблема известная и связанная с тем, что предлагаемый способ требует установки «enable-remixing = no».
Предлагаемое решение состоит в том, чтобы cделать виртуальные sink'и «speakers» и «headphones» не 2-х канальными, а 4-х канальными, с дублированием выходов звуковой карты, но различающимися входами.
Первоначальный вариант при котором монофонические файлы не звучат выглядит так
load-module module-remap-sink sink_name=speakers master=alsa_output.pci-0000_08_05.0.analog-surround-40 channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right remix=no load-module module-remap-sink sink_name=headphones master=alsa_output.pci-0000_08_05.0.analog-surround-40 channels=2 master_channel_map=rear-left,rear-right channel_map=front-left,front-right remix=no
Изменённый вариант выглядит так:
load-module module-remap-sink sink_name=speakers master=alsa_output.pci-0000_08_05.0.analog-surround-40 channels=4 master_channel_map=front-left,front-right,front-left,front-right channel_map=front-left,front-right,mono,mono remix=no load-module module-remap-sink sink_name=headphones master=alsa_output.pci-0000_08_05.0.analog-surround-40 channels=4 master_channel_map=rear-left,rear-right,rear-left,rear-right channel_map=front-left,front-right,mono,mono remix=no
Замечание первое. sound_card_name для master=<sound_card_name> определяется из вывода команды
pacmd list-sinks | grep name
Замечание второе. В файле /etc/pulse/daemon.conf необходимо установить enable-remixing = no
Файл /etc/pulse/daemon.conf
resample-method = soxr-vhq ; resample-method = src-sinc-best-quality default-sample-format = float32le default-sample-rate = 192000 alternate-sample-rate = 96000
Цена улучшения звука - несколько бОльшая загрузка процессора.
Узнать поддерживаемые алгоритмы ресамплинга
pulseaudio --dump-resample-methods
Проверить текущий формат вывода звука картой
cat /proc/asound/card0/pcm0p/sub0/hw_params
На звуковом сервере в файле /etc/pulse/default.pa раскомментировать загрузку сетевого модуля и установить авторизацию для локальной сети
load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1;192.168.0.0/16
На удалённом клиенте запускать приложение в виде
PULSE_SERVER=<pulse_servername> <application>
На клиенте в /etc/pulse/default.pa
load-module module-tunnel-sink-new sink_name=edifier server=dirac update-sink-proplist edifier device.description="Remote Bum-Bum"
На сервере /etc/pulse/default.pa
load-module module-zeroconf-publish
На клиенте /etc/pulse/default.pa
load-module module-zeroconf-discover
После перезапуска pulseaudio всё работает, но имя принимающего тунеля на сервере будет не очень красивым. Исправление на сервере
update-sink-proplist alsa_output.pci-0000_01_01.0.iec958-stereo device.description="Edifire R2800"
где alsa_output.pci-0000_01_01.0.iec958-stereo device.description определяется из вывода команды pactl list
http://ubuntuforums.org/showthread.php?t=1324135
https://s8dragon.wordpress.com/2010/12/26/listen-to-microphone-over-the-speakers-using-pulseaudio/
Проблема. Звук работает только для первого вошедшего в систему пользователя. У иных пользователей pulseaudio не видит звуковую карту, а следовательно, звука эти пользователи не слышат.
Решение 1. Использовать системный демон pulseaudio
deamonize = yes system-instance=yes local-server-type = system
[Unit] Description=PulseAudio Daemon [Service] Type=forking RemainAfterExit=yes ExecStart=/usr/bin/pulseaudio -D [Install] WantedBy=multi-user.target
systemctl enable pulseaudio.service
adduser user_name pulse-access
Данный способ разработчики рекомендуют избегать, но он самый безглючный в плане звука.
Решение 2. Организовать подключение к пульсе для второго пользователя через unix-сокеты, открываемые первым пользователем. Источник.
/etc/pulse/default.pa:
load-module module-native-protocol-unix auth-anonymous=1 socket=/tmp/my-pulse-socket-name
У второго пользователя ~/.config/pulse/client.conf:
default-server = unix:/tmp/my-pulse-socket-name
Минусы. При логине второго пользователя до первого, звука у второго пользователя не будет вовсе т.к, при запуске pulseaudio выдаст ошибку:
pulseaudio --start N: [pulseaudio] main.c: Обнаружен настроенный вручную сервер на %s, отказ от запуска.
Описание. Системный раздел зашифрован, при загрузке необходимо ввести пароль. Однако usb-клавиатура после начала загрузки ядра и до момента ввода пароля не функционирует.
Решение. Необходимо добавить модули отвечающие за работу подсистемы usb и hid в образ первоначальной загрузки (initrd).
Реализация (debian). Прописать в /etc/initramfs-tools/modules необходимые модули.
usbcore usbhid hid_generic hid ehci_pci ehci_hcd xhci_hcd
Обновить образ начальной загрузки.
update-initramfs -u -k all
Результат. Добавленные в initrd модули инициализируют подсистему USB до монтирования основной ФС, благодаря чему с помощью usb-клавиатуры можно ввести пароль шифрования и продолжить загрузку операционной системы.
Duplicity:
https://kamaok.org.ua/?p=1093;
http://wiki.hetzner.de/index.php/Duplicity_Script/ru;
http://www.linuxspace.org/archives/5608.
https://wiki.debian.org/Duplicity
http://blog.geek.km.ua/2012/06/14/shpargalka-po-duplicity/
http://serverfault.com/questions/417158/duplicity-recommended-value-for-volsize
http://wiki.rfremix.ru/index.php/Архивирование_данных_с_помощью_Duplicity
xfconf-query -c xfce4-keyboard-shortcuts -p '/commands/custom/<Alt>F2' -s "xfrun4 --disable-server"
Проблема с отображением значков в системном лотке Xfce (Ubuntu). Решение:
vim /etc/lightdm/lightdm.conf
[SeatDefaults] autologin-user=auto_login_user_name
ffmpeg -i ./file.avi -acodec copy -vcodec copy -ss 00:00:00 -t 00:02:13 ./new_file.avi
for file in *.m4a; do avconv -i "$file" -f flac "`basename "$file" .m4a`.flac"; done
for file in *.mp3; do id=`stat --format=%Y "${file}"`; mv "${file}" "${id}"."${file}"; echo $id; done
for f in *.png; do convert -colors 2 -colorspace Gray -normalize +dither "$f" "${f%%.*}.tiff"; done
Проблема: Не открываются docx, xlsx документы.
Решение: update-binfmts –disable jar
Подробнее...
http://nikhgupta.com/code/installing-squid-proxy-server-on-centos-5-vps/
По-умолчанию все внешние соединения с proxy запрещены (при необходимости учитывать):
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS # Example rule allowing access from your local networks. # Adapt localnet in the ACL section to list your (internal) IP networks # from where browsing should be allowed #http_access allow localnet http_access allow localhost # And finally deny all other access to this proxy http_access deny all
Создание загрузочной флешки Windows 7 из-под Linux'а:
https://romantelychko.com/blog/352/
http://blog.mind-x.org/2011/02/live-usb-windows-7-linux.html
mount /dev/sda1 /mnt
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
chroot /mnt
update-grub
или
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
mount /dev/sda1 /mnt/custom
grub2-install /dev/sda
set prefix=(hd0,1)/grub set root=(hd0,1) ls /grub
set prefix=(hd0,1)/boot/grub set root=(hd0,1) ls /boot/grub
insmod ext2 insmod normal
normal
grub2-install --root-directory=/ /dev/sda
Загрузиться с установочного диска в режим восстановления, согласно инструкции[дистрибутив Debian]. :
Bootrec.exe /FixMbr
Bootrec.exe /FixBoot
Bootrec.exe /RebuildBcd
Предотвращение отключения usb и переход в настоящий suspend. Мануал тут.
Система пользовательских сертификатов, центра сертификации и БД отозванных сертификатов называется PKI - Public Key Infrastructure.
На стороне сервера создается корневой сертификат [ca.crt] и закрытый ключ [ca.key].
Для создания корневого сертификата и закрытого используется утилита easy-rsa из состава OpenVPN [/usr/share/doc/openvpn/examples/easy-rsa]. Начиная с версии 2.3 данную утилиту из пакета удалили, поэтому после установки отдельного пакета примеры лежат в /usr/share/easy-rsa. Путь к каталогу с PKI не должен содержать пробелов.
source ./vars ./clean-all ./build-ca
Последняя команда [build-ca] создаст корневой сертификат [ca.crt] и приватный ключ центра сертификации [ca.key], вызвав интерактивную команду openssl.
Большинство запрошенных параметров установлены в значения по умолчанию взятые из файла vars, common name - единственный параметр, который должен быть явно указан.
Дополнение. Для избежания ошибки вида: The <someName> field needed to be the same in the CA certificate and the request необходимо отредактировать поле <someName>, изменив его с «match» на «optional» в файле openssl.cnf. Подробнее.
Аналогично, с помощью утилиты easy-rsa генерируются сертификат сервера [server.crt] и закрытый ключ сервера [server.key]:
./build-key-server server
Большинство параметров могут быть оставлены в значениях по умолчанию, явного ввода требует параметр Common name, можно ввести «server». Два других запроса требуют положительных ответов, «Sign the certificate? (Подписать сертификат?) [y/n]« и «1 out of 1 certificate requests certified, commit? (заверен 1 из 1 запросов на сертификацию, фиксировать?) [y/n]».
Для сервера OpenVPN необходимо создать параметры Diffie Hellman'а:
./build-dh
Cозданные ключи и сертификаты расположены в каталоге keys.
Имя файла | Где необходим | Назначение | Секретный |
---|---|---|---|
ca.crt | сервер + все клиенты | Корневой CA-сертификат | НЕТ |
ca.key | машина для подписи ключей | Корневой CA-ключ | ДА |
dh{n}.pem | только сервер | Параметры Diffie Hellman'а | НЕТ |
server.crt | только сервер | Сертификат сервера | НЕТ |
server.key | только сервер | Ключ сервера | ДА |
client1.crt | только клиент1 | Сертификат клиента1 | НЕТ |
client1.key | только клиент1 | Ключ клиента1 | ДА |
client2.crt | только клиент2 | Сертификат клиента2 | НЕТ |
client2.key | только клиент2 | Ключ клиента2 | ДА |
При подготовке материала по OpenVPN использовались источники: opennet.ru, habrahabr.ru, wiki.525.su, debian-help.ru
Файл /etc/openvpn/newton.conf
client dev-type tap dev vpn0 proto udp remote AA.BB.CC.DD resolv-retry infinite persist-key persist-tun comp-lzo ns-cert-type server mute-replay-warnings ca /etc/openvpn/key/ca.crt cert /etc/openvpn/key/newton.crt key /etc/openvpn/key/newton.key script-security 3 system up /etc/openvpn/dhcp.sh down /etc/openvpn/dhcp.sh verb 0
Файл dhcp.sh
#!/bin/bash # [ -x /sbin/dhclient ] || exit 0 case $script_type in up) # set mac address for tap interface ip link set dev ${dev} address 92:56:cd:85:43:d7 # echo "Your misson should you choose to accept it:" # echo "dhclient -v ${dev}" # echo "You have 30 seconds...GO!" dhclient -v "${dev}" & ;; down) echo "Releasing ${dev} DHCP lease." dhclient -r "${dev}" ;; esac
Подсмотрено здесь. Создать ловушку для обхода изменения /etc/resolv.conf, путём создания файла /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate следующего содержания:
#!/bin/sh make_resolv_conf(){ : }
Сделать его исполняемым:
chmod +x /etc/dhcp/dhclient-enter-hooks.d/nodnsupdate
Данный скрипт заменяет функцию replace make_resolv_conf() на изменённую, которая ничего не делает.
Также может понадобиться отключить обновление dns в NetworkManager'е (см. ссылку).
Особенность. OpenVPN релизован в виде tap интерфейса, сеть openvpn входит в домашнюю подсеть 192.168.93.xxx.
Задача.
Решение.
Запускать1) OpenVPN2) при подключении Wi-Fi, проверяя SSID текущей сети, отключать OpenVPN при закрытии Wi-Fi.
Запуск отключение реализуется через параметры Network Manager'а в файле /etc/NetworkManager/dispatcher.d/01ifupdown:
up|vpn-up) export MODE="start" export PHASE="post-up" ############################ /etc/openvpn/vpn_status_test ############################ run-parts /etc/network/if-up.d ;; down|vpn-down) export MODE="stop" export PHASE="post-down" ############################ /etc/init.d/openvpn stop & ############################ run-parts /etc/network/if-post-down.d ;;
/etc/openvpn/vpn_status_test:
#!/bin/bash # jurik_phys@jabber.ru - ssid домашней сети local_wifi=`/sbin/iwconfig wlan0 | /bin/grep -c "jurik_phys@jabber.ru"` # 192.168.93.5 - домашний ip для ethernet порта ноута local_wire=`/sbin/ifconfig eth0 | /bin/grep -c "192.168.93.5"` if [ $local_wifi == "1" ] || [ $local_wire == "1" ]; then # echo "Home network. OpenVPN will be stop now" # SysV init version # /etc/init.d/openvpn stop # SystemD version systemctl stop openvpn@tesla else # SysV init version # vpn_not_run=`/etc/init.d/openvpn status | /bin/grep -c "not running"` # SystemD version vpn_not_run=`systemctl status openvpn@tesla | grep -c "inactive"` if [ $vpn_not_run == "1" ]; then # echo "Intranet and OpenVPN not running. OpenVPN will be start" # SysV init version # /etc/init.d/openvpn restart # SystemD version systemctl start openvpn@tesla fi fi
Решение на LOR'е
Проблема. Версия cr3-3.0.56 с сайта проекта мало того, что не проходит по зависимостям (приходится вытаскивать содержимое deb-пакета), так ещё и не сохраняет настройки пользователя, пытаясь сохранить их в системном каталоге /usr/share/cr3.
Решение. Использовать данную версию из репозитория Alt Linux'а. Содержимое rpm пакета также придётся доставать вручную. Правда в дебиане потребуется собрать библиотеку libpng15.so и положить ещё в /usr/lib.
Руководство администратора по SystemD от RH. Рассуждения справедливы для Debian 8 «Jessie».
Также хороший обзорный материал, SystemD in Action.
Запуск OpenVPN после появления connect'а в NetworkManager'е (конфигурация openvpn расположена в /etc/openvpn/newton.conf):
/etc/systemd/system/openvpn@newton.service.d
[Unit] After=NetworkManager-wait-online.service wpa_supplicant.service
systemctl enable NetworkManager-wait-online.service
P.S. OpenVPN подключение поднимается не средствами NetworkManager из-за того, что при использовании tap сетевого интерфейса NM не может получить сетевые параметры из openvpn-сети через dhclient (Bug #297707).
/etc/systemd/system/mnt-openvpn-public.mount
[Unit] Description=Mount NFS over OpenVPN (public) After=openvpn@newton.service [Mount] What=192.168.XX.YY://storage/public Where=/mnt/openvpn/public Type=nfs4 Options=rsize=8192,wsize=8192,timeo=5 [Install] WantedBy=multi-user.target
Следует отметить, что в данном случае nfs монтируется из OpenVPN сети после установления связи.
В категории Options важным параметром является timeo=5, без него монтирование не происходит, а в логах systemd упоминается об истекшем timeout при монтировании ресурса.
systemctl enable mnt-openvpn-public.mount
Готово, при загрузке системы и удачном подключении openvpn в каталог /mnt/openvpn/public будет автоматически примонтирован удалённый ресурс 192.168.XX.YY:/storage/public.
Однако на этом настройка не закончена, ибо, система при выключении будет вставать в ступор на несколько минут, пытаясь отключить удалённый ресурс… Такой же ступор будет наблюдаться и при установки libvirt-daemon… В общем, очередной Bug #1438612.
Обход бага #1438612 связанного с ранним отключением dbus.service реализуется дополнением зависимостей к сервису NetworkManager, для чего:
/etc/systemd/system/NetworkManager.service.d
nfs-shutdown-unmount.conf
следующего содержания:
[Unit] After=dbus.service
В итоге выключение системы должно нормализоваться.
systemctl enable systemd-networkd-wait-online
Флеш не стартует автоматически при включённом Opera Turbo. Решение - отключить Opera Turbo.
mdadm --create /dev/md0 --level=1 --raid-device=2 --metadata=0.90 /dev/sda1 /dev/sdb1
pvcreate /dev/md0 vgcreate hdd /dev/md0 lvcreate -n root -L 34G hdd lvcreate -n swap -L 3.26 hdd
watch -n 1 cat /proc/mdstat
grub-install /dev/sdb
Дано:
df -h
/dev/md5 424G 11G 414G 3% /home
cat /proc/mdstat
md5 : active raid1 sdb2[0] sda2[1] 451684216 blocks super 1.2 [2/2] [UU]
Рейд1 /dev/md5 смонтирован в каталог /home и содержит данные пользователей, размер 414ГБ;
Задача: Уменьшить замер домашнего каталога до 14 ГБ и на оставшихся 400ГБ поднять raid-1 для хранения данных.
Решение:
umount /home
mdadm /dev/md5 --fail /dev/sdb2
cat /proc/mdstat
Personalities : [raid1] md5 : active raid1 sdb2[0](F) sda2[1] 451684216 blocks super 1.2 [2/1] [_U]
mdadm /dev/md5 --remove /dev/sdb2
cat /proc/mdstat
Personalities : [raid1] md5 : active raid1 sda2[1] 451684216 blocks super 1.2 [2/1] [_U]
fdisk /dev/sdb
fdisk -l /dev/sdb
Device Boot Start End Blocks Id System /dev/sdb1 * 2048 73402367 36700160 fd Linux raid autodetect /dev/sdb2 73402368 81790975 4194304 fd Linux raid autodetect /dev/sdb3 81790976 976773167 447491096 fd Linux raid autodetect
partprobe
mdadm --create /dev/md12 --level=1 --raid-devices=2 missing /dev/sdb2 mdadm --create /dev/md13 --level=1 --raid-devices=2 missing /dev/sdb3
cat /proc/mdstat
Personalities : [raid1] md13 : active (auto-read-only) raid1 sdb3[1] 447359872 blocks super 1.2 [2/1] [_U] md12 : active (auto-read-only) raid1 sdb2[1] 4192192 blocks super 1.2 [2/1] [_U]
mkfs.ext4 /dev/md12 mkfs.ext4 /dev/md13
tune2fs -m 0 /dev/md12 tune2fs -m 0 /dev/md13
umount /home mdadm --stop /dev/md5
mdadm /dev/md12 --add /dev/sda2 mdadm /dev/md13 --add /dev/sda3
cat /proc/mdstat
Personalities : [raid1] md13 : active raid1 sda3[2] sdb3[1] 447359872 blocks super 1.2 [2/1] [_U] [>....................] recovery = 4.5% (20240576/447359872) finish=85.7min speed=83028K/sec md12 : active raid1 sda2[2] sdb2[1] 4192192 blocks super 1.2 [2/1] [_U] resync=DELAYED
Видно, что разделы подхватились массивами и запустился поочерёдный процесс синхронизации raid-массивов. На данном этапе уже можно работать с массивами, но желательно дождаться завершения синхронизации.
0 - stdin
1 - stdout
2 - stderr
prog 1>log 2>err
#stderr в stdout: 2>&1
Запись на flash-накопители (ограничение буфера) ссылка.
KWin has detected that your OpenGL library is unsafe to use, falling back to XRender. kwin(5744): Failed to initialize compositing, compositing disabled
Решение. В ~/.kde/share/config/kwinrc OpenGLIsUnsafe=true изменить на false (см. ссылку).
Импортирование нового открытого ключа:
apt-key adv --recv-keys --keyserver keys.gnupg.net KEY-ID
По умолчанию, firefox не позволяет сразу открыть файл FictionBook (fb2) в сторонней программе, предлагая сохранить его на диск. Решение в добавлении типа файлов «fb2» в настройки браузера.
Для этого необходимо добавить в файл mimeTypes.rdf, находящийся в профиле пользователя, следующие строки:
<RDF:Description RDF:about="urn:mimetype:application/x-fictionbook+xml" NC:fileExtensions="fb2" NC:description="документ FictionBook" NC:value="application/x-fictionbook+xml" NC:editable="true"> <NC:handlerProp RDF:resource="urn:mimetype:handler:application/x-fictionbook+xml"/> </RDF:Description>
Основой приведённого описания файлов FictionBook является описание zip архива.