Main Page
This is my wiki, containing all of my shortcuts.
System specs
tells the system bit
uname -a
What linux version and release
cat /etc/redhat-release
VPS parent sudo rights
Get root fight when logged in using LDAP
sudo su
OwnerShip
Tell what group number owner is
cat /etc/passwd | grep nobody
Group
Add user to group
useradd -G {group-name} username
Permissions
Find 777 folders
find /home -perm 0777 -type d -print
Disable root login
useradd lwstaff passwd (assign a password) useradd -G wheel lwstaff vim /etc/ssh/sshd_config
change PermitRootLogin to no and uncomment it. restart sshd and test your work.
LIST
list by last modified
ls -lt
list by Proc id
lsof -p PID
VI commands
Add line numbers
:set number
remove line numbers
:set nonumber
ModRewrite
redirect Make sure mod_rewrite is on in the httpd.conf
Options +FollowSymlinks RewriteEngine on rewritecond %{http_host} ^domain.com [nc] rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]
MODSEC
Remove specified directory from modsec
SecRule REQUEST_URI "URI goes here" phase:1,nolog,allow,ctl:ruleEngine=Off
Add to this file and restart
vi /usr/local/apache/conf/modsec2/whitelist.conf /etc/init.d/httpd restart /etc/init.d/apf restart
Remove a whole domain
SecRule SERVER_NAME "handymanreality.com" phase:1,nolog,allow,ctl:ruleEngine=Off
Common modsec uri's
/wp-admin/post.php
RPM
Rpm src packages go here
/usr/local/src/
remove old kernal srcs
rpm -qa | grep kernel-source | xargs rpm -e
Rpm remove installed packages
rpm -e --nodeps {package name here}
horde mail update (nothing can be in account of will all get erased)
/usr/local/cpanel/bin/update-horde --force
To determine mailserver type
/scripts/setupmailserver --current
Count mail in folder
ls | wc -l
removing mass spam
rm -Rf /home/(user here}/mail/cur*
spam removel script
for i in $(find . | xargs grep -m 1 -s -i "Mailer-Daemon" | sed -e 's/\.\/[A-Z0-9a-z]\/\([A-Z0-9a-z\-]\{16\}\)\-[HDJ].*/\1/'); do exim -Mrm $i;done
SPAMD
SPAMD failing
/scripts/perlinstaller Digest::SHA1 /scripts/perlinstaller --force Mail::SpamAssassin /etc/rc.d/init.d/exim restart /scripts/restartsrv spamd
EXIM
number of msg in q
exim -bpc
print msg q summary
exim -bp | exiqsumm
Start a full q run
exim -q -v
Start a local delivery q run
exim -ql -v
Flush exim queue
exim -bpr | awk {'print $3'} | xargs exim -Mrm
APF
Apf un block
vi /etc/apf/deny_hosts.rules /etc/init.d/apf restart
- of attemps
vi /usr/local/bfd/conf.bfd
Starting APF:Unable to load iptables module (ipt_state), aborting.
vi /etc/apf/conf.apf SET_MONOKERN change to 1 /etc/init.d/apf restart
IPTABLES
Block temp with IPtables
iptables -I INPUT 1 -s ipaddress -j DROP
Block permanently with APF
/etc/apf/deny_hosts.rules
Load checking
Listening on port
lsof -i :25 Total connections on port 80 <pre>netstat -nap |grep -c :80 rough per sec hits <pre>/usr/bin/lynx -dump -width 500 http://127.0.0.1/whm-server-status | grep GET | awk '{print $12}' | sort | uniq -c | sort -rn | head Tells how many are using port 80 <pre>netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -f1 -d: | sort | uniq -c | sort -rn | head <h1>HTTPD and APACHE</h1> to distill changes to the httpd.conf <pre>/usr/local/cpanel/bin/apache_conf_distiller --update apache uptime <pre>/usr/bin/lynx -dump -width 500 http://127.0.0.1/whm-server-status
PHP
PHP info
<?php phpinfo(); ?>
PHP version
/usr/local/cpanel/bin/rebuild_phpconf --current
PHP 4 module check
/usr/local/php4/bin/php
Suphp permission fix
wget -O /scripts/suphpfix.pl http://layer3.liquidweb.com/scripts/suphpfix.pl chmod +x /scripts/suphpfix.pl /scripts/suphpfix.pl
enable/disable monitoring script ---
wget http://scripts.ssullivan.org/apiCalls/confMonitoring perl confMonitoring
PhP mem limit on a shared with dso goes into the public_html in the .htaccess
php_value memory_limit 64M
veiw availiable php upgrades
/scripts/phpextensionmgr list
install php upgrade
/scripts/phpextensionmgr install (name here)
MYSQL
To backup all databases to remote location
mkdir /home/sqlbackup for db in `mysql -s -B -e "show databases"`;do mysqldump $db > /home/sqlbackup/$db.sql.(version number here);done
repair a crashed MYISAM table stop chkservd and mysql
/usr/local/cpanel/bin/tailwatchd --disable=Cpanel::TailWatch::ChkServd /etc/init.d/mysql stop
then do
myisamchk -r /var/lib/mysql/(databasename)/(tablename) /etc/init.d/mysql start /usr/local/cpanel/bin/tailwatchd --enable=Cpanel::TailWatch::ChkServd
"MySQL server has gone away" fix
increase wait_timeout and max_allowed_packet in
vim /etc/my.cnf
/etc/init.d/mysql stop /etc/init.d/mysql start
Correct way to upgrade mysql in cpanel box
vim /var/cpanel/cpanel.config
mysql=version you want
/usr/local/cpanel/whostmgr/bin/whostmgr2 --updatetweaksettings mkdir /home/sqlbackup for db in `mysql -s -B -e "show databases"`;do mysqldump $db > /home/sqlbackup/$db.sql.(old mysql version number here);done /scripts/mysqlup mysqladmin version /scripts/easyapache
Myqsl packages are installed
rpm -qa | grep SQL | grep -vi perl
Force perl update
/scripts/perlinstaller --force Bundle::DBD::mysql
what mysql version
mysqladmin version
Mysql database location
cd /var/lib/mysql
imports a dumped file
mysql database < db-dump-file.sql
Mysqldump
mysqldump dbname > dbname.sql
Stats
update all stats
for user in `ls -A /var/cpanel/users`; do /scripts/runweblogs $user ;done
Ports
Bindings
netstat -lnc
VPS
VPS is locked when some operation (backup, migration, start / stop, etc.) with this VPS is in progress. You can determine which process is holding VPS #101 using the following command on the hardware node:
# cat /vz/lock/101.lck
You can kill that process if needed. Make sure that the process is really killed. If there is no process with that PID on the node, just remove the lockfile.
Top
sort by memory
shift - m
sort by processor usage
shift - p
MR Radar
Install mr radar
lpyum install mm3k-client-pull
Rdesktop
rdesktop (servername here) -u mshooltz -p (passhere) &
SSl locations
/usr/share/ssl /etc/ssl/certs
Empty files
To create a empty file that takes so much spce for testing uploads.
dd if=/dev/zero of=file1G.tmp bs=1G count=1
Index blocking
Blocks the index of / from being seen. Remove the +a- to make visable again.
Options +Indexes +a-
CPANEL
Cpanel gives this error [a fatal error or timeout occurred while processing this directive] mv /home/(username)/.cpanel/*cache different location and or check permissions on the /home/(username)/.cpanel folder should be user:user
error when accessing http://ipaddress/~username/ Warning: Unknown: open_basedir restriction in effect. File(/home/hilariou/public_html/index.php) is not within the allowed path(s): (/usr/local/lp:/proc:/usr/lib/php:/usr/local/lib/php:/tmp) in Unknown on line 0
Move this line to the post section of the httpd.conf
vim /usr/local/apache/conf/httpd.conf
Include "/usr/local/lp/configs/httpd/vhost.conf"
ChkServd
enable chkservd
/usr/local/cpanel/bin/tailwatchd --enable=Cpanel::TailWatch::ChkServd
Disable chkservd
/usr/local/cpanel/bin/tailwatchd --disable=Cpanel::TailWatch::ChkServd
Fantastico
add the Fantastico installer plugin
cd /usr/local/cpanel/whostmgr/docroot/cgi wget -N http://files.betaservant.com/files/free/fantastico_whm_admin.tgz tar -xzpf fantastico_whm_admin.tgz rm -rf fantastico_whm_admin.tgz
Python
find python version
python -V
SED
replace this with THIS
sed -i 's/(this)/(THIS)/g' path/filename
Premigrations
Lower ttls and serial changes
wget http://layer3.liquidweb.com/migrations/premigrate.sh bash premigrate.sh
SCP
scp {file} root@67.225.131.43:/home/
For loops and other loops
ALWAYS RUN THIS FIRST!!!!!
unalias ls
package all cpanel accounts
for user in `ls -A /var/cpanel/users`; do /scripts/pkgacct $user;done
looping a command
while x=0; do killall -9 php5; sleep .1; done
History Removal commands
run this for a I was never in the box situation.
echo "" > /var/log/messages && echo "" /var/log/secure history -c && echo "" > /var/log/wtmp && echo "" > /var/log/lastlog