This quick tutorial provides steps to use the netstat, nmap and lsof command to check the ports in use and view the application that is utilizing the port.
Source: How to check if port is in use on Linux or Unix – nixCraft
This quick tutorial provides steps to use the netstat, nmap and lsof command to check the ports in use and view the application that is utilizing the port.
Source: How to check if port is in use on Linux or Unix – nixCraft
What’s the best way to check if a volume is mounted in a Bash script? What I’d really like is a method that I can use like this: if <something is mounted at /mnt/foo> then <Do some
Source: What’s the best way to check if a volume is mounted in a Bash script?
Avoid using
/etc/mtab
because it may be inconsistent.Avoid piping
mount
because it needn’t be that complicated.Simply:
if grep -qs '/mnt/foo' /proc/mounts; then echo "It's mounted." else echo "It's not mounted." fi
You can use the mailq command sendmail -bp command to display a summary of the mail messages queued for future delivery. Type the following command:
# mailq
via Sendmail: Clear / Delete / Flush Mail Queue.
A service in a local server started to send email through my main server back to the originating server causing many errors in /var/log/maillog of my main server. Each attempt added a message to its message queue that was blocked due to a problem with sendmail on the originating server. The email being sent was sent automatically by a VOIP service I was testing on that originating server (not good).
You can cd to /var/spool/mqueue and delete all files if you want to get rid of all messages in the queue:
# cd /var/spool/mqueue/
# ls
# rm *
The above sequence cleared the queue so sendmail stopped trying to send those messages to a broken server at the destination.
Sendmail wouldn’t start. OS Fedora 19 so it’s running that new systemd for service startup. Here are pertinent error messages in /var/log/messages:
Nov 17 21:23:39 ana systemd[1]: Starting Sendmail Mail Transport Agent... Nov 17 21:23:39 ana sendmail[1555]: -bd is not supported by sSMTP Nov 17 21:23:39 ana systemd[1]: PID file /run/sendmail.pid not readable (yet?) after start. Nov 17 21:23:39 ana systemd[1]: Failed to start Sendmail Mail Transport Agent. Nov 17 21:23:39 ana systemd[1]: Dependency failed for Sendmail Mail Transport Client. Nov 17 21:23:39 ana systemd[1]: Unit sendmail.service entered failed state.
I did a lot of googling to find someone in a similar situation to no avail. I then looked into sSMTP and why that was being called instead of good old sendmail. After
#yum erase sSMTP
thus purging that service entirely from the system, sendmail starts in this Fedora 19 VM and works (knock on wood).
#!/bin/bash umask 077 max_lines=10000 linecount=$(wc -l < ~/.bash_history) if (($linecount > $max_lines)); then prune_lines=$(($linecount - $max_lines)) head -$prune_lines ~/.bash_history >> ~/.bash_history.archive \ && sed -e "1,${prune_lines}d" ~/.bash_history > ~/.bash_history.tmp$$ \ && mv ~/.bash_history.tmp$$ ~/.bash_history fi
via BashFAQ/088 – Greg’s Wiki.
I needed to manage shell command history in a formal fashion in order to turn repeated sequences into scripts without having to type them in again. I also wanted a record of packages installed and in what order. The history of commands is contained in .bash_history file which is read once when a terminal opens. Running set -o vi allows for history commands to be recalled using standard vi commands. The above script can be run as a user level cron job to periodically prune the top so many commands and place them into an archive.
The bash statements below set history size and make it so a command will be written to the history file immediately and not simply when a terminal closes. These should be placed in .bashrc or whatever file executes when a new terminal opens.
HISTFILESIZE=400000000 HISTSIZE=10000 PROMPT_COMMAND="history -a" export HISTSIZE PROMPT_COMMAND shopt -s histappend
sudo arp -s 10.0.0.2 00:0c:29:c0:94:bf
This commands tells local ARP table that the host with IP address 10.0.0.2 has MAC address 00:0c:29:c0:94:bf. Once you have configured a static ARP entry, you can verify that.
via How to add or remove a static ARP entry on Linux – Linux FAQ.
We have collection of more than 1 Million open source products ranging from Enterprise product to small libraries in all platforms. We aggregate information from all open source repositories. Search and find the best for your needs.
via 7 open source control-panel.
This site looks like an interesting resource to find useful open source packages. Webmin is listed as second in this list of 7 control panels. I have been using Webmin forever but might try out ISPConfig. Although something is listed on this site I always download packages from sourceforge.net.
For open source developer Johannes Ernst, what the world really needs is a simple device that anyone can use to take their data back from the wilds of the internet. So he designed the Indie Box, a personal web server preloaded with open source software that lets you run your own web services from your home network–and run them with relative ease. Any system administrator will tell you that setting up a server is just the first step. Maintaining it is the other big problem. Indie Box seeks to simplify both, with an option to fully automate all updates and maintenance tasks, from operating system patches to routine database migrations.
via Out in the Open: The Tiny Box That Lets You Take Your Data Back From Google | Enterprise | WIRED.
A completely assembled device costs $500.
This is just a linux box with standard server packages installed and probably a customized management system. Running your own web server does not take your data back from Google unless you run your own search engine. The main type of data Google retains for its customers is email. Running your own email server does keep your personal information from Google. However, from the article:
For now, it won’t include an e-mail server since spam filters make it so hard to run one from home.
I’ve collected 50 UNIX / Linux sysadmin related tutorials that we’ve posted so far. This is lot of reading. Bookmark this article for your future reference and read it whenever you get free time.
Memfetch
It is a simple utility to dump all memory of a running process, either immediately or when a fault condition is discovered. It is an attractive alternative to the vastly inferior search capabilities of many debuggers and tracers – and a convenient way to grab “screenshots” from many types of text-based interactive utilities. To install memfetch:
## FreeBSD ## pkg_add -r -v memfetch ## other *nix user download it from the following url ## wget http://lcamtuf.coredump.cx/soft/memfetch.tgz tar xvf memfetch.tgz cd memfetch && make
via Top 8 Tools For Linux / Unix Memory Forensics Analysis.
This looks like a useful tool. From the README file:
Debuggers like gdb are pretty good for examining small sections
of code or memory, but are pretty much useless for massive comparison, sophisticated searches and such. It’s good to be able to retrieve full memory image to run it thru grep, strings, your favorite viewer or any other tool. Quite obviously, I developed this code not because it’s extremely difficult to do it on your own, but because it is a valuable shell utility for all kinds of deep hacking activities that simply saves you time.Memfetch is a convenient screenshot grabber for ssh or screen sessions, by the way 😉
I chose memfetch from the eight since it seemed the most intuitive and simple. The downloadable tarball contains a single .c file and a make file. Unfortunately the installation isn’t as easy as portrayed in the above blurb. On Fedora 14 I needed to futz with the C_INCLUDE_PATH and add the kernel…/asm-generic into the path. I also had to symbolic link an asm to asm-generic in the kernel source include directory because the program wanted a asm/path.h file. Things have changed since 2007 when this program was last updated. But it works and it may prove useful. I’m sure Backtrack 5 must have this tool, or tool like this, pre installed.
Redirections such as
>
or|
are performed by the running shell, before it invokessudo
.You have to either use
sudo sh -c "echo blah > /proc/blah"
, or run a root shell withsudo -s
.
via linux – Bash: permission denied for file write – Super User.
This had me stumped until the greatness of google divined the answer and why my user script couldn’t write to a root owned file using plain old sudo. After figuring this out I also realized I don’t need to write to a root owned file after all but I found this solution interesting.