linux 常用命令汇集(精华)

Linux系统快速入门

1学习目标:

对linux的基本认识

常用linux命令的使用

JAVAEE :后台应用都会涉及到linux系统,应用程序的部署,运维,分布式集群,大数据,云计算



Linux基本概念:

什么是linux:Linux是一种自由和开放源码的操作系统

应用在哪里:服务器操作系统(比如数据库服务器:安装了“oracle服务软件”的计算机)

UNIX封闭、收费的,跟硬件捆绑销售的;LINUX自由和开源,兼容性非常好

Linux的发行版(封装版):企业市场占有率最高:redhat企业版 ,次之:社区版centos

个人市场:Ubuntu


2 linux系统安装

下载linux发行版光盘镜像

在物理机或者虚拟机上安装linux系统

虚拟机:用软件模拟出来的一台虚拟计算机

虚拟机软件:用来创建和运行虚拟计算机的一个软件

步骤:

[if !supportLists]1、 [endif]启动vmware


[if !supportLists]2、 [endif]点击新建虚拟计算机


[if !supportLists]3、 [endif]给虚拟计算机做各种硬件配置,其中,虚拟网络模式一定要选择:


[if !supportLists]4、 [endif]所有硬件设备配置完成后,勾上power on




2.2如何使用一台已经安装好的虚拟机

1、把安装好的虚拟机的文件夹拷贝到windows的某个目录,比如C:\CentOS32\CentOS

2、启动vmware软件

3、从vmware的菜单中点击file,然后选择open


[if !supportLists]5、 [endif]在弹出的文件选择框中:



[if !supportLists]6、 [endif]然后,vmware会弹出一个提示“i moved it “ or  “i copied it”,建议选择“i moved it “

[if !supportLists]7、 [endif]然后,vmware的虚拟机列表中会多出一台虚拟机



[if !supportLists]8、 [endif]选择这一台虚拟机,对它的硬件进行修改


9、启动centos就可以了



3 linux系统的远程登陆

[if !supportLists]l [endif]计算机网络基本常识

TCP/IP协议:是计算机网络的传输层及路由层全球通用的协议

TCP:传输层的协议    IP:网络层协议——根据IP地址来在网络中查找路由

IP地址配置:

[if !supportLists]1、 [endif]网络中的每一个节点都需要至少一个ip地址

[if !supportLists]2、 [endif]网络中的ip地址不能重复

[if !supportLists]3、 [endif]配置格式:

   Ip  :  192.168.2.171

网关:  192.168.2.1

子网掩码:255.255.255.0

——子网掩码是用来区分网段(跟ip地址与操作得到网段192.168.2.0)

域名服务器:8.8.8.8   (默认情况下就填网关的地址也可以192.168.2.1)

4、内网域名的配置:在访问端(客户机)上的hosts文件中,配置目标主机的ip和自定义域名



网关——路由器/交换机

主机名



[if !supportLists]l [endif]如何远程登录linux服务器

1、要知道目标linux服务器的ip地址

2、客户端跟目标服务器两者要能联网

3、要有一款ssh登录的客户端软件

4、启动ssh客户端软件进行登录



[if !supportLists]l [endif]虚拟网络配置

虚拟出来的linux服务器可通过vmware提供的虚拟网络进行组网,组网的方式主要有两种:

[if !supportLists]1. [endif]NAT模式

[if !supportLists]2. [endif]桥接模式


建议采用NAT方式,NAT组网方式如下:

[if !supportLists]ü [endif]要点:vmware会虚拟出一台“虚拟交换机”,所有的虚拟主机以及宿主物理机都通过虚拟网卡连接到了这台交换机上,如图:














[if !supportLists]ü [endif]配置步骤:

首先,要在vmware中给虚拟计算机选择虚拟网络模式NAT





接下来,要在vmware中为NAT虚拟网络配置一下虚拟网关的地址



[if !supportLists]l [endif]在弹出的窗口中选择NAT项


[if !supportLists]l [endif]点击NAT Settings,弹出一个虚拟网关地址配置窗口,填入自己想要的虚拟网关地址  



[if !supportLists]l [endif]然后回到linux服务器,配置linux服务器的ip地址,先通过图形界面配置











[if !supportLists]l [endif]选择Manual来手动指定ip地址:


 这里的网关地址要与VMWARE模拟的那台虚拟交换机的地址一致

配置完成以后,要在网络连接小图标上“禁用”网络,然后再“启用”网络,才能让配置生效

[if !supportLists]l [endif]Linux服务器的ip地址配置好后,还要配置物理宿主机windows的ip地址

进入网络连接配置,选择VMNET8这块网卡(由vmware虚拟出来的一块NAT模式网卡)


[if !supportLists]l [endif]在VMNET8上点击右键,弹出属性配置窗口


[if !supportLists]l [endif]配置IP地址,如下:




[if !supportLists]Ø [endif]Ip地址配好以后,就可以远程登录服务器进行操作管理了

对服务器的管理,都是通过远程登录来进行,远程登录的常用软件有以下3款:

xshell

putty

secureCRT  ----recommend推荐

这些软件都是基于一种通信协议来进行远程登录:SSH协议

(这种协议要求远程登录者进行身份验证

有两种认证方式——“用户名+密码”机制<默认机制>,密钥机制<需要事先配置才有>)


启动crt远程登录软件,点击闪电图标,进行连接配置



在弹出的连接配置窗口中,把地址配成我们的虚拟linux服务器的地址




**登录之后的提示符:

[renwoxing@localhost ~]$

其中renwoxing是当前登陆者的用户名

localhost是本服务器的主机名

~是表示登陆者目前所处的目录,~就是指该登陆者的主目录/home/renwoxing

4 linux文件系统常用管理操作命令

[if !supportLists]ü [endif]Linux的文件系统跟windows有一个最显著的区别:

文件系统有一个统一的根目录:“/” ,所有存储资源(磁盘分区,光驱,usb外部存储等等全部都挂载在根目录下)

系统刚安装好时,都会有这样一些文件夹:


要认识这几个:

/bin可执行的命令|程序

/sbin系统管理命令所在的目录,此目录中的命令,默认只有root才能执行

/home是所有普通用户的家目录的上级目录,比如angelababy的家目录:/home/angelababy

/root是超级用户root的家目录

/etc是系统配置文件所在的目录

/tmp是系统的临时文件夹

/usr    unix shared resource各用户之间共享资源存放的目录



[if !supportLists]ü [endif]Linux系统的关机或重启或睡眠



[if !supportLists]ü [endif]Linux系统时间修改



弹出一个设置窗口:





4.1日常文件管理命令

tips:输入命令的时候要常用tab键来补全


ls  查看目录信息(ls /)





ls -l等价于  ll  



pwd查看当前所处目录的绝对路径   

cd切换工作目录 (cd /) ,如果不带参数则切换到用户主目录 ~


 


路径的表示方法有“相对路径”和“绝对路径”

比如如果当前所处目录为/home/angelababy,要查看/home目录下的信息,可以有两种方法:

ls  ../

ls  /home



mkdir创建文件夹

mkdir -p a/b/c如果要创建的文件夹的父目录不存在,则自动创建


rmdir删除空文件夹  (只能删除空文件夹)

rm -r  /a/b  (删除非空文件夹)

删除文件

rm filename  (rm -r删除文件夹     rm -rf 强制删除文件或文件夹)



创建文件

touch a.avi创建一个空文件


echo "angelababy,zhen de hen xihuan ni" > qingshu.txt把左边的输出放到右边的文件里去



echo "huangxiaoming,gun cu" >> qingshu.txt往已经存在的文件中追加内容




移动文件修改文件名

mv a/wenjian1.txt  b/file1.txt   (移动文件的同时还修改了文件名)





拷贝文件,如:

cp  ./a/srcfile  ./b/destfile


查看文本文件内容

cat  wodeqingshu.txt一次性将整个文件内容全部显示在屏幕上

more  wodeqingshu.txt可以分页看(翻页:空格, 往回翻:b ,退出: q或者 Ctrl+C)

less  wodeqingshu.txt 不仅可以分页,还可以方便地搜索,回翻等操作(翻页:空格,往回翻页:b    往回一行:↑,往下一行:↓,退出:q或者 Ctrl+C)



tail -10 wodeqingshu.txt查看文件的尾部的10行

程序打出的日志在生产实践中具有非凡的debug的意义

tail -f user.log实时刷新显示文件的尾部


head -20 wodeqingshu.txt查看文件的头部20行



4.2文件归档压缩(1:打包--归档; 2:压缩)

1、归档

打包:

tar  -cvf  testdir.tar  testdir/

参数解释:c:create    v:verbose显示进度  f:file

解包:

tar  -xvf  testdir.tar

参数解释:x:extract




2、压缩

gzip testdir.tar  

gzip  file

bzip  file


解压缩:gzip  -d  testdir.tar.gz

归档压缩一次完成:

tar -czvf  testdir.tar.gz testdir/

tar -xzvf testdir.tar.gz解压到当前目录下

tar -xzvf testdir.tar.gz -C Downloads/解压到指定的Downloads目录下




4.3文件权限管理

linux系统中对文件权限的描述机制:

d  r  w  x   r  w  x    r  -  x

所有者所属组其他人

可以表示为二进制:111 111 101

也可以表示为十进制:7   7   5



修改权限

chmod  u+rwx  file为file添加或取消所属用户的权限

(u代表所属用户  o代表其他用户  g代表所属组的成员用户)

chmod  567  file用数字也可以表示权限  

5 --->  101 ---> r-x

6 --->  110 ---> rw-

7 --->  111 ---> rwx


修改文件的所有者owner(只能由root权限才能操作)

chown  root:root  file#将file的所有者改成hadoop用户,所属组改成hadoop组



[if !supportLists]Ø [endif]rwx权限的含义:

r:对文件---可以读取文件的内容   cat    

对文件夹——可以查看文件夹的子节点信息ls

w:对文件——可以修改文件的内容

对文件夹——可以增减文件夹中的子节点(文件或子文件夹)


x:对文件——是否可运行

对文件夹——是否可cd进入


5用户管理

5.1添加用户

useradd  itcast0526

必须设置密码才能正常登陆passwd  itcast0526


5.2删除用户

userdel  itcast0526----这样删除的时候,用户的主目录会被保留

userdel  -r  itcast0526-----删除用户的同时删除用户的主目录


5.3修改用户属性(******了解*******)

usermod-l  itcast  itcast0526将itcast0526的登陆名改为itcast

usermod  -g  angelababy  diadia将diadia的primary组改为angelababy  组

usermod  -G  hadoop,hellogrp  itcast给itcast添加两个组hadoop,root

usermod  -d  /home/itcast  itcast0526将itcast0526的主目录改成/home/itcast

(要事先创建itcast目录,并且拷入环境变量文件)

----****----修改用户的密码

passwd  itcast0526



5.4用户组管理

创建用户组

groupadd  heros


删除用户组

groupdel  beauties


查看当前登陆者的身份

whoami

查看用户所属组

groups  angelababy

6常见系统管理


****(凡是涉及到修改,就一定要用root权限)

轻易不要使用su去切换到root的身份

普通用户使用sudo来执行root权限的命令

如,将heima16 用户添加到sudoers文件中去vi /etc/sudoers

root    ALL=(ALL)       ALL

heima16  ALL=(ALL)       ALL



6.2磁盘空间信息查看

df  -h查看磁盘空间状态信息

du  -sh  ./*查看指定目录下所有子目录和文件的汇总大小    



6.3进程管理

free查看内存使用状况   可以带单位,比如,显示M,   free   -m

top查看实时刷新的系统进程信息


ps -ef查看系统中当前瞬间的进程信息快照

ps -ef | grep myshell.sh搜索myshell进程的信息

kill -9 pid杀掉进程  (-9 表示强制杀死)







6.4网络管理

[if !supportLists]ü [endif]查看ip地址

ifconfig


修改ip地址的配置

[if !supportLists]ü [endif]vi /etc/sysconfig/network-scripts/ifcfg-eth0修改该配置文件即可改ip地址;

[if !supportLists]ü [endif]或者在root权限下用setup指令通过一个带提示的伪图形界面来修改;




[if !supportLists]ü [endif]修改主机名

sudo vi  /etc/sysconfig/network修改其中的hostname配置项

[root@localhost ~]# vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=heima16-server-01




要想立即生效可以执行指令

[root@localhost ~]# hostname  heima16-server-01

执行完后重登陆可以立刻看到效果





[if !supportLists]ü [endif]管理内网的"主机名---ip地址"本地映射




[if !supportLists]ü [endif]查看当前的进程连接网络的信息

netstat -nltp   获取系统当前正在监听端口tcp协议的进程


netstat -natp

获取系统当前所有网络监听进程以及建立了连接的网络进程





[if !supportLists]ü [endif]网络服务管理(root权限下)

重启网络服务service  network  restart

关闭防火墙服务service  iptables  stop

关闭防火墙自动启动chkconfig  iptables  off

指定运行级别下的自启动chkconfig  --level  2345  iptables  on


查看防火墙运行状态:service  iptables  status

查看防火墙的自动启动配置:chkconfig  iptables  --list


防火墙开启端口:

iptables  -I  INPUT  -p  tcp  -j  ACCEPT --dport  8080

service  iptables  save


6.5修改系统的默认启动级别(****了解******)

vi /etc/inittab


#   0 - halt (Do NOT set initdefault to this)

#   1 - Single user mode

#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)

#   3 - Full multiuser mode

#   4 - unused

#   5 - X11

#   6 - reboot (Do NOT set initdefault to this)

#

id:3:initdefault:

~

用level 3就启动全功能状态的字符界面


注:在命令行模式下,用startx可以手动启动图形界面(在服务器上操作)



7常用工具指令

[if !supportLists]ü [endif]wc   #统计文本信息(行数,词数,字符数)


[if !supportLists]ü [endif]date  #查看或者修改系统的日期和时间

date -s 2015-08-03

date -s 14:15:00

date -s "2015-08-03 14:15:00"

把系统时间写入CMOS

clock -w


[if !supportLists]ü [endif]echo  #输出字符串或者变量的值


[if !supportLists]ü [endif]vi   #linux系统中最常用的文本编辑器

vi  hello.world进入文件编辑

进去之后处于非编辑模式,此时,要按一个i进入insert模式

在insert模式下,可以跟普通文本编辑器一样编辑内容

编辑完成之后,先按Esc退出insert模式,进入非编辑模式

然后再按:进入底行命令模式,在底行命令中敲入wq并回车,即可保存


(保存文件的另一种模式:按Esc退出insert模式,然后直接按快捷键保存—— shift + zz)


如果不保存,底行命令就用q!


[if !supportLists]ü [endif]grep在文本中搜索关键词

grep  “common”  install.log

通常将grep跟别的命令组合使用来搜索我们感兴趣的信息

比如,我要在进程信息中找到某个特定进程:

 ps  -ef  | grep  “hello”



[if !supportLists]ü [endif]find查找文件

find  /home/angelababy  -name  “qingshu”



8 linux中的软件安装

8.1 java软件安装

[if !supportLists]ü [endif]Jdk安装

将安装包解压到你的安装路径下

然后修改环境变量

vi  /etc/profile


修改保存退出vi编辑器后,执行命令:

source  /etc/profile  #用以让环境配置生效



[if !supportLists]ü [endif]Eclipse安装

选择正确的版本拖到linux系统中,解压即可执行

8.2 RPM包安装

redhat公司的RPM方式的包管理 也是很常用的软件包管理器


示例:Mysql安装

先删除系统中自带的残存mysql库

rpm -qa | grep mysql#查看系统中已有的mysql相关的库

rpm -e mysql-libs-5.1.66-2.el6_3.i686 --nodeps#删除老的库

rpm -ivh MySQL-server-5.1.73-1.glibc23.i386.rpm #安装mysql服务器

rpm -ivh MySQL-client5.1.73-1.glibc23.i386.rpm #安装mysql客户端


64位 MySql安装后的密码修改步骤:

/root/.mysql_secret#安装后生成的mysql中root用户的随机密码

service mysql start#启动mysql服务

mysql -uroot -p randomp#使用随机密码登陆

>set password=password("root");

>flush privileges;

>exit;

开启远程访问权限

mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES



8.3网络版RPM----yum(Yellow dog Updater)

1、列出所有可以安装的软件包,从其中查找tomcat相关的包

yum  list | grep tomcat



2、安装软件包(比如tomcat)

yum  -y  install  tomcat6.i686

yum会自动解决依赖,如下:




3、查询yum所安装的软件的安装目录

[if !supportLists]ü [endif]先查询所安装的软件包的名称:

rpm -qa | grep vsftp

[if !supportLists]ü [endif]再查询安装目录

[root@notrue-centos ~]# rpm -qa | grep vsftp

vsftpd-2.2.2-14.el6.x86_64

[root@notrue-centos ~]# rpm -ql vsftpd-2.2.2-14.el6.x86_64




4、更新软件包

yum update tomcat

你可能感兴趣的:(linux 常用命令汇集(精华))