старый FMтюнер на pci
модуль fm801* загрузился сам
подключить репозиторий debian
Подключение репозиториев ОС ОН Astra Linux Common Edition Орел
Подключение репозиториев текущей версии orel-stable- 2.12
Подключение сторонних репозиториев
Подключение репозиториев Debian 9 "Stretch"
Для ОС ОН Орёл 2.12.8 установить пакет dirmngr для управления ключами и
пакет debian-archive-keyring, содержащий ключи к репозиториям Debian:
sudo apt install debian-archive-keyring dirmngr
В /etc/apt/sources.list добавить ссылку на репозиторий Debian:
/etc/apt/sources.list
deb https://mirror.yandex.ru/debian/ stretch main contrib non-free
После добавления ссылки выполнить команду
sudo apt update
root@astrapc:/etc/apt# apt install fmtools
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
НОВЫЕ пакеты, которые будут установлены:
fmtools
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0
пакетов, и 456 пакетов не обновлено.
Необходимо скачать 14,2 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт
на 51,2 kB.
Пол:1 https://mirror.yandex.ru/debian stretch/main amd64 fmtools amd64
2.0.7+b1 [14,2 kB]
Получено 14,2 kБ за 0с (63,2 kБ/c)
Выбор ранее не выбранного пакета fmtools.
(Чтение базы данных … на данный момент установлено 133772 файла и каталога.)
Подготовка к распаковке …/fmtools_2.0.7+b1_amd64.deb …
Распаковывается fmtools (2.0.7+b1) …
Настраивается пакет fmtools (2.0.7+b1) …
Обрабатываются триггеры для man-db (2.7.6.1-2) …
root@astrapc:/etc/apt# fm --help
fm: invalid option -- '-'
fmtools fm version 2.0.7
usage: fm [-h] [-o] [-q] [-d <dev>] [-t <tuner>] [-T none|forever|time]
<freq>|on|off [<volume>]
A small controller for Video for Linux radio devices.
-h display this help
-o override frequency range limits of card
-q quiet mode
-d <dev> select device (default: /dev/radio0)
-t <tuner> select tuner (default: 0)
-T <time> after setting frequency, sleep for some time
(default: none; -=forever)
<freq> frequency in MHz (i.e. 94.3)
on turn radio on
off turn radio off (mute)
+ increase volume
- decrease volume
<volume> percentage (0-100)
---
Основные команды:
fmscan
fm on
fm
fm 93.70
Показаны сообщения с ярлыком linux. Показать все сообщения
Показаны сообщения с ярлыком linux. Показать все сообщения
пятница, 17 сентября 2021 г.
fm fmtools tuner astra linux
пятница, 4 ноября 2016 г.
Linux Mint 18
Linux Mint 18 Cinnamon 64-bit
Установилась без проблем.
Устанавливал на диск с Win10 с загрузкой UEFI. Пол диска оставил свободным, разбил на разделы установщик. Во время установки linux, установщик что то сказал про загрузку Windows. Не подумав ткнул продолжить, результат Win10 не грузится. Помогло
После этой команды стало отображаться окно выбора загрузки операционной системы.
Установка mediatomb, без проблем, но проблемы с запуском: systemd запускает загрузку до запуска сети. После загрузки посмотрел на процесс NetworkManager-wait-online.service
Нашел рекомендацию: выполнить ещё раз разрешения на запуск и собственно запуск
А так же поправил файл запуска /lib/systemd/system/mediatomb.service Добавил Wants. Теперь, после включения ОС, Mediatomb запускается автоматически.
Файл конфигурации /etc/mediatomb/config.xml. Настройка интерфейса в файле /etc/default/mediatomb, иначе привязка к интерфейсу lo.
Так как система с двойной загрузкой, данные храним на диске NTFS. Для монтирования автоматически добавляем в /etc/fstab. Узнать UUID командой blkid.
В командной строке, где лежат файлы выполнить.
Удобная утилита для обработки тегов EasyTAG. Как пользоваться смотри здесь.
Драйвера в ядре нет. Установка проста. Должны быть установлены пакеты для компиляции.
Перегружаемся, все работает автоматом (взято отсюда)
Установилась без проблем.
1. Загрузка
Устанавливал на диск с Win10 с загрузкой UEFI. Пол диска оставил свободным, разбил на разделы установщик. Во время установки linux, установщик что то сказал про загрузку Windows. Не подумав ткнул продолжить, результат Win10 не грузится. Помогло
grub-install /dev/sda
После этой команды стало отображаться окно выбора загрузки операционной системы.
# efibootmgr -v efibootmgr: EFI variables are not supported on this system.
2. Mediatomb
Установка mediatomb, без проблем, но проблемы с запуском: systemd запускает загрузку до запуска сети. После загрузки посмотрел на процесс NetworkManager-wait-online.service
# systemctl status NetworkManager-wait-online.service ● NetworkManager-wait-online.service - Network Manager Wait Online Loaded: loaded (/lib/systemd/system/NetworkManager-wait-online.service; enabled; vendor preset: enabled) Active: inactive (dead) since Пт 2016-11-04 23:38:03 +05; 2s ago Docs: man:nm-online(1) Process: 996 ExecStart=/usr/bin/nm-online -s -q --timeout=30 (code=exited, status=0/SUCCESS) Main PID: 996 (code=exited, status=0/SUCCESS)
Нашел рекомендацию: выполнить ещё раз разрешения на запуск и собственно запуск
systemctl enable NetworkManager-wait-online.service systemctl start NetworkManager-wait-online.service
А так же поправил файл запуска /lib/systemd/system/mediatomb.service Добавил Wants. Теперь, после включения ОС, Mediatomb запускается автоматически.
# cat mediatomb.service [Unit] Description=UPnP MediaServer Wants=NetworkManager-wait-online.service After=NetworkManager-wait-online.service network.target
Файл конфигурации /etc/mediatomb/config.xml. Настройка интерфейса в файле /etc/default/mediatomb, иначе привязка к интерфейсу lo.
<?xml version="1.0" encoding="UTF-8"? > <config version="2" xmlns="http://mediatomb.cc/config/2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/2 http://mediatomb.cc/config/2.xsd" ><!-- Read /usr/share/doc/mediatomb-common/README.gz section 6 for more information on creating and using config.xml configration files. -- > <server > <ui enabled="yes" show-tooltips="yes" > <accounts enabled="no" session-timeout="30" > <account user="mediatomb" password="mediatomb"/ > </accounts > </ui > <!-- <interface >enp3s0</interface > -- > <name >myPC MediaTomb</name > <udn >uuid:2edf96b3-0a40-467d-90d7-6f3de136de62</udn > <home >/var/lib/mediatomb</home > <webroot >/usr/share/mediatomb/web</webroot > <storage caching="yes" > <sqlite3 enabled="yes" > <database-file >mediatomb.db</database-file > </sqlite3 > <mysql enabled="no" > <host >localhost</host > <username >mediatomb</username > <database >mediatomb</database > </mysql > </storage > <pc-directory upnp-hide="yes"/ > <protocolInfo extend="yes"/ ><!-- For PS3 support change to "yes" -- ><!-- Uncomment the lines below to get rid of jerky avi playback on the DSM320 or to enable subtitles support on the DSM units -- ><!-- <custom-http-headers > <add header="X-User-Agent: redsonic"/ > </custom-http-headers > <manufacturerURL >redsonic.com</manufacturerURL > <modelNumber >105</modelNumber > -- ><!-- Uncomment the line below if you have a Telegent TG100 -- ><!-- <upnp-string-limit >101</upnp-string-limit > -- > <custom-http-headers > <add header="transferMode.dlna.org: Streaming"/ > <add header="contentFeatures.dlna.org:DLNA.ORG_OP=01;DLNA.ORG_CI=0;DLNA.ORG_FLAGS=01700000000000000000000000000000"/ > </custom-http-headers > <extended-runtime-options > <ffmpegthumbnailer enabled="yes" > <thumbnail-size >128</thumbnail-size > <seek-percentage >5</seek-percentage > <filmstrip-overlay >yes</filmstrip-overlay > <workaround-bugs >no</workaround-bugs > </ffmpegthumbnailer > <mark-played-items enabled="no" suppress-cds-updates="yes" > <string mode="prepend" >*</string > </mark-played-items > </extended-runtime-options > </server > <import hidden-files="no" > <filesystem-charset >UTF-8</filesystem-charset > <metadata-charset >UTF-8</metadata-charset > <playlist-charset >UTF-8</playlist-charset > <scripting script-charset="UTF-8" > <common-script >/usr/share/mediatomb/js/common.js</common-script > <playlist-script >/usr/share/mediatomb/js/playlists.js</playlist-script > <virtual-layout type="builtin" > <import-script >/usr/share/mediatomb/js/import.js</import-script > <dvd-script >/usr/share/mediatomb/js/import-dvd.js</dvd-script > </virtual-layout > </scripting > <mappings > <extension-mimetype ignore-unknown="no" > <map from="mp3" to="audio/mpeg"/ > <map from="ogg" to="application/ogg"/ > <map from="asf" to="video/x-ms-asf"/ > <map from="asx" to="video/x-ms-asf"/ > <map from="wma" to="audio/x-ms-wma"/ > <map from="wax" to="audio/x-ms-wax"/ > <map from="wmv" to="video/x-ms-wmv"/ > <map from="wvx" to="video/x-ms-wvx"/ > <map from="wm" to="video/x-ms-wm"/ > <map from="wmx" to="video/x-ms-wmx"/ > <map from="m3u" to="audio/x-mpegurl"/ > <map from="pls" to="audio/x-scpls"/ > <map from="flv" to="video/x-flv"/ > <!-- <map from="mkv" to="video/x-matroska"/ > <map from="mka" to="audio/x-matroska"/ > -- > <map from="mka" to="audio/x-msaudio"/ > <map from="mkv" to="video/x-msvideo"/ > <map from="avi" to="video/divx"/ > <map from="m2ts" to="video/mpeg"/ > <map from="srt" to="video/subtitle"/ > <map from="sub" to="video/subtitle"/ > <map from="vob" to="video/mpeg"/ > <map from="ts" to="video/mpeg"/ > <map from="mp4" to="video/avc"/ > </extension-mimetype > <mimetype-upnpclass > <map from="audio/*" to="object.item.audioItem.musicTrack"/ > <map from="video/*" to="object.item.videoItem"/ > <map from="image/*" to="object.item.imageItem"/ > <map from="application/ogg" to="object.item.audioItem.musicTrack"/ > </mimetype-upnpclass > <mimetype-contenttype > <treat mimetype="audio/mpeg" as="mp3"/ > <treat mimetype="application/ogg" as="ogg"/ > <treat mimetype="audio/x-flac" as="flac"/ > <treat mimetype="image/jpeg" as="jpg"/ > <treat mimetype="audio/x-mpegurl" as="playlist"/ > <treat mimetype="audio/x-scpls" as="playlist"/ > <treat mimetype="audio/x-wav" as="pcm"/ > <treat mimetype="audio/L16" as="pcm"/ > <treat mimetype="video/x-msvideo" as="avi"/ > <treat mimetype="video/mp4" as="mp4"/ > <treat mimetype="audio/mp4" as="mp4"/ > <treat mimetype="application/x-iso9660" as="dvd"/ > <treat mimetype="application/x-iso9660-image" as="dvd"/ > <treat mimetype="video/x-matroska" as="mkv"/ > <treat mimetype="audio/x-matroska" as="mka"/ > </mimetype-contenttype > </mappings > <online-content ><!-- Make sure to setup a transcoding profile for flv -- > <YouTube enabled="no" refresh="28800" update-at-start="no" purge-after="604800" racy-content="exclude" format="flv" hd="no" > <favorites user="mediatomb"/ > <standardfeed feed="most_viewed" time-range="today"/ > <playlists user="mediatomb"/ > <uploads user="mediatomb"/ > <standardfeed feed="recently_featured" time-range="today"/ > </YouTube > <Weborama enabled="no" refresh="28800" update-at-start="no" > <playlist name="Active" type="playlist" mood="active"/ > <playlist name="Metal" type="playlist" > <filter > <genres >metal</genres > </filter > </playlist > </Weborama > <AppleTrailers enabled="no" refresh="43200" update-at-start="no" resolution="640"/ > </online-content > </import > <transcoding enabled="no" > <mimetype-profile-mappings > <transcode mimetype="video/x-flv" using="vlcmpeg"/ > <transcode mimetype="application/ogg" using="vlcmpeg"/ > <transcode mimetype="application/ogg" using="oggflac2raw"/ > <transcode mimetype="audio/x-flac" using="oggflac2raw"/ > </mimetype-profile-mappings > <profiles > <profile name="oggflac2raw" enabled="no" type="external" > <mimetype >audio/L16</mimetype > <accept-url >no</accept-url > <first-resource >yes</first-resource > <accept-ogg-theora >no</accept-ogg-theora > <agent command="ogg123" arguments="-d raw -o byteorder:big -f %out %in"/ > <buffer size="1048576" chunk-size="131072" fill-size="262144"/ > </profile > <profile name="vlcmpeg" enabled="no" type="external" > <mimetype >video/mpeg</mimetype > <accept-url >yes</accept-url > <first-resource >yes</first-resource > <accept-ogg-theora >yes</accept-ogg-theora > <agent command="vlc" arguments="-I dummy %in --sout #transcode{venc=ffmpeg,vcodec=mp2v,vb=4096,fps=25,aenc=ffmpeg,acodec=mpga,ab=192,samplerate=44100,channels=2}:standard{access=file,mux=ps,dst=%out} vlc:quit"/ > <buffer size="14400000" chunk-size="512000" fill-size="120000"/ > </profile > </profiles > </transcoding > </config >
3. Монтирование NTFS тома
Так как система с двойной загрузкой, данные храним на диске NTFS. Для монтирования автоматически добавляем в /etc/fstab. Узнать UUID командой blkid.
UUID=68B8DC89B8DC5762 /media/storage1 ntfs nosuid,nodev,noexec,uid=1000,gid=131,umask=000,user,auto,locale=ru_RU.UTF-8 0 2
4. Перекодировка тегов MP3-файлов в UTF8
В командной строке, где лежат файлы выполнить.
find -iname '*.mp3' -print0 | xargs -0 mid3iconv -eCP1251 --remove-v1
Удобная утилита для обработки тегов EasyTAG. Как пользоваться смотри здесь.
5. Установка драйвера Archer T4UH (Wi-Fi USB Adapter, rtl8812AU)
Драйвера в ядре нет. Установка проста. Должны быть установлены пакеты для компиляции.
sudo apt-get install build-essential cd ~ git clone https://github.com/abperiasamy/rtl8812AU_8821AU_linux.git cd rtl8812AU_8821AU_linux make sudo make install
Перегружаемся, все работает автоматом (взято отсюда)
четверг, 30 апреля 2015 г.
unison
взято
документация
доступно расписано
Для Debian 7
apt-get install unison
useradd -m -s /bin/bash -c "operator" -G имя_группы имя_учетки
Для Centos 5.x
ищем пакет unison, версия unison должна совпадать на обоих хостах
wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/tworkemon/CentOS_CentOS-5/i386/unison-2.40.63-6.2.i386.rpm
rpm -ivh unison-2.40.63-6.2.i386.rpm
ssh
на одном хосте (I)
ssh-keygen -t dsa
на другом (II) из cat ~/.ssh/id_dsa.pub (I хоста)
cat >> ~/.ssh/authorized_keys
или
ssh-copy-id -i $HOME/.ssh/id_dsa.pub root@192.168.3.111
Проверяем возможность зайти без пароля c I на II
ssh root@91.201.53.227
А для того, чтобы полностью автоматизировать процесс конфигурации, необходимо создать задание для планировщика cron, выполнив команду crontab -e и напечатав, например, следующую строку:
* */1 * * * /usr/bin/unison &> /dev/null
После этого синхронизация каталогов на заданных серверах будет выполняться каждый час.
.unison/default.prf
Комментарии должны сделать самообъяснение файла, за исключением директив пути. Если Вы не укажите путь директивы, то каталоги в корневой директивы будут синхронизированы. Если указать путь директивы, то пути относительно корневого пути (например, root = /var/www and path = current преобразуется в /var/www/current ), и только эти подкаталоги будут синхронизированы, а не весь каталог, заданный в корне директивы.
Make your home directory the root of the synchronization, but tell Unison to synchronize only some of the files and subdirectories within it on any given run. This can be accomplished by using the -path switch on the command line:
документация
доступно расписано
Для Debian 7
apt-get install unison
useradd -m -s /bin/bash -c "operator" -G имя_группы имя_учетки
Для Centos 5.x
ищем пакет unison, версия unison должна совпадать на обоих хостах
wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/tworkemon/CentOS_CentOS-5/i386/unison-2.40.63-6.2.i386.rpm
rpm -ivh unison-2.40.63-6.2.i386.rpm
ssh
на одном хосте (I)
ssh-keygen -t dsa
на другом (II) из cat ~/.ssh/id_dsa.pub (I хоста)
cat >> ~/.ssh/authorized_keys
или
ssh-copy-id -i $HOME/.ssh/id_dsa.pub root@192.168.3.111
Проверяем возможность зайти без пароля c I на II
ssh root@91.201.53.227
А для того, чтобы полностью автоматизировать процесс конфигурации, необходимо создать задание для планировщика cron, выполнив команду crontab -e и напечатав, например, следующую строку:
* */1 * * * /usr/bin/unison &> /dev/null
После этого синхронизация каталогов на заданных серверах будет выполняться каждый час.
.unison/default.prf
Комментарии должны сделать самообъяснение файла, за исключением директив пути. Если Вы не укажите путь директивы, то каталоги в корневой директивы будут синхронизированы. Если указать путь директивы, то пути относительно корневого пути (например, root = /var/www and path = current преобразуется в /var/www/current ), и только эти подкаталоги будут синхронизированы, а не весь каталог, заданный в корне директивы.
Make your home directory the root of the synchronization, but tell Unison to synchronize only some of the files and subdirectories within it on any given run. This can be accomplished by using the -path switch on the command line:
unison /home/username ssh://remotehost//home/username -path sharedThe -path option can be used as many times as needed, to synchronize several files or subdirectories:
unison /home/username ssh://remotehost//home/usernameThese\
-path shared\
-path pub\
-path .netscape/bookmarks.html
-path
arguments can also be put in your preference file.
See the Preferences section for an example.
суббота, 3 ноября 2012 г.
Создание LVM (ещё раз)
Диск нужно
инициализировать:
Для нескольких дисков одновременно
Диски нужно инициализировать:
Активация группы томов:
# pvcreate /dev/sdb
# vgcreate -s 16M vg0sd /dev/sdb
# lvcreate -l 100%FREE -n lv0sd vg0sd
# mkfs.ext4 /dev/vg0sd/lv0sd
или
# mkfs.ext4 -b4096 -m0 /dev/vg0sd/lv0sd
----------------------------------------------
посмотреть pvdisplay или vgdisplay
# pvdisplay
--- Physical volume ---
PV Name /dev/sdb1
VG Name vg02
PV Size 279.46 GB / not usable 1.63 MB
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 71541
Free PE 0
Allocated PE 71541
PV UUID ieXhsc-Yw7c-mGM4-pWaS-eq1K-YOUT-pFkN0h
--- Physical volume ---
PV Name /dev/hda2
VG Name VolGroup00
PV Size 74.43 GB / not usable 22.62 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 2381
Free PE 0
Allocated PE 2381
PV UUID JD6jbO-OeDL-RzJy-OFW5-NnRD-Uzng-JyAcUW
О LVM по русски
--------------------------------------
--------------------------------------
Чтоб сделать подключение диска постоянным, надо прописать в файл /etc/fstab строку с идентификатором раздела и другими параметрами.
Идентификатор устройства узнаем командой:
blkid
Далее откроем привычным редактором файл /etc/fstab, например так:
vi /etc/fstab
и впишем туда строку следующего вида:
UUID=ca7e6047-670a-428f-a2da-452e8b00015b /photos/ ext4 users,defaults,umask=0 0 0
# pvcreate /dev/sdbСоздать группу томов (с размером Physical extents равным 16MB):
# vgcreate -s 16M vg0 /dev/sdb
Для нескольких дисков одновременно
Диски нужно инициализировать:
# pvcreate /dev/sdb /dev/sdсСоздать группу томов (с размером Physical extents равным 16MB):
# vgcreate -s 16M vg0 /dev/sdb /dev/sdс
Активация группы томов:
# vgscan # vgchange -ay
# pvcreate /dev/sdb
# vgcreate -s 16M vg0sd /dev/sdb
# lvcreate -l 100%FREE -n lv0sd vg0sd
# mkfs.ext4 /dev/vg0sd/lv0sd
или
# mkfs.ext4 -b4096 -m0 /dev/vg0sd/lv0sd
----------------------------------------------
- В виртуальных средах для LVM лучше использовать диск без создания разделов.
- По умолчанию размер Physical extents size (PE size) равен 4 MB (в старой версии LVM было ограничение на размер LV из-за максимального числа PE 64k в LV.
т.е. max размер LV = (PE size) * 64k )
увеличить
$ lvextend -l 10239 /dev/POSTGRES/pgbases $ umount /dev/POSTGRES/pgbases$ resize_reiserfs /dev/POSTGRES/pgbases$ mount /dev/POSTGRES/pgbases
уменьшить
$ umount /dev/POSTGRES/pgbases $ resize_reiserfs -s-15G /dev/POSTGRES/pgbases $ lvreduce -L-15G /dev/POSTGRES/pgbases $ pvresize --setphusicalvolumesize 25G /dev/sdb $ mount /dev/POSTGRES/pgbases-
посмотреть pvdisplay или vgdisplay
# pvdisplay
--- Physical volume ---
PV Name /dev/sdb1
VG Name vg02
PV Size 279.46 GB / not usable 1.63 MB
Allocatable yes (but full)
PE Size (KByte) 4096
Total PE 71541
Free PE 0
Allocated PE 71541
PV UUID ieXhsc-Yw7c-mGM4-pWaS-eq1K-YOUT-pFkN0h
--- Physical volume ---
PV Name /dev/hda2
VG Name VolGroup00
PV Size 74.43 GB / not usable 22.62 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 2381
Free PE 0
Allocated PE 2381
PV UUID JD6jbO-OeDL-RzJy-OFW5-NnRD-Uzng-JyAcUW
О LVM по русски
--------------------------------------
пример, на домашней машине: pvcreate /dev/sda1 vgcreate vg0q1 /dev/sda1 pvscan vgscan lvcreate -l 100%FREE -n Vol1 vg01 mkfs.ext3 /dev/vg01/Vol1 lvdisplay mkdir /mnt/vol1 vgscan vgchange -ay mount /dev/vg01/Vol1 /mnt/vol1 vgdisplay ----- fdisk /dev/sda fdisk /dev/sdb pvcreate /dev/sda1 pvcreate /dev/sdb1 pvscan vgcreate vg01 /dev/sda1 vgcreate vg02 /dev/sdb1 pvscan vgscan lvscan lvcreate -l 100%FREE -n lv03 vg01 lvcreate -l 100%FREE -n lv04 vg02 lvscan vgscan pvscan mkfs.ext3 /dev/vg01/lv03 mkfs.ext3 /dev/vg02/lv04 vgdisplay vg01 vgscan -------------------------------------- pvcreate /dev/sdb vgcreate -s 16M vg0sd /dev/sdb lvcreate -l 100%FREE -n lv0sd vg0sd mkfs.ext4 /dev/vg0sd/lv0sd или mkfs.ext4 -b4096 -m0 /dev/vg0sd/lv0sd
Чтоб сделать подключение диска постоянным, надо прописать в файл /etc/fstab строку с идентификатором раздела и другими параметрами.
Идентификатор устройства узнаем командой:
blkid
Далее откроем привычным редактором файл /etc/fstab, например так:
vi /etc/fstab
и впишем туда строку следующего вида:
UUID=ca7e6047-670a-428f-a2da-452e8b00015b /photos/ ext4 users,defaults,umask=0 0 0
пятница, 21 сентября 2012 г.
Скрипты
В Shell содержатся встроенные переменные, которые значительно упрощают написание скриптов. Рассмотрим некоторые из них: $0 - название скрипта $1,$2,...,$n - параметры, переданные скрипту $# - число параметров, переданных скрипту $? - код возврата последнего процесса $$ - PID текущего процесса (PID - номер процесса в таблице процессов) $! - PID последнего процесса, запущенного в фоновом режиме $@ - список параметров, переданных скрипту $* - все параметры единой строкой Встроенные параметры значительно упрощают всю сложность задач. Пример: проверка существования пользователя $username в системе: #!/bin/sh grep $username /etc/passwd >/dev/null if [ $? -ne 0 ] then echo Пользователь не найден exit 1 fi
вторник, 31 июля 2012 г.
sendmail, белый адрес (список)
Sendmail, настроены dnsbl. Надо принять почту с сервера попавшего в blacklist.
Откроем конкретный адрес per-----ya@o---m.ru
#
#7x.xxx.xx.67 OK
#o---m.ru OK
#Spam:адрес@ FRIEND
#Spam:per-----ya@o---m.ru FRIEND
#Connect:oncokam.ru OK
From:per-----ya@o---m.ru OK
#
Откроем конкретный адрес per-----ya@o---m.ru
#
#7x.xxx.xx.67 OK
#o---m.ru OK
#Spam:адрес@ FRIEND
#Spam:per-----ya@o---m.ru FRIEND
#Connect:oncokam.ru OK
From:per-----ya@o---m.ru OK
#
четверг, 19 июля 2012 г.
Редактирование и выборка из файла
Добавить в начало каждой строки символы:
пример
имеем файл со списком ip-адресов, добавить перед ip-адресом команду ping
пример
имеем файл со списком ip-адресов, добавить перед ip-адресом команду ping
cat ip_rostelecom.txt | awk '{ print "ping -c 1 " $0 }' > ping_rostel
chmod +x ping_rostel
./ping_rostel | grep -C1 " 100% packet loss"
пятница, 13 июля 2012 г.
SARG Centos 6.2 min
Установка
После установки, добавить в sarg.conf
(иначе не создаются индексы - index.html)
#graph_font /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
graph_font /etc/sarg/fonts/DejaVuSans.ttf
(иначе не подгружаются стили css)
#external_css_file /var/www/sarg/sarg.css
external_css_file /sarg/sarg.css
Диагностика работы:
# sarg -x
yum install wget
yum install gd
wget http://pkgs.repoforge.org/sarg/sarg-2.3.1-1.el6.rft.x86_64.rpm
rpm -ivh sarg-2.3.1-1.el6.rft.x86_64.rpm
chkconfig --list
chkconfig --level 35 squid on
chkconfig --level 35 httpd on
wget http://pkgs.repoforge.org/sarg/sarg-2.3.1-1.el6.rft.x86_64.rpm
rpm -ivh sarg-2.3.1-1.el6.rft.x86_64.rpm
chkconfig --list
chkconfig --level 35 squid on
chkconfig --level 35 httpd on
(иначе не создаются индексы - index.html)
#graph_font /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
graph_font /etc/sarg/fonts/DejaVuSans.ttf
(иначе не подгружаются стили css)
#external_css_file /var/www/sarg/sarg.css
external_css_file /sarg/sarg.css
Диагностика работы:
# sarg -x
понедельник, 9 июля 2012 г.
Памятка Linux
Если возникли проблемы
При загрузке не монтируется том или другие проблемыесли корень в режиме ro
mount -o rw,remount /
Загрузка в однопользовательский режим из GRUB
жмем [a] и добавить в конец строки single.
Переход в однопользовательский режим
telinit 1
----------------------------------------------------------------------------------------------selinux
для восстановления атрибутов selinux, создать в корне тома файл .autorelabel
(selinux должен быть в enforced mode)
----------------------------------------------------------------------------------------------
RAID
просмотр состояния
mdadm --detail /dev/md0
cat /proc/mdstat
watch cat /proc/mdstat
Добавить диск вместо неисправного
mdadm --add /dev/md0 /dev/sda2
Объявить диск в RAID неисправным
mdadm --fail /dev/md0 /dev/sdc
Удалить из RAID неисправный диск
Объявить диск в RAID неисправным
mdadm --fail /dev/md0 /dev/sdc
Удалить из RAID неисправный диск
mdadm --manage --remove /dev/md0 /dev/sdc
Похоже GRUB не захотел работать с raid v1.2 Для /boot создал raid v1.0 ссылка
mdadm --create /dev/md1 --level=1 --raid-disks=2 --metadata=1.0 --assume-clean missing /dev/sdb1
ссылка
Похоже GRUB не захотел работать с raid v1.2 Для /boot создал raid v1.0 ссылка
mdadm --create /dev/md1 --level=1 --raid-disks=2 --metadata=1.0 --assume-clean missing /dev/sdb1
ссылка
----------------------------------------------------------------------------------------------
GRUB
Сделать второй диск RAID загрузочным
(root@server) # grub
grub> find /grub/stage1
(hd0,0)
(hd1,0)
grub> device (hd0) /dev/sdb
grub> find /grub/stage1
(hd0,0)
(hd1,0)
grub> device (hd0) /dev/sdb
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
grub> setup (hd0)
grub> quit
sysctl
Посмотреть все параметры sysctl выполнить команду sysctl -a
Для включения IP форвардинга внести в файл /etc/sysctl.conf:
# Controls IP packet forwarding net.ipv4.ip_forward = 1применить изменения, без перезагрузки ОС, можно командой :
/sbin/sysctl -p----------------------------------------------------------------------------------------------
find
find /etc -ctime -10 -mtime -10 -print
find /etc -ctime -10 -mtime -10 -ls
find /etc -mtime -10 -ls
Построитель команды 'find' http://find.unixpin.com/ru/
Просмотр размера подкаталогов в текущем каталоге
find . -maxdepth 1 -type d -exec du -hs {} \;
find . -maxdepth 1 -type d -exec du -hsb {} \; | sort -n
----------------------------------------------------------------------------------------------
Настройка файловой системы
ВНИМАНИЕ! Всё нижеописанное делается на ОТМОНТИРОВАННОЙ файловой системе!
Здесь
нужно ещё отметить тот факт, что при форматировании в ext3 и ext4, для
пользователя root резервируется 5% места. Чтобы убрать 5 процентное
резервирование места для root в ext3 и ext4 нужно дать команду:
tune2fs -m 0 /dev/sdb1
После этого простому пользователю будет доступно всё место.
Так же имеет место быть принудительная проверка диска после некоторого количества загрузок. Если вам это не нужно, процедуру можно отменить командой:
tune2fs -c 0 /dev/sda1
Либо сделать так, чтобы проверка происходила реже, например, 1 раз в 100 загрузок:
tune2fs -c 100 /dev/sda1
Просмотреть свойства файловой системы можно командой
tune2fs -l /dev/sda1
----------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------
rpm -qi "имя" (без версии) --- Получение информации о пакете.
rpm -ql "имя" --- Список файлов составляющих данный пакет.
rpm -qR "имя" --- Информации о зависимостях.
rpm -q --whatprovides "зависимость" --- Узнать, какому из пакетов принадлежат зависимости.
rpm -ihv "полное имя пакета" --- Сама установка.
rpm -ihv --nodeps "полное имя пакета" --- Установка пакета без проверки зависимостей, при такой установке возможны проблемы с работой приложения, или ограниченная функциональность.
Возможно установить несколько пакетов за раз, это может быть полезно при установке взаимнозависимых пакетов. Для этого просто после rpm -ihv перечислите через пробел полные имена пакетов.
Если после установки программы вы обнаружите какие-то "неизвестные" файлы, то вы всегда сможите проверить какому пакету они принадлежат.
rpm -qf "полный путь к файлу", например, rpm -qf /usr/bin/xine
rpm -qa --Вывести в консоли весь список установленных пакетов, или зайти в /var/log/rpmpkgs
rpm -e "имя" --- Удаление пакета.
Если при установке *.src.rpm выдается сообщение
unpacking of archive failed on file /cpio: MD5 sum mismatch
использовать ключ --nomd5
$rpm --nomd5 -ihv *.rpm
----------------------------------------------------------------------------------------------
wget http://arm.koji.fedoraproject.org//packages/ncpfs/2.2.6/13.fc12/src/ncpfs-2.2.6-13.fc12.src.rpm
rpm -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpm --nomd5 -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpmbuild -ba ncpfs.spec (получаем ipxutils-2.2.6-13.i386.rpm и ncpfs-2.2.6-13.i386.rpm ...)
rpm -ivh -- nodeps ncpfs-2.2.6-13.i386.rpm
----------------------------------------------------------------------------------------------
mrtg
indexmaker --output /var/www/mrtg/index.html --columns=1 /etc/mrtg/mrtg.cfg----------------------------------------------------------------------------------------------
rpm
rpm -qa --qf "%{NAME}\n" --- список установленных пакетов.
rpm -qi "имя" (без версии) --- Получение информации о пакете.
rpm -ql "имя" --- Список файлов составляющих данный пакет.
rpm -qR "имя" --- Информации о зависимостях.
rpm -q --whatprovides "зависимость" --- Узнать, какому из пакетов принадлежат зависимости.
rpm -ihv "полное имя пакета" --- Сама установка.
rpm -ihv --nodeps "полное имя пакета" --- Установка пакета без проверки зависимостей, при такой установке возможны проблемы с работой приложения, или ограниченная функциональность.
Возможно установить несколько пакетов за раз, это может быть полезно при установке взаимнозависимых пакетов. Для этого просто после rpm -ihv перечислите через пробел полные имена пакетов.
Если после установки программы вы обнаружите какие-то "неизвестные" файлы, то вы всегда сможите проверить какому пакету они принадлежат.
rpm -qf "полный путь к файлу", например, rpm -qf /usr/bin/xine
rpm -qa --Вывести в консоли весь список установленных пакетов, или зайти в /var/log/rpmpkgs
rpm -e "имя" --- Удаление пакета.
Если при установке *.src.rpm выдается сообщение
unpacking of archive failed on file /cpio: MD5 sum mismatch
использовать ключ --nomd5
$rpm --nomd5 -ihv *.rpm
----------------------------------------------------------------------------------------------
Установка ncpfs в CentOS 5.x
wget http://arm.koji.fedoraproject.org//packages/ncpfs/2.2.6/13.fc12/src/ncpfs-2.2.6-13.fc12.src.rpm
rpm -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpm --nomd5 -ivh ncpfs-2.2.6-13.fc12.src.rpm
rpmbuild -ba ncpfs.spec (получаем ipxutils-2.2.6-13.i386.rpm и ncpfs-2.2.6-13.i386.rpm ...)
rpm -ivh -- nodeps ncpfs-2.2.6-13.i386.rpm
p.s. ipxutils не нужен т.к. nsend отлично работает по tcp/ip
----------------------------------------------------------------------------------------------
POSTIE
# ./postie./postie: error while loading shared libraries: libsasl.so.7: cannot open shared object file: No such file or directory
# cd /usr/lib
# ln -s libsasl2.so.2.0.22 libsasl.so.7
# rpm -qa | grep sasl
cyrus-sasl-devel-2.1.22-6
cyrus-sasl-md5-2.1.22-6
cyrus-sasl-lib-2.1.22-6
cyrus-sasl-plain-2.1.22-6
cyrus-sasl-2.1.22-6
yum install compat-libgcc-296
yum install compat-libstdc++-296
----------------------------------------------------------------------------------------------
FIREFOX
оптимизация
NTP
service ntpd stop
ntpdate 192.168.x.x
service ntpd stop
# cd /usr/lib
# ln -s libsasl2.so.2.0.22 libsasl.so.7
# rpm -qa | grep sasl
cyrus-sasl-devel-2.1.22-6
cyrus-sasl-md5-2.1.22-6
cyrus-sasl-lib-2.1.22-6
cyrus-sasl-plain-2.1.22-6
cyrus-sasl-2.1.22-6
yum install compat-libgcc-296
yum install compat-libstdc++-296
----------------------------------------------------------------------------------------------
FIREFOX
оптимизация
find ~/.mozilla/ -name '*.sqlite' -print -exec sqlite3 {} "VACUUM; REINDEX;" \;----------------------------------------------------------------------------------------------
NTP
service ntpd stop
ntpdate 192.168.x.x
service ntpd stop
- Set the clock manually to the current time.
- Sync the system clock to the current time:
# ntpd -g -q
- Check that the time appears correct:
# date
- Sync the server's hardware clock to the system clock:
# hwclock -wu
- Sync the system clock to the current time:
- Replace the
/etc/localtime
file with a link to the selected timezone:
For example:# ln -snf /usr/share/zoneinfo/<timezone> /etc/localtime
# ln -snf /usr/share/zoneinfo/Europe/Moscow /etc/localtime # ln -snf /usr/share/zoneinfo/UTC /etc/localtime
Подсчитать размер каждого каталога, находящего в уровне вложенности 1 от указанного каталога:
Просмотр сертификата
# echo | openssl s_client -connect fd.ru:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates
issuer= /C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
subject= /CN=vip.rnk.1cont.ru
notBefore=Sep 12 13:41:36 2018 GMT
notAfter=Dec 11 13:41:36 2018 GMT
# echo | openssl s_client -connect www.mail.ru:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates
issuer= /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=GeoTrust RSA CA 2018
subject= /C=RU/L=Moscow/O=LLC Mail.Ru/OU=IT/CN=*.mail.ru
notBefore=Dec 15 00:00:00 2017 GMT
notAfter=Dec 14 12:00:00 2020 GMT
----------------------------------------------------------------------------------------------
# du -d 1 -h /usr/local/www/
1.2M /usr/local/www/apache22
20M /usr/local/www/phpMyAdmin
4.2M /usr/local/www/loganalyzer
25M /usr/local/www/
----------------------------------------------------------------------------------------------Просмотр сертификата
# echo | openssl s_client -connect fd.ru:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates
issuer= /C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
subject= /CN=vip.rnk.1cont.ru
notBefore=Sep 12 13:41:36 2018 GMT
notAfter=Dec 11 13:41:36 2018 GMT
# echo | openssl s_client -connect www.mail.ru:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates
issuer= /C=US/O=DigiCert Inc/OU=www.digicert.com/CN=GeoTrust RSA CA 2018
subject= /C=RU/L=Moscow/O=LLC Mail.Ru/OU=IT/CN=*.mail.ru
notBefore=Dec 15 00:00:00 2017 GMT
notAfter=Dec 14 12:00:00 2020 GMT
----------------------------------------------------------------------------------------------
пятница, 6 июля 2012 г.
Install Open Source VMware Tools on Red Hat Enterprise/CentOS/Scientific Linux 6
Взято отсюда
VMware now makes a repository available for us to install the VMware tools for a variety of Linux distributions including Red Hat, Scientific, CentOS, and Ubuntu. In this example I will install VMware tools on a Red Hat Enterprise/CentOS/Scientific Linux 6 guest running on a VMware ESXi 4.1 host.
First import the VMware repository GPG signing public keys:
Now add the VMware repository. If you’d like you can use the “echo” command below or simply create the file and its contents are listed below it. There are other packages available in the repository for other Linux distros, architectures, and ESX host versions. Again I am using the Red Hat Enterprise 6/VMware ESXi 4.1 version.
Now we can list the contents of the new repo file:
Here is what the contents should look like:
It is now time to run the actual install of VMware tools. In my case I am installing on a server system without X11 graphical interface so this is the minimum install:
If you are installing on a workstation or server with X11 installed and would like the VMware display adapter and mouse drivers loaded use this command. The install will be a bit bigger:
You are now up and running with VMware tools!
VMware now makes a repository available for us to install the VMware tools for a variety of Linux distributions including Red Hat, Scientific, CentOS, and Ubuntu. In this example I will install VMware tools on a Red Hat Enterprise/CentOS/Scientific Linux 6 guest running on a VMware ESXi 4.1 host.
First import the VMware repository GPG signing public keys:
# rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-DSA-KEY.pub
# rpm --import http://packages.vmware.com/tools/keys/VMWARE-PACKAGING-GPG-RSA-KEY.pub
Now add the VMware repository. If you’d like you can use the “echo” command below or simply create the file and its contents are listed below it. There are other packages available in the repository for other Linux distros, architectures, and ESX host versions. Again I am using the Red Hat Enterprise 6/VMware ESXi 4.1 version.
# echo -e "[vmware-tools]\nname=VMware Tools\nbaseurl=http://packages.vmware.com\
/tools/esx/4.1latest/rhel6/\$basearch\nenabled=1\ngpgcheck=1" > /etc/yum.repos.d\
/vmware-
tools.repo
Now we can list the contents of the new repo file:
[root@server1 ~]# cat /etc/yum.repos.d/vmware-tools.repo
Here is what the contents should look like:
[vmware-tools]
name=VMware Tools
baseurl=http://packages.vmware.com/tools/esx/4.1latest/rhel6/$basearch
enabled=1
gpgcheck=1
It is now time to run the actual install of VMware tools. In my case I am installing on a server system without X11 graphical interface so this is the minimum install:
# yum -y install vmware-open-vm-tools-nox
If you are installing on a workstation or server with X11 installed and would like the VMware display adapter and mouse drivers loaded use this command. The install will be a bit bigger:
# yum -y install vmware-open-vm-tools
You are now up and running with VMware tools!
суббота, 16 июня 2012 г.
Создание LVM
Просмотр
lvscan
vgscan
pvscan
pvdisplay
vgdisplay
lvdisplay
Создание
vgcreate VolGroup01 /dev/sdb1
или
vgcreate -s 32Mg VolGroup01 /dev/sdb1
lvcreate -l 100%FREE -n lv_var VolGroup01
Удаление
lvscan
lvremove -f /dev/VolGroup01/lv_var
vgscan
vgremove -f VolGroup01
Пример: перенос каталога /var на другой том
fdisk /dev/sdb
создаем раздел, тип раздела 8e (можно и не создавать, но если не создавать, многие программы видят диск как не размеченный)
pvcreate /dev/sdb1
vgcreate VolGroup01 /dev/sdb1
lvcreate -l 100%FREE -n lv_var VolGroup01
mkfs.ext4 /dev/VolGroup01/lv_vartelinit 1
mount /dev/VolGroup01/lv_var /media
cp -pRdf /var/* /media
mv /var var_
mkdir /var
mkdir /var
правим /etc/fstab
/dev/mapper/VolGroup01-lv_var /var ext4 defaults 1 2
touch /media/.autorelabel
перегружаемся и проблема, selinux не дает загрузиться забыл создать .autorelabel
надо попробовать
cd /var
tar -cf - * | (cd /media; tar -xvpf -)
tar -cf - * | (cd /media; tar -xvpf -)
Если возникли проблемы
------------------------------------------------------------------------------------------------------link
понедельник, 19 марта 2012 г.
Оптимизация настроек драйверов для карт Intel
Оптимизация настроек драйверов для карт Intel
TCP segmentation offload (TSO)
Позволяет разгрузить процессор путем разделения больших пакетов и отправки их на обработку к сетевой карте. Если эта функция поддерживается можно включить ее посредством ethtool
# ethtool -K eth0 tso on # ethtool -k eth0 Offload parameters for eth0: rx-checksumming: on tx-checksumming: on scatter-gather: on tcp segmentation offload: on udp fragmentation offload: off generic segmentation offload: off # dmesg |grep TSO e1000: eth0: e1000_set_tso: TSO is Enabled
Ситуация: на одном хосте VMWARE ESX4.0 стоит две гостевых системы с OS CentOS 5.8, на одной поднят FTP-сервер, на другой шлюз в интернет iptables, NAT, запрет фрагментации пакетов. Скачивание с FTP из вне происходит крайне медленно, закачка нормально. Анализ пакетов показал, что с FTP сервера frame length при скачивании многим больше 1514 байт, шлюз не может их фрагментировать (т.к. вкл запрет на фрагментацию), соответственно пока они договариваются о размере фрейма уходит много времени, чем вызываются жуткие "тормоза" при скачивании. MTU на всех интерфейсах выставлено 1500. Вопрос: от чего это происходит ? Непонятно.
Временное решение: перенес FTP сервер на другой хост с VMWare ESX4.0.
Дальнейший анализ показал, что frame length больше 1514 байт ходят только внутри хоста VMWare ESX4.0 (в виртуальном коммутаторе), когда они покидают физический интерфейс и попадают в физический коммутатор то размер фрейма становится нормальным - 1514 байт. Такое ощущение, что их фрагментирует сам гипервизор. Вопрос открытый: отчего фрейм большого размера?
Попробовал варианты
1)
Поменял тип адаптера с Flexible на E1000 - не помогло.
2)
[root@testhost /]# ethtool -K eth0 tso off
[root@testhost /]# dmesg |grep TSO
e1000: eth0: e1000_set_tso: TSO is Enabled
e1000: eth0: e1000_set_tso: TSO is Disabled
[root@testhost /]# dmesg |grep TSO
e1000: eth0: e1000_set_tso: TSO is Enabled
e1000: eth0: e1000_set_tso: TSO is Disabled
[root@testhost /]# ethtool -k eth0
Offload parameters for eth0:
Cannot get device udp large send offload settings: Operation not supported
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: off
udp fragmentation offload: off
generic segmentation offload: off
generic-receive-offload: off
Offload parameters for eth0:
Cannot get device udp large send offload settings: Operation not supported
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: off
udp fragmentation offload: off
generic segmentation offload: off
generic-receive-offload: off
Вроде помогло.
[root@ftp rc.d]# cat rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
ethtool -K eth0 tso off &
понедельник, 26 декабря 2011 г.
Перенос группы томов LVM с одного диска на другой
[root@w1 ~]# fdisk -l
Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1044 8281507+ 8e Linux LVM
Disk /dev/sdb: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 13 104391 83 Linux
/dev/sdb2 14 1044 8281507+ 8e Linux LVM
[root@w1 ~]# pvscan
PV /dev/sda2 VG VolGroup00 lvm2 [14.97 GB / 7.09 GB free]
Total: 1 [14.97 GB] / in use: 1 [14.97 GB] / in no VG: 0 [0 ]
[root@w1 ~]#
диск sda "кривой" видимо сначала я его создал размером 15GB, а затем уменьшил до 8 GB
С помощью fdisk на втором диске создал аналогичные разделы как на первом.
Затем создаем физический том (physical volume) на втором диске
[root@w1 ~]# pvcreate /dev/sdb2
Добавляем в группу томов наш новый физический том
[root@w1 ~]# vgextend VolGroup00 /dev/sdb2
Volume group "VolGroup00" successfully extended
Перенесем данные с раздела /dev/sda2 на /dev/sdb2
[root@w1 ~]# pvmove /dev/sda2
И удалим его из группы томов
[root@w1 ~]# vgreduce VolGroup00 /dev/sda2
Removed "/dev/sda2" from volume group "VolGroup00"
А затем добавим заново
[root@w1 ~]# vgextend VolGroup00 /dev/sda2
[root@w1 ~]# pvmove /dev/sdb2
Перенесем данные с раздела /dev/sdb2 на /dev/sda2 (вернем обратно)
[root@w1 ~]# vgreduce VolGroup00 /dev/sdb2
Removed "/dev/sdb2" from volume group "VolGroup00"
Второй винт можно убрать
Disk /dev/sda: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2 14 1044 8281507+ 8e Linux LVM
Disk /dev/sdb: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdb1 1 13 104391 83 Linux
/dev/sdb2 14 1044 8281507+ 8e Linux LVM
[root@w1 ~]# pvscan
PV /dev/sda2 VG VolGroup00 lvm2 [14.97 GB / 7.09 GB free]
Total: 1 [14.97 GB] / in use: 1 [14.97 GB] / in no VG: 0 [0 ]
[root@w1 ~]#
диск sda "кривой" видимо сначала я его создал размером 15GB, а затем уменьшил до 8 GB
С помощью fdisk на втором диске создал аналогичные разделы как на первом.
Затем создаем физический том (physical volume) на втором диске
[root@w1 ~]# pvcreate /dev/sdb2
Добавляем в группу томов наш новый физический том
[root@w1 ~]# vgextend VolGroup00 /dev/sdb2
Volume group "VolGroup00" successfully extended
Перенесем данные с раздела /dev/sda2 на /dev/sdb2
[root@w1 ~]# pvmove /dev/sda2
И удалим его из группы томов
[root@w1 ~]# vgreduce VolGroup00 /dev/sda2
Removed "/dev/sda2" from volume group "VolGroup00"
А затем добавим заново
[root@w1 ~]# vgextend VolGroup00 /dev/sda2
[root@w1 ~]# pvmove /dev/sdb2
Перенесем данные с раздела /dev/sdb2 на /dev/sda2 (вернем обратно)
[root@w1 ~]# vgreduce VolGroup00 /dev/sdb2
Removed "/dev/sdb2" from volume group "VolGroup00"
Второй винт можно убрать
четверг, 3 ноября 2011 г.
Linux - напоминалка
Анализ сетевой активности:
iptraf
iftop
nload
Сканирование сети, пинг нескольких хостов
nmap -sS -p- -PS80,22 -n -T4 -vvv --reason google.com
-sS — посылать только syn и считать порт открытым если получен syn_ack
-p- — сканировать все 65 тысяч портов, потому как по дефолту сканируются только популярные до 1024
-PS80,22 — принимать решение о том что хост онлайн не на основании icmp echo, а на основании доступности tcp-порта
-n — не делать DNS-резолв, типа выяснения PTR записей и прочего
-T4 — большая скорость, маленькие тайминги (если канал у цели и себя быстрый)
-vvv — максимум verbosity, так найденные порты будут показаны по ходу сканирования а не после завершения
--reason — показывать почему было принято решение о таком состоянии порта
dd if=/dev/zero of=/dev/sda
iptraf
iftop
nload
Сканирование сети, пинг нескольких хостов
nmap -sP 192.168.1.2-5
nmap -sS -p- -PS80,22 -n -T4 -vvv --reason google.com
-sS — посылать только syn и считать порт открытым если получен syn_ack
-p- — сканировать все 65 тысяч портов, потому как по дефолту сканируются только популярные до 1024
-PS80,22 — принимать решение о том что хост онлайн не на основании icmp echo, а на основании доступности tcp-порта
-n — не делать DNS-резолв, типа выяснения PTR записей и прочего
-T4 — большая скорость, маленькие тайминги (если канал у цели и себя быстрый)
-vvv — максимум verbosity, так найденные порты будут показаны по ходу сканирования а не после завершения
--reason — показывать почему было принято решение о таком состоянии порта
USB
lsusb
cat /proc/bus/usb/devices
Восстановление флешки
lsusb
cat /proc/bus/usb/devices
посмотреть в папке /dev/disk/by-id соответсвие
ls -l
total 0
lrwxrwxrwx 1 root root 9 Nov 6 19:51 ata-ST360014A_3JV37K2N -> ../../hda
lrwxrwxrwx 1 root root 10 Nov 6 19:51 ata-ST360014A_3JV37K2N-part1 -> ../../hda1
lrwxrwxrwx 1 root root 10 Nov 6 19:51 ata-ST360014A_3JV37K2N-part2 -> ../../hda2
lrwxrwxrwx 1 root root 9 Nov 6 19:51 ata-ST380011A_5JVS1FJW -> ../../hdd
lrwxrwxrwx 1 root root 9 Jan 29 08:20 usb-TOSHIBA_MK3263GSXN_20A02FFFFFFF -> ../../sda
dd if=/dev/zero of=/dev/sda
hdparm /dev/sda
fdisk /dev/sda
mkfs.vfat -F 32 /dev/sda1
понедельник, 8 августа 2011 г.
mgetty
Hi,
I have it in /etc/init/ttyS0.conf:
stop on runlevel [016]
start on stopped rc RUNLEVEL=[2345]
respawn
instance ttyS0
exec /sbin/mgetty ttyS0
I have it in /etc/init/ttyS0.conf:
stop on runlevel [016]
start on stopped rc RUNLEVEL=[2345]
respawn
instance ttyS0
exec /sbin/mgetty ttyS0
четверг, 7 июля 2011 г.
вторник, 21 июня 2011 г.
Конвертация файлов из одной кодировки в другую.
Перекодировать файл
iconv -t CP1251 -f UTF8 -o index.php.2 index.php
Перекодировать все файлы в текущем каталоге
команда не только меняет кодировку, но и убирает <CR><NL> ('\r\n' заменяет на '\n')
iconv -t CP1251 -f UTF8 -o index.php.2 index.php
Перекодировать все файлы в текущем каталоге
find . -type f -exec recode CP1251..UTF8 {} \;
команда не только меняет кодировку, но и убирает <CR><NL> ('\r\n' заменяет на '\n')
суббота, 23 апреля 2011 г.
Репозитории CentOS
>Посоветуйте, какие репозитории CentOS лучше использовать
Советую использовать
Советую использовать
При разумной политике приоритетов, разумеется (yum-priorities).
yum repolist Loaded plugins: downloadonly, fastestmirror, priorities, security repo id repo name status addons CentOS-5 - Addons enabled: 0 base CentOS-5 - Base enabled: 3 434 centosplus CentOS-5 - Plus enabled: 141 contrib CentOS-5 - Contrib enabled: 0 elrepo ElRepo.org Community Enterprise Linux Repository - el5 enabled: 221 epel Extra Packages for Enterprise Linux 5 - x86_64 enabled: 5 433 extras CentOS-5 - Extras enabled: 292 rpmforge Red Hat Enterprise 5 - RPMforge.net - dag enabled: 10 198 updates CentOS-5 - Updates enabled: 81 repolist: 19 800
yum install -y yum-priorities
Если команда отсутствует в системе (не установлен пакет), посмотреть к какому пакету принадлежит.
yum provides */scp
пятница, 15 апреля 2011 г.
Как узнать название м.платы
dmidecode -t baseboard
dmidecode -t baseboard
# dmidecode 2.10
SMBIOS 2.3 present.
Handle 0x0002, DMI type 2, 8 bytes
Base Board Information
Manufacturer: Gigabyte Technology Co., Ltd.
Product Name: GA-K8NE
Version: x.x
Serial Number: <BAD INDEX>
dmidecode -t baseboard
# dmidecode 2.10
SMBIOS 2.3 present.
Handle 0x0002, DMI type 2, 8 bytes
Base Board Information
Manufacturer: Gigabyte Technology Co., Ltd.
Product Name: GA-K8NE
Version: x.x
Serial Number: <BAD INDEX>
Как обновить Centos
yum clean all
yum update glibc\*
yum update yum\* rpm\* pyth\*
yum clean all
yum update mkinitrd nash
yum update selinux\*
yum update
shutdown -r now
yum clean all
yum update glibc\* -y
yum update yum\* rpm\* pyth\* -y
yum clean all
yum update mkinitrd nash -y
yum update selinux\* -y
yum update -y
shutdown -r now
yum update glibc\*
yum update yum\* rpm\* pyth\*
yum clean all
yum update mkinitrd nash
yum update selinux\*
yum update
shutdown -r now
yum clean all
yum update glibc\* -y
yum update yum\* rpm\* pyth\* -y
yum clean all
yum update mkinitrd nash -y
yum update selinux\* -y
yum update -y
shutdown -r now
Подписаться на:
Сообщения (Atom)