Generated by All in One SEO v5.0.0.1, this is an llms.txt file, used by LLMs to index the site. # IT blog - notes on a fields Linux system administrators notes. ## Sitemaps - [XML Sitemap](https://itblog.su/sitemap.xml): Contains all public & indexable URLs for this website. ## Записи - [HPE Ethernet 1Gb 4-port 331i Adapter Gen9](https://itblog.su/hpe-ethernet-1gb-4-port-331i-adapter-gen9.html) - HPE Broadcom NX1 Online Firmware Upgrade Utility Linux x86_64 for ProLiant Gen9 server Only This software package contains combo image v20.19.51 rpm2cpio firmware-nic-broadcom-2.29.0-1.1.x86_64.rpm | cpio -idmv cd ./usr/lib/x86_64-linux-gnu/firmware-nic-broadcom-2.29.0-1.1 ./hpsetup Copyright (c) 2021 Hewlett Packard Enterprise Development LP HPE Broadcom NX1 Online Firmware Upgrade Utility for Linux x86_64 - v2.29.0 Found HPE Ethernet 1Gb 4-port 331i - [HPE 530FLR-SFP+ firmware](https://itblog.su/hpe-530flr-sfp-firmware.html) - the latest one available on official website is combo image 7.14.79 Version 2.18.44 support.hpe.com Release Date Oct 24, 2016, over the 10 years without an update.. Is you have a vmware you can use CP029553.zip to upgrade to the combo image v7.14.81 https://downloads.hpe.com/pub/softlib2/software1/sc-linux-fw/p1955087049/v117588/CP029553.zip apt install rpm2cpio rpm2cpio hp-firmware-nic-qlogic-nx2-2.18.44-1.1.x86_64.rpm | cpio -idmv cd ./usr/lib/x86_64-linux-gnu/hp-firmware-nic-qlogic-nx2-2.18.44-1.1 ./hpsetup Copyright - [HP iLo self signed sertificate](https://itblog.su/hp-ilo-self-signed-sertificate.html) - Есть у меня пара HP ProLiant DL360-ых, которые оснащены iLO (это ip-kvm, power management и многое другое через вебморду). так вот, и у того и у другого оказался сертификат с одним и тем же серийником. как следствие firefox не давал зайти. Покупать ssl сертификаты для iLO на мой взгляд глупо, по этому решено было сгенерить - [zfs transfer between servers](https://itblog.su/zfs-transfer-between-servers.html) - zfs snapshot rpool/data/vm-119-disk-0@migration zfs send -Rpv rpool/data/vm-119-disk-0@migration | ssh -o BatchMode=yes root@pve-n10 zfs recv -Fv rpool/data/vm-119-disk-0 - [nf_conntrack limit](https://itblog.su/nf_conntrack-limit.html) - cat /proc/sys/net/netfilter/nf_conntrack_max cat /proc/sys/net/netfilter/nf_conntrack_count echo "net.netfilter.nf_conntrack_max=16384" > /etc/sysctl.d/10-conntrack-max.conf - [OpenVPN error - ca md too weak](https://itblog.su/openvpn-error-ca-md-too-weak.html) - When you get an error like this: OpenSSL: error:0A00018E:SSL routines::ca md too weak Beter solution is to regenerate a new CA with stronger encryption, if you cant do that, add to your config file located in /etc/NetworkManager/system-connections/ which looks like work-c65734b1-83a7-45d9-ac69-2e41fc6cd123.nmconnection in section [vpn] this line: tls-cipher=DEFAULT:@SECLEVEL=0 Reload the configuration with the command: nmcli connection - [ProxMox Qemu create Ubuntu template](https://itblog.su/proxmox-qemu-create-ubuntu-template.html) - wget https://cloud-images.ubuntu.com/releases/noble/release/ubuntu-24.04-server-cloudimg-amd64.img mv ubuntu-24.04-server-cloudimg-amd64.img ubuntu-24.04-server-cloudimg-amd64.qcow2 qemu-img resize ubuntu-24.04-server-cloudimg-amd64.qcow2 10G qm create 9000 \ --name ubuntu24 \ --bootdisk virtio0 \ --ostype l26 \ --sockets 1 \ --cores 2 \ --memory 1024 \ --scsihw virtio-scsi-single \ --onboot yes \ --serial0 socket \ --vga serial0 \ --net0 virtio,bridge=vmbr0 \ --agent 1 \ --ide2 local-zfs:cloudinit \ --virtio0 local-zfs:0,import-from=/root/ubuntu-24.04-server-cloudimg-amd64.qcow2 qm - [Smart HBA H240 firmware update under Debian](https://itblog.su/smart-hba-h240-firmware-update-under-debian.html) - curl -fL -o "firmware-smartarray-ea3138d8e8-7.20-1.1.x86_64.rpm" https://downloads.hpe.com/pub/softlib2/software1/sc-linux-fw-array/p773315150/v176861/rpm/RPMS/x86_64/ firmware-smartarray-ea3138d8e8-7.20-1.1.x86_64.rpm apt install rpm2cpio rpm2cpio firmware-smartarray-ea3138d8e8-7.20-1.1.x86_64.rpm | cpio -idmv ./usr/lib/x86_64-linux-gnu/firmware-smartarray-ea3138d8e8-7.20-1.1/setup Supplemental Update / Online ROM Flash Component for Linux (x64) - Smart Array and Smart HBA H240ar, H240nr, H240, H241, H244br, P240nr, P244br, P246br, P440ar, P440, P441, P542D, P741m, P840, P840ar, and P841 (7.20), searching... 1) Smart HBA H240 in - [Windows Server 2019 2022 samba share access](https://itblog.su/windows-server-2019-2022-samba-share-access.html) - [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters] DWORD AllowInsecureGuestAuth 1 - [отключаем раздел восстановления Windows Server 2022](https://itblog.su/otklyuchaem-razdel-vosstanovleniya-windows-server-2022.html) - reagentc /disable удаляем раздел diskpart list volume select volume 4 delete partition override exit Включаем восстановление на системный диск reagentc /setreimage /path C:\windows\system32\recovery reagentc /enable - [RTSP web translation server](https://itblog.su/rtsp-web-translation-server.html) - Put this in to docker-compose.yml --- services: restreamer: image: datarhei/restreamer:latest container_name: restreamer restart: always ports: - 80:8080 - 8181:8181 - 1935:1935 - 1936:1936 - 6000:6000/udp volumes: - /opt/restreamer/config:/core/config - /opt/restreamer/data:/core/data and run docker compose up -d - [microk8s disk consumption](https://itblog.su/microk8s-disk-consumption.html) - 24G /var/snap/microk8s/common/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots add this strings to /var/snap/microk8s/current/args/kubelet --image-gc-high-threshold=50 --image-gc-low-threshold=40 --maximum-dead-containers=0 and restart snap restart microk8s and you will see 9.1G /var/snap/microk8s/common/var/lib/containerd/io.containerd.snapshotter.v1.overlayfs/snapshots - [OpenVPN: Real Speedup [DCO]](https://itblog.su/openvpn-real-speedup-dco.html) - We have a test bench of two servers, connected with physical 10G ports Let's see what iperf3 will show [ 5] 0.00-1.00 sec 1.08 GBytes 9.29 Gbits/sec [ 5] 1.00-2.00 sec 1.08 GBytes 9.30 Gbits/sec [ 5] 2.00-3.00 sec 1.08 GBytes 9.29 Gbits/sec Now let's put OpenVPN between those two and repeat iperf3 [ 5] - [Ansible playbook to add users with ssh keys and sudo](https://itblog.su/ansible-playbook-to-add-users-with-ssh-keys-and-sudo.html) - # yamllint disable rule:line-length --- - name: Add admin users hosts: all gather_facts: true become: true tasks: - name: Create account ansible.builtin.user: name: "{{ item.name }}" groups: "sudo" shell: /bin/bash append: true with_items: "{{ users }}" - name: Set authorized key taken from file ansible.posix.authorized_key: user: "{{ item.name }}" exclusive: true key: "{{ item.ssh_pub_key }}" - [Sentry cleanup](https://itblog.su/sentry-cleanup.html) - To cleanup self hosted Sentry you can use a following script: docker exec -it sentry-self-hosted-clickhouse-1 clickhouse-client -q 'TRUNCATE default.spans_local' docker exec -it sentry-self-hosted-clickhouse-1 clickhouse-client -q 'TRUNCATE default.generic_metric_distributions_aggregated_local' docker exec -it sentry-self-hosted-clickhouse-1 clickhouse-client -q 'TRUNCATE default.generic_metric_distributions_raw_local' docker exec -it sentry-self-hosted-clickhouse-1 clickhouse-client -q 'TRUNCATE system.metric_log' docker exec -it sentry-self-hosted-clickhouse-1 clickhouse-client -q 'TRUNCATE default.transactions_local' docker exec -it sentry-self-hosted-clickhouse-1 - [Включаем IP Forwarding в Linux](https://itblog.su/vklyuchaem-ip-forwarding-v-linux.html) - По умолчанию в большинстве дистрибутивов IP Forwarding выключен, но форвардинг может понадобится если на сервере будет подниматься VPN или например это будет роутер. Проверить включен ли IP Forwarding можно так: sysctl net.ipv4.ip_forward cat /proc/sys/net/ipv4/ip_forward Включить можно так (действовать будет до перезагрузки): sysctl -w net.ipv4.ip_forward=1 или echo 1 > /proc/sys/net/ipv4/ip_forward Или жётско включить (действовать будет и - ["firstBit.Сервер лицензий 2" Ubuntu Linux](https://itblog.su/firstbit-server-licenzijj-2-ubuntu-linux.html) - /etc/systemd/system/firstBit.service [Unit] Description=firstBit.LicenseServer After=syslog.target After=network.target [Service] Type=simple Restart=on-failure PIDFile=/run/firstBit.pid KillMode=control-group ExecStart=/opt/firstBit.LicenseServer/linux/licenseserver --run --allow-ui-from-ip=* ExecStop=/bin/sh -c '[ -n "$1" ] && kill -s TERM "$1"' -- "$MAINPID" RestartSec=10s User=root Group=root LimitNOFILE=8192 [Install] WantedBy=multi-user.target mkdir /opt/firstBit.LicenseServer/ cd /opt/firstBit.LicenseServer/ wget https://static.1cbit.online/updates/license-server/download/LicenseServer-v2.7z 7za x LicenseServer-v2.7z chmod +x /opt/firstBit.LicenseServer/linux/licenseserver systemctl daemon-reload systemctl start firstBit.service - [zfs arc size](https://itblog.su/zfs-arc-size.html) - To set zfs_arc_max as 1/4 of RAM (by default it's 1/2) you can use that script #!/bin/bash arc_size=`free | awk 'NR ==2 { OFMT="%.0f"; print $2/4*1024}'` echo "$arc_size" > /sys/module/zfs/parameters/zfs_arc_max echo 3 > /proc/sys/vm/drop_caches echo "options zfs zfs_arc_min=0" > /etc/modprobe.d/zfs.conf echo "options zfs zfs_arc_max=$arc_size" >> /etc/modprobe.d/zfs.conf update-initramfs -u -k all To get an actual information - [HPE Smart Array E208i-a SR Gen10 firmware update](https://itblog.su/hpe-smart-array-e208i-a-sr-gen10-firmware-update.html) - No drives were found in this system.You may need to reboot You can obtain an rpm package here: https://downloads.linux.hpe.com/SDR/repo/spp-gen10/redhat/8/x86_64/current/ If you use RedHat based distro just install the rpm, otherwise extract it: rpm2cpio firmware-smartarray-f7c07bdbbd-4.11-1.1.x86_64.rpm | cpio -idmv and run an update process: ./usr/lib/x86_64-linux-gnu/firmware-smartarray-f7c07bdbbd-4.11-1.1/setup Supplemental Update / Online ROM Flash Component for Linux (x64) - HPE - [GrayLog: Hostname datanode not verified](https://itblog.su/graylog-hostname-datanode-not-verified.html) - After updating a graylog we get an errors like: Unable to retrieve version from Elasticsearch node: Hostname datanode not verified Host name 'datanode' does not match the certificate subject provided This can be fixed disabling ssl/tls betwen containers put into .env this string: GRAYLOG_DATANODE_INSECURE_STARTUP=true then restart containers docker compose stop docker compose up -d - [Sentry: All events is empty](https://itblog.su/sentry-all-events-is-empty.html) - If you have a nginx revers proxy on your self-hosted Sentry you can get an issue with empty "All events" this can be fixed by adding to nginx config proxy_buffer_size 128k; proxy_buffers 16 256k; if you need a complete config, here it is: http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] - [ProxMox migration fails: Host key verification failed.](https://itblog.su/proxmox-migration-fails-host-key-verification-failed.html) - If you get an error, on migrating VM from one ProxMox to another, like this: # /usr/bin/ssh -e none -o 'BatchMode=yes' -o 'HostKeyAlias=pve-n23' root@10.10.10.10 /bin/true Host key verification failed. ERROR: migration aborted (duration 00:00:01): Can't connect to destination address using public key TASK ERROR: migration aborted And you have FreeIPA installed on proxmoxes, you can - [FreeIPA WebUI login fails](https://itblog.su/freeipa-webui-login-fails.html) - runing 'kinit' in console gives an error like: Received error from KDC: -1765328382/Server's entry in database has expired kinit: Server's entry in database has expired while getting initial credentials enter to console admin kadmin.local kadmin.local: getprinc krbtgt/DOMAIN.COM You may see that expiration date passed Expiration date: Tue Dec 31 23:59:59 MSK 2023 Set a new - [LVM resize HOWTO](https://itblog.su/lvm-resize-howto.html) - We have an virtual machine with 165Gb disk, and added extra 10Gb. Now we need to extend filesystem inside a VM lets check trat extra 10Gb is available in VM # fdisk -l /dev/sdb Disk /dev/sdb: 175.2 GiB, 187924742144 bytes, 367040512 sectors Checkout the physical volume size, it's 165Gbyte # pvdisplay --- Physical volume --- - [Sangoma Linux after migration from VMWare ESXi to ProxmoxVE fails to boot](https://itblog.su/sangoma-linux-after-migration-from-vmware-esxi-to-proxmoxve-fails-to-boot.html) - After migration Sangoma Linux (FreePBX on CentOS7) from vmware to proxmox qm importovf 7804 PBX002.ovf local-zfs OS fails to boot with error: Could not boot /dev/SangomaVG/root does not exist /dev/SangomaVG/swaplv1 does not exist /dev/mapper/SangomaVG-root does not exist What do we need? 1. add network adapter, chose model "VMware vmxnet3" and set previously used MAC-address 2. - [k9s and microk8s](https://itblog.su/k9s-and-microk8s.html) - microk8s.kubectl config view --raw > ~/.kube/config wget -qO- https://github.com/derailed/k9s/releases/download/v0.32.3/k9s_Linux_amd64.tar.gz | tar zxf - k9s mv k9s /usr/local/bin/ - [HP Proliant Gen9 G9 DMAR error](https://itblog.su/hp-proliant-gen9-g9-dmar-error.html) - If you getting an error like this in dmesg on your linux and the physical server is a kind of HP Proliant G9 (Gen9) DMAR: [DMA Write NO_PASID] Request device [04:00.0] fault addr 0x791f4000 [fault reason 0x05] PTE Write access is not set DMAR: DRHD: handling fault status reg 402 You can just ignore it - [Mikrotik FAN speed on CCR2004-1G-12S+2XS](https://itblog.su/mikrotik-fan-speed-on-ccr2004-1g-12s2xs.html) - By default settings system health on mikrotik CCR2004 shows 0 RPM fan speed. In my case the temperature of CPU was about to 60C but there is no direct settings to set FAN speed, so i set the temp to run fullspeed this way /system health settings set fan-full-speed-temp=45C fan-target-temp=45C - [Dell iDrac FAN speed adjustment](https://itblog.su/dell-idrac-fan-speed-adjustment.html) - You can do it by setting fan speed offset in BIOS, but if you don't want to reboot your system you can do it using ipmitool enable manual Fan speed setting ipmitool raw 0x30 0x30 0x01 0x00 Then set fan speed to 100% ipmitool raw 0x30 0x30 0x02 0xff 0x64 or 50% ipmitool raw 0x30 - [FreeIPA allow queries from other networks](https://itblog.su/freeipa-allow-queries-from-other-networks.html) - Add to /etc/named/ipa-ext.conf acl "trusted_network" { localnets; localhost; 10.222.0.0/23; 195.222.111.0/24; }; Where 10.222.0.0/23 and 195.222.111.0/24 not direct attached networks Add to /etc/named/ipa-options-ext.conf allow-recursion { trusted_network; }; and restart freeipa ipactl restart - [no hostkey alg](https://itblog.su/no-hostkey-alg.html) - Если подключаясь к серверу Linux по ssh вы получаете ошибку no hostkey alg или no matching key exchange method found. Their offer: diffie-hellman-group1-sha1 , причина в том что ssh-rsa на серевере отключен как не безопасный. Первый вариант на клиенте (если у вас linux) в ~/.ssh/config прописать конфиг: Host 192.168.1.1 HostkeyAlgorithms +ssh-rsa KexAlgorithms +diffie-hellman-group1-sha1 Второй вариант - [Maipu S3100-9TP enable ssh](https://itblog.su/maipu-s3100-9tp-enable-ssh.html) - By default ssh is disabled, connect to switch using telnet an run that commands: Switch#crypto key generate rsa Switch#crypto key refresh Switch#conf t Switch(config)#ssh Switch(config)#end Switch#write running-config startup-config - [microk8s kubectl alias and autocompletion](https://itblog.su/microk8s-kubectl-alias-and-autocompletion.html) - Be shure that you installed bash-completion by apt install bash-completion Enable it and create aliases: cat >> ~/.bashrc - [vsftpd lock user into his homedir](https://itblog.su/vsftpd-lock-user-into-his-homedir.html) - На днях буквально обсуждали что ftp доступ для вебмастеров филиалов позволял "лазить" им по всему серверу довольно крупной компании. В общем то, закрыть эту дыру не сложно. /etc/vsftpd.conf chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list user_config_dir=/etc/vsftpd_user_conf allow_writeable_chroot=YES mkdir /etc/vsftpd_user_conf echo 'local_root=/home/webmaster' > /etc/vsftpd_user_conf/webmaster touch /etc/vsftpd.chroot_list Если нужно дать вебмастеру доступ в папку можно её смонтировать в его хумдир. mount - [Adaptec 5405 aacraid CentOS 8 / RHEL 8](https://itblog.su/adaptec-5405-aacraid-centos-8-rhel-8.html) - В CentOS/RHEL 8 из ядра выпилили aacraid драйвер который нужен для RAID контроллеров Adaptec 5 и 6 версии. Поставить можно из Elrepo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org yum install https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm yum install kmod-aacraid Если нужно обойтись без перезагрузки сервера, то вручную загрузите модуль ядра: modprobe aacraid Если нужно установить 8-ку на Adaptec то думаю можно в виртуалке - [Proxmox problem after new disk addition failure](https://itblog.su/proxmox-problem-after-new-disk-addition-failure.html) - В процессе добавления дового диска через интерфейс Proxmox получили ошибку Failed to start mnt-pve-local-6TB.mount: Unit mnt-pve-local-6TB.mount is not loaded properly: Invalid argument. TASK ERROR: command 'systemctl start mnt-pve-local-6TB.mount' failed: exit code 1 Думаю ну и бес с тобой сделаю руками, как обычно. Удалил разделы с диска, создал заново, а раздел не монтируется. mount выполняется без - [Сброс пароля регистратора Dahua XVR5108C](https://itblog.su/sbros-parolya-registratora-dahua-xvr5108c.html) - Для сброса пароля на XVR5108C нам понадобится USB2TTL конвертер с али или из чип и дип. Выкручиваем плату из регистратора, распаиваем четырехконтактную гребенку на плате и подключаем как на фото Теперь подключаемся к к регистратору с терминала, я использую Putty. У меня это COM4 скорость указываем 115200. Зажимаем Shift 8 на клавиатуре и подаем питание. - [How to delete CBS.log](https://itblog.su/how-to-delete-cbs-log.html) - net stop TrustedInstaller sc qc TrustedInstaller tasklist | find /i "TrustedInstaller.exe" taskkill /f /im "TrustedInstaller.exe" taskkill /f /im "wermgr.exe" taskkill /f /im "makecab.exe" del C:\Windows\Logs\CBS\CBS.log net start TrustedInstaller Если не получается, воспользуйтесь утилитой Handle для поиска процесса который держит файл. handle64.exe | find /i "CBS.log" - [Convert 1080n to 1080p video](https://itblog.su/convert-1080n-to-1080p-video.html) - Бюджетные модели видерегистраторов умеют воспроизводить камеры 1080p разрешением, но записывают видео в урезанном 1080n 960x1080, некоторые производители называют такое разрешение 1080P Lite Можно в проигрывателе видео включить масштабирование, а можно конвертировать Я буду на компе с ubuntu это делать, но можно и на windows apt install ffmpeg Делаем апскейл ffmpeg -i input.mp4 -vf scale=1920:1080 -preset - [Nginx webdav ubuntu 20.04](https://itblog.su/nginx-webdav-ubuntu-20-04.html) - Если вам по какой-то причине оочень нужен webdav работающий на nginx, поделюсь сценарием установки и конфигами. Сразу хочу предупредить, подружить удалось с windows MacOS но не получилось с IOS. Лучше используйте Apache или Synology (XPEnology). apt-get install build-essential libcurl4-openssl-dev libxml2-dev mime-support automake libssl-dev libpcre3-dev zlib1g-dev libxslt1-dev checkinstall pkgconf libperl-dev mkdir nginx cd nginx/ wget https://nginx.org/download/nginx-1.20.2.tar.gz - [named: error (network unreachable) resolving ipv6](https://itblog.su/named-error-network-unreachable-resolving-ipv6.html) - If your host which running Bind doesn't have an IPv6 connectivity you can get an errors like this: named[1504]: error (network unreachable) resolving 'dns4.bigrock.in/A/IN': 2803:f800:50::6ca2:c06c#53 You can fix it disabling and forbidding IPv6 on named /etc/named.conf // listen-on-v6 port 53 { ::1; }; filter-aaaa-on-v4 yes; /etc/sysconfig/named OPTIONS="-4" And restart named service - [CentOS Linux 8 EOL: 2021-12-31](https://itblog.su/centos-linux-8-eol-2021-12-31.html) - После 31 декабря 2021 пользователи CentOS Linux 8 столкнутся с ошибкой при запуске yum Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlost: No URLs in mirrorlist или dnf dnf.exceptions.RepoError: Не удалось загрузить метаданные для репозитория «appstream»: Cannot prepare internal mirrorlist: No URLs in mirrorlist Дальше есть два пути, остаться на не - [Windows 7 истек срок действия корневого ssl](https://itblog.su/windows-7-istek-srok-dejjstviya-kornevogo-ssl.html) - Некоторые компы с 7, а также старые андроиды и маки перестали нормально заходить на некоторые сайты. Браузеры ругаются на проблему безопасности. Это связано с истечением 30 сентября корневого сертификата безопасности Let`s encrypt. Для винды лечение такое: ставим KB3020369, потом KB3125574 https://www.catalog.update.microsoft.com/Search.aspx?q=KB3020369 https://www.catalog.update.microsoft.com/search.aspx?q=3125574 - [Windows update 7/2008R2](https://itblog.su/windows-update-7-2008r2.html) - Нужно скачать и установить перезагружаясь после каждого обновления KB3020369 заменен на KB4490628 KB3172605 Скачать можно с http://catalog.update.microsoft.com Если и это не поможет, нужно остановить службу Windows Update (центр обновления Windows) и удалить содержимое папки C:\Windows\SoftwareDistribution\ после чего перезагрузиться и заново обновить систему. - [Linux desktop sharing - encryption error on VNC client](https://itblog.su/linux-desktop-sharing-encryption-error-on-vnc-client.html) - Включенный Desktop sharing в ОС Linux по умолчанию использует шифрование не совместимое с некоторыми VNC клиентами. Можно отключить шифрование, в CentOS 8 так: gsettings set org.gnome.desktop.remote-desktop.vnc encryption "['none']" В Ubuntu/Debian так gsettings set org.gnome.Vino require-encryption false - [MS SQL list of databases and files](https://itblog.su/ms-sql-list-of-databases-and-files.html) - Если нужно выяснить какие файлы и путь к ним используются для базы данных MS SQL, то сделать это можно SQL запросом: SELECT 'DB_NAME' = db.name, 'FILE_NAME' = mf.name, 'FILE_TYPE' = mf.type_desc, 'FILE_PATH' = mf.physical_name FROM sys.databases db INNER JOIN sys.master_files mf ON db.database_id = mf.database_id WHERE db.name = 'zup' Результат будет выглядеть вот так: - [Monitoring Adaptec RAID controller under Ubuntu](https://itblog.su/monitoring-adaptec-raid-controller-under-ubuntu.html) - Для мониторинга RAID массива построенного на контроллере Adaptec крайне удобно использовать утилиту arcconf. нативно адаптек дает пакет для RHEL/SCO/FreeBSD/Windows .deb пакетов в этом списке нет. Понадобилось поставить на Ubuntu 10.04, ставить будем так: [cc lang="bash"] wget -c -q http://download.adaptec.com/raid/storage_manager/asm_linux_x86_v6_40_18530.rpm sudo alien --scripts asm_linux_x86_v6_40_18530.rpm sudo dpkg -i storman_6.40-18531_i386.deb sudo ln -s /usr/StorMan/libstdc++.so.5 /usr/lib sudo /usr/StorMan/arcconf GETCONFIG - [Adaptec 5405 and others on Centos 5](https://itblog.su/adaptec-5405-and-others-on-centos-5.html) - Есть такой популярный контроллер Adaptec 5405, мы его ставим в сервера в больших количествах, соотвественно нужно мониторить состояние массивов на серверах. Для этого есть nagios и zabbix, а чтобы наши мониторинги могли узнавать статус массивов используем утилиту arcconf от производителя Adaptec. Покажу на примере CentOS 5.6 x86_64 установку arcconf http://download.adaptec.com/raid/storage_manager/asm_linux_x64_v7_00_18781.tgz tar zxf asm_linux_x64_v7_00_18781.tgz mv cmdline/arcconf - [CentOS 5 on Adaptec 6405](https://itblog.su/centos-5-on-adaptec-6405.html) - Очередной минихауту по сетапу Centos на сервер с контроллером Adaptec 6405 Во первых, мне не удалось установить CentOS 6 на сервер с Adaptec 6405. Из-за какого-то конфликта то ли на уровне железа, то ли на уровне драйверов aacraid и e1000e. т.е. как только я загружаю модуль aacraid отмирает сеть, убить и заново загрузить e1000e (как - [Adaptec 5405 and others on CentOS 8](https://itblog.su/adaptec-5405-and-others-on-centos-8.html) - Кроме установки драйвера, нам же еще и управлять и мониторить массив нужно, верно? Тогда поставим Adaptec Storage manager - arcconf. Чтобы не получить ошибку: libstdc++.so.5: cannot open shared object file: No such file or directory Устанавливаем зависимости: wget https://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm dnf localinstall -y compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm Скачиваем и распаковываем собственно arcconf wget https://download.adaptec.com/raid/storage_manager/asm_linux_x64_v7_31_18856.tgz tar zxfv asm_linux_x64_v7_31_18856.tgz Проверяем: cmdline/arcconf - [Cisco SRW208P console cable](https://itblog.su/cisco-srw208p-console-cable.html) - В руки попал коммутатор Cisco Linksys SRW208P, компактный PoE коммутатор WEBview управление, ssh, telnet, console. Коммут б.у. какой ip у него задан я не нашел с первой попытки, по этому достал консольный и кабель от Allied telesis и обломался :) На выручку придут обычные Dupont провода, которые есть у любого ардуинщика. Нужно 4 провода мамки, - [Update to Python 3.8 on a Raspberry Pi](https://itblog.su/update-to-python-3-8-on-a-raspberry-pi.html) - sudo apt-get install -y build-essential tk-dev libncurses5-dev libncursesw5-dev \ libreadline6-dev libdb5.3-dev libgdbm-dev libsqlite3-dev libssl-dev libbz2-dev \ libexpat1-dev liblzma-dev zlib1g-dev libffi-dev wget https://www.python.org/ftp/python/3.8.7/Python-3.8.7.tar.xz tar xf Python-3.8.7.tar.xz cd Python-3.8.7/ ./configure --prefix=/usr/local/opt/python-3.8.7 --enable-optimizations make -j 4 sudo make altinstall cd .. sudo rm -rf Python-3.8.7 Python-3.8.7.tar.xz sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1 update-alternatives --list python sudo update-alternatives - [Using a curl to send a message through SMTP](https://itblog.su/using-a-curl-to-send-a-message-through-smtp.html) - Как отправить сообщение по SMTP на примере gmail. curl --url 'smtps://smtp.gmail.com:465' --ssl-reqd \ --mail-from 'test@gmail.com' \ --mail-rcpt 'admin@mail.ru' \ --upload-file mail.txt \ --user 'test@gmail.com:PassWord' Содержимое файла mail.txt From: "John Doe" To: "John Smith" Subject: This is a test, hope it pass. This is test if you see it, than it pass! Работает не на всех - [OpenVPN 2.4 проблемы после обновления](https://itblog.su/openvpn-2-4-problemy-posle-obnovleniya.html) - В обновленной версии OpenVPN 2.4 сделан ряд правок для усиления безопасности. У меня возникло две проблемы, Первая: VERIFY ERROR: depth=0, error=CRL signature failure фикс: echo -e "LegacySigningMDs md2 md5\nMinimumDHBits 512\n" >> /etc/pki/tls/legacy-settings service openvpn restart Вторая: VERIFY ERROR: depth=0, error=CRL has expired cd /etc/openvpn/easy-rsa в openssl.cnf правим параметры к виду: default_days = 3650 # how - [Openfire сбитая кодировка плагина monitoring](https://itblog.su/openfire-sbitaya-kodirovka-plagina-monitoring.html) - Для архивирования сообщений на Jabber сервере Openfire есть официальный плагин Monitoring. После его установки, добавляется два новых пункта меню. Которые отображаются в не читаемом виде. Крякозябры в меню Openfire Дело в том что в файле monitoring_i18n_ru_RU.properties кирилица в UTF-8. А нужно её перевести в UTF-16. В общем рецепт такой, заходите на сервер с Openfire и - [Openfire 4.3 after update fails to start](https://itblog.su/openfire-4-3-after-update-fails-to-start.html) - После обновления Openfire до версии 4.3 он перестает запускаться, в логе ошибка The server time zone value 'MSK' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time - [OTRS 6 "OldBrowser" error after update to 6.0.18 6.0.19](https://itblog.su/otrs-6-oldbrowser-error-after-update-to-6-0-18-6-0-19.html) - После обновления OTRS 6 до версии 6.0.18 или 6.0.19 получаем ошибку: Используемый вами браузер слишком стар. Это ПО работает с большим списком браузеров, пожалуйста, сделайте обновление для работы с одним из них. Обратитесь к документации или спросите своего администратора для получения дополнительной информации. Лечится это ребилдом конфигурациии и удалением кешей. su -c "/opt/otrs/bin/otrs.Console.pl Maint::Config::Rebuild" -s - [Начальная настройка wifi точки Cisco Aironet](https://itblog.su/nachalnaya-nastrojjka-wifi-tochki-cisco-aironet.html) - Подключаемся к точке доступа консольным кабелем, например с помощью putty указав правильный COM-порт и скорость 9600. Логин по умолчанию Cisco, пароль Cisco, пароль режима enable тоже Cisco. ap#conf t ap(config)#enable secret NEWpassWord ap(config)#ip http server ap(config)#ip http secure-server ap(config)#ip ssh version 2 ap(config)#clock timezone MSK 3 0 ap(config)#sntp server time.nist.gov ap(config)#service timestamps debug datetime localtime - [DOT11-4-MAXRETRIES: Packet to client reached max retries, removing the client](https://itblog.su/dot11-4-maxretries-packet-to-client-reached-max-retries-removing-the-client.html) - Клиент реконнектится к точке доступа Cisco Aironet в процессе скачивания чего-то на большой скорости, в консоли точки доступа видим сообщения: %DOT11-4-MAXRETRIES: Packet to client f460.e2f8.8984 reached max retries, removing the client %DOT11-4-MAXRETRIES: Packet to client f460.e2f8.8984 reached max retries, removing the client %DOT11-6-ASSOC: Interface Dot11Radio1, Station f460.e2f8.8984 Associated KEY_MGMT[WPAv2 PSK] (config)#interface Dot11Radio0 (config-if)#packet retries 128 - [Прошивка точки доступа Cisco Aironet](https://itblog.su/proshivka-tochki-dostupa-cisco-aironet.html) - Точки доступа Cisco могут работать в двух режимах Autonomous AP IOS Software Lightweight AP IOS Software Первый режим это автономная точка доступа, управляется самостоятельно по http/https или telnet/ssh. Второй режим, это когда точка доступа управляется с WLC с контроллера беспроводной сети Cisco. Рассмотрим как перевести точку доступа Cisco Aironet AIR-SAP702I-R-K9 из режима легкой в автономную. - [Резервное копирование MySQL с человеческим лицом](https://itblog.su/rezervnoe-kopirovanie-mysql-s-chelovecheskim-licom.html) - На дворе 2014-ый год, а мы всё как-то старинке снимаем mysql дампы старым mysldump, который фигачит всю ночь, блокирует таблицы и всячески бесит тех кому эти таблицы нужны. percona-xtrabackup - настало твое время! Мало того что чудо сие не лочит таблицы, работает быстрее Mysqldump, может делать инкрементные бакапы, так ведь с его помощью можно реплику - [Журналирование dhcpd в отдельный файл](https://itblog.su/zhurnalirovanie-dhcpd-v-otdelnyjj-fajjl.html) - В конфиг файл /etc/dhcpd.conf вносим в самом начале строчку: log-facility local6; В самый конец файла /etc/rsyslog.conf добавляем: # log dhcpd per /etc/dhcpd.conf local6.* /var/log/dhcpd В том же конфиг файле /etc/rsyslog.conf нужно добавить точку с запятой и local6.none чтобы выглядело так: *.info;mail.none;authpriv.none;cron.none;local6.none /var/log/messages После чего перезапустить rsyslog а потом dhcpd. Проверить логгирование в /var/log/dhcpd и отсутсвие - [Adobe flash автономная установка](https://itblog.su/adobe-flash-avtonomnaya-ustanovka.html) - На случай когда нужна автономная, не онлайн установка Adobe Flash player выкладываю ссылки на 14-ую версию. На офсайте их почему-то найти не удалось, выдернул экспериментальным способом. Для Internet Explorer, версия ActiveX: install_flash_player_14_active_x.exe Для всех остальных браузеров: install_flash_player_14_plugin.exe На случай если вам нужна другая версия Adobe Flash Player, просто поменяйте в ссылке число _14_ на другое, - [CentOS 6 ICU and pecl-intl new versions](https://itblog.su/centos-6-icu-and-pecl-intl-new-versions.html) - Движок Mediawiki для работы с кодировками очень хочет php расширение untl, как выяснилось в стандартных репах и в epel оно адске старое, и не годится. Но есть официальные сборки в виде набора бинарей и библиотек. Процедура установки для CentOS 6 i386, проста и описывается ниже: wget http://download.icu-project.org/files/icu4c/52.1/icu4c-52_1-RHEL6-i386.tgz tar zxf icu4c-52_1-RHEL6-i386.tgz cp -r usr/local/* /usr/ cp - [taskhost.exe high CPU usage](https://itblog.su/taskhost-exe-high-cpu-usage.html) - Windows 7 замечена высокая загрузка процессора, в таскменеджере видно что жрет процессор taskhost.exe. Проблема решается отключением в планировщике RAC. Пуск -> Администрирование -> Планировщик заданий -> Библиотека планировщика -> Microsoft -> windows -> RAC Правый клик на RacTask и выбираем "Отключить". Данная проблема наблюдается на Windows 7 работающем в виртуалке Virtualbox. - [KVM: could not add USB device](https://itblog.su/kvm-could-not-add-usb-device.html) - После апгрейда Proxmox до версии 2.3-13 вылезла проблема с пробросом USB устройств с хост системы в виртуалку. root@vs1:~# qm monitor 102 qm> usb_add host:0930:6545 could not add USB device 'host:0930:6545' Как выяснилось usb_add депрекейтед, новый путь device_add: qm> info usbhost Bus 2, Addr 3, Port 2, Speed 480 Mb/s Class 00: USB device 0930:6545, DataTraveler - [Increasing Maximum PBX stack exceeded](https://itblog.su/increasing-maximum-pbx-stack-exceeded.html) - Проблема следующая, 100 правил в outbound routes, из них работают первые 40 штук, остальные сразу же отбиваются. в логах ошибка: Maximum PBX stack exceeded По умолчанию `AST_PBX_MAX_STACK` выставлен в 128, лечится проблема увеличением данного параметра. HOWTO-шка на примере Elastix: yum install openssl-devel newt-devel libtermcap-devel ncurses-devel \ postgresql-devel libpri-devel libogg-devel libvorbis-devel unixODBC-devel \ libtool sqlite-devel libtool-ltdl-devel - [AT-8000 Vlan1 ip addres changing](https://itblog.su/at-8000-vlan1-ip-addres-changing.html) - Криворукие инженеры из Allied telesis создали ситуацию когда сменить IP на менежменте сменить нельзя, демонстрирую: AT-8000s-24-PoE-masters# sh ip interface vlan 1 Gateway IP Address Activity status Type ----------------------- ----------------------- -------- IP Address Type ----------------------- --------- 10.10.4.247/24 Static меняем и получаем шишь: AT-8000s-24-PoE-masters# conf AT-8000s-24-PoE-masters(config)# interface vlan 1 AT-8000s-24-PoE-masters(config-if)# ip address 10.10.4.244 255.255.255.0 ip address table - [Allied Telesis AT-9000s28 firmware upgrade](https://itblog.su/allied-telesis-at-9000s28-firmware-upgrade.html) - На сегодняшний день самая свежая прошивка для AT-9000s28 имеет версию v2.1.4.4 Для апгрейда нужен tftp сервер доступный с коммутатора, на tftp сервер кладем свежую прошивку: cd /tftpboot/ wget ftp://rguest:rguest@ftp.alliedtelesis.co.uk/firmware/9000/214/ats-9000-2.1.4.4-PATCH.zip unzip ats-9000-2.1.4.4-PATCH.zip теперь можно переходить к коммутатору, на котором предварительно настроен адрес 10.10.7.8 и поднят ssh сервер. $ ssh manager@10.10.7.8 Password: ****** AT9000GS-28> enable AT9000GS-28# copy - [RDP c windows 2008 (7) на windows 2003 (XP)](https://itblog.su/rdp-c-windows-2008-7-na-windows-2003-xp.html) - Так вышло что с тонких клиентов подключающихся к Windows 2008 нужно ходить на Windows 2003 сервер по RDP, вроде как простая задача, НО на деле тормозит просто ужасно. Каким-то волшебным образом выясняется что тормозит только мышь (курсор, нажатия) и лечится это выполнением от администратора на Windows 2008 (или Windows 7) команды: netsh interface tcp set - [Как посмотреть загрузку процессора на Cisco роутере](https://itblog.su/kak-posmotret-zagruzku-processora-na-cisco-routere.html) - Для того чтобы посмотреть загрузку процессора маршрутизатора Cisco есть команда show processes cpu. Это такой аналог линуксового top только без динамического обновления. Для того чтобы увидеть нагрузку на процессор маршрутизатора cisco без вывода простаивающих процессов можно воспользоваться командой: c1760#sh processes cpu | exclude 0.00 CPU utilization for five seconds: 6%/2%; one minute: 9%; five minutes: - [Mysql: ограничение по числу коннектов в час.](https://itblog.su/mysql-ogranichenie-po-chislu-konnektov-v-chas.html) - [root@srv ~]# mysql -uroot -p Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4014 Server version: 5.0.45-log MySQL Community Edition (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> use mysql Database changed mysql> UPDATE user SET max_questions=28800; - [Apache ServerAlias limit ](https://itblog.su/apache-serveralias-limit.html) - Звонит техподдержка, говорит что на одном из вебсерверов лежит апач. Ну дело не хитрое, рестарт и смотрим error_log. Тишина.. всмысле вообще тишина ничего нет в логе. Ну делаем Loglevel debug и снова рестарт и снова в логе тишина и пара warn-ов не относящихся к делу. Опытным путем выяснил что апач мрет на загрузке конфига с - [Linux KVM and USB devices](https://itblog.su/linux-kvm-and-usb-devices.html) - Возникла необходимость прокинуть в KVM-ную виртуалку USB девайсы, токен и флешку. [root@office ~]# lsusb Bus 002 Device 003: ID 0930:6545 Toshiba Corp. Kingston DataTraveler 102 Flash Drive Bus 006 Device 003: ID 23a0:0002 [root@office ~]# virsh virsh # list --all ID Имя Статус ---------------------------------- - WindowsXP выключен virsh # edit WindowsXP в блок devices добавляем: - [enabling java plugin in firefox linux](https://itblog.su/enabling-java-plugin-in-firefox-linux.html) - Продолжая настраивать CentOS 5.2 на десктопе, захотелось клиент-банка ibank2. Первое что ему нужно это java плагин, сначала ставим jre-1.6.0_07-fcs взять можно у SUN на сайте. После установки можно ставить плагин: [cc lang="bash"] sudo ln -s /usr/java/jre1.6.0_07/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/mozilla/plugins sudo ln -s /usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/i386/libnpjp2.so /usr/lib/mozilla/plugins/ [/cc] теперь включаем Java в настройках firefox и вуаля. С ibank всё несколько - [Ubuntu hibernate fails](https://itblog.su/ubuntu-hibernate-fails.html) - Hibernate это по нашему спящий режим, содержимое ОЗУ скидывается в swap и компьютер выключается, после включения машина работает с того же момента что и до ухода в хибернейт. Кто работал с виртуальными машинами типа vmware и пр. будет понятнее если сравнить с save state выключением. Вобщем, когда на рабочий компьютер я устанавливал Ubuntu у меня - [yum thru proxy](https://itblog.su/yum-thru-proxy.html) - В сети есть ip-pbx, по политике безопасности трафик с него/на него не должен маршрутизироваться за пределы сегмента локальной сети. Но он должен обновляться, ему нужен http доступ наружу. Соотвественно Yum должен ходить через прокси (в том же сегменте сети). По ленивой привычке идем в гугл и читаем тонны бреда про то как правильно экспортировать переменные - [Error: 'NoneType' object has no attribute 'rfind'](https://itblog.su/error-nonetype-object-has-no-attribute-rfind.html) - root@d17:~# xm create pan0.vm1.h2.d0.dddddddd.ru.cfg -c Using config file "/etc/xen/pan0.vm1.h2.d0.ddddddd.ru.cfg". Error: 'NoneType' object has no attribute 'rfind' В дебиан лечится установкой xen-qemu-dm-4.0 apt-get install xen-qemu-dm-4.0 - [could not be connected. Failed to find an unused loop device](https://itblog.su/could-not-be-connected-failed-to-find-an-unused-loop-device.html) - При попытке создать новый DomU на Dom0 получил ошибку: root@d17:~# Error: Device 51718 (vbd) could not be connected. Failed to find an unused loop device Лечится увеличением loop устройств в системе. В случае CentOS/RHEL/FedoraCore в файл /etc/modprobe.conf добавляем строку: options loop max_loop=128 В случае Debian/Ubuntu в файл /etc/modules приводим строку с loop к виду: loop - [How to enter to Xen guest](https://itblog.su/how-to-enter-to-xen-guest.html) - Самый простой способ "войти" в гостевую систему на Xen это xm console guest-vm где guest-vm это нужная гостевая ОС, но тут нам понадобится рутовый или иной административный пароль. Если таким богатством не обладаем то есть вариант такой: 1. останавливаем гостевую машину: xm shutdown -H guest-vm 2. проверяем остановлен ли гость через несколько минут: xm list - [Remove UTF8 BOM under linux](https://itblog.su/remove-utf8-bom-under-linux.html) - После переноса файлов с фряхи на linux простым rsync в текстовых файлах появился UTF-8 BOM, это такой маркер типа UTF (легко гуглится кому интересно). По факту это в начало вайла добавляется HEX символы: EF BB BF. Проблема выражается в том что кирилицу в файлах кривит и косит. Переходим в каталог который надо чинить и правим: - [Linux UPnP](https://itblog.su/linux-upnp.html) - Для того чтобы клиенты могли прозрачно открывать порты на шлюзе, был разработан набор протоколв Universal Plug and Play (UPnP), например для того чтобы можно было раздавать торренты. На днях я снял дома старый добрый Linksys WRT54G, теперь раздачей интернета занимается linux-овая машинка. Для раздачи торррентов например, нужно разрешить соединения внутрь сети. Для этого можно пробросить - [Booting ms dos via PXE to update bios](https://itblog.su/booting-ms-dos-via-pxe-to-update-bios.html) - Для обновления BIOS на сервре как правило нужно загрузиться с дискеты с MS DOS и запустить утилиту обновления, в современном мире не так просто найти FDD, да и дискету сходу не удалось найти. Но в it инфраструктуре как правило уже развернут PXE сервер для обслуживания серверов или устновки операционной системы, собственно им и воспользуемся. apt-get - [Proftpd listen ip](https://itblog.su/proftpd-listen-ip.html) - По умолчанию Proftpd слушает порт 21 на всех интерфейсах, если же нужно указать ему отвечать строго на определенном интерфейсе используйте конфигурацию: SocketBindTight on Port 21 DefaultAddress 192.168.3.1 192.168.3.1 замените на нужный Вам ip адрес. - [Portchannel betwen Allied Telesis AT-8000GS and Cisco c2950](https://itblog.su/portchannel-betwen-allied-telesis-at-8000gs-and-cisco-c2950.html) - Что имеем: 1. гигабитный стэк из двух Allied Telesis AT-8000GS 2. к стэку двумя линками подключен AT-8000S/24, линки собраны в портчаннел. 3. Cisco Catalist 2950 который надо подключить к сети. Оптического трансивера для ATI нет, подключать придется 100 мегабитными линками, линки обьеденить в etherchannel. на циске настраиваем: WS-C2950SX-48-SI#conf t WS-C2950SX-48-SI(config)#interface range FastEthernet 0/45 - 48 - [H-Sphere account move error "Suspended due to resources integrity"](https://itblog.su/h-sphere-account-move-error-suspended-due-to-resources-integrity.html) - При переносе аккаунта с сервера на сервер из H-shphere возможна ошибка "Suspended due to resources integrity" Заходим на сервер cp рутом и выполняем: grep "duplicate key violates unique" /var/log/hsphere/hsphere.log.1 -B3 получим что-то вроде: 2011-05-04 11:15:34,614 [transfer] DEBUG cron.TransferCron - getResourcesInMoveInfo(): got and checking 1608767_7 is a HostDependentResource - true 2011-05-04 11:15:34,614 [transfer] DEBUG cron.TransferCron - - [Cisco WS-C2950SX-48-SI](https://itblog.su/cisco-ws-c2950sx-48-si.html) - Начал собирать себе минилабу для подготовки к CCNA/CCNP, купил на днях Cisco WS-C2950SX-48-SI cisco WS-C2950SX-48-SI (RC32300) processor (revision L0) with 20015K bytes of memory. Processor board ID FOC1009Z8JD Last reset from system-reset Running Standard Image 48 FastEthernet/IEEE 802.3 interface(s) 2 Gigabit Ethernet/IEEE 802.3 interface(s) 32K bytes of flash-simulated non-volatile configuration memory. Base ethernet MAC Address: - [installing SHOUTcast streaming server on debian x86_64](https://itblog.su/installing-shoutcast-streaming-server-on-debian-x86_64.html) - Компания Nullsoft, та что радует виндовых пользователей проигрывателем winamp выпускает еще и стриминг сервер, проще говоря сервер онлайн радио. Ставить будем на debian x86_64 mkdir /opt/sc && cd /opt/sc wget http://yp.shoutcast.com/downloads/sc1-9-8/sc_serv_1.9.8_Linux.tar.gz tar zxf sc_serv_1.9.8_Linux.tar.gz rm -rf sc_serv_1.9.8_Linux.tar.gz README.TXT Открываем конфиг /opt/sc/sc_serv.conf в любом текстовом редакторе (например vim) найдите строку Password=changeme и поменяйте changeme на свой - [iptables and ftp in passive mode](https://itblog.su/iptables-and-ftp-in-passive-mode.html) - Если на сервере открыть только 21 порт то ftp будет доступен только в active mode, но браузеры по умолчанию ломятся всегда в passive. Для того чтобы отрыть passive mode нужно подгрузить модуль ip_conntrack_ftp. modprobe ip_conntrack_ftp iptables -I RH-Firewall-1-INPUT 1 -p tcp -m state --state NEW -m tcp --dport 20 -j ACCEPT iptables -I RH-Firewall-1-INPUT 1 - [Mysql cache on ramdisk](https://itblog.su/mysql-cache-on-ramdisk.html) - Выносим кеш и временные таблицы mysql в память. для этого подключим ram-диск: mount -t tmpfs -o size=1024M tmpfs /tmp/mysql/ echo 'tmpfs /tmp/mysql tmpfs size=1024M,mode=01770,uid=100,gid=101,noatime 0 0' >> /etc/fstab В конфиге Mysql /etc/my.cnf добавляем директиву в блоке [mysqld]: tmpdir=/tmp/mysql/ И перезапускаем mysql сервер. увидеть создаваемые временные файлы можно с помощью lsof lsof /tmp | grep mysql - [Cisco 7900 series power supply](https://itblog.su/cisco-7900-series-power-supply.html) - Айпифоны Cisco серии 7900 поставляются без БП, блоки питания к ним нужно заказывать отдельно. Или питать по PoE или Cisco Inline power (в зависимости от модели). На данный момент я видел блоки питания от трех поставщиков, официально они все называются: CP-PWR-CUBE-3 P/N 341-0206-02 48V - 0.38A По факту сейчас у меня в руках три разных - [Set destination not works in Elastix after FreePBX upgrade](https://itblog.su/set-destination-not-works-in-elastix-after-freepbx-upgrade.html) - После обновления FreePBX до 2.8.1 в Elastix перестало работать Set Destination в Inbound routes. в старой версии были просто радиобатоны, выбираешь ринггруппу например и выпадающим меню выбираешь номер ринггруппы. В новой версии решили выпендриться, выбираешь из одного выподающего меню Extensions и появяется выпадающее меню с номерами. Вобщем новая версия не работает в Elastix. Фиксится проблема - [wish list](https://itblog.su/wish-list.html) - Делаю себе заметочку чтобы не забыть, домой надо купить: Cisco Linksys SLM2008 datashet in pdf Allied Telesis AT-WR2304N datashet in pdf - [VoIP трафик](https://itblog.su/voip-trafik.html) - Ставил на сервер с Asterisk мониторилку munin, решил поглядеть на графики. Забавно смотрится график с трафиком. Примерно такая же картинка на осциллографе если на вход подать НЧ сигнал, тот же микрофон. - [Cannot set LC_CTYPE to default locale](https://itblog.su/cannot-set-lc_ctype-to-default-locale.html) - Свежий VPS с Debian 5.0 на Virtuozo, в разных местах (например при apt-get install) сыпет ошибками: 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 локаль нужная ru_RU.utf8 - [How to split big file to volumes?](https://itblog.su/how-to-split-big-file-to-volumes.html) - Предположим возникла у вас задача разбить большой 11-ти гиговый файл на несколько кусков каждый по гигабайту (например для того чтобы записать на несколько лент или дисков), сделать это можно при помощи tar или split. tar -v -c -M --tape-length=1024000 --file=userspace-2010-10-28-part1.tgz userspace-2010-10-28.tgz Приготовьте том Номер 2 для `userspace-2010-10-28-part1.tgz' и нажмите Enter: n userspace-2010-10-28-part2.tgz Приготовьте том Номер - [Asterisk SIP and iptables](https://itblog.su/asterisk-sip-and-iptables.html) - Появилась задача, удаленному офису нужно подключаться к астериску, и тут и там статические "белые" IP адреса. Для решения задачи были добавлены правила: iptables -A RH-Firewall-1-INPUT -i eth0 -s 91.211.000.000 -j ACCEPT iptables -A RH-Firewall-1-INPUT -i eth0 -d 91.211.000.000 -j ACCEPT если нужно открыть доступ для всех внешних подключений по SIP, то правила следующие: iptables -A - [How to get nvidia graphic cards core temperature?](https://itblog.su/how-to-get-nvidia-graphic-cards-core-temperature.html) - Занялся снижением шума у своего рабочего компьютера, охлаждение процессора заменил на ASUS Triton 75, блок питания на Corsair [CMPSU-650TXEU], добротный корпус Thermaltake V3 black. Убрал лишние жесткие диски (оставил только два: системную 160-ку и теребайтник под сторадж), оставшиеся намертво прикрутил через резиновые сантехнические прокладочки. В итоге осталась только шумная GeForce 210, решил выкрутить из нее - [memcached on CentOS 5](https://itblog.su/memcached-on-centos-5.html) - при попытке установить memcached на CentOS 5 получаем ошибку: --> Missing Dependency: perl(Net::SSLeay) >= 1.33 is needed by package perl-AnyEvent-5.240-1.el5.rf.noarch (rpmforge) Error: Missing Dependency: perl(Net::SSLeay) >= 1.33 is needed by package perl-AnyEvent-5.240-1.el5.rf.noarch (rpmforge) решаем проблему так: rpm -qa | grep perl-Net-SSLeay | xargs rpm -e rpm -qa | grep perl-IO-Socket-SSL | xargs rpm -e wget - [Debian NO_PUBKEY 9AA38DCD55BE302B](https://itblog.su/debian-no_pubkey-9aa38dcd55be302b.html) - На свежесозданном контейнере OpenVZ с debian-minimal при apt-get update вылезла пара ошибок. Первая: W: There is no public key available for the following key IDs: 9AA38DCD55BE302B W: GPG error: http://security.debian.org lenny/updates Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9AA38DCD55BE302B W: You may want to run apt-get update - [Дело было вечером..](https://itblog.su/delo-bylo-vecherom.html) - делать было нечего.. друзья запускали новый офис в ноябрьские праздники, позвали на подмогу. вот собстна мои "пять копеек" На фото часть стойки с коммутационным оборудованием, патч панели, кабельные органайзеры и свитчи. Провайдерский Dlink DES-1228, ядро сети гигабитный Allied Telesis AT-8000GS/24 и аксесный свитч для админов Allied Telesis AT-8000s/24. Здание большое, т.ч. решено было вынести остальные - [turning of CallForwarding in Asterisk](https://itblog.su/turning-of-callforwarding-in-asterisk.html) - Для включения безусловной переадресации используется сервисный код *72. При его наборе система спросит номер абонента (по дефолту можно ввести любой) и номер на который надо переадресовывать. Отключить переадресацию можно набрав код *73 но только для своего номера, т.е. если ваш номер 101, а переадресацию надо отключить для 100, то ничего не получится. собственно переадресацию Call - [Supermicro разочаровывает..](https://itblog.su/supermicro-razocharovyvaet.html) - Новенький одноюнитовый сервер Supermicro 6016 проработал три дня и сдох.. сдохла видеокарта. какой-то двухгодовалый Supermicro 2U подохли все сетевые контроллеры, еще один такойже, сдох блок питания. как-то доверие к ним терять начинаю.. - [Cisco 7912 from SCCP to SIP and provisioning](https://itblog.su/cisco-7912-from-sscp-to-sip-and-provisioning.html) - Несколько лет назад покупал пару IP фонов Cisco CP-7912G= прошивал старенькой SIP прошивкой, настраивались аппараты вручную с клавиатуры аппарата, а тут вот захотелось заапдейтить firmware и заставить аппараты брать конфиг с tftp сервера. Захотел - сделал! теперь расскажу как. Будем считать что tftp сервер у вас уже есть и dhcp сервер отдает option-150. Будем считать - [static routes pushed through DHCP](https://itblog.su/static-routes-pushed-through-dhcp.html) - Моя домашняя сеть находится в 192.168.1.0/24, а голос вынесен в подсеть 192.168.0.0/24. доступ "в мир" роутится через 192.168.1.1 а в голос через 192.168.1.111 (да вот захотелось мне так). Домашние машины получают ip адреса из подсети 192.168.1.0/24, а айпифоны из подсети 192.168.0.0/24 соответственно по дефолту машины не могут получить доступа к фойсовым аппаратам (ATA и IP - [Elastix Flash Operator Panel default password](https://itblog.su/elastix-flash-operator-panel-default-password.html) - If you a new user to Elastix (Unified Communications platform Asterisk based) and trying to enter FOP (flash operator panel) first time, you'll need to enter a password that not the same as admin passowrd. Deffauld password stored in file /etc/amportal.conf section: [cc lang="ini"] # FOPPASSWORD: the secret code for performing transfers and hangups in - [Мультифон в Asterisk (trixbox/elastix/freePBX)](https://itblog.su/multifon-v-asterisk-trixboxelastixfreepbx.html) - Trunk Description: multifon Outbound Caller ID: 79297xxxxxx Trunk Name: multifon PEER Details: [cc lang="ini"] host=multifon.ru username=79297xxxxxx secret=PASSWORD_HERE type=peer dtmfmode=inband insecure=very fromuser=79297xxxxxx fromdomain=multifon.ru qualify=yes nat=yes [/cc] Register String: [cc lang="ini"]79297xxxxxx:PASSWORD_HERE@multifon.ru[/cc] - [MySQL 5 to MySQL 4.1 downgrade on Plesk](https://itblog.su/mysql-5-to-mysql-4-1-downgrade-on-plesk.html) - Для сборки mysql на потребуется установить: [cc lang="bash"] yum install gcc ncurses-devel gcc-c++ [/cc] берем тарбол mysql-4.1.22, распаковываем, собираем и ставим в /opt/mysql-4.1.22 дефолтная кодировка mysql будет cp1251 [cc lang="bash"] wget http://itblog.su/downloads/mysql-4.1.22.tar.gz tar zxf mysql-4.1.22.tar.gz cd mysql-4.1.22 ./configure --with-charset=cp1251 --with-collation=cp1251_general_ci \ --with-extra-charset=all --prefix=/opt/mysql-4.1.22 \ --without-docs --without-man --without-bench make && make install [/cc] теперь остановим mysql5 - [перенаправление stdout и stderr ](https://itblog.su/perenapravlenie-stdout-i-stderr.html) - Коротко и ясно расскажу о пере направлении stdout и stderr. stdout это нормальный вывод, stderr это ошибки. [root@shakirov ~]# ls /opt/ /blah ls: /blah: Нет такого файла или каталога /opt/: firebird iso lost+found красным выделен stderr, а синим stdout. По умолчанию в output отправляется и stdout и stderr. перенаправления stdout в /tmp/stdout используйте конструкцию: [root@shakirov - [installing CentOS from USB pen drive](https://itblog.su/installing-centos-from-usb-pen-drive.html) - Понадобилось у становить CentOS на машину которая не умеет загружаться по сети и не оказалось под рукой CD-ROM. Создаем загрузочную флешку для установки CentOS вставляем флешку в usb порт, появляется новое устройство /dev/sdd теперь запустим fdisk fdisk /dev/sdd удалим все разделы создадим: /dev/sdd1 размером 15 MB /dev/sdd2 всё остальное пространство /dev/sdd1 нужно сделть Bootable, т.е. - [php memcache and memcached on CentOS 5 and up](https://itblog.su/php-memcache-and-memcached-on-centos-5-and-up.html) - The first thing we should do is install rpmforge repo if still not, you can use this HOWTO. the next step is installing memcached and libmemcache [cc lang="bash"]yum install libmemcache memcached -y[/cc] starting memcached: [cc lang="bash"]memcached -d -m 256 -l 127.0.0.1 -p 11211 -u nobody[/cc] you can add a line above to /etc/rc.local to start - [отобразить конфиг без комментариев](https://itblog.su/otobrazit-konfig-bez-kommentariev.html) - Иногда нужно посмотреть конфиг не перегружая внимание чтением комментариев, я это делаю так: [cc lang="bash"] grep -v -E "^;|^$" /usr/local/lib/php.ini [/cc] или так: [cc lang="bash"] grep -v -E "#|^$" /usr/local/apache2/conf/httpd.conf [/cc] Хочу уточнить относительно отличий ^# и #. Первое это все строки начинающиеся с #, второе все строки содержащие #. - [кодировка bitrix модуль Сотрудники ](https://itblog.su/kodirovka-bitrix-modul-sotrudniki.html) - После переноса битрикса на новый сервер с php 5.2.12 в модуле "Сотрудники" и в "структура компании" всё перекосило. в первом случае это крякозябры вместо алфавитного указателя, во втром вообще весь html перекосило. как выяснилось причиной является то что в php старше 5.2.8 директиву mbstring.func_overload нельзя задать из .htaccess простым php_value mbstring.func_overload 2 соответственно решением является - [Tekram DC-395UW under CentOS](https://itblog.su/tekram-dc-395uw-under-centos.html) - Из штатов приехала коробка с SCSI дисками для HP-шных серверов, соответственно возникла необходимость прочекать их все перед тем как везти в датацентр. В закромах нашелся древний контроллер Tekram DC-395UW, SCSI кабель 68-ми пиновый и заранее купленный переходник на LVD 80 pin. В биосе контроллера диски прекрасно видятся, но при попытке установить CentOS на диски воткнутые - [OpenVZ: резервное копирование и клонирование контейнеров](https://itblog.su/openvz-rezervnoe-kopirovanie-i-klonirovanie-kontejjnerov.html) - В последние несколько месяцев активно работаю с OpenVZ. Соответственно вопрос который возникает после того как система развернута, это резервное копирование. Расскажу как реализовать его проще всего, на примере CentOS 5.3 [cc lang="bash"] [root@root ~]# yum install cstream perl-LockFile-Simple [root@root ~]# rpm -Uvh http://www.proxmox.com/cms_proxmox/cms/upload/vzdump/vzdump-1.1-2.noarch.rpm [root@root ~]# rpm -Uvh http://www.proxmox.com/cms_proxmox/cms/upload/vzdump/vzdump-1.2-4.noarch.rpm [root@root ~]# vzdump --help Unknown option: help - [вывод последних записей в sidebar wordpress](https://itblog.su/vyvod-poslednikh-zapisejj-v-sidebar-wordpress.html) - Добавить в sidebar.php (необходимого шаблона) следующую строчку: [cc lang="php"] Последние записи [/cc] - [Полезные настройки для verlihub](https://itblog.su/poleznye-nastrojjki-dlya-verlihub.html) - Блокировка за рекламу хабов [cc lang="bash"] !addforbid dchub:// -f 1 -C 2 -r "реклама_ban_1y" [/cc] Антиспам: [cc lang="bash"] !addforbid "(? - [qmail smart relaying](https://itblog.su/qmail-smart-relaying.html) - в одной из статей я описывал как настроить рлеинг исходящей почты через другой сервер. сейчас опишу как это сделать если используется Qmail. [cc lang="bash"]echo ":mxr.domain.com" > /var/qmail/control/smtproutes[/cc] где mxr.domain.com это наш релей. после чего делаем рестарт qmail. например /etc/init.d/qmaild restart - [flashing cisco 7912 to SIP](https://itblog.su/flashing-cisco-7912-to-sip.html) - В офисе после скачка напряжения, один из айпифонов Cisco 7912 сдох. Внешне это выгладело так: дисплей не горит, но горит кнопка speaker. Судя по tcpdump телефон таки шлет запросы к dhcp, этим и воспользуемся. в /etc/dhcpd.conf добавим пару строчек (полностью конфиг приведу ниже): [cc lang="bash"] option option-150 code 150 = ip-address; option option-150 192.168.11.200; [/cc] - [vzrst module is not loaded on the destination node](https://itblog.su/vzrst-module-is-not-loaded-on-the-destination-node.html) - понадобилось мигрировать OpenVZ контейнер с одной физической машины на другую. Номер контейнера 140 используем vzmigrate [cc lang="bash"] [root@s24 ~]# vzmigrate --online 91.195.xxx.xxx 140 OPT:--online OPT:91.195.xxx.xxx Starting online migration of CT 140 to 91.195.xxx.xxx Error: vzrst module is not loaded on the destination node Error: Can't continue online migration [/cc] идем на destanation машину и смотрим, - [Cisco 7940](https://itblog.su/cisco-7940.html) - В руках оказалось пару Cisco IP PHONE 7912G и один Cisco ip phone 7940G. Мини хауту по последнему: restart/перезапуск аппарата: 1. [*] + [6] + [settings] reset to factory defaults/сброс настроек аппарата: 1. делаем рестарт и держим клавишу [#] 2. как появится надпись "reset key sequence detected" отпускаем [#] 3. по очереди начнут моргать кнопки - [перенаправление почты пользователя root](https://itblog.su/perenapravlenie-pochty-polzovatelya-root.html) - В linux системные отчеты от того же LogWatch складываются пользователю root в /var/spool/mail/root но можно перенаправить их на ваш привычный ящик электронной почты, для этого в файле /etc/aliases отыщите строчку: [cc lang="bash"] # Person who should get root's mail #root: marc [/cc] и замените на (вместо user@server.tld укажите свой имэйл): [cc lang="bash"] # Person who - [как нагнать траф?](https://itblog.su/kak-nagnat-traf.html) - Возникла типичная для многих ситуация, на одном из серверов в одном из ДЦ оказалось что входящего трафа больше чем исходящего. причем нехватает пару терабайт исходящего. ничего страшного :) /dev/urandom безлимитный, осталось только выбрать ДЦ и сервер на который можно его перегнать. А перегонять будем так: [cc lang="bash"] cat /dev/urandom | ssh server 'cat > /traff' - [HyperVM Installation](https://itblog.su/hypervm-installation.html) - Компания LxLabs разработала удобную панель управления виртуальными машинами, и назвала её HyperVM. HyperVM ставится на свежеустановленный сервер и позволяет создавать и управлять виртуальными машинами VPS/VDS на базе популярных систем виртуализации OpenVZ (Open Virtuozzo) или Xen. OpenVZ наиболее прост (для него впринципе и панель то не нужна вовсе), XEN более сложная технология но более "навороченная" в - [память в Proliant HP DL-365 G1 (R01)](https://itblog.su/pamyat-v-proliant-hp-dl-365-g1-r01.html) - Небольшая заметка, чтобы не забыть. В сервер HP Proliant DL-365 G1 (R01) подходит идеально Kingston KVR667D2S4P5/1G - [Setting timezone in CentOS ](https://itblog.su/setting-timezone-in-centos.html) - Если Вы берете сервер где-то в европе, то наверняка временная зона там не MSD (Москва). Семнить timezone просто: [cc lang="bash"] [root@mx ~]# date Wed May 13 23:10:23 PDT 2009 [root@mx ~]# rm -rf /etc/localtime [root@mx ~]# ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime [root@mx ~]# date Thu May 14 10:13:03 MSD 2009 [/cc] - [резервное копирование в Linux - duplicity HOW-TO](https://itblog.su/rezervnoe-kopirovanie-v-linux-duplicity-how-to.html) - Самое простое что можно придумать, когда админ задумывается о резервном копировании данных это набор самописных скриптов с использованием tar. Неплохое решение, но заморачивание с этим насаждением скриптов, из которых в конце концов придется вырасти, пустая трата времени на мой взгляд. предлагаю простое решение, как в разворачивании, так и в эксплуатации. Покажу на примере CentOS. Подключите - [HyperVM - Alert: not_in_list_of_allowed_ip](https://itblog.su/hypervm-alert-not_in_list_of_allowed_ip.html) - Панель управления виртуальными серверами HyperVM лимитирует доступ по IP адресу, если адреса нет в базе, то вход будет заблокирован с сообщением: Alert: not_in_list_of_allowed_ip Лечится просто, если есть root доступ к корневой системе. Зайдите на корневую машину root-ом и выполните команду: [cc lang="bash"]/script/clearallowedblockedip --class=client --name=admin[/cc] после чего снова выполните вход в панель. - [XEN bug on RTL8111/8168B](https://itblog.su/xen-bug-on-rtl81118168b.html) - На свежеустановленный CentOS 5.3 был поставлен Xen, после ребута отмерла сеть. В dmesg сыпятся ошибки: vif0.0: received packet with own address as source address причиной тому совпадение HWaddr для eth0 и xenbr0 (каким-то боком eth0 перекосило). фиксится крайне просто, может быть не так элегантно как хотелось бы, но просто. В /etc/rc.local добавляем: [cc lang="bash"] /sbin/ip - [WebVZ панель управления вирутальными серверами OpenVZ](https://itblog.su/webvz-panel-upravleniya-virutalnymi-serverami-openvz.html) - Одна из панелей управления корневой системой OpenVZ написаная на ruby называется, WebVZ. Очень простая панель, не есть ресурсов, минималистична предельно. Думаю многоим понравится. ставится на CentOS без запинки, привожу сценарий установки: [cc lang="bash" [root@vps ~]# yum install -y rubygems ruby ruby-rdoc rubygem-sqlite3-ruby ruby-libs ruby-irb rubygem-fastthread [root@vps ~]# gem update --system [root@vps ~]# gem install -v=2.1.0 - [Настройка сети в CentOS Linux](https://itblog.su/nastrojjka-seti-v-centos-linux.html) - тема простая, но судя по вопросам в icq, вопросы по ней еще возникают. Попытаюсь всё в одной статье описать. Итак, самое превое, это просмотр настроек сети: [cc lang="bash"] [root@kazan ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:19:5B:72:57:C5 inet addr:192.168.12.200 Bcast:192.168.12.255 Mask:255.255.255.0 inet6 addr: fe80::219:5bff:fe72:57c5/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:10459189 errors:0 dropped:0 overruns:0 - [Репозитарии которые я использую в CentOS](https://itblog.su/repozitarii-kotorye-ya-ispolzuyu-v-centos.html) - CentOS 5 i386 [cc lang="bash"]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/5/i386/rpmfusion-free-release-5-0.1.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/nonfree/el/updates/testing/5/i386/rpmfusion-nonfree-release-5-0.1.noarch.rpm [/cc] CentOS 5 x86_64 [cc lang="bash"]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-3.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/5/x86_64/rpmfusion-free-release-5-0.1.noarch.rpm rpm -Uvh http://download1.rpmfusion.org/nonfree/el/updates/testing/5/x86_64/rpmfusion-nonfree-release-5-0.1.noarch.rpm [/cc] CentOS 4 i386 [cc lang="bash"]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/i386/epel-release-4-9.noarch.rpm [/cc] CentOS 4 x86_64 [cc lang="bash"]rpm -Uvh http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.x86_64.rpm rpm -Uvh http://download.fedora.redhat.com/pub/epel/4/x86_64/epel-release-4-9.noarch.rpm - [swith betwen kde/gnome in Centos/RHEL/Fedora](https://itblog.su/swith-betwen-kdegnome-in-centosrhelfedora.html) - Если нужно поменять Gnome на KDE глобально для всей машины, то: [cc lang="bash"] echo "DESKTOP=KDE" > /etc/sysconfig/desktop echo "DISPLAYMANAGER=KDE" >> /etc/sysconfig/desktop [/cc] если для какого то пользователя отдельно: [cc lang="bash"] [root@support ~]# su username [username@support root]$ switchdesk kde Red Hat Linux switchdesk 4.0 Copyright (C) 1999-2004 Red Hat, Inc Redistributable under the terms of the - [Centos запуск KDE при старте системы](https://itblog.su/centos-zapusk-kde-pri-starte-sistemy.html) - Предположим, установили вы CentOS на свой десктоп, при старте системы вы получаете голую консоль, а хотелось бы увидеть KDE. Открывем /etc/inittab ищем строчку id:3:initdefault: в ней меняем 3 на 5. В случае если стартует KDE/Gnome а нужна голая консоль, действие обратное. - [ Table is marked as crashed and should be repaired](https://itblog.su/table-is-marked-as-crashed-and-should-be-repaired.html) - Просматривая /var/log/mysql/error.log обнаруживаем ошибки вида: 090316 20:55:03 [ERROR] /usr/sbin/mysqld: Table './user_base/table' is marked as crashed and should be repaired если crashed всего несколько таблиц, то можно выполнить repair table из консольного mysql клиента или phpmyadmin при помощи sql запроса: [cc lang="sql"] > USE user_base > REPAIR TABLE table; [/cc] Если в базе crashed много таблиц, - [простановка прав на папки и файлы сайта](https://itblog.su/prostanovka-prav-na-papki-i-fajjly-sajjta.html) - Пришла заявка от клиента, человек по незнанию поставил рекурсивно на все файлы и папки своих сайтов права доступа 777. Захотелось человеку выставить 755 на папки и 644 на файлы, делать вручную это при паре десятков доменов и паре тысяч файлов упрятанных в запутанной структуре папок ну просто нереально. Тут ему пришел на помощь простой скрипт - [Установка FFMPEG и FFMPEG-PHP на CentOS](https://itblog.su/ustanovka-ffmpeg-i-ffmpeg-php-na-centos.html) - Выкачиваем сорцы: [cc lang="bash"]cd /usr/local/src wget http://www3.mplayerhq.hu/MPlayer/releases/codecs/essential-20061022.tar.bz2 wget http://rubyforge.org/frs/download.php/9225/flvtool2_1.0.5_rc6.tgz wget http://easynews.dl.sourceforge.net/sourceforge/lame/lame-3.97.tar.gz wget http://superb-west.dl.sourceforge.net/sourceforge/ffmpeg-php/ffmpeg-php-0.5.0.tbz2 wget http://downloads.xiph.org/releases/ogg/libogg-1.1.3.tar.gz wget http://downloads.xiph.org/releases/vorbis/libvorbis-1.1.2.tar.gz[/cc] Распаковываем: [cc lang="bash"]bunzip2 essential-20061022.tar.bz2; tar xvf essential-20061022.tar tar zxvf flvtool2_1.0.5_rc6.tgz tar zxvf lame-3.97.tar.gz bunzip2 ffmpeg-php-0.5.0.tbz2; tar xvf ffmpeg-php-0.5.0.tar tar zxvf libogg-1.1.3.tar.gz tar zxvf libvorbis-1.1.2.tar.gz[/cc] Устанавливаем кодеки: [cc lang="bash"]mkdir /usr/local/lib/codecs/ mv essential-20061022/* /usr/local/lib/codecs/ chmod -R 755 /usr/local/lib/codecs/[/cc] Ставим SVN/Ruby: - [possible SYN flooding on port 80. Sending cookies. ](https://itblog.su/possible-syn-flooding-on-port-80-sending-cookies.html) - Начал падать апач, при ближайшем рассмотрении dmesg выдал: possible SYN flooding on port 80. Sending cookies. посмотрим кто же у нас лидер по SYN запросам: [cc lang="bash"]netstat -n -p | grep SYN_REC| awk '{print $5}'|awk -F: '{print $1}' | sort -n | uniq -c | sort -nr | head -n10[/cc] на первом месте 88.147.212.229 с - [резервное копирование (backup) всех баз mysql](https://itblog.su/rezervnoe-kopirovanie-backup-vsekh-baz-mysql.html) - Прошелся по нескольким блогам. почитал и удивился тому что для того чтобы сделать дампы всех баз mysql люди используют mysqldump --all-databases. На мой взгляд вариант более чем неудобный. Предложу более правильный вариант, снимаются дампы со всех баз данных каждая база в отдельный файл. Для пояснения: /backup/mysql/ - папка куда будем складывать дампы. megapass - пароль - [FreeBSD free memory stats](https://itblog.su/freebsd-free-memory-stats.html) - В linux-ах есть полезная тулза free, вывод её привожу ниже: [cc lang="bash"] [root@iit ~]# free total used free shared buffers cached Mem: 4148892 1736588 2412304 0 207108 859128 -/+ buffers/cache: 670352 3478540 Swap: 2048276 32812 2015464 [/cc] В FreeBSD такой утилиты увы нет, почти нет. Замены есть две, perl скрипт (freebsd-memory -- List Total System - [How to repair a corrupt Firebird database?](https://itblog.su/how-to-repair-a-corrupt-firebird-database.html) - Частично повредилась база данных Firebird, ругается и не дает делать бакапы. К счастью в серверной установке Firebird есть утилиты для восстановления БД (если повреждения не серьезные). Ниже листинг батника. [cc lang="dos"] echo подготавливаем базу к дампу gfix.exe -mend -user SYSDBA -pas masterkey server:c:\databases\base.gdb echo делаем дамп gbak.exe -b -g -user SYSDBA -pas masterkey server:c:\databases\base.gdb c:\databases\backup\base.bak - [How to kill TCP connection in CentOS](https://itblog.su/how-to-kill-tcp-connection-in-centos.html) - Убить tcp соединения в Centos (да и не только) можно утилитой tcpkill. Утилита входит в пакет dsniff, ставим из репозитория epel (на данный момент в этом репозитарии dsniff новее) или rpmforge под CentOS 5.2 [cc lang="bash"] [root@srv001 ~]# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm [root@srv001 ~]# yum install dsniff [/cc] Ну, и несколько примеров использования: 1. убить все - [соответствие чипов памяти и названия модуля](https://itblog.su/sootvetstvie-chipov-pamyati-i-nazvaniya-modulya.html) - Делаю запись для себя, чтобы не забыть :) Название модуля Частота шины Тип чипа Пиковая скорость передачи данных PC2-3200 200 МГц DDR2-400 3.2 PC2-4200 266 МГц DDR2-533 4.2 ГиБ/с PC2-5300 333 МГц DDR2-667 5.3 ГиБ/с PC2-5400 337 МГц DDR2-675 5.4 ГиБ/с PC2-5600 350 МГц DDR2-700 5.6 ГиБ/с PC2-5700 355 МГц DDR2-711 5.7 ГиБ/с PC2-6000 375 МГц DDR2-750 6.0 ГиБ/с PC2-6400 400 - [Pandion Reconnect](https://itblog.su/pandion-reconnect.html) - В популярном Jabber клиенте Pandion есть одна неприятность, не умеет он делать реконнект если потеряно сединение с сервером. Лечится это правкой файла C:\Program Files\Pandion\src\main\XMPPOnStream.js меняем блок (в районе 297-ой строки): [cc lang="javascript"] else if ( ReceivedXML.documentElement.selectSingleNode( '/stream:error' ) ) { if ( external.windows.Exists( 'signup' ) ) OnLoginAbort(); else { external.globals( 'XMPPReconnect' ) = false; var - [календарь в sidebar wordpress](https://itblog.su/kalendar-v-sidebar-wordpress.html) - Понадобилось всабачить календарь в готовый шаблон wordpress. лезем в папку с шаблоном, откпываем sidebar.php и вставляем. [cc lang="php"] [/cc] - [Неработает восстановление пароля wordpress](https://itblog.su/nerabotaet-vosstanovlenie-parolya-wordpress.html) - В версии 2.5.1 популярного блогового движка WordPress появился неприятный баз с восстановлением паролей. Симптомы: при запросе восстановления пароля приходит письмо с ссылкой подтверждения (ссылка всегда одна и таже), при клике на ссылку Wordpress ругается "Извините, этот ключ неверен." Resolution: Вносим правки в два файла wp-login.php и /wp-includes/pluggable.php [cc lang="php"] $key = $wpdb->get_var($wpdb->prepare("SELECT user_activation_key FROM $wpdb->users - [Ajax Edit Comments - проблемы с кодировкой.](https://itblog.su/ajax-edit-comments-problemy-s-kodirovkojj.html) - Есть такой замечательный плагин, WP Ajax Edit Comments. Позволяет он очень удобно редактировать комментарии, как хозяину блога (ссылочки убрать, например), так и комментатору. Но вот незадача, плагин этот выводит AJAX форму крякозябрами. Лечится это добавлением в файл wp-content/plugins/wp-ajax-edit-comments/php/comment-editor.php строчки [cc lang="php"]header("Content-Type:text/html;charset=utf-8");[/cc] - [создание и копирование ssh ключа на удалённый сервер](https://itblog.su/sozdanie-i-kopirovanie-ssh-klyucha-na-udaljonnyjj-server.html) - Создаём пару ключей (публичный и приватный) на локальной машине. Вместо пароля жмём Enter (удобно для безпарольной авторизации по ssh). [cc lang="bash"] [root@dev2 ~]# ssh-keygen -t dsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved - [sendmail: rejecting connections on daemon MTA: load average](https://itblog.su/sendmail-rejecting-connections-on-daemon-mta-load-average.html) - У sendmail есть такая забавная настройка, позволяющая не релеить письма в случае высокого load average. По умолчанию, если не ошибаюсь, значение авг не должно превышать 12-ти. Если avg выше, то будут лезть ошибки вроде этой: sendmail: rejecting connections on daemon MTA: load average: 26 Лечится это внесением в конфиг /etc/mail/sendmail.cf строчек: [cc lang="bash"] O QueueLA=100 - [монтирование раздела с кирилицей в именах файлов](https://itblog.su/montirovanie-razdela-s-kirilicejj-v-imenakh-fajjlov.html) - Ситуация, CentOS 5.2 с локалью ru_RU.UTF-8 и диск снятый с виндовой машины, соответственно все имена файлов в кодировке windows-1251. Задача: расшарить диск по ftp так чтобы файлы с кириллическими именами отображались нормально. Устанавливаем локаль ru_RU.CP1251 [cc lang="bash"][root@dev2 ~]# localedef --no-archive -c -f CP1251 -i ru_RU ru_RU.CP1251[/cc] Монтируем диск: [cc lang="bash"][root@dev2 ~]# mount -t ntfs-3g -o - [аналог seq для freeBSD](https://itblog.su/analog-seq-dlya-freebsd.html) - утилита seq присутствующая в linux весьма полезна, что она делает? просто считает от и до. Например:[cc lang="bash"][root@rhca ~]# seq 1 5 1 2 3 4 5 [/cc] В написании минискриптов, вещь не заменимая.. но в FreeBSD нет утилиты seq, зато есть аналог: jot Приведу пример, например есть логи /var/httpd/logs/error_log.0 ... error_log.9 нужно их "обнулить" в - [смена locale на Linux](https://itblog.su/smena-locale-na-linux.html) - [cc lang="bash"] #localedef --no-archive -c -f CP1251 -i ru_RU ru_RU.CP1251 #export LC_ALL="ru_RU" #cat /etc/sysconfig/i18n LANG="ru_RU.CP1251" SYSFONT="UniCyr_8x16.psf.gz" SYSFONTACM="cp1251" LC_ALL="ru_RU.CP1251" #cd /etc/sysconfig/console/ #wget http://itblog.su/wp-content/uploads/2008/03/unicyr_8x16psf.gz #cd /lib/kbd/consolefonts/ #wget http://itblog.su/wp-content/uploads/2008/03/unicyr_8x16psf.gz #locale LANG=ru_RU.CP1251 LC_CTYPE="ru_RU.CP1251" LC_NUMERIC="ru_RU.CP1251" LC_TIME="ru_RU.CP1251" LC_COLLATE="ru_RU.CP1251" LC_MONETARY="ru_RU.CP1251" LC_MESSAGES="ru_RU.CP1251" LC_PAPER="ru_RU.CP1251" LC_NAME="ru_RU.CP1251" LC_ADDRESS="ru_RU.CP1251" LC_TELEPHONE="ru_RU.CP1251" LC_MEASUREMENT="ru_RU.CP1251" LC_IDENTIFICATION="ru_RU.CP1251" LC_ALL= [/cc] UniCyr_8?16.psf.gz - [Apache: (28)No space left on device](https://itblog.su/apache-28no-space-left-on-device.html) - По разным причинам (например утечка памяти в mod_perl), заканчиваются свободные семафоры, Apache падает, и подыматься отказывается, мотивируя это пространной ошибкой: (28)No space left on device Допустим апач работает от пользователя httpd, тогда для того чтобы посмотреть занятые семафоры сделаем: ipcs -s | grep httpd ну и собственно живительная пилюля, убивающая занятые семафоры: [cc lang="bash"] ipcs - [linux hardware lister - выводим список железа](https://itblog.su/linux-hardware-lister-vyvodim-spisok-zheleza.html) - Несколько статей в этом блоге посещалось определению материнской платы, дисковой системы. Наткнулся на замечательную тулзу которая позволяет определить ещё остальное. Установка и пример использования ниже. Ставить будем на Centos 5.2 из rpmforge. [cc lang="bash"] [root@dev2 ~]# yum install lshw -y [root@dev2 ~]# lshw -short H/W path Device Class Description ====================================================== system VT82C694X /0 bus 694X-686 - [Добавляем диапазон ip адресов.](https://itblog.su/dobavlyaem-diapazon-ip-adresov.html) - Без лишних слов привожу листинги, однозначно работает это в Red Hat, Fedora Core ну и в CentOS на примере которого и буду показывать. [cc lang="bash"] [root@dev2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0:0 # VIA Technologies, Inc. VT6105 [Rhine-III] DEVICE=eth0:0 HWADDR=00:04:23:dc:ef:29 ONBOOT=yes NETMASK=255.255.255.0 IPADDR=192.168.12.222 GATEWAY=192.168.12.100 TYPE=Ethernet [/cc] [cc lang="bash"] [root@dev2 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0-range0 IPADDR_START=192.168.12.223 IPADDR_END=192.168.12.230 CLONENUM_START=1 [/cc] рестартим сеть - [выводим список процессов windows в коммандной строке](https://itblog.su/vyvodim-spisok-processov-windows-v-kommandnojj-stroke.html) - Список текущих процессов можно вывести при помощи Windows Instrumentation command-line interface (WMIC) или pstools, ниже несколько примеров. список процессов локальной машины: [cc lang="dos"]wmic process get description,executablepath[/cc] Список процессов удалённой машины: [cc lang="dos"]wmic /node:имя_удалённой_машины process get description,executablepath[/cc] Вывод списка можно направить в файл: [cc lang="dos"]wmic /output:c:\process.txt process get description,executablepath [/cc] Ну и любимые PsTools, конечно же: - [proftpd докачка файлов](https://itblog.su/proftpd-dokachka-fajjlov.html) - В дефолтной установке proftpd докачка файлов отключена и ftp клиент может выдавать ошибку: Append/Restart Not permitted, try again Исправить ситуацию поможет директива, прописанная в proftpd.conf: AllowStoreRestart on - [Смена временной зоны в Linux](https://itblog.su/smena-vremennojj-zony-v-linux.html) - Меняем Timezone на машине с кривым временем Fri Aug 1 15:03:20 EDT 2008 [cc lang="bash"] mv /etc/localtime /etc/localtime-old ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime ntpdate -s time.nist.gov hwclock --systohc [/cc] Поясниловка или что было сделано. Убираем текущий файл таймзоны, делаем симлинк на временную зону Москвы, синхронизируем системное время с ntp сервером, устанавливаем апаратные часы в соответствии с - [proftpd vs symlinks](https://itblog.su/proftpd-vs-symlinks.html) - Описываю ситуацию, на сервере установлен proftpd (CentOS 5.2 Linux), включен анонимный доступ для всех желающих, расшарены папки: /var/ftp/pub /var/ftp/uploads У юзера shakirov в хоумдире есть папка iso с кучей iso-шек которые он хочет предоставить в анонимный доступ. Первое что приходит в голову это ln -s /home/shakirov/iso /var/ftp/pub симлинк создаётся прекрасно, но доступа как небыло так - [Invalid command 'AuthDigestProvider'](https://itblog.su/invalid-command-authdigestprovider.html) - Если включить дефолтный конфиг /usr/local/apache2/conf/extra/httpd-dav.conf веб сервера Apache 2 и стартануть апача, то возможна ошибка: [cc lang="bash"] Syntax error on line 30 of /usr/local/apache2/conf/extra/httpd-dav.conf: Invalid command 'AuthDigestProvider', perhaps misspelled or defined by a module not included in the server configuration [/cc] а всё по тому что апач был собран без параметра --enable-auth-digest - [whois и домены .me](https://itblog.su/whois-i-domeny-me.html) - Буквально месяц назад была открыта регистрация доменов в зоне .me для всех желающих. Зона .me пренадлежит стране Montenegro (кусок югославии). По информации от IANA доменная зона обслуживается whois службой whois.nic.me, но есть несколько сложностей с просмотром whois данных по доменам, например в CentOS 5.2 jwhois-3.2.3-8.el5 при запросе любого домена, запрос направляется на whois.internic.net, который в - [Warning: Persistent movies have been disabled in php.ini](https://itblog.su/warning-persistent-movies-have-been-disabled-in-phpini.html) - При использовании ffmpeg-php вероятно возникнет ошибка: Persistent movies have been disabled in php.ini Правится двумя способами, первый это включение persistent для ffmpeg в php.ini [cc lang="bash"] [ffmpeg] ffmpeg.allow_persistent=on extension=ffmpeg.so [/cc] и второй это в функции ffmpeg_movie() вторым параметром поставить 0. Пример ниже: [cc lang="php"]ffmpeg_movie('/usr/local/apache2/htdocs/clock.avi', 1);[/cc] - [php-ffmpeg установка на Centos 5](https://itblog.su/php-ffmpeg-ustanovka-na-centos-5.html) - Статья Установка FFMPEG и FFMPEG-PHP на CentOS вызвала много вопросов. Решил сделать упрошённую инструкцию для CentOS release 5.2 (Final) (2.6.18-92.el5 i386). Проверено на нескольких серверах. [cc lang="bash"] wget http://www.mplayerhq.hu/MPlayer/releases/codecs/mplayer-codecs-20061022-1.i386.rpm wget http://www.mplayerhq.hu/MPlayer/releases/codecs/mplayer-codecs-extra-20061022-1.i386.rpm rpm -ivh mplayer-codecs-* rpm -ivh /home/distr/CentOS/automake-1.9.6-2.1.noarch.rpm rpm -ivh /home/distr/CentOS/libtool-1.5.22-6.1.i386.rpm yum install -y flvtool2 lame lame-devel libogg libogg-devel libvorbis libvorbis-devel ffmpeg ffmpeg-devel mplayer mencoder wget - [apache 2 directroy listing encoding](https://itblog.su/apache-2-directroy-listing-encoding.html) - Дефолтная установка Apache 2.2.9, листинги директорий выводятся в кодировке ISO-8859-1 соответственно русские даты создания документа выводятся в крякозябрах (по тому как они в utf-8) Для того чтобы выводилось нормально, нужно в конфиге апача прописать [cc lang="bash"] IndexOptions Charset=UTF-8 [/cc] или тоже самое в .htaccess - [сборка php5 на Centos и ошибка U8T_CANONICAL is missing](https://itblog.su/sborka-php5-na-centos-i-oshibka-u8t_canonical-is-missing.html) - При сборке php с влюченой опцией imap может возникнуть ошибка: checking for U8T_CANONICAL... no configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information. фиксится установкой libc-client-2004g и libc-client-devel-2004g Рецепт для CentOS Linux - [undefined reference to `ap_cache_cacheable_hdrs_out`](https://itblog.su/undefined-reference-to-ap_cache_cacheable_hdrs_out.html) - При сборке Apache 2 возникает ошибка: undefined reference to `ap_cache_cacheable_hdrs_out` причина возникновения: apache 2 был сконфигурирован с включением mod_mem_cache (параметр --enable-mem-cache) способ пофиксить: при конфигурировании (./configure) добавьте ключ --enable-cache - [Создаём локальный репозитарий rpmforge (dag) для centos 5 (RHEL5)](https://itblog.su/sozdajom-lokalnyjj-repozitraijj-rpmforge-dag-dlya-centos-5-rhel5.html) - Захотелось странного, локальный репозитарий пакетов rpmforge (он же dag). создаём папку для хранилища /usr/local/apache/htdocs/mirror/centos/rpmforge/ синхронизируем пакеты rsync примерно так: [cc lang="bash"] rsync -avrt rsync://apt.sw.be/pub/freshrpms/pub/dag/redhat/el5/en/i386/dag/ /home/shakirov/dag/dag/ rsync -avrt rsync://apt.sw.be/pub/freshrpms/pub/dag/redhat/el5/en/i386/dries/ /home/shakirov/dag/dries/ rsync -avrt rsync://apt.sw.be/pub/freshrpms/pub/dag/redhat/el5/en/i386/base/ /home/shakirov/dag/base/ ln -s dag rpmforge ln -s dag/RPMS/ RPMS.dag ln -s dag/RPMS/ RPMS.rpmforge ln -s dries/RPMS/ RPMS.dries [/cc] - [VNC сервер в linux установка и настройка](https://itblog.su/vnc-server-v-linux-ustanovka-i-nastrojjka.html) - VNC расшифровывается как Virtual Network Computing, это система удалённого доступа к рабочему столу компьютера, использующая протокол RFB (Remote FrameBuffer). VNC полезна при необходимости управления удалённой машиной через графический интерфейс. Работает как в windows, так и в linux. Преходим к установке vnc сервера на примере Centos 5. Исходить будем из того что нужно включить vnc для - [Раскладка клавиатуры в иксах linux](https://itblog.su/raskladka-klaviatury-v-iksakh-linux.html) - Решил поставить на десктоп CentOS 5.2. Выбирал из трёх вариантов Fedora Core 9, openSUSE 11, CentOS 5.2. Суся и федора не впечатлили, в первую очередь тормозами. CentOS на стареньком железе: AMD Sempron(tm) Processor 2500+ c 1230360 kB ОЗУ, работает очень шустро, даже если сравнить с установленным на той же машине Windows Server 2003 (правда на - [xCache vs eAccelerator](https://itblog.su/xcache-vs-eaccelerator.html) - суть теста, php скрипт инклюдит 10 000 пустых файлов по маске test*.php ставим eAccelerator Including 10000 blank files takes: 77.408 seconds. Including 10000 blank files takes: 0.964 seconds. Including 10000 blank files takes: 1.241 seconds. Including 10000 blank files takes: 1.010 seconds. Including 10000 blank files takes: 1.085 seconds. на том же количестве включаемых файлов - [Устанавливаем xCache с php 5.2.6 на CentOS](https://itblog.su/ustanavlivaem-xcache-s-php-526-na-centos.html) - [cc lang="bash"] [root@rhca /]# wget http://xcache.lighttpd.net/pub/Releases/1.2.2/xcache-1.2.2.tar.gz [root@rhca /]# tar zxf xcache-1.2.2.tar.gz [root@rhca /]# cd xcache-1.2.2 [root@rhca /]# phpize [root@rhca /]# ./configure --enable-xcache [root@rhca /]# make && make install [/cc] теперь правим php.ini примерно так: [cc lang="bash"] [root@rhca /]# cat /usr/local/Zend/etc/php.ini [xcache-common] ;; install as zend extension (recommended), normally "$extension_dir/xcache.so" zend_extension = /usr/local/lib/php/extensions/no-debug-non-zts-20060613/xcache.so ; zend_extension_ts = - [IonCube Loader php5 FreeBSD 6.1](https://itblog.su/ioncube-loader-php5-freebsd-61.html) - [cc lang="bash"] wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_fre_6_x86.tar.gz tar zxf ioncube_loaders_fre_6_x86.tar.gz mv ioncube /usr/local/ [/cc] В /usr/local/etc/php.ini ставить: [cc lang="bash"] zend_extension = /usr/local/ioncube/ioncube_loader_fre_5.2.so zend_extension_ts = /usr/local/ioncube/ioncube_loader_fre_5.2_ts.so [/cc] замечания: тупо вставлять кусок цитированый выше ненужно, циферки (в моём случае 5.2) указывают на версию php. В случае если у Вас установлен eaccelerator и Zend Optimizer, вставлять нужно между их блоками, примерно - [Установка eAccelerator](https://itblog.su/ustanovka-eaccelerator.html) - [cc lang="bash"] [root@dev /]# wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2 [root@dev /]# tar xjf eaccelerator-0.9.5.3.tar.bz2 [root@dev /]# cd eaccelerator-0.9.5.3 [root@dev /]# phpize [root@dev /]# ./configure [root@dev /]# make && make install [/cc] Теперь нужно включить extension, для этого в конфиг php.ini вставим: [cc lang="bash"] extension="eaccelerator.so" eaccelerator.shm_size="16" eaccelerator.cache_dir="/var/cache/eaccelerator" eaccelerator.enable="1" eaccelerator.optimizer="1" eaccelerator.check_mtime="1" eaccelerator.debug="0" eaccelerator.filter="" eaccelerator.shm_max="0" eaccelerator.shm_ttl="0" eaccelerator.shm_prune_period="0" eaccelerator.shm_only="0" eaccelerator.compress="1" eaccelerator.compress_level="9" [/cc] - [libphp5.so: cannot restore segment prot after reloc: Permission denied](https://itblog.su/libphp5so-cannot-restore-segment-prot-after-reloc-permission-denied.html) - После установки php на Centos Linux возникает ошибка: [cc lang="bash"] [root@dev distr]# /etc/init.d/httpd start Starting httpd: Syntax error on line 205 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/libexec/libphp5.so into server: /usr/local/apache/libexec/libphp5.so: cannot restore segment prot after reloc: Permission denied [/cc] Фиксится это двумя способами, первый: [cc lang="bash"]chcon -t texrel_shlib_t /usr/local/apache/libexec/*.so[/cc] второй, это отключение SELinux. Для отключения SELinux - [как просмотреть информацию о разделе в Linux](https://itblog.su/kak-prosmotret-informaciyu-o-razdele-v-linux.html) - Если понадобилось узнать тип файловой системы раздела или UUID в Linux, можно сделать это так (на примере CentOS 5.2): [cc lang="bash"] root@ns1 [~]# blkid /dev/sda1 /dev/sda1: LABEL="/boot" UUID="675c8d17-a9d6-4ded-b084-92b325c9a586" SEC_TYPE="ext2" TYPE="ext3" [/cc] если нужно узнать геометрию диска и разбивку по разделам, то: [cc lang="bash"] root@ns1 [~]# fdisk -l /dev/sda Disk /dev/sda: 400.0 GB, 400088457216 bytes 255 - [Установка IonCube Loader CentOS](https://itblog.su/ustanovka-ioncube-loader-centos.html) - Берём подходящий лоадер здесь: http://www.ioncube.com/loaders.php [cc lang="bash"] wget http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz tar zxf ioncube_loaders_lin_x86-64.tar.gz mv ioncube /usr/local [/cc] теперь в конфиг php (в моём случае /usr/local/Zend/etc/php.ini) вставим с блок [Zend] строки: [cc lang="bash"] zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.2.so zend_extension_ts = /usr/local/ioncube/ioncube_loader_lin_5.2_ts.so [/cc] и обратите снимание на последние цифры so-шки, они должны соответствовать версии php. Рекомендую посмотреть вывод команды: [cc - [NTP синхронизация времени на CentOS](https://itblog.su/ntp-sinkhronizaciya-vremeni-na-centos.html) - [cc lang="bash"] [root@rhca htdocs]# yum install -y ntp [root@rhca htdocs]# cat /etc/sysconfig/ntpd | grep -i hwc -B 1 # Set to 'yes' to sync hw clock after successful ntpdate. SYNC_HWCLOCK=yes [root@rhca htdocs]# cat /etc/ntp.conf | grep -i "our timeservers" -A 3 # --- OUR TIMESERVERS ----- server 0.pool.ntp.org server 1.pool.ntp.org server 2.pool.ntp.org [root@rhca htdocs]# /etc/init.d/ntpd - [Could not load modules.dep](https://itblog.su/could-not-load-modulesdep.html) - [cc lang="bash"] [root@rhca]# modprobe capability FATAL: Could not load /lib/modules/2.6.9-freevps-1.5-8smp/modules.dep: No such file or directory [/cc] фиксится так: [cc lang="bash"] mkdir /lib/modules/2.6.9-freevps-1.5-8smp/ depmod -a [/cc] - [Узнаём тип процессора под FreeBSD](https://itblog.su/uznajom-tip-processora-pod-freebsd.html) - Узнать тип процессора под FreeBSD можно так: #grep -w CPU: /var/run/dmesg.boot CPU: Intel Pentium III (1007.80-MHz 686-class CPU) или так: sysctl -a | grep machdep.tsc_freq: machdep.tsc_freq: 1007804929 Если заглянуть в /usr/src/sys/i386/i386/identcpu.c, то можно заметить, что значение частоты в dmesg.boot вычисляется так: printf("%d.%02d-MHz ", (tsc_freq + 4999) / 1000000, ((tsc_freq + 4999) / 10000) % 100); - [iptables start fails](https://itblog.su/iptables-start-fails.html) - [cc lang="bash"]Linux rhca.ru 2.6.9-freevps-1.5-8smp #1 SMP Thu May 25 10:22:13 EEST 2006 x86_64 x86_64 x86_64 GNU/Linux[/cc] При запуске /etc/init.d/iptables start получаем ошибку: Unloading iptables modules: [FAILED] Открываем для правки стартап скрипт /etc/init.d/iptables и строку: [cc lang="bash"] modprobe -r $mod > /dev/null 2>&1 [/cc] заменим на: [cc lang="bash"] modprobe -r $mod [/cc] делаем /etc/init.d/iptables start и - [php --with-gd fails ](https://itblog.su/php-with-gd-fails.html) - На x86_64 системах, при сборке php с GD возникает ошибка: error: libpng.(a|so) not found. фиксится это добавлением параметра сборки: --with-libdir=lib64 - [non PAE Kernel лимит ОЗУ 4 Gb](https://itblog.su/non-pae-kernel-limit-ozu-4-gb.html) - Стандартное ядро Linux поддерживает до 4 гигов ОЗУ by design 32 битных систем, т.е если в железке установлено 4 гига озу и стоит стандартное ядро, то картина следующая: [cc lang="bash"] cat /proc/meminfo MemTotal: 3628784 kB MemFree: 151712 kB [/cc] Что делать для того чтобы избежать подобного? Как вариант ставить x86_64 систему или заменить ядро на - [чистка сайта от iframe вставок](https://itblog.su/chistka-sajjta-ot-iframe-vstavok.html) - Довольно популярный способ распространения троянов это вставки на сайты iframe блока указывающего на "вражеский сервер" с самим трояном. Перелопатить несколько тысяч страниц вручную, задача из разряда фантастических. Ну а не вручную можно это сделать так: [cc lang="bash"] find ./ -type f -name \*.php -exec sed -i 's/^.*apartment-mall.*$//g' {} \;[/cc] Как работает, как пользоваться для тех - [asp:FileUpload и лимит на размер заливаемого файла.](https://itblog.su/aspfileupload-i-limit-na-razmer-zalivaemogo-fajjla.html) - При заливки файлов на сервер используя asp:FileUpload возникает ошибка: Maximum requested length exceeded причиной тому является ограничение на размер заливаемого файла в 4 мегабайта, как исправить? Приведу пару примеров. 1. со стороны сайта: в управляющий файл web.config в секции вставим строку: [cc lang=xml][/cc] снять ограничения можно выставив maxRequestLength в "-1". 2. со стороны - [какой демон на каком порту](https://itblog.su/kakojj-demon-na-kakom-portu.html) - Как определить какой демон на каком порту слушает? В Linux так: [cc lang="bash"]# netstat -tnlp[/cc] Во FreeBSD так: [cc lang="bash"]% sockstat [/cc] - [SSH сервер для Windows](https://itblog.su/ssh-server-dlya-windows.html) - Давно хотелось ssh под виндой. Казалось бы, "хочется странного", а нет! Более чем реально. На не иссякаемом сорсфорж найден готовый комплект: http://sshwindows.sourceforge.net/ в купе с http://unxutils.sourceforge.net/ сервер ssh становится вполне юзабельной вещью. sshwindows тестировал на Windows Server 2003 std eng SP2, работает исправно. В комплекте идут бинарники затаскивающие пользователей и группы в /etc/group и /etc/passwd - [несколько полезных rewrite rules](https://itblog.su/neskolko-poleznykh-rewrite-rules.html) - Переадресация с домена второго уровня на домен третьего уровня. Бывает полезно если хочется чтобы вместо itblog.su открывался www.itblog.su (под itblog.su доразумевается ваш домен). [cc lang="bash"] Options +FollowSymlinks RewriteEngine on rewritecond %{http_host} ^itblog.su [nc] rewriterule ^(.*)$ http://www.itblog.su/$1 [r=301,nc] [/cc] Ещё один редирект, полезен в случае если изменился домен у сайта и со старого нужно переадресовывать на - [брутфорс и ускоритель написания java-модулей](https://itblog.su/brutfors-i-uskoritel-napisaniya-java-modulejj.html) - Из личной коллекции, выкладываю брутфорс. Скорость подбора прямо-пропорциональна температуре. - [сборка rpm пакета из исходников (source code)](https://itblog.su/sborka-rpm-paketa-iz-iskhodnikov-source-code.html) - Для порядка в системе, софт поставляемый в исходниках (тарболы, src.rpm) можно собирать в rpm пакет, а затем ставить. Ниже несколько примеров, они говорят лучше чем описание: [cc lang="bash"] rpm -ivh ppp-2.4.4-1.el5.src.rpm rpmbuild -bb /usr/src/redhat/SPECS/ppp.spec rpm -ivh /usr/src/redhat/RPMS/i386/ppp-2.4.3-5.c5.i386.rpm [/cc] [cc lang="bash"] rpmbuild --rebuild ppp-2.4.4-1.el5.src.rpm rpm -ivh /usr/src/redhat/RPMS/i386/ppp-2.4.3-5.c5.i386.rpm [/cc] если в тарболе есть spec файл, то можно - [OpenFire и крякозябры в icq транспорте](https://itblog.su/openfire-i-kryakozyabry-v-icq-transporte.html) - Сталкнулся с тем что через транспорт icq для Openfire (поставляющийся плагином IM Gateway) сообщения приходят/отправляются в нечитаемой кодировке. Пофиксить это можно если в настройках транспорта /plugins/gateway/gateway-settings.jsp выставить кодировку windows-1251 Работоспособность проверялась на Openfire Enterprise 3.4.5 и Openfire Enterprise 3.5.0 двумя клиентами, родным Spark и популярным Pandion. - [Редирект средствами .htaccess](https://itblog.su/redirekt-sredstvami-htaccess.html) - В корне домена источника (source) в файл .htaccess пишем: [cc lang="bash"] redirectMatch permanent ^(.*)$ http://www.itblog.su [/cc] предположим, источником был домен blog.shakirov.com, тогда при попытке открыть http://blog.shakirov.com/?id=some открываться будет http://www.itblog.su/?id=some - [определение типа материнской платы в Linux и FreeBSD](https://itblog.su/opredelenie-tipa-materinskojj-platy-v-linux-i-freebsd.html) - Столкнулся с необходимостью выяснить, какая материнская плата на сервере. Операционкой была FreeBSD. [cc lang="bash"] dd if=/dev/mem bs=64k skip=15 count=1|strings|less [/cc] работает в том числе и на Linux, но (общее для всех типов Unix) может сработать не всегда. - [php 500 ошибка](https://itblog.su/php-500-oshibka.html) - Обычный геморрой, с пустой страницей вместо сайта, в заголовках 500-ая ошибка. Чтобы вывести текст ошибки, мы обычно переключаем php в режим cgi, что является геморроем и неправильным расходованием рабочего времени. Правильное решение, прописать в .htaccess: php_flag display_errors on - [репозитарий rpmforge (dag) для CentOS 5 и CentOS 4](https://itblog.su/repozitarijj-rpmforge-dag-dlya-centos-5.html) - Подключаем rpmforge (dag) репозитарий к CentOS 5 [cc lang="bash"] [root@xen ~]# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt [root@xen ~]# wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm [root@xen ~]# rpm -K rpmforge-release-0.3.6-1.el5.rf.*.rpm [root@xen ~]# rpm -i rpmforge-release-0.3.6-1.el5.rf.*.rpm [root@xen ~]# yum check-update [/cc] Подключаем rpmforge (dag) репозитарий к CentOS 4 [cc lang="bash"] http://dag.wieers.com/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt rpm -K rpmforge-release-0.3.6-1.el4.rf.*.rpm rpm -i rpmforge-release-0.3.6-1.el4.rf.*.rpm yum check-update [/cc] - [linux screen](https://itblog.su/linux-screen.html) - Чрезвычайно полезная утилита screen есть в linux. Позволяет она создавать в терминале ssh несколько экранов и удобно переключаться между ними. Также полезен screen в случае если надо делать какие-то опреации по ssh и обрывы связи вредны. Достаточно просто, работать в скрин. Для примера берём задачу, скачать iso-шку CentOS 4. Далее будет понятнее если показать выкладки - [ntfs и linux](https://itblog.su/ntfs-i-linux.html) - Для поддержки ntfs в linux (на примере CentOS 5) ставим: [cc lang="bash"] [root@home ~]# yum install fuse-ntfs-3g-devel-1.2310-1.el5.rf fuse-ntfs-3g-1.2310-1.el5.rf fuse-2.7.3-1.el5.rf dkms-ntfs-2.1.27-2.nodist.rf [root@home ~]# mount -t ntfs-3g /dev/sda1 /mnt/windows FATAL: Module fuse not found. ntfs-3g-mount: fuse device is missing, try 'modprobe fuse' as root [root@home ~]# modprobe fuse FATAL: Module fuse not found. [root@home ~]# /etc/init.d/fuse start - [php5 и MS SQL express 2005](https://itblog.su/php5-i-ms-sql-express-2005.html) - Ошибка при работе простого скрипта написанного на php при связке IIS+php5+MsSQL2005express mssql_connect() [function.mssql-connect]: Unable to connect to server: mssql1 Фиксится заменой ntwdblib.dll Другая проблема Error in my_thread_global_end(): 1 threads didn't exit вылазит как при mssql_connect так и при mysql_connect фиксится заменой libmysql.dll из php-5.2.1-Win32 - [Zabbix frontend error](https://itblog.su/zabbix-frontend-error.html) - При попытке открыть фронтэнд zabbix сервера, вылезает ошибка: Parse error: parse error, unexpected T_STATIC, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in zabbix/include/copt.lib.php on line 112 Это свзяано с тем что в php4 нет определения static function, выходом из ситуации является правка copt.lib.php по принципу: /* protected */ static function getmicrotime() { замены на: - [как узнать какая версия CentOS установлена?](https://itblog.su/kak-uznat-kakaya-versiya-centos-utsanovlena.html) - Как узнать какая версия CentOS (или любого другого RedHat-based дистрибутива) установлена? [cc lang="bash"] [root@iit ~]# cat /etc/redhat-release CentOS release 5 (Final) [/cc] - [Использование флоппи-дисковода с интерфейсом USB для инсталлирования ОС](https://itblog.su/ispolzovanie-floppi-diskovoda-s-interfejjsom-usb-dlya-installirovaniya-os.html) - В Microsoft* Windows по умолчанию отсутствуют драйверы для всех флоппи-дисков USB. При использовании дискеты для добавления драйверов RAID драйвер загружается один раз. В процессе дальнейшей установки операционная система повторно запрашивает файл, но не может найти флоппи-дисковод. При загрузке дополнительных драйверов по время установки на дискете находится файл «txtsetup.oem». Откройте файл на другом ПК, используя текстовый - [Конвертируем файлы из одной кодировки в другую.](https://itblog.su/konvertiruem-fajjly-iz-odnojj-kodirovki-v-druguyu.html) - Для конвертации текстовых файлов из одной кодировки в другую есть замечательная утилита iconv. Смысл и синтаксис становится более чем понятен если взглянуть ниже. [cc lang="bash"] iconv --from-code=UTF8 --to-code=CP1251 ru.xml --output=ru-cp1251.xml [/cc] - [uptime windows](https://itblog.su/uptime-windows.html) - Утилита командная для просмотра аптайма системы. uptime.exe - [Выкачать дистрибутив Internet Explorer](https://itblog.su/vykachat-distributiv-internet-explorer.html) - [cc lang="winbatch"] ie6setup.exe /c:"ie6wzd.exe /d /s:""#e"[/cc] - [коротко о RPM](https://itblog.su/korotko-o-rpm.html) - Узнать версию установленного пакета: #rpm -q pkg-name Обновить установленный пакет: #rpm -Uvh pkg-name Установить не установленный пакет: #rpm -ivh pkg-name Проверить какие пакеты установлены #rpm -qa | grep PACKAGE_NAME - [Как сменить букву дисковода с А на В в windows?](https://itblog.su/kak-smenit-bukvu-diskovoda-s-a-na-v-v-windows.html) - Q> Как сменить букву дисковода с А на В ? mountvol A: /D mountvol B: \?\Volume{8eb5cb10-ec09-11d9-b857-806d6172696f}\ - [NE2000 family и настройка сети в линуксах](https://itblog.su/ne2000-family-i-nastrojjka-seti-v-linuksakh.html) - Понадобилось как-то на первопне поднять Linux RedHat 6.2 как оказалось старьё типа NE2000 автоматом не цепляется, пришлось ручками: [cc lang="bash"] [root@webserver] vi /etc/conf.modules alias eth0 ne options ne io=0x300 [root@webserver] modprobe eth0 [root@webserver] /sbin/ifconfig eth0 192.168.2.200 netmask 255.255.255.0 [root@webserver] /sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0 [root@webserver] /sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric - [служба времени Windows](https://itblog.su/sluzhba-vremeni-windows.html) - > А как узнать, выполнила служба времени синхронизацию или нет? [cc lang="reg"]HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters[/cc] Добавить WriteLog тип REG_SZ - True , будет писать уведомления в system лог о результатах синхронизации. - [Запрещаем запуск любых USB-storage.](https://itblog.su/zapreshhaem-zapusk-lyubykh-usb-storage.html) - [cc lang="reg"] Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR] "Type"=dword:00000001 "Start"=dword:00000004 "ErrorControl"=dword:00000001 "ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\ 52,00,49,00,56,00,45,00,52,00,53,00,5c,00,55,00,53,00,42,00,53,00,54,00,4f,\ 00,52,00,2e,00,53,00,59,00,53,00,00,00 "DisplayName"="Драйвер запоминающих устройств для USB" "AutoRun"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Security] "Security"=hex:01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,\ 00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\ 00,00,02,00,60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\ 05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\ 20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,\ 00,18,00,fd,01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,\ 00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Enum] "Count"=dword:00000000 "NextInstance"=dword:00000000 [/cc] Запрещает запуск любых USB-storage. Для разрешения в "Start"=dword:00000004 изменить на "Start"=dword:00000003 Прочие USB-устройства при этом работают. - [установка VerliHub (Linux)](https://itblog.su/ustanovka-verlihub-linux.html) - Нам понадобится: 1. Сам Verlihub, взять его можно здесь 2. GeoIP, взять можно здесь 3. MySQL server (в том числе и devel) и удобства ради phpMyAdmin Ставим GeoIP: [cc lang="bash"] # cd /usr/local/src/ # wget http://www.maxmind.com/download/geoip/api/c/GeoIP-1.4.0.tar.gz # tar zxf GeoIP-1.4.0.tar.gz && cd Geo* # ./configure # make && make install [/cc] Ставим Verlihub: [cc lang="bash"] - [скрипт показывающий имена пользоватлей не логинившихся в AD N-ное количество дней.](https://itblog.su/skript-pokazyvayushhijj-imena-polzovatlejj-ne-loginivshikhsya-v-ad-n-noe-kolichestvo-dnejj.html) - [cc lang="javascript"] //~~Author~~. Paul stuart //~~Email_Address~~. Paul.Stuart@schroders.com //~~Script_Type~~. Jscript //~~Sub_Type~~. DomainAdministration //~~Keywords~~. ADSI, last login date, domain, login //~~Comment~~. //Create a report showing users who haven't logged in to the Domain for X days or more. //Requires ADSI 2.5 and Jscript version 5. The results are sent to LOGFILE.TXT //~~Script~~. var sDomain = ""; // - [скрипты для AD](https://itblog.su/skripty-dlya-ad.html) - примеры скриптов из книги Inside Active Directory (авт. Sakari Kouti and Mika Seitsonen) insideadsamples.zip - [VB скрипт который проводит сбор информации о доменных компьютерах.](https://itblog.su/vb-skript-kotoryjj-provodit-sbor-informacii-o-domennykh-kompyuterakh.html) - Весьма занятный скриптик, может пригодиться для инвентаризации. [cc lang="vb"] dim strclass, objAD, obj dim invdate dim constmb, constgb, sizegb dim compname, temp, compad constmb=1048576 constgb=1073741824 strclass = array( "win32_ComputerSystem", "win32_bios", "win32_processor",_ "win32_diskdrive", "win32_videocontroller", "win32_NetworkAdapter",_ "win32_sounddevice", "win32_SCSIController", "win32_printer") set objAD=getobject("LDAP://CN=Computers,DC=akos-nissan,DC=local") objAD.filter=array("computer") on error resume next for each obj in objAD CompAD=right(obj.name, len(obj.name)-3) invdate = date temp=""+chr(10)+"Дата - [скрипт ротации log-ов и backup-ов для windows](https://itblog.su/skript-rotacii-log-ov-i-backup-ov-dlya-windows.html) - [cc lang="vb"] '========================================================================== ' ' VBScript Source File -- Created with SAPIEN Technologies PrimalScript 3.1 ' ' NAME: remlogs.vbs ' ' AUTHOR: Подлячок ' DATE : 19.06.2005 ' ' COMMENT: Скриптик для автоматического удаления log-ов и backup-ов, срок актуальности которых истек. ' Срок после которго данный лог или бэкап вам уже точно не понадобиться определяется - [User must change password on next logon](https://itblog.su/user-must-change-password-on-next-logon.html) - [cc lang="bash"] 'скрипт рекурсивно устанавливает всем пользователям домена атрибут "User must change password on next logon" 'для корректной работы необходимо в переменной strMyDomain определить имя домена с точки зрения LDAP - 'т.е. все точки заменить на "DC=". Таким образом, домен argo.com превращается в DC=argo,DC=com 'в переменную strMyOU необходимо поместить наименование Organization Unit`а, юзеров которого необходимо - [массовое добавление пользователей из екселевской таблички](https://itblog.su/massovoe-dobavlenie-polzovatelejj-iz-ekselevskojj-tablichki.html) - [cc lang="vb"]// массовое добавление пользователей из екселевской таблички // структора таблички: // Фамилия Имя Отчество Логин Должность Отдел Предприятие Телефон Set objExcel = CreateObject("Excel.Application") Set objWorkbook = objExcel.Workbooks.Open _ // из какой таблички ("D:\excel.xls") intRow = 1 Do Until objExcel.Cells(intRow,1).Value = "" // куда добавляем, домен и юнит Set objOU = GetObject("LDAP://OU=management,dc=domain,dc=name") Set objUser = - [Как в Linux перебросить соединение через NAT во внутреннюю сеть](https://itblog.su/kak-v-linux-perebrosit-soedinenie-cherez-nat-vo-vnutrennyuyu-set.html) - Первый путь – пробрасывание только порта: [cc lang="bash"]iptables -t nat -A PREROUTING -p tcp -d EXT_R_IP --dport 10000 -j DNAT --to-destination LOCAL_IP:80 iptables -A FORWARD -i eth0 -d LOCAL_IP -p tcp --dport 22 -j ACCEPT[/cc] Второй вариант – выброс всей машины наружу (если есть свободные адреса): [cc lang="bash"]ifconfig eth0:0 NEW_IP netmask NETMASK broadcast BROADCAST route - [крякозябры в диалогах виндовых программ в wine](https://itblog.su/kryakozyabry-v-dialogakh-vindovykh-programm-v-wine.html) - Если в диалогах программ, запущенных под wine, крякозябры следует сделать следующее: 1. создать в домашнем каталоге пользователя подкаталог .fonts и скопировать в него TTF-шрифты из windows. 2. в консоли выполнить команду fc-cache /.fonts Шрифты станут доступны всем вновь запущенным приложениям. - [Потоковый аудио и видео сервер под linux.](https://itblog.su/potokovyjj-audio-i-video-server-pod-linux.html) - Потоковый аудио и видео сервер под linux. читать о том как сделать интернет радио, здесь: Потоковый аудио и видео сервер под linux. От себя добавлю, очень понравился darvin от aple. Есть под большинство платформ, работает на ура, управление через web. - [Оповещение по почте о входе в консоль](https://itblog.su/opoveshhenie-po-pochte-o-vkhode-v-konsol.html) - необходимо добавить в конец файла .bash_profile в пользовательской директории эту строку: [cc lang="bash"]echo 'ALERT - Root Shell Access on:' `date` `who` | mail -s "Alert: Root Access from `who | awk '{print $6}'`" user@dom.dom [/cc] - [бакапим и ресторим базу MySQL](https://itblog.su/bakapim-i-restorim-bazu-mysql.html) - Делаем дамп: [cc lang="bash"] # mysqldump --add-drop-table --host=localhost --user=root --password=111 basename > basename.sql [/cc] Ресторим базу из дампа: [cc lang="bash"] # mysql --host=localhost --user=root --password=111 --default-character-set=cp1251 basename < basename.sql [/cc] - [отключаем SELinux](https://itblog.su/otklyuchaem-selinux.html) - Для отключения SELinux необходимо в файле /etc/sysconfig/selinux нужно выставить: SELINUX=disabled - [Создание загрузочного диска Windows 2003 SP1](https://itblog.su/sozdanie-zagruzochnogo-diska-windows-2003-sp1.html) - Для создания загрузочного диска нам потребуется: 1. Дистрибутив Windows 2003 2. Service Pack 1 (в дальнейшем sp1) WindowsServer2003-KB889101-SP1-x86-ENU.exe 3. Файл bootsec2k3.bin 4. Пишущий привод СD и программа для записи CD. Для начала необходимо создать на диске папку, например C:\W2K3 и скопировать туда дистрибутив Windows 2003. Также необходимо создать директорию в которую скопируем SP1, например С:\SP1. - [вырубаем резервирование канала сервисом QoS](https://itblog.su/vyrubaem-rezervirovanie-kanala-servisom-qos.html) - «Пуск – Выполнить» и в открывшемся окне пишем “gpedit.msc”, потом следуем по пунктам «Конфигурация компьютера – Административные шаблоны – Сеть – Диспетчер пакетов QoS”; в открывшемся окне видим пункт «Ограничить резервируемую пропускную способность», заходим в него и выключаем. - [Windows Server 2003 adminpack](https://itblog.su/windows-server-2003-adminpack.html) - для управления контроллером домена (юзеров там завести и прочее) рекомендую поставить на свой комп админпак WindowsServer2003-KB304718-AdministrationToolsPack.exe - [Как переназначить ожидающий порт сервера терминалов](https://itblog.su/kak-perenaznachit-ozhidayushhijj-port-servera-terminalov.html) - Для изменения порта, используемого по умолчанию для всех создаваемых сервером терминалов новых подключений, выполните следующие действия. 1. Запустите программу Regedt32 и откройте следующий раздел реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp Примечание. Приведенный путь к разделу реестра является одной строкой, которая была разбита на две для удобства восприятия. 2. Найдите в подразделе «PortNumber» значение 00000D3D (3389 в шестнадцатеричном формате). - [как монтировать CDROM в Linux](https://itblog.su/kak-montirovat-cdrom-v-linux.html) - Подготовка: [cc lang="bash"] # vi /etc/fstab /dev/cdrom /mnt/cdrom auto iocharset=koi8-r,noexec,ro,users,noauto,nosuid,nodev,noatime 0 0 # mkdir /mnt/cdrom [/cc] монтирование: # mount /dev/cdrom размонтирование: # umount /dev/cdrom можно конечно тупо: [cc lang="bash"] # mkdir /mnt/cdrom # mount /dev/cdrom /mnt/cdrom [/cc] но это не спортивно :) - [как посмотреть использование дискового пространства?](https://itblog.su/kak-posmotret-ispolzovanie-diskovogo-prostranstva.html) - Просмотреть использованное место на разделе, занятое, размер раздела и вообще вывести разделы можно так: [cc lang="bash"] [root@srv002 ~]# df -h Файловая система Разм Исп Дост Исп% смонтирована на /dev/mapper/VolGroup01-LogVol00 224G 14G 199G 7% / /dev/sda1 99M 23M 71M 25% /boot /dev/sdb1 230G 30G 188G 14% /backup tmpfs 2,0G 0 2,0G 0% /dev/shm [/cc] Размер папки - [wget и прокси](https://itblog.su/wget-i-proksi.html) - как научить wget ходить через прокси? просто: [cc lang="bash"] /etc/wgetrc http_proxy = http://your_proxy:port ftp_proxy = http://your_proxy:port # If you do not want to use proxy at all, set this to off. use_proxy = on [/cc] - [консольные команды windows rundll32](https://itblog.su/konsolnye-komandy-windows-rundll32.html) - * rundll32 shell32.dll,Control_RunDLL hotplug.dll - диалоговое окно Отключение или извлечение аппаратного устройства * rundll32 мсprint2.dll,RUNDLL_PrintTestPage - распечатать тестовую страницу на принтере. * rundll32 netplwiz.dll,AddNetPlaceRunDll - вызов мастера подключения нового сетевого ресурса "Добавление в сетевое окружение". * rundll32 rnaui.dll,RnaWizard - вызов мастера "Удаленный доступ к сети". * rundll32 rnaui.dll,RnaWizard /1 - вызов мастера "Удаленный доступ к - [средства проверки системных файлов Windows XP и Windows Server 2003 (Sfc.exe)](https://itblog.su/sredstva-proverki-sistemnykh-fajjlov-windows-xp-i-windows-server-2003-sfcexe.html) - Sfc [/Scannow] [/Scanonce] [/Scanboot] [/Revert] [/Purgecache] [/Cachesize=x]• /Scannow — Проверить все защищенные системные файлы и заменить ошибочные версии файлов исходными версиями. Начать проверку немедленно. В процессе выполнения данной команды программе Sfc может потребоваться доступ к установочным файлам Windows. • /Scanonce — Проверить все защищенные системные файлы при следующей перезагрузке компьютера. После перезагрузки программе Sfc может - [Удалить принтер из Active Directory](https://itblog.su/udalit-printer-iz-active-directory.html) - Заменил сервер, на работе, который отвечает за сетевую печать. Потребовалось удалить старые сетевые принтеры из Active Directory. Никогда раньше этого не делал. Сделать это оказалось очень просто. Нужно зайти. Start. Control Panel. Administrative Tools. Active Directory Users and Computers. View. Advanced Features. Action. Find. Printers. Advanced. После этого ввести в поиске название принтера, который нужно - [как обновить схему домена windows server 2003](https://itblog.su/kak-obnovit-skhemu-domena-windows-server-2003.html) - Для чего это надо? Например для ввода в домен 2000 новый контроллер под 2003. В моём случае это понадобилось для ввода в домен 2003 нового контроллера Windows Server 2003 R2. в консоли выполняем комманду: adprep.exe /forestprep получаем приглашение отменить или начать, для того чтобы начать нажимаем “C” “Enter” Листинг того что выдала комманда: Открытое подключение - [отключаем Shutdown Event Tracker](https://itblog.su/otklyuchaem-shutdown-event-tracker.html) - Что такое Shutdown Event Tracker? Это диалоговое окно при завершении работы (перезагрузке) windows server 2003 которе хочет чтоб вы обьяснили (и записали в event log) причину своих действий (windows style чё поделаешь). Если оно вам ненадо убираем так: Пуск -> выполнить -> GPEDIT. MSC, в появившемся окне Редактора групповых политик Group Policy перейди на Local - [Просмотр и передача ролей FSMO в Windows Server 2003](https://itblog.su/prosmotr-i-peredacha-rolejj-fsmo-v-windows-server-2003.html) - Роли FSMO В каждом лесу имеется как минимум пять ролей FSMO, назначенных одному или нескольким контроллерам домена. Это следующие роли. • Хозяин схемы. Контроллер домена, являющийся хозяином схемы, управляет всеми обновлениями и изменениями схемы. Обновление схемы леса невозможно без доступа к хозяину схемы. В лесу может быть только один хозяин схемы. • Хозяин именования доменов. - [служба Help and Support](https://itblog.su/sluzhba-help-and-support.html) - Если слетела или отсутствует служба Help and Support, восстановить её можно так: [cc lang="reg"] %windir%\pchealth\helpctr\binaries\HelpSvc.exe /regserver /svchost netsvcs /RAInstall %windir%\pchealth\helpctr\binaries\HSCUpd.exe -i %windir%\pchealth\helpctr\binaries\hscmui.cab %windir%\pchealth\helpctr\binaries\HSCUpd.exe -i %windir%\pchealth\helpctr\binaries\hscsp_l3.cab [/cc] - [Обновление контроллеров домена Windows 2000 до Windows Server 2003](https://itblog.su/obnovlenie-kontrollerov-domena-windows-2000-do-windows-server-2003.html) - Тем кто собирается мигрировать с Windows Server 2000 на windows Server 2003 рекомендую прочесть KB на Microsoft, ссылка ниже: http://support.microsoft.com/kb/325379/ru - [chmod коротко о символьной нотации](https://itblog.su/chmod-korotko-o-simvolnojj-notacii.html) - Чьи права изменять Каким образом Какие именно права u (владельца) g (группы) o (всех остальных) a (всех трех категорий) + (добавить) - (убрать) r w x = (сделать такими же) u (как у владельца) g (как у группы) o (как у всех остальных) u g + - s (SUID или SGID) u + - t - [Поиск файлов с помощью find](https://itblog.su/poisk-fajjlov-s-pomoshhyu-find.html) - Подробно о поиске файлов в unix, кратки мануал по find. Используйте утилиту find для поиска файлов в дереве каталогов по имени файла. Укажите имя дерева каталогов для поиска, а затем, с помощью опции `-name' - имя нужного Вам файла. Чтобы увидеть список всех файлов системы, которые называются `top', наберите: $ find / -name top [Enter] - [дамп базы Mysql на e-mail](https://itblog.su/damp-bazy-mysql-na-e-mail.html) - Захотелось странного.. делать дамп базы и слать его на мэйл, тем более что gmail даёт дофигища места. На скорую руку был слеплен скрипт: [cc lang="bash"] cd /backup/user a=`date +%Y-%m-%d-`user_database.sql mysqldump -uuser_database -pdb_pass -hmysql_server user_database > $a && gzip $a echo "this is user_database database dump" | mutt shakirov@gmail.com -a $a.gz -s "database backup "$a [/cc] - [rpm и проблемы с базой](https://itblog.su/rpm-i-problemy-s-bazojj.html) - Бывает что при установке rpm-пакета, процесс долго висит, потом выдаёт ошибку доступа к базе. Лечится это пересозданием базы. из /var/lib/rpm удаляем __db.001, __db.002 и __db.003. После чего даем команду rpm --rebuilddb - [Уменьшение активности использования swap](https://itblog.su/umenshenie-aktivnosti-ispolzovaniya-swap.html) - Для снижения активности использования swap в Linux, нужно указать где-нибудь при загрузке (например, в /etc/rc.d/rc.local): [cc lang="bash"]echo 20 > /proc/sys/vm/swappiness[/cc] - [Убить все процессы запущенные от пользователя user](https://itblog.su/ubit-vse-processy-zapushhennye-ot-polzovatelya-user.html) - [cc lang="bash"] ps aux | grep user | awk '{print $2}' | xargs kill -9[/cc] - [Установка RTL8169 RTL8168 RTL8101 - r1000 CentOS 5](https://itblog.su/ustanovka-rtl8169-rtl8168-rtl8101-r1000-centos-5.html) - Драйвер r1000 не включён в ядро CentOS, но без сети оно нам ненадо. Начинаем диагностику присутствия сетевухи: [cc lang="bash"][root@centos ~]# lspci -v | more 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 01) Subsystem: ASUSTeK Computer Inc. Unknown device 81aa Flags: bus master, fast devsel, latency 0, IRQ 177 - [Поднимаем сервер времени NTP](https://itblog.su/podnimaem-server-vremeni-ntp.html) - тарбол NTP сервера берём здесь: http://www.ntp.org/downloads.html и начинаем ставить: [cc lang="bash"] [root@mailserver .distr]# wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.4p4.tar.gz [root@mailserver .distr]# tar zxf ntp* && cd ntp* [root@mailserver ntp-4.2.4p4]# ./configure [root@mailserver ntp-4.2.4p4]# make && make install [root@mailserver ntp-4.2.4p4]# chkconfig ntpd on [root@mailserver ntp-4.2.4p4]# service ntpd start [root@mailserver ~]# pgrep ntpd 22332 [/cc] рекомендую к прочтению: Quick HOWTO:Ch24:The NTP Server - [контроллер домена как сервер глобального каталога](https://itblog.su/kontroller-domena-kak-server-globalnogo-kataloga.html) - Чтобы настроить контроллер домена как сервер глобального каталога 1. Откройте окно «Active Directory — сайты и службы». 2. В дереве консоли щелкните правой кнопкой мыши значок Параметры NTDS. • «Active Directory — сайты и службы»/Сайты/имя_сайта/Серверы/имя_сервера/Параметры NTDS 3. Выберите команду Свойства. 4. На вкладке Общие установите флажок Глобальный каталог. - [Восстановление SYSVOL (решение проблемы репликации SYSVOL)](https://itblog.su/vosstanovlenie-sysvol-reshenie-problemy-replikacii-sysvol.html) - Вдумчиво читаем первоисточник: http://support.microsoft.com/kb/315457/. затем уточнения: 1. Отключите на всех контроллерах службу ntfrs 2. Проверить на всех контроллерах следующие папки должны присутствовать (если нет создать) \SYSVOL \SYSVOL\domain \SYSVOL\staging\domain \SYSVOL\staging areas \SYSVOL\domain\Policies \SYSVOL\domain\scripts \SYSVOL\SYSVOL 3. Проверить ссылки с помощью утилиты linkd (входит в комплекте утилит Windows Rescue Kit, поставляется вместе с дистрибутивом Windows- ищи в папке - [сохраняем настройки Putty](https://itblog.su/sokhranyaem-nastrojjki-putty.html) - батник следующего содержания сохранит настройки puTTY [cc lang="bash"] @ECHO OFF regedit /s putty.reg regedit /s puttyrnd.reg start /w putty.exe regedit /e puttynew.reg HKEY_CURRENT_USER\Software\SimonTatham\PuTTY copy puttynew.reg putty.reg del puttynew.reg regedit /s puttydel.reg [/cc] - [поиск текста в файлах](https://itblog.su/poisk-teksta-v-fajjlakh.html) - Частенько бывает нужно найти файлы по содержащемуся в них тексту, или текста в файлах. Привожу два примера поиска (linux, freebsd) нужно фрагмента текста в файлах: [cc lang="bash"] [root@srv001 ~]# find /var/named/ -type f -exec grep "MX" {} \; serversnetwork.info. 14400 IN MX 10 mail [/cc] [cc lang="bash"] [root@srv001 ~]# grep -rl 'MX' /var/named/ /var/named/serversnetwork.info.db [/cc] - [настройки Jimm на Nokia 6230i](https://itblog.su/nastrojjki-jimm-na-nokia-6230i.html) - настройки Jimm на Nokia 6230i 0. На телефоне должен быть настроен GPRS Повторюсь, GPRS, а не GPRS-WAP. Это РАЗНЫЕ ВЕЩИ!!! Jimm будет работать только с GPRS 1. Устанавливаем Jimm (Необходимо установить прогу пережде, чем изменять настройки) 2. Удаляем всё Меню --> Настройки --> Конфигурация --> Стандартн. парам. конфигурации --> удаляем нах всё, что там есть - [Как удалить сетевую карту или её фантом?](https://itblog.su/kak-udalit-setevuyu-kartu-ili-ejo-fantom.html) - предположим «жертва» eth1, тогда удаляем файл /etc/sysconfig/network-scripts/ifcfg-eth1 и в файле /etc/modprobe.conf строку alias eth1. - [несколько ip на одном сетевом интерфейсе](https://itblog.su/neskolko-ip-na-odnom-setevom-interfejjse.html) - что сделал для того чтобы дополнительные к интерфейсу IP-шнеги прикручивались при старте системы? сделал следующее: файл /etc/init.d/add_ip такого вида: [cc lang="bash"] #!/bin/sh # description: add's ip adress to eth0 # chkconfig: 2345 99 00 case "$1" in 'start') # ip addr add 88.82.78.163/29 brd + dev eth0 # ip addr add 88.82.78.164/29 brd + dev - [предупреждение безопасности](https://itblog.su/preduprezhdenie-bezopasnosti.html) - предупреждение безопасности «файлы из интернет могут быть опасны» можно выправить так: [cc lang="reg"] REGEDIT4 ;Отключить предупреждение при открытии файлов [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Attachments] "SaveZoneInformation"=dword:00000001 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Associations] "LowRiskFileTypes"=".zip;.rar;.nfo;.txt;.exe;.bat;.com;.cmd;.reg;.msi;.htm;.html;.gif;.bmp;.jpg;.avi;.mpg;.mpeg;.mov;.mp3;.m3u;.wav;.mdb;" [/cc] - [Установка Perl библиотек из CPAN](https://itblog.su/ustanovka-perl-bibliotek-iz-cpan.html) - Например, нам надо поставить модуль DBI. Делаем: [cc lang="bash"] [root@mailserver ]# perl -MCPAN -e shell Terminal does not support AddHistory. cpan shell — CPAN exploration and modules installation (v1.7602) ReadLine support available (try 'install Bundle::CPAN') cpan> install DBI [/cc] всё, дальшё модуль сольётся скоммпилится и поставится сам. - [как установить redHat по сценарию?](https://itblog.su/kak-ustanovit-redhat-po-scenariyu.html) - как установить red Hat по сценарию? Всё просто, ставим Red Hat based linux ditribution, напртимер в виртуалке, берём anaconda-ks.cfg и при запуске установки на новом сервере в параметрах запуска инсталятора указываем: linux ks=/path/to/anaconda-ks.cfg - [dos2unix](https://itblog.su/dos2unix.html) - из-за различных представлений перевода строки в Windows и Unix могкт аозникать непонятные фокусы.. перобразовать из виндовых переносов в *nix-овые легко: dos2unix имя_файла - [MySQL и кодировка](https://itblog.su/mysql-i-kodirovka.html) - Сконвертировать таблицу/базу Mysql можно так: [cc lang="mysql"] ALTER TABLE table1 CONVERT TO CHARACTER SET cp1251_general_ci ALTER TABLE table1 DEFAULT CHARACTER SET cp1251_general_ci ALTER DATABASE database1 DEFAULT CHARACTER SET cp1251_general_ci [/cc] кодировка по умолчанию настривается в my.cnf [cc lang="apache"] [mysqld] basedir="/путь/mysql/" datadir="/путь/mysql/data/" character-sets-dir="/путь/mysql/share/charsets" default-character-set="koi8r" default-collation="koi8r_general_ci" character-set-server="koi8r" [/cc] - [1c под unix-like](https://itblog.su/1c-pod-unix-like.html) - 1c под Linux: http://gloomka.livejournal.com/35655.html 1с под FreeBSD: http://community.livejournal.com/ru_sysadmins/549282.html - [время отклика и генерации страницы](https://itblog.su/vremya-otklika-i-generacii-stranicy.html) - время отклика и генерации страницы можно так: [cc lang="bash"]curl -o /dev/null -s -w %{time_connect}:%{time_starttransfer}:%{time_total} http://itblog.su[/cc] - [смена hostname](https://itblog.su/smena-hostname.html) - [cc lang="bash"] [root@centos ~]# cat /etc/hosts # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost 192.168.1.1 centos.domain.local centos [root@centos ~]# touch /etc/hostname [root@centos ~]# echo "centos.domain.local centos" > /etc/hostname [root@centos ~]# cat /etc/hostname [root@centos ~]# hostname centos.domain.local centos -F /etc/hostname [root@centos ~]# hostname [root@centos - [Замена материнской платы](https://itblog.su/zamena-materinskojj-platy.html) - Замена материнской платы на компьютере с Windows Server 2003, Windows XP или Windows 2000 http://support.microsoft.com/kb/824125 Как перенести установленную систему Windows на другой компьютер http://support.microsoft.com/kb/249694 - [работа с архивами в Unix](https://itblog.su/rabota-s-arkhivami-v-unix.html) - tar cf file.tar files – создать tar-архив с именем file.tar содержащий files tar xf file.tar – распаковать file.tar tar czf file.tar.gz files – создать архив tar с сжатием Gzip tar xzf file.tar.gz – распаковать tar с Gzip tar cjf file.tar.bz2 – создать архив tar с сжатием Bzip2 tar xjf file.tar.bz2 – распаковать tar с Bzip2 - [Linux accounting](https://itblog.su/linux-accounting.html) - Для создания отчётов по потреблению ресурсов системы используется т.н. accounting. У меня в кроне вертится следующий скрипт: [cc lang="bash"] #!/bin/sh cd /var/log/accounting/; a=`date +%Y-%m-%d-%H:%M`; sa -m /var/log/pacct | gzip > "users-$a.gz" cd /var/log/accounting/; a=`date +%Y-%m-%d-%H:%M`; sa /var/log/pacct | gzip > "process-$a.gz" rm -rf /var/log/pacct touch /var/log/pacct chown root /var/log/pacct chmod 0644 /var/log/pacct if [ -x - [Справочник команд unix/linux](https://itblog.su/spravochnik-komand-unixlinux.html) - fwunixref_ru.pdf– краткий, но крайне информативный справочник. точнее шпаргалка на одном листе. - [просмотр журнала в реальном времени](https://itblog.su/prosmotr-zhurnala-v-realnom-vremeni.html) - Иногда бывает нужно смотреть журнал доступа в реальном времени. Так чтобы новые строки сразу-же рисовались в консоли, сделать это просто: tail -f /var/log/httpd/access_log - [nginx](https://itblog.su/nginx.html) - nginx это лёгкий http сервер, идеально подходящий для отдачи статичных файлов. Более чем подробно рассказано о нём здесь: http://sysoev.ru/nginx/docs/install.html http://dedic.ru/node/119 http://www.opennet.ru/base/net/nginx_ipb.txt.html дополню только правилом mod_rewrite для Apache, которое пересылает клиента на отдельный домен со статикой. [cc lang="apache"] RewriteRule (.*\.(jpg|gif|css|js|swf))$ http://img.dom.dom/$1 [L][/cc] - [ssh аутентификация на ключах rsa/dsa](https://itblog.su/ssh-autentifikaciya-na-klyuchakh-rsadsa.html) - [cc lang="bash"][root@srv002 ~]# mkdir .ssh [root@srv002 ~]# touch .ssh/authorized_keys [root@srv002 ~]# echo "ssh-dss AAAA.. .." > .ssh/authorized_keys [root@srv002 ~]# vi /etc/ssh/ssh_config[/cc] раскоментируем две строчки: RSAAuthentication yes PasswordAuthentication yes ключи можно сгенерить под windows при помощи puttygen. - [поддержка ufs в Centos 5](https://itblog.su/podderzhka-ufs-v-centos-5.html) - В пятёрке CentOS из ядра plus убрали поддержку ufs. если кому она нужна, скриптик идущий ниже, проинсталлит её. [cc lang="bash"] wget http://itblog.su/wp-content/uploads/2008/03/ufs.tgz tar zxf ufs.tgz cd ufs-2.6.18-8.1.8.el5-from-2.6.18-8.1.8.el5 ./runme.sh make -C /lib/modules/`uname -r`/build SUBDIRS=`pwd`/fs/ufs modules_install CONFIG_UFS_FS=m depmod -a modinfo ufs [/cc] Монтировать так: [cc lang="bash"]mount -t ufs -o ro,ufstype=5xbsd /dev/xxx /mnt/point/[/cc] UFS driver CentOS5 UFS driver - [Смена root пароля на MySql](https://itblog.su/smena-root-parolya-na-mysql.html) - [cc lang="bash"][root@srv001 ~]# service mysqld stop [root@srv001 ~]# su mysql bash-3.00$ mysqld --skip-grant-tables[/cc] Переходим в другую консоль и: [cc lang="bash"] [root@srv001 ~]# mysql -u root; mysql> use mysql; mysql> UPDATE user SET PASSWORD=NULL WHERE USER='root'; mysql> FLUSH PRIVILEGES; [root@srv001 ~]# mysqladmin -h 127.0.0.1 -u root password 'new_pass' [root@srv001 ~]# killall -9 mysqld [root@srv001 ~]# service - [время и дата](https://itblog.su/vremya-i-data.html) - Установка временной зоны (timezone) Временная зона под Линуксом устанавливается через символическую ссылку, из /etc/localtime на файл из дирректории /usr/lib/zoneinfo (или /usr/share/zoneinfo). ln -sf ../usr/share/zoneinfo/your/zone /etc/localtime Установка всемирного или локального времени в файле /etc/sysconfig/clock параметр UTC=true или UTC=false Установка аппаратных часов hwclock --set --date "28 Dec 2002 21:52" установка системных часов hwclock --hctosys - [ssh keepAlive](https://itblog.su/ssh-keepalive.html) - для того чтобы ssh соединение не закрывалось при отсутствии активности нужно раскоментить в конфиге /etc/ssh/sshd_config строчки: [cc lang="bash"]TCPKeepAlive yes ClientAliveInterval 100000[/cc] и рестартануть sshd. - [содержимое rpm пакета](https://itblog.su/soderzhimoe-rpm-paketa.html) - Просмотреть содержимое rpm пакета можно примерно так. [cc lang="bash"]rpm -qlip kernel-2.6.9-42.0.3.plus.c4.x86_64.rpm | grep ufs[/cc] - [chkconfig httpd](https://itblog.su/chkconfig-httpd.html) - Для того чтобы скрипт apachectl превратить в полноценный стартап надо: скопировать apachectl в /etc/init.d/httpd и прописать в шапке: [cc lang="apache"] # chkconfig: - 85 15 # description: Apache is a World Wide Web server. # processname: httpd # pidfile: /usr/local/apache/logs/httpd.pid # config: /usr/local/apache/conf/httpd.conf # config: /usr/local/apache/conf/srm.conf # config: /usr/local/apache/conf/access.conf [/cc] Затем: [cc lang="bash"]chkconfig --add httpd - [требования инсталяторов phpBB и drupal](https://itblog.su/trebovaniya-instalyatorov-phpbb-i-drupal.html) - Для того чтобы проинсталлить phpBB3 или drupal надо прописать в .htaccess [cc lang="bash"]php_value magic_quotes_gpc 0 php_value register_globals 0 php_value session.auto_start 0 php_value mbstring.http_input pass php_value mbstring.http_output pass php_value mbstring.encoding_translation 0 [/cc] - [Отключаем IPv6 в Linux](https://itblog.su/otklyuchaem-ipv6-v-linux.html) - Для того чтобы отключить IPv6 в Linux, надо: в /etc/modprobe.conf вставить две строчки [cc lang="bash"]alias net-pf-10 off alias ipv6 off[/cc] затем в /etc/sysconfig/network поставить NETWORKING_IPV6=no отключить за ненадобностью файрвол: [cc lang="bash"]/sbin/service ip6tables stop /sbin/chkconfig ip6tables off[/cc] рестартнуть сеть service network restart или систему shutdown -r now - [Linux Startup and Runlevels](https://itblog.su/linux-startup-and-runlevels.html) - Кратко и доходчиво о runlevel в Linux. Linux Start up and Run Levels The Init Program As seen in the previous section, the kernel will start a program called init, if it finds it. The init process reads the file "/etc/inittab" and uses this file to determine how to create processes. Read the init man - [Joomla Проблемы с кириллицей в базе данных](https://itblog.su/joomla-problemy-s-kirillicejj-v-baze-dannykh.html) - Как поставить Joomla если кодировка mysql отличная от cp1251 (например latin1_swedish_ci или utf8)? 1. Добавить в файл .htaccess строку: [cc lang="apache"]AddDefaultCharset windows-1251[/cc] 2. В phpMyAdmin или из консоли: [cc lang="mysql"]ALTER DATABASE имя_базы DEFAULT CHARACTER SET cp1251 DEFAULT COLLATE cp1251_general_ci[/cc] 3. В CMS Joomla файл /includes/database.php найти строку: [cc lang="php"]//@mysql_query(«SET NAMES 'utf8'", $this->_resource);[/cc] и заменить на: - [Медленные запросы MySQL и логирование всех запросов.](https://itblog.su/medlennye-zaprosy-mysql-i-logirovanie-vsekh-zaprosov.html) - Для записи в журнал, всех медленных запросов к MySQL базе, пропишем в my.cnf: [cc lang="bash"] [mysqld] long_query_time=10 log-slow-queries=/var/log/mysqld/slowquery.log [/cc] Для ведения полного лога всех запросов, при старте нужно указать опцию --log примерно так: [cc lang="bash"]mysqld --log=allquery.log[/cc] - [как распаковать rpm?](https://itblog.su/kak-raspakovat-rpm.html) - Распаковать rpm пакет можно так: [cc lang="bash"]rpm2cpio file.rpm | cpio -idmuv --no-absolute-filenames[/cc] - [Openfire решение проблем кодировкой](https://itblog.su/openfire-reshenie-problem-kodirovkojj.html) - Есть такой замечательный Jabber сервер, имя ему Openfire (ex. WildFire, ex. Jive Messanger), ставится легко, настраивается через вебморду, туча плагинов (асечный транспорт протестил, работает нормально). Бывает что в оффлайновых сообщениях кривится кодировка, фиксится это чрезвычайно просто, достаточно соблюсти: 1. Mysql база должна быть в utf-8 2. в конфиге мускуля my.cnf должно быть прописано: [cc lang="bash"] - [Internet explorer для Linux](https://itblog.su/internet-explorer-dlya-linux.html) - Год назад, примерно, наткнулся на презабавнейшую вещицу, IE4Linux. Причём это все версии Internet Explorer для Linux в одном флаконе. для установки понадобится wine: [cc lang="bash"]yum -y install wine* yum -y install cabextract[/cc] И собственно сам ies4linux: [cc lang="bash"]wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz tar zxvf ies4linux-latest.tar.gz cd ies4linux-* ./ies4linux[/cc] ну и true type fonts виндовые: [cc lang="bash"]wget http://corefonts.sourceforge.net/msttcorefonts-2.0-1.spec rpmbuild - [блокируем IP в iptables](https://itblog.su/blokiruem-ip-v-iptables.html) - Предположим надо заблокировать ip-шник 123.123.123.123, тогда делаем это так: [cc lang="bash"] iptables -A INPUT -s 123.123.123.123 -j DROP [/cc] - [проблема php mysql на windows сервере](https://itblog.su/problema-php-mysql-na-windows-servere.html) - Если сталкиваетесь с такими ошибками: File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 2) Character set '#51' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file File 'c:\mysql\share\charsets\?.conf' not found (Errcode: 22) Character set '#51' is not a compiled character set and is not specified in the 'c:\mysql\share\charsets\Index' file то лечится это просто: - [php 5 и режим совместимости с php 4](https://itblog.su/php-5-i-rezhim-sovmestimosti-s-php-4.html) - Если писаный на php 4 скрипт отказывается «работать» под php 5 можно попробовать прописать в .htaccess [cc lang="bash"]php_value zend.ze1_compatibility_mode 1[/cc] НО сработает это далеко не всегда, например в php4 используется одна DOM-модель (через sablotron ставится), а в php5 DOM уже встроенный. Это один пример когда «граната оказалась учебная», и таких может быть много.. т.ч больших - [смена директории для хранения сессий php](https://itblog.su/smena-direktorii-dlya-khraneniya-sessijj-php.html) - Коротенький пример того, как семенить директорию для хранения сессий php. [cc lang="bash"] [shakirov@srv001 ]$ mkdir /home/user/tmp/ [shakirov@srv001 ]$ chmod 777 /home/user/tmp/ [shakirov@srv001 ]$ cd public_html [shakirov@srv001 public_html]$ cat .htaccess php_value session.save_path "/home/user/tmp" [/cc] ## Страницы - [услуги администрирования вашего сервера](https://itblog.su/uslugi) - Предлагаю свои услуги по удаленному администрированию серверов (физические, VPS/VDS), цены от $5. Краткий список: - Linux семейства RedHat (CentOS, RedHat ES, RedHat, FedoraCore) - веб сервера (Apache, nginx) - jabber (Openfire) система защищенного обмена сообщениями, в том числе web chat. - ShoutCast - онлайн радио. - панели управления - ISPmanager, cPanel (WHM), DirectAdmin, WebMin - ## Рубрики - [Несортированное](https://itblog.su/category/unsorted) - [windows](https://itblog.su/category/windows) - [Unix](https://itblog.su/category/unix) - Всё что касается *nix систем. - [PHP](https://itblog.su/category/php) - Язык программирования php, среда, синтаксис и прочее. - [MySQL](https://itblog.su/category/mysql) - [jabber](https://itblog.su/category/jabber) - [networking](https://itblog.su/category/networking) - [web server](https://itblog.su/category/web-server) - [FreeBSD](https://itblog.su/category/freebsd) - [wordpress](https://itblog.su/category/wordpress) - [ASP](https://itblog.su/category/asp) - Active Server Pages related posts - [Linux desktop](https://itblog.su/category/linux-desktop) - [CentOS Linux](https://itblog.su/category/centos-linux) - [Базы данных](https://itblog.su/category/bazy-dannykh) - [OpenVZ](https://itblog.su/category/openvz) - [virtualization](https://itblog.su/category/virtualization) - [Xen](https://itblog.su/category/virtualization/xen) - [VoIP](https://itblog.su/category/voip) - [Cisco](https://itblog.su/category/cisco-2) - [Ubuntu](https://itblog.su/category/linux-desktop/ubuntu) - [Debian](https://itblog.su/category/debian) - [Allied Telesis](https://itblog.su/category/allied-telesis) - [Apache](https://itblog.su/category/web-server/apache) - [KVM](https://itblog.su/category/virtualization/kvm) - [OTRS](https://itblog.su/category/otrs) - [Linux](https://itblog.su/category/linux) - [Adaptec](https://itblog.su/category/adaptec) - [Nginx](https://itblog.su/category/web-server/nginx) - [CCTV](https://itblog.su/category/cctv) - [Proxmox VE](https://itblog.su/category/virtualization/proxmox-ve) - [k8s](https://itblog.su/category/k8s) - [bash](https://itblog.su/category/bash) - [Mikrotik](https://itblog.su/category/mikrotik) - [Hardware](https://itblog.su/category/hardware) - [vpn](https://itblog.su/category/vpn) ## Метки - [iptables](https://itblog.su/tag/iptables) - [ie4linux](https://itblog.su/tag/ie4linux) - [openfire](https://itblog.su/tag/openfire) - [rpm](https://itblog.su/tag/rpm) - [cpio](https://itblog.su/tag/cpio) - [iconv](https://itblog.su/tag/iconv) - [Joomla](https://itblog.su/tag/joomla) - [CMS](https://itblog.su/tag/cms) - [rewrite](https://itblog.su/tag/rewrite) - [nginx](https://itblog.su/tag/nginx) - [pass reset](https://itblog.su/tag/pass-reset) - [CentOS](https://itblog.su/tag/centos) - [ufs](https://itblog.su/tag/ufs) - [ssh](https://itblog.su/tag/ssh) - [tail](https://itblog.su/tag/tail) - [bash](https://itblog.su/tag/bash) - [accounting](https://itblog.su/tag/accounting) - [tar](https://itblog.su/tag/tar) - [gzip](https://itblog.su/tag/gzip) - [hostname](https://itblog.su/tag/hostname) - [Linux](https://itblog.su/tag/linux) - [curl](https://itblog.su/tag/curl) - [1с](https://itblog.su/tag/1s) - [encoding](https://itblog.su/tag/encoding) - [dos2unix](https://itblog.su/tag/dos2unix) - [kickstart](https://itblog.su/tag/kickstart) - [perl](https://itblog.su/tag/perl) - [cpan](https://itblog.su/tag/cpan) - [regedit](https://itblog.su/tag/regedit) - [iproute](https://itblog.su/tag/iproute) - [ip](https://itblog.su/tag/ip) - [jimm](https://itblog.su/tag/jimm) - [nokia](https://itblog.su/tag/nokia) - [gprs](https://itblog.su/tag/gprs) - [putty](https://itblog.su/tag/putty) - [sysvol](https://itblog.su/tag/sysvol) - [ntp](https://itblog.su/tag/ntp) - [ffmpeg](https://itblog.su/tag/ffmpeg) - [mplayer](https://itblog.su/tag/mplayer) - [swap](https://itblog.su/tag/swap) - [gmail](https://itblog.su/tag/gmail) - [find](https://itblog.su/tag/find) - [chmod](https://itblog.su/tag/chmod) - [2003](https://itblog.su/tag/2003) - [server](https://itblog.su/tag/server) - [pchealth](https://itblog.su/tag/pchealth) - [fsmo](https://itblog.su/tag/fsmo) - [windows server 2003](https://itblog.su/tag/windows-server-2003) - [Active Directory](https://itblog.su/tag/active-directory) - [sfc.exe](https://itblog.su/tag/sfcexe) - [rundll32](https://itblog.su/tag/rundll32) - [wget](https://itblog.su/tag/wget) - [du](https://itblog.su/tag/du) - [df](https://itblog.su/tag/df) - [disk usage](https://itblog.su/tag/disk-usage) - [mount](https://itblog.su/tag/mount) - [terminal services](https://itblog.su/tag/terminal-services) - [WindowsServer2003](https://itblog.su/tag/windowsserver2003) - [KB304718](https://itblog.su/tag/kb304718) - [AdministrationToolsPack](https://itblog.su/tag/administrationtoolspack) - [gpedit](https://itblog.su/tag/gpedit) - [SELinux](https://itblog.su/tag/selinux) - [sysconfig](https://itblog.su/tag/sysconfig) - [mysqldump](https://itblog.su/tag/mysqldump) - [cast](https://itblog.su/tag/cast) - [darvin](https://itblog.su/tag/darvin) - [wine](https://itblog.su/tag/wine) - [portmaping](https://itblog.su/tag/portmaping) - [logrotate](https://itblog.su/tag/logrotate) - [Verlihub](https://itblog.su/tag/verlihub) - [DC++](https://itblog.su/tag/dc) - [netstat](https://itblog.su/tag/netstat) - [locale](https://itblog.su/tag/locale) - [W32Time](https://itblog.su/tag/w32time) - [ne2000](https://itblog.su/tag/ne2000) - [RedHat6.2](https://itblog.su/tag/redhat62) - [fdd](https://itblog.su/tag/fdd) - [Internet Explorer](https://itblog.su/tag/internet-explorer) - [zabbix](https://itblog.su/tag/zabbix) - [mssql](https://itblog.su/tag/mssql) - [php5](https://itblog.su/tag/php5) - [NTFS](https://itblog.su/tag/ntfs) - [repositary](https://itblog.su/tag/repositary) - [rpmbuild](https://itblog.su/tag/rpmbuild) - [kernel](https://itblog.su/tag/kernel) - [backup](https://itblog.su/tag/backup) - [SYSDBA](https://itblog.su/tag/sysdba) - [user](https://itblog.su/tag/user) - [Firebird](https://itblog.su/tag/firebird) - [masterkey](https://itblog.su/tag/masterkey) - [gdb](https://itblog.su/tag/gdb) - [gbak](https://itblog.su/tag/gbak) - [gfix](https://itblog.su/tag/gfix) - [ddr2 667](https://itblog.su/tag/ddr2-667) - [ddr2 800](https://itblog.su/tag/ddr2-800) - [DDR](https://itblog.su/tag/ddr) - [dsniff](https://itblog.su/tag/dsniff) - [epel](https://itblog.su/tag/epel) - [tcp](https://itblog.su/tag/tcp) - [lang](https://itblog.su/tag/lang) - [eth](https://itblog.su/tag/eth) - [yum](https://itblog.su/tag/yum) - [tcpkill](https://itblog.su/tag/tcpkill) - [system memory usage](https://itblog.su/tag/system-memory-usage) - [memory information](https://itblog.su/tag/memory-information) - [available memory](https://itblog.su/tag/available-memory) - [freecolor](https://itblog.su/tag/freecolor) - [network](https://itblog.su/tag/network) - [ifconfig](https://itblog.su/tag/ifconfig) - [backup mysql](https://itblog.su/tag/backup-mysql) - [databases](https://itblog.su/tag/databases) - [flooding](https://itblog.su/tag/flooding) - [dmesg](https://itblog.su/tag/dmesg) - [sysctl](https://itblog.su/tag/sysctl) - [exec](https://itblog.su/tag/exec) - [type](https://itblog.su/tag/type) - [mysqlcheck](https://itblog.su/tag/mysqlcheck) - [phpmyadmin](https://itblog.su/tag/phpmyadmin) - [mysqld](https://itblog.su/tag/mysqld) - [sql](https://itblog.su/tag/sql) - [repair](https://itblog.su/tag/repair) - [gnome](https://itblog.su/tag/gnome) - [inittab](https://itblog.su/tag/inittab) - [initdefault](https://itblog.su/tag/initdefault) - [KDE](https://itblog.su/tag/kde) - [red hat inc](https://itblog.su/tag/red-hat-inc) - [fedora](https://itblog.su/tag/fedora) - [switchdesk](https://itblog.su/tag/switchdesk) - [dag wieers](https://itblog.su/tag/dag-wieers) - [rpm uvh](https://itblog.su/tag/rpm-uvh) - [rdoc](https://itblog.su/tag/rdoc) - [rubygems](https://itblog.su/tag/rubygems) - [vps](https://itblog.su/tag/vps) - [HWaddr](https://itblog.su/tag/hwaddr) - [bash script](https://itblog.su/tag/bash-script) - [hypervm](https://itblog.su/tag/hypervm) - [root](https://itblog.su/tag/root) - [factory defaults](https://itblog.su/tag/factory-defaults) - [ip phone](https://itblog.su/tag/ip-phone) - [cisco](https://itblog.su/tag/cisco) - [timezone](https://itblog.su/tag/timezone) - [localtime](https://itblog.su/tag/localtime) - [zoneinfo](https://itblog.su/tag/zoneinfo) - [date](https://itblog.su/tag/date) - [MSD](https://itblog.su/tag/msd) - [PDT](https://itblog.su/tag/pdt) - [UPnP](https://itblog.su/tag/upnp) - [Linux at home](https://itblog.su/tag/linux-at-home) - [ServerAlias](https://itblog.su/tag/serveralias) - [Adaptec 5405](https://itblog.su/tag/adaptec-5405) - [RAID](https://itblog.su/tag/raid) - [windows](https://itblog.su/tag/windows) - [Unix](https://itblog.su/tag/unix) - [PHP](https://itblog.su/tag/php) - [MySQL](https://itblog.su/tag/mysql) - [jabber](https://itblog.su/tag/jabber) - [FreeBSD](https://itblog.su/tag/freebsd) - [wordpress](https://itblog.su/tag/wordpress) - [.htaccess](https://itblog.su/tag/htaccess) - [OpenVZ](https://itblog.su/tag/openvz) - [Xen](https://itblog.su/tag/xen) - [Apache](https://itblog.su/tag/apache)