系统 day67 Linux入门

来源:互联网 发布:数据规范性的名词解释 编辑:程序博客网 时间:2024/05/17 20:24

Linux系统快速入门



1 Linux简介:

1)Linux是一套免费使用和自由传播的类Unix操作系统,是一个多用户、多任务、支持多线程和多CPU的操作系统。Linux的核心来自于unix,所以能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2)Linux与windows的区别?

Linux:更多应用在企业中做为服务器来使用

Windows:应用在大众个人计算机,当然也有server版

Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机

3)常见的linux系统


 CentOs(学习使用):

1)主流:目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS

2)免费:redhat是收费的。centos是免费的,centos是相当于克隆一份redhat系统,操作方式与redhat一样。

3)更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!

 

 

2 linux系统安装

下载linux发行版光盘镜像

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

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

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

步骤:

1、  启动vmware

2、  点击新建虚拟计算机

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

4、  所有硬件设备配置完成后,勾上power on

 

3 linux系统的远程登陆

**如何远程登录linux服务器

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

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

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

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

 

l        虚拟网络配置

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

1.        NAT模式

2.        桥接模式

 

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

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


NAT模式



桥接模式




 


 配置步骤

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

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

 

1        在弹出的窗口中选择NAT项

2        点击NAT Settings,弹出一个虚拟网关地址配置窗口,填入自己想要的虚拟网关地址 

3       然后回到linux服务器,配置linux服务器的ip地址,先通过图形界面配置

4        选择  Manual来手动指定ip地址:

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

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

5       Linux服务器的ip地址配置好后,还要配置物理宿主机windows的ip地址

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

6       在VMNET8上点击右键,弹出属性配置窗口

7        配置IP地址,:

        Ip地址配好以后,就可以远程登录服务器进行操作管理了


远程登录软件      :

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

xshell

putty

secureCRT  ----recommend 推荐

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

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

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

 

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

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

**登录之后的提示符

[renwoxing@localhost ~]$

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

localhost是本服务器的主机名

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


linux目录结构:


 bin  (binaries)存放二进制可执行文件

 sbin  (super user binaries)存放二进制可执行文件,只有root才能访问

 etc(etcetera)存放系统配置文件

 usr  (unix shared resources)用于存放共享的系统资源

 home 存放用户文件的根目录

 root  超级用户目录

 dev(devices)用于存放设备文件

 lib  (library)存放跟文件系统中的程序运行所需要的共享库及内核模块

 mnt  (mount)系统管理员安装临时文件系统的安装点

 boot 存放用于系统引导时使用的各种文件

 tmp  (temporary)用于存放各种临时文件

 var  (variable)用于存放运行时需要改变数据的文件(log日志)

 

 

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


4.1 日常文件管理命令

tips:

命令格式:命令  -选项  参数

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

ctrl + c(停止当前进程)

ctrl + r(查看命令历史)

ctrl + l(清屏,与clear命令作用相同)
查看帮助文档
•内部命令:help + 命令(help cd)
•外部命令:man + 命令(man ls)

list

ls   查看目录信息  ( ls /  )

常用参数:
-l (long)
-a (all)         注意隐藏文件、特殊目录.   
-t (time)
 

ls -l 等价于  ll  <l是L的小写,不是数字1>

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

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

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

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

ls  ../

ls  /home


make directoriy

mkdir   创建文件夹

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


remove 

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

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

删除文件

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

 

创建文件

touch a.avi 创建一个空文件

 

echo 写文件内容

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

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


mov

移动文件  修改文件名

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


copy

拷贝文件,如:

cp  ./a/srcfile  ./b/destfile


catenate

查看文本文件内容

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    压缩文件后缀为gz 

gzip file

bzip2 file    压缩文件后缀为bz2 

 

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

tar命令
-c 建立一个压缩文件的参数指令(create)
-x 解开一个压缩文件的参数指令(extract)
-z 是否需要用 gzip 压缩
-j 是否需要用 bzip2 压缩
-v 压缩的过程中显示文件(verbose)
-f 使用档名,在 f 之后要立即接档名(file)

归档压缩一次完成:

tar -czvf testdir.tar.gz  testdir/

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

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


4.3 文件权限管理

 

r 读权限(read)
w 写权限(write)
x 执行权限 (execute)
 

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


d  r  w  x  r  w  x   r  -  x

   所有者      所属组    其他人

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

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

 

修改权限


change mode
参数:-R 下面的文件和子目录做相同权限操作(Recursive递归的)

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组

 

 

rwx权限的含义:

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

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

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

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

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

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

 

5 用户管理


超级用户:(root,UID=0)
系统和服务相关的:bin、daemon、shutdown等
普通用户:(UID在500到60000)
进程相关的:mail、news、games等
伪用户:(UID在1到499)
为用户不能登陆系统,而且没有宿主目录



5.1 添加用户

useradd itcast0830

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

 

5.2 删除用户

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

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

 

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

usermod -l itcastitcast0508  将itcast0508的登陆名改为itcast

usermod -g rootitcast 将itcast的组改为root组

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

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

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

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

passwd itcast0830

  

5.4 用户组管理

每个用户至少属于一个用户组
每个用户组可以包含多个用户
同一个用户组的用户享有该组共有的权限


创建用户组

groupadd heros

 

删除用户组

groupdel beauties

 

修改用户组属性

groupmod

 

查看当前登陆者的身份

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 进程管理

ps 显示瞬间的进程状态
-e /-A 显示所有进程,环境变量
-f 全格式
-a 显示所有用户的所有进程(包括其它用户)
-u 按用户名和启动时间的顺序来显示进程
-x 显示无控制终端的进程


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

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

 

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

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

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

 

6.4 网络管理


查看ip地址

ifconfig


修改ip地址的配置

vi/etc/sysconfig/network-scripts/ifcfg-eth0 修改该配置文件即可改ip地址

或者在root权限下用setup指令通过一个带提示的伪图形界面来修改

 

修改主机名

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

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

NETWORKING=yes

HOSTNAME=heima16-server-01

  

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

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

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


查看当前的进程连接网络的信息

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


netstat 显示网络状态信息

-a 显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-p 显示建立相关链接的程序名

 

网络服务管理(root权限下)

重启网络服务servicenetwork restart

关闭防火墙服务  serviceiptables stop

关闭防火墙自动启动   chkconfigiptables off 

查看防火墙运行状态:  serviceiptables status

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

 

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:

~

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

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

linux不启动图形化界面:

 vi /etc/inittab

 id:3:initdefault:        ----------此行修改成3为终端、5为图形化界面

 

 

7 常用工具指令

wc   #统计文本信息(行数,词数,字符数)

find 在文件系统中查找指定的文件
•find /etc/ -name "aaa"
grep 在指定的文本文件中查找指定的字符串
date  #查看或者修改系统的日期和时间

date -s 2007-08-03

date -s 14:15:00

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

把系统时间写入CMOS

clock -w

echo  #输出字符串或者变量的值

 

vi   #linux系统中最通用的文本编辑器

vi / vim 是Unix / Linux上最常用的文本编辑器而且功能非常强大。

只有命令,没有菜单。



操作流程:

vi  hello.world 进入文件编辑

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

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

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

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

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

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


Vi编辑定位使用命令:

:set nu 显示行号

:set nonu 取消行号

gg 到文本的第一行

G 到文本的最后一行

:n 到文本的第n

 

u undo,取消上一步操作

Ctrl + r redo,返回到undo之前


8 linux中的软件安装


8.1 java软件安装

 Jdk安装

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

然后修改环境变量 

vi /etc/profile

在文件尾部添加:


export JAVA_HOME=/usr/java/jdk1.7.0_55/

export PATH=$JAVA_HOME/bin:$PATH

 

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

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

 

 

Eclipse安装

选择正确的版本(32or64)拖到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客户端

启动:  service mysqld start

首次启动根据提示更改root 初始密码

登陆mysql:mysql -u root -p     退出:quit;


 

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

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

yum  list | grep tomcat

或yum search xxx

 

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

yum  -y  install  tomcat6.i686

  

3、更新软件包

yum update tomcat

 

 

1 0