Network Configuration
Action |
Command |
Get IP configuration |
ifconfig -a |
IP configuration |
vi /etc/sysconfig/network-scripts/ifcfg-eth0 |
Change hostname |
vi /etc/sysconfig/network
NETWORKING=yes NETWORKING_IPV6=no HOSTNAME=hostname.local GATEWAY=X.X.X.X |
Setup a default Gateway |
Open /etc/sysconfig/network file: # vi /etc/sysconfig/network
GATEWAY=X.X.X.X |
Local name resolution |
vi /etc/hosts |
Configure DNS servers |
vi /etc/resolv.conf
search uk.aswats.net nl.aswatson.net nameserver 10.128.254.240 nameserver 10.128.254.241 |
Network interface disable- enable scripts |
“/etc/sysconfig/network-scripts” ifdown eth0 ifup eth0 |
Text-based network configuration tool |
system-config-network-tui system-config-network |
Restart Network service |
service network restart |
Manage network interface cards |
vi /Etc/udev/Rules.d/70-persistent-net.rules
|
ping host and output results |
ping host |
get whois information for domain |
whois domain |
get DNS information for domain |
dig domain |
reverse lookup host |
dig -x host |
VI Commands
Action |
Command |
Exit VI Save |
😡 |
Exit VI without Save |
:q! |
ULN Registration |
|
Proxy |
rpm –import /usr/share/rhn/RPM-GPG-KEY up2date –proxy=proxy.uk.aswatson.net:8080 |
Sysprep tbv ULN |
/usr/bin/uuidgen -t Vb: f0dbc569-cd92-4f8d-bf29-9971c3f5721f
vi /etc/sysconfig/rhn/up2date-uuid |
Change Password |
passwd |
Delegate persmissions |
visudo |
Updates installeren (alle) |
yum update |
Starting & Stopping |
|
Shutdown the system now and do not reboot |
shutdown -h now |
Shutdown the system in 5 minutes and reboot or now |
shutdown -r 5 | now |
Reboot |
reboot now |
Disk and Filesystems
|
|
Mount the device cdrom and call it cdrom under the /mnt directory |
mount -t iso9660 /dev/cdrom /mnt/cdrom |
Mount hard disk “a” as a VFAT file system and call it cdrive under the /mnt directory |
mount -t vfat /dev/hda1 /mnt/cdrive |
Unmount the cdrom |
umount /mnt/cdrom |
Executes graphical application for mounting and unmounting file systems |
usermount |
Mount a CIFS share |
1. Create Mount folder mkdir <folder> 2. Modify permissions chown <alloweduser> <folder> chgrp <allowedgrp> <folder> 3. Edit Configuration file vi /etc/fstab 4. insert: <server_with_share>:/<share> /mnt/<folder> cifs user=<remoteuser>,domain=<remotedomain>,uid=<localuser>,gid=<localgrp>,password=<localpasswd> 5. Run the mount command mount –a |
show disk usage |
df |
show directory space usage |
du |
Finding files
|
|
Starting with the root directory, look for the file called fname |
find / -name fname |
Starting with the root directory, look for the file containing the string fname |
find / -name ”*fname*” |
Find a file called missingfilename (assumes you have already used the command updatedb (see next) |
locate missingfilename |
Create or update the database of files on all file systems attached to the linux root directory |
updatedb |
Show the subdirectory containing the executable file called missingfilename |
which missingfilename |
Starting with the directory called dir, look for and list all files containing textstringtofind |
grep textstringtofind /dir |
|
|
Display the last 10 lines of the system log. |
tail -f /var/log/messages |
Display the file containing the boot time messages – useful for locating problems. Alternatively, use the dmesg command. |
cat /var/log/dmesg |
|
|
Moving, copying, deleting & viewing files |
|
List files in current directory using long format |
ls -l |
List files in current directory and indicate the file type |
ls –F |
List all files in current directory in long format and display in columns |
ls –laC |
List all files with hidden files |
ls -al |
Remove a file or directory called name |
rm name |
Kill off an entire directory and all it’s includes files and subdirectories |
rm -rf name |
Copy the file called filename to the /home/dirname directory |
cp filename /home/dirname |
Move the file called filename to the /home/dirname directory |
mv filename /home/dirname |
Rename files |
mv file1 file2 |
Display the file called filetoview |
cat filetoview |
Display the file called filetoview one page at a time, proceed to next page using the spacebar |
more filetoview |
Create directory |
mkdir dir |
delete directory dir |
rm -r dir |
force remove directory dir * |
rm -rf dir |
Delete directory |
rmdir dir |
force remove file |
rm -f file |
Change file owner |
chown |
Change file group |
chgrp |
Change file protections |
chmod |
List opened files |
lsof |
show processes that using the file |
fuser filename |
Searching
|
|
search for pattern in files |
grep pattern files |
search recursively for pattern in dir |
grep -r pattern dir |
search for pattern in the output of command |
command | grep pattern |
find all instances of file |
locate file |
Yum Install
|
|
Display list of updated software |
yum list updates |
To download and install all updates |
yum update |
To download and install all Security updates |
yum update –security |
You can install multiple libraries at once by separating the name of each module with a space. |
Yum install software1 software2 etc |
Search software |
yum search php- |
Software info |
yum info name |
Installing Software
|
|
Install the rpm package called name |
rpm -ihv name.rpm |
Upgrade the rpm package called name |
rpm -Uhv name.rpm |
Delete the rpm package called Package |
rpm -e package |
List the files in the package called package |
rpm -l package |
List the files and state the installed version of the package called package |
rpm -ql package |
Reinstall the rpm package called name having deleted parts of it (not deleting using rpm -e) |
rpm -i –force package |
Decompress the files contained in the zipped and tarred archive called archive |
tar -zxvf archive.tar.gz or tar -zxvf archive.tgz |
User Administration
|
|
Create a new user call accountname |
adduser accountname |
Give accountname a new password |
passwd accountname |
Log in as superuser from current login |
su |
At the lilo prompt, start in single user mode. This is useful if you have forgotten your password. Boot in single user mode, then run the passwd command. |
linux single |
List current processes |
ps |
Kill a specific process eg. kill 123 |
kil 123 |
Location of Configuration files
|
|
List of devices and their associated mount points. |
/etc/fstab |
Message of the day |
/etc/motd |
Bash script that is executed at the end of login process. Similar to autoexec.bat in DOS. |
/etc/rc.d/rc.local |
Conatins full hostname including domain |
/etc/HOSTNAME |
There are 4 directories that automatically execute all scripts within the directory at intervals of hour, day, week or month. |
/etc/cron.* |
A list of all know host names and IP addresses on the machine. |
/etc/hosts |
Paramters for the Apache web server |
/etc/httpd/conf |
Specifies the run level that the machine should boot into. |
/etc/inittab |
Defines IP addresses of DNS servers |
/etc/resolv.conf |
LILO boot loder configuration file. |
/etc/lilo.conf |
System log daemon (syslogd) configuration |
/etc/syslog.conf |
SSH client and server configuration files. |
/etc/ ssh_config /etc/sshd_config |
net time server. |
/etc/ntp.conf |
File- and print sharing with Microsoft clients. |
/etc/smb.conf |
File Permissions
|
|
||||||||||||
If the command ls -l is given, a long list of file names is displayed. The first column in this list details the permissions applying to the file. If a permission is missing for a owner, group of other, it is represented by – eg. drwxr-x—x
|
|||||||||||||
|
Shortkeys
|
|
halts the current command |
Ctrl+C |
stops the current command |
Ctrl+Z |
erases the whole line |
Ctrl+U |
Display list of active X windows |
Alt | escape |
Start an xterm session |
Shift|Control Altx |
Printing
|
|
LPRng configuration file. |
/etc/lpd.conf |
Start | Stop the print daemon |
/etc/rc.d/init.d/lpd start | stop |
Display status of the print daemon |
/etc/rc.d/init.d/lpd status |
Display jobs in print queue |
lpq |
Remove jobs from queue |
lprm |
Printer control tool |
lpc |
Start X printer setup interface |
printtool |
Print a file |
lpr |
Processes
|
|
List current processes |
ps |
Monitor processes |
top |
Display free memory |
free |
Terminate process |
Kill pid |
kill all processes named proc * |
killall proc |
lists stopped or background jobs |
bg |
brings the most recent job to foreground |
fg |
brings job n to the foreground |
Fg n |
Scheduling Jobs
|
|
Schedule a job |
at |
Schedule repeated jobs |
crontab |
System info
|
|
show current uptime |
uptime |
display who is online |
w |
who you are logged in as |
whoami |
show kernel information |
uname -a |
cpu information |
cat /proc/cpuinfo |
memory information |
cat /proc/meminfo |
show the manual for command |
man command |
show memory and swap usage |
free |
show possible locations of app |
whereis app |
show which app will be run by default |
which app |
Print the system’s hostname |
hostname |
display network information |
ifconfig |
User Management
|
|
create an new user |
Adduser |
create, delete, modify an new user |
useradd, userdel, usermod |
add, delete or modify group |
groupadd, groupdel, groupmod |
Sendmail
|
|
Config |
sendmail.cf sendmail.mc |
mail aliases, must run “newaliases” after change. use :include: to include external list in a file. |
aliases |
mail access control, FEATURE(access_db) should be set in sendmail.mc. For example, in /etc/mail/access cyberpromo.com REJECT mydomain.com RELAY spam@somewhere.com DISCARD |
access |
list all host/domain accepted for relaying |
/etc/mail/relay-domains |
NTP
|
|
Install the NTP package |
yum install ntp |
Configure NTP (udp 123) Search for these entries: |
# vi /etc/ntp.conf
server 0.rhel.pool.ntp.org server 1.rhel.pool.ntp.org server 2.rhel.pool.ntp.org |
Start the NTP service and set it to launch automatically upon boot |
service ntpd start chkconfig ntpd on |
Check NTP peers status |
ntpq -p |
Secure Copy
|
|
Copy a file from a remote host to the local host |
scp your_username@remotehost:file.txt /some/local/directory |
Copy a file from the local host to a remote host |
scp file.txt your_username@remotehost:/some/remote/directory |
Copy a directory from the local host to a remote host’s directory |
scp -r yourdir your_username@remotehost:/some/remote/directory/yourdir |
Copy file from remote host to remote host |
scp your_username@host1:/some/remote/directory/file.txt \ your_username@host2:/some/remote/directory/ |
Webserver
|
|
Check if Apche is installed |
rpm -qa | grep httpd |
Install Apache Webserver |
yum groupinstall “Web Server” |
Install PHP Support |
yum groupinstall “PHP Support” |
List of useful PHP-libraries and -modules |
yum search php- |
To see more details about what each module does |
yum info name of the module |
Start Webserver |
service httpd start apachectl start |
set the Apache to run automatically when the server boots |
chkconfig httpd on |
Install LAMP (Linux, Apache, MySQL, PHP) |
yum groupinstall “Web Server” “PHP Support” “MySQL Database server” “MySQL Database client” yum install php-mysql |
See PHP on the server by creating testpage |
vi /var/www/html/info.php <?php phpinfo(); ?>
Visit your site: http://server/info.php |
Restart Apache |
service httpd restart |
Scrtipt to control the functioning of the Apache httpd daemon. |
apachectl start|stop|restart|fullstatus|status|configtest |
Restart / Stop without aborting currently open connections |
apachectl graceful |graceful-stop |
MySQL
|
|
Install MySQL |
yum groupinstall “MySQL Database server” “MySQL Database client” or: yum install mysql-server |
Start MySQL |
service mysqld start |
set MySQL to run automatically when the server boots |
chkconfig mysqld on |
Configure and set MySQL root password (default is empty) |
/usr/bin/mysql_secure_installation |
Access the MySQL shell |
mysql -u root –p mysql |
Create and Delete a MySQL Database |
mysql> CREATE DATABASE database dbname; mysql> DROP DATABASE database dbname; |
Show Databases |
mysql> SHOW DATABASES; |
Show Users |
mysql>select user from mysql.user; |
Show Users (avoid duplicate names) |
mysql>select distinct user from mysql.user; |
To connect remotely bind MySQL port 3306 to your machines IP |
vi /etc/mysql/my.cnf
#Replace xxx with your IP Address bind-address = xxx.xxx.xxx.xxx
or comment out this line to allow all ip’s.
|
Create user for local/remote logon |
mysql>CREATE USER ‘myuser’@’localhost’ IDENTIFIED BY ‘mypass’; mysql>CREATE USER ‘myuser’@’%’ IDENTIFIED BY ‘mypass’; |
Grant permissions on all db’s |
mysql>GRANT ALL ON *.* TO ‘myuser’@’localhost’; mysql>GRANT ALL ON *.* TO ‘myuser’@’%’; |
Grant permissions on a specific db |
mysql>GRANT ALL ON database.* TO ‘myuser’@’localhost’; mysql>GRANT ALL ON database.* TO ‘myuser’@’%’; |
Grant all permissions on specific database for specific user |
mysql>GRANT ALL PRIVILEGES ON dbname.* TO ‘user’@’%’ IDENTIFIED BY ‘password’ |
Refresh privileges |
mysql>FLUSH PRIVILEGES; |
Set Root password |
mysql>SET PASSWORD FOR ‘ROOT’@’LOCALHOST” > = PASSWORD(‘new_password’); |
Allow Remote ROOT Access (admin Users) |
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘password’ WITH GRANT OPTION; |
Grant access to database for remote IP address |
mysql>GRANT ALL ON database.* TO ‘remoteuser’@’remoteIPaddress’ IDENTIFIED BY ‘PASSWORD’; |
Firewall
|
|
Stop/Start Firewall |
service iptables stop|start |
Disable/Enable Fiewall |
chkconfig iptables off|on |
Verifiy Firewall status |
service iptables status |
Add firewall rule (for example MySQL) |
/sbin/iptables -A INPUT -i eth0 -p tcp –destination-port 3306 -j ACCEPT |
Add firewall rule for specified source (for example MySQL) |
/sbin/iptables -A INPUT -i eth0 -s 10.5.1.3 -p tcp –destination-port 3306 -j ACCEPT |
|
iptables -I INPUT 1 -p tcp –dport 443 -j ACCEPT |