Welcome to my Technology Hotspot
Monday, November 10, 2025
Using SFTP on macOS
Method 1 SFTP (Secure File Transfer Protocol) is a secure way to transfer files between systems. macOS provides built-in support for SFTP through the terminal, and you can also use third-party tools for a graphical interface.
Method 1: Using Terminal (Built-in SFTP Client)
Open Terminal Launch the Terminal app from Applications > Utilities or by searching for it in Spotlight.
Connect to the Server Use the following command to initiate an SFTP session: sftp username@hostname Replace username with your server username and hostname with the server's IP address or domain.
Authenticate Enter your password when prompted.
Transfer Files Use these commands to manage files: Upload a file: put /path/to/local/file /path/to/remote/destination Download a file: get /path/to/remote/file /path/to/local/destination List files: ls Exit SFTP session: exit
Method 2: Using FileZilla (Graphical Interface)
Download and Install FileZilla Download FileZilla Client for macOS from FileZilla's official site. Ensure you select the version compatible with your macOS version.
Launch FileZilla Open the application after installation.
Set Up Connection Enter the following details in the top bar: Host: sftp://hostname Username: Your server username. Password: Your server password. Port: Default is 22.
Transfer Files Drag and drop files between the local and remote panes to upload or download files.
Best Practices
Always use strong passwords or SSH keys for authentication.
Verify server authenticity to avoid man-in-the-middle attacks.
Use third-party tools like FileZilla for ease of use if you're not comfortable with command-line operations.
Tuesday, October 28, 2025
Issue while pasting from the Windows clipboard into a PuTTY vi or vim terminal
Pasting from the Windows clipboard into a PuTTY vi or vim terminal can sometimes be problematic, particularly with newer vim versions that have mouse mode enabled by default. This can lead to unintended visual mode activation or incorrect pasting.
Here are the primary methods to paste from the clipboard into a PuTTY vi/vimsession:
Shift + Right-Click:
Shift + Insert:
Middle Mouse Button (Wheel Click):
Disable vim Mouse Mode (if applicable):
vim Paste Mode:
Note: Ensure vi or vim is in insert mode (by pressing i) before attempting to paste if you want the content to be inserted directly into the file. Otherwise, pasting might be interpreted as vim commands.
For larger pastes, vim's paste mode can be helpful.
Enter insert mode in vim, then type :set paste and press Enter.
Paste your content using one of the methods above, then type :set nopaste and press Enter to exit paste mode.
If you are experiencing issues due to vim's mouse mode, you can disable it for the current session by typing :set mouse= and pressing Enter while in vim.
To make this change permanent, you can add set mouse= to your ~/.vimrc file.
If your mouse has a middle button (often the scroll wheel), clicking it can paste the content.
Shift + Insert:
This keyboard shortcut can also be used to paste the clipboard content.
This is often the most reliable method for pasting in PuTTY, especially when vim's mouse mode is active. Hold down the Shift key and then right-click in the PuTTY window where you want to paste.
Wednesday, October 22, 2025
What caused the AWS outage that broke the internet on Oct 21st 2025
AWS outage 2025: More than 1,000 services were impacted by the outage, including popular platforms like WhatsApp, Snapchat and Reddit, which rely on AWS services, along with financial institutions like the British government’s tax services and entertainment services
In India, the impact of the outage was most pronounced in the aviation sector, with hundreds of flights delayed and several cancelled as airline operators found their systems inoperational and had to switch to manual processes. At least ten banks and NBFCs had “minor disruptions”, which have either been resolved or are being resolved, the Reserve Bank of India said at the time.
Here is a technical explanation for the AWS Outage due to a DNS failure.
AWS's own internal control plane is built on top of DynamoDB. It's a hidden dependency. When AWS's internal services couldn't find the IP for DynamoDB, the entire management layer collapsed.
Stage 1: DNS Fails. The internal DNS servers for dynamodb.us-east-1.amazonaws.com stopped working.
Stage 2: Control Plane Fails. AWS's own services that depend on DynamoDB immediately broke. This included:
IAM (for authentication and session state)
The EC2 instance launch subsystem (which uses DynamoDB for metadata)
Network Load Balancer (NLB) health checks (which, it turns out, write their health state to a DynamoDB table)
Stage 3: Circular Dependency. This is the crazy part. When the NLB health checks failed (because they couldn't write to DynamoDB), it caused more network connectivity issues, which in turn impacted the (already struggling) DynamoDB service itself. It created a vicious feedback loop.
Why it lasted 15+ hours (The UDP problem)
Fixing the DNS issue only took a couple of hours. The reason the recovery took so long was twofold:
The Retry Storm: DNS queries use UDP, which is a stateless, "fire and forget" protocol. When the DNS queries failed, millions of clients (SDKs, Lambda functions, other AWS services) didn't get an immediate "connection refused" (like with TCP). They just timed out after 5+ seconds and then retried. This created a "retry storm" (or thundering herd) of millions of requests that hammered the DNS servers and caches, preventing them from recovering even after the initial fix was in.
The Global Control Plane: Many of AWS's core control plane services (like IAM) are centralized in us-east-1. Even if your app was running in eu-west-1, if it needed to authenticate or launch an instance, that control plane operation was routed through us-east-1 and failed.
AWS's own internal control plane is built on top of DynamoDB. It's a hidden dependency. When AWS's internal services couldn't find the IP for DynamoDB, the entire management layer collapsed.
Stage 1: DNS Fails. The internal DNS servers for dynamodb.us-east-1.amazonaws.com stopped working.
Stage 2: Control Plane Fails. AWS's own services that depend on DynamoDB immediately broke. This included:
IAM (for authentication and session state)
The EC2 instance launch subsystem (which uses DynamoDB for metadata)
Network Load Balancer (NLB) health checks (which, it turns out, write their health state to a DynamoDB table)
Stage 3: Circular Dependency. This is the crazy part. When the NLB health checks failed (because they couldn't write to DynamoDB), it caused more network connectivity issues, which in turn impacted the (already struggling) DynamoDB service itself. It created a vicious feedback loop.
Why it lasted 15+ hours (The UDP problem)
Fixing the DNS issue only took a couple of hours. The reason the recovery took so long was twofold:
The Retry Storm: DNS queries use UDP, which is a stateless, "fire and forget" protocol. When the DNS queries failed, millions of clients (SDKs, Lambda functions, other AWS services) didn't get an immediate "connection refused" (like with TCP). They just timed out after 5+ seconds and then retried. This created a "retry storm" (or thundering herd) of millions of requests that hammered the DNS servers and caches, preventing them from recovering even after the initial fix was in.
The Global Control Plane: Many of AWS's core control plane services (like IAM) are centralized in us-east-1. Even if your app was running in eu-west-1, if it needed to authenticate or launch an instance, that control plane operation was routed through us-east-1 and failed.
Friday, October 10, 2025
How to show hidden folders in Mac OS in Finder
To show hidden files and folders on a Mac, open Finder and press the Command (⌘) + Shift + Period (.) keys simultaneously. The hidden files will appear with a faded or semi-transparent look. To hide them again, press the same keyboard shortcut.
Using the Keyboard Shortcut
- Open any Finder window.
- Navigate to the folder where you want to view hidden files, such as your Macintosh HD folder.
- Press and hold the Command, Shift, and Period keys all at the same time.
- Hidden files and folders will appear.
- To hide them again, repeat the same key combination.
Using Terminal (Alternative Method)
- Open Terminal by searching for it in Spotlight (magnifying glass icon).
- Enter the following command and press Return:
defaults write com.apple.finder AppleShowAllFiles YES. - Hold down the Option key, right-click the Finder icon in the Dock, and select Relaunch to apply the changes.
- To hide all files again, you can use the same command, replacing
YESwithNO, or simply press the keyboard shortcut from the first method.
Why Files Are Hidden
Hidden files are usually system files and should not be deleted or changed as it could cause problems with macOS or specific applications. They are hidden by default to prevent accidental modification or deletion.
Friday, September 12, 2025
How to remove the bash history from a Linux Terminal
Removing bash history in the terminal can be done in several ways, depending on whether you want to clear the current session's history, remove specific entries, or clear the entire history file.
1. Clear the current session's history:
To clear the history of commands in the currently running shell session, use:
ಕೋಡ್
history -c
This command clears the in-memory history for the current session but does not affect the ~/.bash_history file until the session exits (and even then, it will only write the current, now empty, history).
2. Remove specific entries from history:
To remove a specific command from the history, first, identify its line number using the history command. Then, use:
ಕೋಡ್
history -d <line_number>
Replace <line_number> with the actual line number of the command you wish to remove. To make this change permanent in the ~/.bash_history file, you need to write the current history to the file afterwards:
ಕೋಡ್
history -w
3. Clear the entire bash history file:
To completely clear the ~/.bash_history file, which stores your command history across sessions, you can use:
ಕೋಡ್
cat /dev/null > ~/.bash_history
This command effectively truncates the ~/.bash_history file, making it empty. For the changes to take effect immediately in the current session and in future sessions, it is also recommended to clear the current session's history:
ಕೋಡ್
history -c && cat /dev/null > ~/.bash_history
4. Temporarily disable history saving for the current session:
If you want to prevent commands from being saved to history for the current session, you can unset the HISTFILE environment variable:
ಕೋಡ್
unset HISTFILE
Commands executed after this will not be recorded in the ~/.bash_history file until a new shell session is started or HISTFILE is set again.
Subscribe to:
Comments (Atom)
Featured
TechBytes on Linux
This is a growing list of Linux commands which might come handy for the of Linux users. 1. Found out i had to set the date like this: ...
Popular Posts
-
This is a growing list of Linux commands which might come handy for the of Linux users. 1. Found out i had to set the date like this: ...
-
To set a PDF viewer as the default on Mac OS X: Select any PDF file from Finder. Control-click to open the menu. ... Choose Get...
-
ಮ್ಯಾಕ್ ಬುಕ್ ನಲ್ಲಿ ಕನ್ನಡ ದಲ್ಲಿ ಟೈಪ್ ಮಾಡಲು ಲಿಪಿಕ ಎನ್ನುವ ಈ ಕೆಳಗಿನ ಲಿಂಕ್ ಅನ್ನು ಕ್ಲಿಕ್ ಮಾಡಿ .pkg ಫೈಲ್ ಅನ್ನು ಡೌನ್ ಲೋಡ್ ಮಾಡಿ ಅದನ್ನು ಇನ್ಸ್ತಾಲ್ ಮಾಡಿ...