Misc data

https://askubuntu.com/questions/719410/wget-web-crawler-retrieves-unwanted-index-html-index-files
http://forum.jotta.no/jotta/problems/recent

Android

https://stackoverflow.com/questions/36936271/installing-android-support-repository-offline

Firefox

https://addons.mozilla.org/en-US/firefox/addon/fireshot/

Chrome

Recovering a lost session (it’s not possible, Chrome does not make copies of the “Current Session” and “Last Session” files), otherwise than being fast at the first startup after a crash. Session data is stored at AppData/Local (not Roaming as %AppData% points to)
%AppData%\..\Local\Google\Chrome\User Data\Default
In my last crash, I also had a “Default” folder inside the “Default” folder, containing session and history files.

Back up whatever is left of the session and history files. The files of interest is “Current Session”, “Last Session” and “History”. The “History” file is your last resort to recover, it could contain many months of visited pages and there is no way to tell which of those was in currently open and lost tabs.

Copy the “History” file to a real operating system which have sqlite3 available. Open the “History” database:

sqlite3 History

In sqlite3, set up csv export mode and filename:

.headers on
.mode csv
.output my-chrome-crash-history-timesort.csv
SELECT datetime(last_visit_time/1000000-11644473600,'unixepoch','localtime'), url FROM urls ORDER BY last_visit_time DESC;
.output my-chrome-crash-history-urlsort.csv
SELECT datetime(last_visit_time/1000000-11644473600,'unixepoch','localtime'), url FROM urls ORDER BY url;

Examine the files by your favorite calc program (LibreCalc).

Networking stuff

https://www.tecmint.com/test-network-throughput-in-linux/
https://www.commandlinefu.com/commands/view/5799/test-network-speed-without-wasting-disk

Web

https://github.com/soster/htadmin
https://ogp.me/
https://developers.facebook.com/tools/debug/sharing/?q=http%3A%2F%2Fpeo.yliniemi.se%2Falbum%2Falbum.php%3Fmd5msg%3D40849e64c77b718fb83224b0d045c301%26album%3D12345677
https://www.google.com/search?q=ajax+jquery+send+post+to+database

Pine Linux computer

https://www.pine64.org/

Debian, live boot USB

https://willhaley.com/blog/custom-debian-live-environment/
https://wiki.archlinux.org/index.php/Systemd#Using_units
https://wiki.archlinux.org/index.php/getty
https://blog.sleeplessbeastie.eu/2012/05/27/how-to-modify-squashfs-image/

Docker

https://stoneriverelearning.com/courses/54298/lectures/1031275

https://www.linkedin.com/learning/search?keywords=vpn
https://github.com/cad/ovpm

Amiga

http://eab.abime.net/showthread.php?t=94493
http://eab.abime.net/showthread.php?t=91638&page=5
https://www.filfre.net/the-digital-antiquarian-e-book-library/

MySQL

https://stackoverflow.com/questions/21055826/mysql-enclosed-by-double-quote
https://stackoverflow.com/questions/950414/compare-differences-between-two-tables-in-mysql
https://stackoverflow.com/questions/168736/how-do-you-set-a-default-value-for-a-mysql-datetime-column
https://stackoverflow.com/questions/409705/mysql-selecting-data-from-multiple-tables-all-with-same-structure-but-differen
https://stackoverflow.com/questions/14753321/add-auto-increment-id-to-existing-table
https://www.sqlservercentral.com/forums/topic/insert-into-excluding-one-column
https://stackoverflow.com/questions/740358/reorder-reset-auto-increment-primary-key
http://www.mysqltutorial.org/mysql-copy-table-data.aspx

https://serverfault.com/questions/339562/remote-desktop-auto-start-session-on-workstation-login

https://superuser.com/questions/793219/creating-and-splitting-large-multipage-tiff-images

https://www.cyberciti.biz/faq/bash-for-loop/
https://www.cyberciti.biz/tips/handling-filenames-with-spaces-in-bash.html
https://www.shellhacks.com/bash-read-file-line-by-line-while-read-line-loop/

WordPress

https://woocommerce.com/products/woocommerce-subscriptions/
https://woocommerce.com/products/woocommerce-memberships/
https://docs.woocommerce.com/document/woocommerce-memberships/

https://www.wpbeginner.com/plugins/how-to-turn-off-related-videos-when-embedding-youtube-videos-in-wordpress/
https://wordpress.org/support/plugin/post-type-switcher/
https://canonicalized.com/woocommerce-alternatives/?section=wp-ecommerce
https://wordpress.stackexchange.com/questions/191658/allowing-user-to-edit-only-certain-pages

OsTicket

https://osticket.com/download/
https://docs.osticket.com/en/latest/Getting%20Started/Upgrade%20and%20Migration.html
https://forum.osticket.com/d/90971-plugin-autocloser-closes-old-tickets
http://phpcrossref.com/xref/osticket/include/class.dispatcher.php.html

Windows

https://manage.accuwebhosting.com/knowledgebase/988/How-to-set-website-redirection-from-IIS-7.html
https://backpackerdeveloper.com/articles/iis/how-to-enable-http-redirect-feature-in-iis-7/
https://knowledge.autodesk.com/search-result/caas/sfdcarticles/sfdcarticles/Are-there-antivirus-exclusions-I-can-implement-to-make-programs-run-better.html
https://itknowledgeexchange.techtarget.com/itanswers/how-to-clear-outlooks-exchange-cache-address-book/
https://superuser.com/questions/445625/how-to-update-all-contacts-from-active-directory
https://community.spiceworks.com/topic/2170480-server-2019-upgrade-domain-administrator-missing-rights
https://www.tenforums.com/virtualization/96729-hyper-v-virtual-switch-breaks-my-network-3.html
https://www.sevenforums.com/customization/220140-folder-shortcut-parameter-open-new-window-two-questions.html
https://support.microsoft.com/en-my/help/252330/when-you-toggle-terminal-services-to-application-server-mode-some-prog
https://support.microsoft.com/en-sg/help/186627/how-to-temporarily-disable-terminal-server-client-logons
https://msfn.org/board/topic/128746-slow-software-installation-on-terminal-servers/
https://stackoverflow.com/questions/581219/find-out-who-is-locking-a-file-on-a-network-share
https://www.108.bz/posts/it/cloning-an-active-directory-group/
https://enterpriseit.co/windows-server/move-remote-desktop-licenses-new-server/
https://www.windowscentral.com/how-disable-windows-10-fast-startup
https://changewindows.org/milestones/redstone5
https://codeslammer.wordpress.com/2009/02/21/wmic-wildcard-search-using-like-and/
https://community.spiceworks.com/topic/359190-user-not-showing-up-in-global-address-list
https://practical365.com/exchange-server/removing-old-quarantined-activesync-devices-from-exchange-server/
https://serverfault.com/questions/410638/can-you-find-out-when-a-new-user-was-created-in-active-directory-on-windows-2003
https://stackoverflow.com/questions/141154/how-can-i-determine-installed-sql-server-instances-and-their-versions
https://www.microsoft.com/en-us/sql-server/sql-server-2019
https://www.microsoft.com/en-us/evalcenter/
https://www.computerhope.com/issues/ch000088.htm

https://www.top-password.com/blog/prevent-windows-10-apps-from-running-in-the-background/
https://ss64.com/vb/regwrite.html
https://4sysops.com/wiki/windows-10-privacy-settings/
https://4sysops.com/archives/windows-10-privacy-all-group-policy-settings/
https://www.tenforums.com/tutorials/76453-enable-disable-advertising-id-relevant-ads-windows-10-a.html

https://www.mysysadmintips.com/windows/clients/545-multiple-rdp-remote-desktop-sessions-in-windows-10
https://github.com/stascorp/rdpwrap
https://github.com/fre4kyC0de/rdpwrap

https://www.virtualhere.com/forum/1
https://iphostmonitor.com/monitoring-toner-level-in-snmp-capable-hp-printer.html
https://www.baitando.de/it/2017/10/28/monitor-printer-ink-level-with-openhab-using-snmp

https://www.dell.com/community/Systems-Management-General/Sending-email-alerts-from-Dell-Open-Manage-Server-Administrator/td-p/3002120

VBA

https://ss64.com/vb/mapnetworkdrive.html
https://gist.github.com/nadvolod/acb3064d2fe16200368fc86f0bc9608a
https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/createtextfile-method

Regular expressions

https://www.regular-expressions.info/replacebackref.html

Networking

https://www.handymanhowto.com/how-to-wire-a-cat6-rj45-ethernet-plug/
https://www.handymanhowto.com/how-to-make-an-ethernet-network-cable-cat5e-cat6/
https://forums.hardwarezone.com.sg/internet-bandwidth-networking-clinic-4/asus-rt-n56u-secondary-router-wireless-bridge-possible-4480164.html
https://bitbucket.org/padavan/rt-n56u/downloads/
https://www.howtoforge.com/reverse-ssh-tunneling

Cisco

https://community.cisco.com/t5/vpn-and-anyconnect/how-do-i-verify-my-site-to-site-vpn-using-asdm/td-p/1818212
https://networkengineering.stackexchange.com/questions/37246/no-traffic-over-asa-5505-site-to-site-tunnel
https://community.cisco.com/t5/vpn-and-anyconnect/connecting-to-localhost-when-connected-to-vpn/td-p/1971443
https://technotes.khitrenovich.com/cisco-asa-not-space-device-error-fixed/
https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/69984-upgrade-pix-asa7x-asdm.html
https://community.cisco.com/t5/firewalls/port-forwarding-on-cisco-asa5505/td-p/2122761/page/2

Debian

https://cdimage.debian.org/mirror/cdimage/archive/9.4.0-live/i386/iso-hybrid/
http://cdimage.debian.org/mirror/cdimage/archive/9.4.0/i386/iso-cd/
https://wiki.archlinux.org/index.php/Nodm
https://blog.sleeplessbeastie.eu/2012/05/27/how-to-modify-squashfs-image/

Downloads, filelistings (apache autoindex)

http://download.escope.net/cisco/
http://mirror.cogentco.com/pub/misc/
http://lod.com/cisco/

Virtualization

https://www.virten.net/2014/12/howto-create-a-bootable-esxi-installer-usb-flash-drive/
https://www.altaro.com/hyper-v/templating-virtual-machines-with-hyper-v-manager/

Synology NAS – PHP

Enabling extensions in PHP CLI

https://blackswan.ch/archives/594

Become root
Find out which configuration file is used:
php --ini

I get:
Configuration File (php.ini) Path: /usr/local/etc/php70
Loaded Configuration File: /usr/local/etc/php70/php.ini

Edit the php.ini file, check/change extensions dir to where it is located. If PHP was installed through DSM it should be something like ‘/volume1/\@appstore/PHP7.0’
extension_dir = "/volume1/@appstore/PHP7.0/usr/local/lib/php70/modules/"

Enable the extensions you wish to use:
extension = mysqli.so
extension = phar.so
extension = openssl.so
extension = zip.so
extension = curl.so

Installing Composer

https://medium.com/unhandled-code/installing-composer-on-synology-6-1-4-eebd1a1c4891

Become root
Enable the extensions as above (phar, openssl and zip are needed for Composer).

Get and install Composer:
cd /usr/local/bin
curl -s http://getcomposer.org/installer | php70

Create shortcut script ‘composer’ in /usr/local/bin:
#!/bin/bash
php70 /usr/local/bin/composer.phar $*

Set permissions:
chmod --reference=composer.phar composer

Test:
composer --version

Education

Video tutorials:
https://tutsgalaxy.com/

Packt Publications
https://www.packtpub.com/packt/offers/free-learning
https://www.packtpub.com/mapt/book/networking_and_servers/9781787120099/6/ch06lvl1sec39/sending-an-sms
https://www.freetechbooks.com/packt-free-ebooks-b81.html

SitePoint
https://www.sitepoint.com/

Stackcocial (shop for Stackskills)
https://stacksocial.com/
https://stacksocial.com/free
Free All-About-Android Coding Bundle

  • Using Java for Android & Advanced Applications
  • Publish an Android Game App
  • Android Material Design: Learning Through Example
  • Advanced Android Programming Skills

Stackskills (account required, access to purchased content)
https://stackskills.com/courses/html-5-from-the-ground-up/lectures/1002775
https://stackskills.com/courses/chinese-made-easy/lectures/644144
https://stackskills.com/courses/enrolled

StoneRiver eLearning (account required, access to purchased content)
https://stoneriverelearning.com/

Sitepoint (account required)
https://www.sitepoint.com/premium/courses/creating-a-login-portal-with-bootstrap-4-2994/lesson/1/step/2

Bootstrap
https://getbootstrap.com/docs/4.0/getting-started/introduction/

QNAP

Retaining mounted USB-disk locations on QNAP reboot
https://forum.qnap.com/viewtopic.php?f=25&p=636810#p636810

raid 5 failed after disk swap
https://forum.qnap.com/viewtopic.php?f=25&t=135753

Drive failure while rebuilding
https://forum.qnap.com/viewtopic.php?f=25&t=122300

Changing shell prompt and title of PuTTY
.profile
export PS1=”\[\e]2;\u@\H:\w\a\[\e[32;1m\][\W #] \[\e[0m\]”

My posts:
https://forum.qnap.com/search.php?author_id=190665&sr=posts

PHP

How to Convert MySQL to MySQLi PHP Code to Upgrade to PHP7 Doing the PHP MySQL MySQLi Migration

https://www.phpclasses.org/blog/package/9199/post/3-Smoothly-Migrate-your-PHP-Code-using-the-Old-MySQL-extension-to-MySQLi.html

This is my (very rough) method, search and replace in all .php and .inc files using Perl. To re-use my code, you HAVE to make modifications and take a backup of every .php and .inc file in case somwthing goes wrong.

I converted one project at a time, these commands were used for my Amiga user’s database, so some commands will reflect specific changes/searches I did in the code to find lines to change, I also did some mistakes and corrected those. Read the commands before you try these on your code:

find . -type f -name '*.php' -exec grep -l mysql_numrows {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_numrows|mysqli_num_rows|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_num_rows|mysqli_num_rows|g' {} \;

find . -type f -name '*.php' -exec perl -pi -e 's|mysql_selectdb|mysqli_select_db|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_select_db|mysqli_select_db|g' {} \;
find . -type f -name '*.php' -exec grep mysqli_select_db {} \;
#
# Change to match your database name and the MySQL connection link (db name and calling parameters found above)
# Using mysql_select_db, the MySQL link identifier was optional, and sent as the second parameter
#  with mysqli_select_db it is required as a first parameter
#
find . -type f -name '*.php' -exec grep 'db("minimig_reg",\$link' {} \;
find . -type f -name '*.php' -exec grep 'db("minimig_reg")' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|db\("minimig_reg",\$link|db\(\$link,"minimig_reg"|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|db\("minimig_reg"\)|db\(\$link,"minimig_reg"\)|g' {} \;

#
# mysqli_connect returns the link identifier and also requires the database name as the fourth parameter, add it manually after this replacement
#
find . -type f -name '*.php' -exec grep mysql_connect {} \; 
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_connect|mysqli_connect|g' {} \;  

find . -type f -name '*.php' -exec grep mysql_error {} \;    
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_error()|mysqli_error(\$link)|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysqli_error\(\$link\)\(\)|mysqli_error\(\$link\)|g' {} \;

find . -type f -name '*.php' -exec grep mysql_insert {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_insert_id\(\)|mysqli_insert_id\(\$link\)|g' {} \;

find . -type f -name '*.php' -exec grep mysql_query {} \;  
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_query\(|mysqli_query\(\$link,|g' {} \;

find . -type f -name '*.php' -exec perl -pi -e 's|mysql_fetch_assoc|mysqli_fetch_assoc|g' {} \;

find . -type f -name '*.php' -exec grep mysql_fetch_array {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_fetch_array\(\$result\)|mysqli_fetch_array\(\$result,MYSQLI_BOTH\)|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_fetch_array\(\$result_migs\)|mysqli_fetch_array\(\$result_migs,MYSQLI_BOTH\)|g' {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_fetch_array\(\$result_info\)|mysqli_fetch_array\(\$result_info,MYSQLI_BOTH\)|g' {} \;

find . -type f -name '*.php' -exec grep mysql_real_escape_string {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_real_escape_string\(|mysqli_real_escape_string\(\$link,|g' {} \;

find . -type f -name '*.php' -exec grep mysql_affected_rows {} \;
find . -type f -name '*.php' -exec perl -pi -e 's|mysql_affected_rows\(\)|mysqli_affected_rows\(\$link\)|g' {} \;

The include files (mostly the same command lines):

find . -type f -name '*.inc' -exec grep -l mysql_numrows {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_numrows|mysqli_num_rows|g' {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_num_rows|mysqli_num_rows|g' {} \;

find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_selectdb|mysqli_select_db|g' {} \;
find . -type f -name '*.inc' -exec grep '"minimig_reg",\$link' {} \;   
find . -type f -name '*.inc' -exec perl -pi -e 's|"minimig_reg",\$link|\$link,"minimig_reg"|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_connect {} \; 
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_connect|mysqli_connect|g' {} \;  

find . -type f -name '*.inc' -exec grep mysql_error {} \;    
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_error\(\)|mysqli_error\(\$link\)|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_insert {} \;  
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_insert_id\(\)|mysqli_insert_id\(\$link\)|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_query {} \;  
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_query\(|mysqli_query\(\$link,|g' {} \;

find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_fetch_assoc|mysqli_fetch_assoc|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_fetch_array {} \;  
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_fetch_array\(\$result\)|mysqli_fetch_array\(\$result,MYSQLI_BOTH\)|g' {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_fetch_array\(\$result_migs\)|mysqli_fetch_array\(\$result_migs,MYSQLI_BOTH\)|g' {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_fetch_array\(\$result_info\)|mysqli_fetch_array\(\$result_info,MYSQLI_BOTH\)|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_real_escape_string {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_real_escape_string\(|mysqli_real_escape_string\(\$link,|g' {} \;

find . -type f -name '*.inc' -exec grep mysql_affected_rows {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_affected_rows\(\)|mysqli_affected_rows\(\$link\)|g' {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|mysql_result|mysqli_result|g' {} \;

find . -type f -name '*.inc' -exec grep split {} \;
find . -type f -name '*.inc' -exec perl -pi -e 's|split\(|explode\(|g' {} \;
find . -type f -name '*.php' -exec grep split {} \;

Missing function mysqli_result (to replace mysql_result)

function mysqli_result($res,$row=0,$col=0){
    $numrows = mysqli_num_rows($res);
    if ($numrows && $row <= ($numrows-1) && $row >=0){
        mysqli_data_seek($res,$row);
        $resrow = (is_numeric($col)) ? mysqli_fetch_row($res) : mysqli_fetch_assoc($res);
        if (isset($resrow[$col])){
            return $resrow[$col];
        }
    }
    return false;
}