• Гаден бацил/malware
    Прави следните IP-та DNS сървъри по подразбиране
    82.163.143.176,82.163.142.178
    и то в advaced->dns часта за да е по-трудно за откриване. Предизвиква непрекъснати редиректи в IE
  • Списък на изпратената поща извлечен от maillog
    1. grep " from=<Имейла, който търсим>," /var/log/maillog* | awk '{print $6}' > mlist
    2. grep -f mlist /var/log/maillog* >Imail_Report
    или
    2. grep -f mlist /var/log/maillog* | awk 'NR %2 == 0' ако искаме само редовете с получателите
  • Списък на потребителите с различен собственик от потребителското име (директория в /home)
        ls -la /home |awk '($9!="." && $9!=".." && $3!=$9) {print "owner \033[1;34m" $3 "\033[0m user \033[1;31m" $9 "\033[0m"}'
  • function adduser($username,$password,$server){ shell_exec("ssh root@$server \"adduser $username; echo $password | passwd $username --stdin\""); } function chpass($username,$password,$server){ shell_exec("ssh root@$server \"echo $password | passwd $username --stdin\""); }
  • IE 10 и сваляне на минималната дължина на ключ за HTTPS сертификат
  • Копиране на реална машина на виртуалка
  • Преместване на /Home на нов диск/raid масив
  • Спиране на NetworkManager и уст. на статичен IP адрес и гейтуей
  • Quick and Easy Way to List All the Windows Updates Installed on Your System
    От командния ред изпълняваме ->wmic qfe list brief /format:texttablewsys > "%USERPROFILE%\hotfix.txt"
  • Копиране на БД MySql от един сървър на друг (работи и с различни версии на MySql)!!
    не трябва да се копират системните БД "information_schema", "mysql" и "performance_schema", затова вместо --all-databases се използва поименно --databases "db1" "db2" ....
    --routines е необходимо за да се прехърлят функциите, процеурите и колкото и странно да е да не се преобразуват 'views' в нормални (статични) таблици
    --triggers прехвърля и тригерите

    mysqldump -u root -pPASSWORD --routines --triggers --databases "db1" "db2" .... "dbn" | ssh USER@NEW.HOST.COM 'cat - | mysql -u root -pPASSWORD'
    Оригиналната публикация
  • TiWorker.exe in windows 8.1 take up to 50% CPU After updates installed.
    Original post
    It seems, that running the following command on an elevated command prompt fixes the issue:
    DISM /online /cleanup-image /restorehealth
  • Позволяване на самбата и паха да пишат във /var/www
    с работещ selinux, т.е няма нужда да спираме selinx-a :)
    chcon -t public_content_rw_t /var/www
    setsebool -P allow_smbd_anon_write 1
    setsebool -P allow_httpd_anon_write 1
    да добавим и
    semanage port -a -t http_port_t -p tcp 7869
    за да може да работи и дебъгера на Nusphere
  • Копиране с rsync
    1. Ако искаме в целевета папка да се изтрият липсавщите в папката източник:
    rsync -e ssh --delete -axvzKHS [source-location] [newserver-IP-address]:[destination-location]
    2. Ако не искаме да трием липсващите:
    rsync -e ssh -axvzKHS [source-location] [newserver-IP-address]:[destination-location]
  • По въпроса за swap и Linux
    Чети тук
  • стартиране на sfc в offline режим
    sfc /scannow /offbootdir=d:\ /offwindir=d:\windows Оригиналната публикация
  • Linux KVM: Disable virbr0 NAT Interface
    # virsh net-list
    
    Sample outputs:
    
    Name                 State      Autostart
    -----------------------------------------
    default              active     yes
    
    To disable virbr0, enter:
    # virsh net-destroy default
    # virsh net-undefine default
    # service libvirtd restart
    # ifconfig
    
    Оригиналната публикация
  • Рекурсивно преименуване на всички файлове
    find . -name "*.<old extension>" -exec rename .<old extension> .<new extension> {} +
    Пример:
    find . -name "*.htm" -exec rename .htm .html {} +
  • Инсталиране на Kartic джаджи за Yii 2
    
     cd /var/www/html/yii2
    
     php composer.phar require kartik-v/yii2-widgets "*"
    
     Ако получим съобщение за грешка и отказ от инсталация,
     трябва да преинсталираме composer-asset-plugin на Yii-то:
     
    	php composer.phar global remove "fxp/composer-asset-plugin"
    	php composer.phar require "fxp/composer-asset-plugin:~1.1.1"
     
     слагаме си и Grid уиджета
     php composer.phar require kartik-v/yii2-grid "@dev"
     
     следващото е за експортиране от grid
     
     php composer.phar require kartik-v/yii2-mpdf "dev-master" 
     
     ако няма да се експортира е добре да се сетне 'export'=>false,
     в параметрите на уиджета пример:
     
    echo KridView::widget([ 'dataProvider'=> $dataProvider, 'filterModel' => $searchModel, 'columns' => $gridColumns, 'responsive'=>true, 'hover'=>true, 'export'=>false, 'pjax'=>true, 'pjaxSettings'=>[ 'neverTimeout'=>true, 'beforeGrid'=>'My fancy content before.', 'afterGrid'=>'My fancy content after.', ] ]);
  • Утрепване на МАК адрес на CISCO рутер
    conf t<cr>
    mac-address-table static f07d.6849.5434 vlan 1000 drop
    Източника
  • Да си върнем F8 по време на зареждане на windows 10
    bcdedit /set "{current}" bootmenupolicy legacy
  • Да позволим на апаха да отваря порт 7869 за да работи дебъгера на PhpEd без да изключваме selinux-а
    semanage port -a -t http_port_t -p tcp 7869
  • 30 полезни bash aliases (macros)
    30
  • upgade fedora
    rpm --rebuilddb
    rpm -Va --nofiles --nodigest
    if anything is too new, do a
    # dnf downgrade offender(s)
    dnf --refresh update
    dnf --refresh upgrade
    dnf install python3-dnf-plugin-system-upgrade
    dnf system-upgrade download --refresh --allowerasing --releasever=XX
    dnf system-upgrade reboot
    ако всичко е наред след reboot тогава -> dnf clean packages
  • филтриране на коментарите от конфигурационни файлове
    egrep -v "^$|^[[:space:]]*#|^[[:space:]]*;" /etc/php.ini
  • "Скапване" на PST файл, с цел SCANPST.exe да измъкне изтритите писма
    1. Open the PST in the Hex editor.
    2. Delete positions 7 through 13 with the spacebar. Since you're using hexadecimal numbering, this actually clears 13 characters in the following positions: 00007, 00008, 00009, 0000a, 0000b, 0000c, 0000d 0000e, 0000f, 00010, 00011, 00012, 00013 As you clear the characters, the editor displays the code “20” in their position.
    3. Save the PST, it is now corrupted.
    4. Run the Inbox Repair Tool, SCANPST.exe, to recover the file. Use Windows Search utility to find it.
      The Inbox Repair Tool creates a backup and repairs the damage and recreates the PST.
    5. Open the new PST in Outlook. The Deleted Items folder should now contain the deleted messages, unless Outlook has already deleted them for good by compacting the PST.
  • Да рарешим на java да ползава само tls
      -Dhttps.protocols=TLSv1.1,TLSv1.2
  • Да получим в графичен вид процеса на стартиране на линукс.
      systemd-analyze plot >start.svg, след което отваряме файла в egde.
  • Да получим Let's encrypt сертификат за машина, на която не можем да пуснем certbot Vmware esxi например.
      certbot -d <full domain name (cirvirt4.tu-sofia.bg for example)> --manual --preferred-challenges dns certonly
  • HTML Video with NO DOWNLOAD
    
    <video width="300" height="175" controls autoplay controlsList="nodownload" oncontextmenu="return false;">
        <source src="https://adminbook.tu-sofia.bg/David%20Gilmour%20-%20Rattle%20That%20Lock%20(Official%20Music%20Video).mp4"  type="video/mp4" />
    </video>
    
  • Инсталиране на няколко версии на PHP на Fedora
    Трябва ни Remi repository
    за Fedora 36 е:
     dnf install https://mirrors.neterra.net/remi/fedora/remi-release-36.rpm
     следва инсталиране на колкото версии на PHP си искаме
     dnf install php74-php-cli php74-php-fpm php74-php-gd php74-php-curl php74-php-mysqlnd php74-php-zip php74-php-xml php74-php-mbstring php74-php-bcmath php74-php-ldap и т.н всичко което искаме да може PHP-то за тази версия (7.4)
     ...
     dnf install php80-php-cli php80-php-fpm php80-php-gd php80-php-curl php80-php-mysqlnd php80-php-zip php80-php-xml php80-php-mbstring php80-php-bcmath php80-php-ldap а това е за (8.0)
     ...
     
     systemctl enable php74-php-fpm
     systemctl start php74-php-fpm 
                                   
     systemctl enable php80-php-fpm
     systemctl start php80-php-fpm 
    
     
     Трябва да видим къде са конфигурационните файлове и съответно сокетите на които слушат съответните версии
     Следва пример за 8.0, повтаряме ме го за всички необходими ни версии.
     systemctl status php80-php-fpm
    ● php80-php-fpm.service - The PHP FastCGI Process Manager
         Loaded: loaded (/usr/lib/systemd/system/php80-php-fpm.service; enabled; vendor preset: disabled)
         Active: active (running) since Fri 2022-10-28 11:11:56 EEST; 2h 23min ago
       Main PID: 109400 (php-fpm)
         Status: "Processes active: 0, idle: 12, Requests: 4207, slow: 0, Traffic: 1.7req/sec"
          Tasks: 13 (limit: 9482)
         Memory: 187.3M
            CPU: 7min 41.117s
         CGroup: /system.slice/php80-php-fpm.service
                 ├─ 109400 "php-fpm: master process (/etc/opt/remi/php80/php-fpm.conf)"
                 ├─ 109401 "php-fpm: pool www"
                 ├─ 109402 "php-fpm: pool www"
                 ├─ 109403 "php-fpm: pool www"
                 └─ 111758 "php-fpm: pool www"
       
     grep include /etc/opt/remi/php80/php-fpm.conf
       ; Include one or more files. If glob(3) exists, it is used to include a bunch of
    	include=/etc/opt/remi/php80/php-fpm.d/*.conf
     ls -la /etc/opt/remi/php80/php-fpm.d
    	total 20
    	drwxr-xr-x  2 root root    22 Oct 28 10:54 .
    	drwxr-xr-x 12 root root   170 Oct 28 10:54 ..
    	-rw-r--r--  1 root root 19577 Oct 25 13:36 www.conf
     grep "listen\s=" /etc/opt/remi/php80/php-fpm.d/www.conf
    	listen = /var/opt/remi/php80/run/php-fpm/www.sock -> това е сокета, който търсим за PHP 8.0
                                 |--------------------------------|
    	За всички сайтове, които трябва да ползват PHP 8.0    |
    	добавяме следното в секцията                          |
    	<virtualhost>                                         |
    		<FilesMatch \.(php|phar)$>                    V
    			SetHandler "proxy:unix:/var/opt/remi/php80/run/php-fpm/www.sock|fcgi://localhost"
    		</FilesMatch>
    	</virtualhost>
    
    
    
  • Да конвертираме всички php файлове в текущата папка и подпапки от cp1251 на utf8
    find . -type f -name "*.php" -exec iconv -f cp1251 -t utf8 "{}" -o "/var/www/html/inf_work/{}" \;
  • 503441 error fix
  • Създаване на реплика с Mariadb
    -- on master
    
    mariabackup --backup --target-dir=/var/MariaBackup --user=xxxx --password=xxxx
    mariabackup --prepare --target-dir=/var/MariaBackup
    
    копираме папката на машината, която ще е реплика
    
    /usr/bin/rsync -a --info=name /var/MariaBackup ReplicaHost.ReplicaDomain:/var
    
    -- on slave
    
    systemctl stop mariadb
    mv /var/lib/mysql /var/lib/mysqlOld -- за всеки случай, ако всичко мине добе, може да я изстрием,
    mariabackup --copy-back --target-dir=/var/MariaBackup
    chown -R mysql:mysql /var/lib/mysql/
    cat /var/lib/mysql/xtrabackup_info 
    
    uuid = c4a2b7bd-1732-11ef-918d-a0d3c105f5e3
    name =
    tool_name = mariabackup
    tool_command = --backup --target-dir=/var/MariaBackup --user=xxxx --password=...
    tool_version = 10.6.11-MariaDB
    ibbackup_version = 10.6.11-MariaDB
    server_version = 10.6.11-MariaDB-log
    start_time = 2024-05-21 08:23:14
    end_time = 2024-05-21 08:27:08
    lock_time = 0
    binlog_pos = filename 'master2-bin.000349', position '657461979', GTID of the last change '0-2-9223542'
    innodb_from_lsn = 0                                                                           |
    innodb_to_lsn = 15245666486223                                                                |
    partial = N                                                                                   |
    incremental = N                                                                               |
    format = file                                                                                 |
    compressed = N                    |-----------------------------------------------------------|
                                      |
    systemctl start mariadb           |
    mysql -p                          |
                                      V
    SET GLOBAL gtid_slave_pos ="0-2-9223542";
    CHANGE MASTER TO
      MASTER_HOST='MasterHost.masterDomain',
      MASTER_USER='xxxx',
      MASTER_PASSWORD='xxxx',
      MASTER_PORT=3306,
      MASTER_USE_GTID=slave_pos;
    START SLAVE;
    SHOW SLAVE STATUS;