一、linux基础知识
1、Linux优点
1.开放;
2.安全;
3.稳定 ;
4.低成本;
5.可移植性高;
6.多用户、多任务、多线程、多CPU
Linux缺点
1.没有特定的支持厂商;
2.图形界面不够好;
2、Linux常用版本
RedHat
CentOS
3、安装:VMware网络配置:桥接模式------>CentOS
二、Linux命令
1、常见命令之网络管理
查看网络信息:ifconfig
网络测试:ping
2、常见命令之文件管理
2.1、ls ---------->显示目录文件
-a显示所有文件,包括隐藏文件
-l使用长格式显示
2.2、cd -------------->切换目录
cd ..回到上一级目录
cd ~回到用户的宿主目录
cd /切换到根目录
cd ../usr切换到上一层目录的usr目录
2.3、pwd----------->显示目前所在的工作目录
2.4、man------------>获取指定命令的帮助
man ls查看ls的帮助命令
2.5、--help--------->显示shell内部命令的帮助信息
ls --hlep查看ls的帮助命令
2.6、touch------------>生成空文件和修改文件存取时间
touch abc.txt创建一个名为abc.txt的文件
2.7、mkdir目录名---------->建立目录
-p依次创建目录
mkdir int新增目录int
mkdir -p /int1/mail/新增目录/int1/mail/
2.8、rmdir目录名------------>删除空目录
-p依次删除目录
rmdir int删除目录int
rmdir -p /int1/mail/删除目录/int1/mail/
2.9、cp -pr源文件或目录 目的文件或目录------------>复制文件
-p保留原文件的日期属性
-r递归复制所有文件
cp file1 file2
将文件名为f1的文件复制一份为文件名为f2的 文件。
cp file1 file2 dir
将文件file1,file2复制到目录dir
cp -r dir1 dir2
将dir1下的所有目录包括子目录陆续地复制到dir2
cp -p dir1 dir2
将dir1下的所有目录包括子目录陆续地复制到dir2,保留原文件属性
2.10、mv源文件或目录 目的文件或目录------------>移动和重命名文件
mv file1 file2
将文件file1移动到文件file2,其实也就是更名的操作;若file2为目录,则是将file1移动到file2目录下
2.11、rm -irf文件或目录------------------>删除文件
-i互动模式,删除前再做一次确认
-r递归删除目录
-f强制删除
rm -i file删除文件前询问是否删除
rm -rf dir强制删除整个目录
2.12、cat------------>查看文件内容
cat cc.txt显示cc.txt中的内容
2.13、tail -num文件名------------->查看文件的后几行
-num显示文件的后num行
-f动态显示文件信息
tail -30 /etc/services/cc.txt显示/etc/services/cc.txt文件的最后30行
2.14、head -num文件名------------->查看文件的前几行
-num显示文件的前num行
head -30 /etc/services/cc.txt显示/etc/services/cc.txt文件的前30行
2.15、less文件名------------->查看文件的后几行 ,按页显示文件内容,可用方向键上下翻页,可进行查找:/关键字 ,n跳转到下一个,N跳转到上一个,q退出
less /etc/yum.conf按页显示/etc/yum.conf文件的内容
-num显示文件的后num行
2.16、more文件名------------->分页显示文件内容 ,按页显示文件内容,可用方向键上下翻页,可进行查找:/关键字 ,n跳转到下一个,N跳转到上一个,q退出
more /etc/services分页显示/etc/services文件的
3、常见命令之文件管理的权限
3.1、chmod -R [mode=4,2,1 or --------------->改变文件或目录的权限
{a,u,g,o} {+,-,=}{r,w,x,s,t}]文件或目录
$ chmod og-x file1
删除group与other用户对file1文件的执行权利
$ chmod u=rwx file1
将file1的文件所有者权限设为可读、可写、 可执行
$ chmod 777 file2
指定file2为所有用户可读、可写、可执行
$ chmod -R 644 dir/
将dir目录下的所有文件权限设置为644
3.2、chgrp---------------------->改变文件或目录的所属组
$ chgrp root file改文件file的所属组为root
$ chgrp -R other dir/将目录dir所有文件所属组改为other
$ chown -R dugang:other dir/将目录dir的所有文件所有人改为dugang,所 属组改为other
3.3、find--------------------->搜索文件或目录
•-name按照文件名查找文件。
•-perm按照文件权限来查找文件。
•-user按照文件属主来查找文件。
•-group按照文件所属的组来查找文件。
•-mtime -n +n按照文件的更改时间来查找文件。
•-nogroup查找无有效所属组的文件。
•-nouser查找无有效所有者的文件。
•-type查找某一类型的文件。
•-size n[c]查找文件长度为n块的文件(C、k、M、G)。
•-name
$ find ~ -name“*.txt”-print
在$HOME查找文件名符合*.txt的文件
•-perm
$ find . -perm 755 -print
在当前目录下查找文件权限位为755的文件
•-user
$ find ~ -user dugang -print
在$HOME目录中查找文件所有者为dugang的文件
•-group
$ find /home -group other -print
在/home目录下查找属于other用户组的文件
•-mtime
$ find / -mtime -5(+5) -print
在根目录下查找更改时间在5天以内(以前)的文件
•-nogroup
$ find /etc -type d -print
在/etc目录下查找所有的目录
•-type
$ find . ! -type d -print
在当前目录下查找除目录以外的所有类型的文件
$ find /etc -type l -print
在/etc目录下查找所有的符号链接文件
•-size
$ find . -size +1000000c -print
在当前目录下查找文件长度大于1 M字节的文件
3.4、vi -------------------------------->编辑文件
$ vi test.txt
编辑test.txt文件
i和a是插入
Backspace:将光标的位置的字符一个个删除。
按esc,再按dd,表示删除一行。
按esc,再按o,表示插入一行。
:w,表示保存。注意先按:。
:q,表示退出。
:q!,表示强制退出,比如你改错了,不想保存,可强制不保存退出。
:wq,保存退出。
:wq!,强制保存退出。
4、系统管理
4.1、clear --------------------------->清空终端屏幕显示
4.2、useradd---------------------------->增加用户
# useradd lixx
新增用户lixx;
•说明:
使用adduser命令增加用户账号时系统会自动在/home目录 中为用户建立同名的用户主目录
4.3、passwd----------------------------->设置用户密码
passwd lixx为lixx设置密码;
4.4、userdel------------------------------------>删除用户并删除用户文件
userdel -r lixx删除用户lixx;(-r也会删除账号在home目录自动建立的同名目录)
4.5、groupadd---------------------------------------->添加用户组
groupadd grp1用户组grp1;
4.6、gpasswd------------------------------->对用户组管理
-a:添加用户到组
-d:从组删除用户;
-A:指定管理员;
gpasswd -a lixx grp1添加lixx到grp1组中
4.7、groupdel-------------------------->删除用户组
groupadd grp1删除用户组grp1;
4.8、ps -------------------------->查看系统中运行的进程
-a显示所有终端机下执行的程序。
-e显示所有程序。
-f显示UID,PPIP,C与STIME栏位。
$ ps -ef|grep user1查看user1的进程
$ ps -A查看所有进程,和ps -e功能相同
$ ps–au显示现行终端机下的所有进程,前台进程,包括其他所有用户
lsof -i:3306查询3306端口号的启动信息
cat /etc/proc/端口号 找到端口号对应的位置
4.9、top--------------------------->实时监视系统处理器的状态等信息。
top [-] [d间隔秒数] [q] [c] [s] [S] [i] d<间隔秒数>设置top监控程序执行状况的间 隔时间,单位:秒。
top -d 1每隔1s刷新状态信息
5.0、kill--------------------------->删除执行中的程序或工作。
kill进程号
-9强行杀掉指定进程。
kill 21988杀掉21988进程
6.0、netstat--------------------------->显示各种网络相关信息
-a显示所有的端口号,以二进制的方式显示
-n端口号使用数字的方式进行显示
-p显示占用该端口号的进程号
netstat–apn |grep 22查看22端口是否被占用
6.1、vmstat---------------------->系统资源监控
6.2、reboot---------------------->重启服务器
6.3、shutdown---------------------->关机/重启
-h关机后终止。单位:秒time必须输入。立即重启直接输入now
-r关机后重新启动服务器
# shutdown -h 18:00系统将在18:00关机
ctrl+c取消关机
poweroff命令也可以直接关机
6.4、cat /etc/redhat-release
cat /etc/issue
以上是查看操作系统的
getconf LONG_BIT查看操作系统的位数
uname -a同上
cat /proc/version同上
6.5、su--------------------->变更用户身份
su - root切换到root用户
5、安装管理
5.1、在线安装:yum
$ yum install mysql安装mysql
$ yum update mysql更新mysql
$ yum remove mysql删除安装包(卸载mysql)
ps -ef|grep yum查看运行中的yum进程
kill -9 pid杀进程
安装包安装:rpm
$ rpm -ivh rpm包 安装rpm包
$ rpm -Uvh rpm包 升级rpm包
$ rpm -e rpm包 删除rpm包
$ rpm -qa包(rpm -qa|grep mysql) 列出包信息 (安装成功的)
源码安装
5.2、
压缩:tar---------------------生成.tar或.tar.gz的打包文件
-c:建立一个打包文件的参数指令(create的意思);
-x:解开一个打包文件的参数指令;
-t:查看tarfile里面的文件;
-z:是否同时具有gzip的属性?亦即是否需要用gzip压缩;
-v:压缩的过程中显示文件!这个常用;
-f:使用档名(签名档),注意:在f之后要立即接档名!不要再加参数;
-p:使用原文件的原来属性(属性不会依据使用者而变);
$ tar -cvf etc.tar Public/仅打包,不压缩
$ tar -zcvf etc.tar.gz Public/打包并压缩
$ tar -xvf etc.tar将etc.tar文件解压缩
$ tar -zxvf etc.tar.gz etc/passwd将etc.tar.gz内的etc/passwd解压(建议使用)
$ tar -f etc.tar --delete etc/sysctl.conf删除打包文件中etc/sysctl.conf文件
$ tar -f etc.tar -r install.log把install.log新增到etc.tar文件中
zip-------------------压缩文件或目录,生成.zip的压缩文件
-d从压缩文件内删除指定的文件;
-r递归处理,将指定目录下的所有文件和子目录一并处理;
-v显示指令执行过程或显示版本信息;
$ zip -r yasuo.zip abc.txt dir1 ------把一个文件abc.txt和一个目录dir1压缩成为yasuo.zip
gzip-----------------------压缩文件,生成.gz的压缩文件
-c将输出写到标准输出上,并保留原有文件。
-d将压缩文件解压。
-r递归式查找指定目录并压缩其中的所有文件或者是解压缩。
$ gzip abc.txt文件abc.txt压缩成abc.txt.gz,不保留源文件
$ gzip -c test.txt > /root/test.gz压缩到/root/test.gz,保留源文件
解压:tar------------------略
unzip-----------------------解压.zip的压缩文件或目录
unzip yasuo.zip解压yasuo.zip到当前文件夹
$ unzip abc\?.zip解压当前目录下abc?.zip的压缩文件
gunzip----------------------------解压.gz的压缩文件
-c将输出写到标准输出上,并保留原有文件
$ gunzip abc.txt.gz解压abc.txt.gz到当前文件夹,并删除源文件
$ gunzip -c /root/test.gz > ./test.txt解压到当前目录下,保留源文件
5.3、因为种种原因公司需要把Java程序达成war包。起先用zip命令打包,起先可以用,后来却无法使用。今天找到一个更好的办法。用jar命令,前提是要安装jdk。
把当前目录下的所有文件打包成game.war
jar -cvfM0 game.war ./
-c创建war包
-v显示过程信息
-f
-M
-0这个是阿拉伯数字,只打包不压缩的意思
解压game.war
jar -xvf game.war
解压到当前目录
5.4、系统时间设置
• 查看当前系统时间:
#date
• 如何设置系统时间:
#date -s 20170802
--->修改系统时间为:20170802
#date -s 14:02:43
--->修改系统时间为:14:02:42
#date -s "20170426 10:01:35"
--->修改系统时间为:2017年04月26日10点01分35秒
5.5、磁盘管理
cat /proc/cpuinfo查看cpu信息
cat /proc/meminfo查看内存信息
df -lh查看磁盘空间信息
5.6、静态ip设置
1、# cd /etc/sysconfig/network-scripts/ --->进入到网络设置中
2、# cp ifcfg-eth0 est--->备份网络设置文件
3、# vi ifcfg-eth0 --->设置静态IP,原信息不变,其中BOOTPROTO,是系统中自带的,修改即可;其他4项新增
BOOTPROTO=static#修改成static,表示使用静态IP
DNS1=180.168.1.1#DNS,新增项
IPADDR=192.168.1.168#静态IP地址,新增项
NETMASK=255.255.255.0#子网掩码,新增项
GATEWAY=192.168.1.1#网关,新增项
4、# service network restart --->重启网络
静态IP设置不成功时:
1.chkconfig NetworkManager off --设置NetworkManager服务为开机不启动
2.service NetworkManager stop--停止NetworkManager服务
3.service network restart--再重启网络
5、# ifconfig --->查看IP地址
大部分服务都在/etc/init.d里面