Linux

一、Linux安装

1.linux中用于显示或配置网络设备(网络接口卡)的命令:ifconfig                 windows IP -- ipconfig 

2.虚拟机连接模式:

NAT模式---只有本地物理机可以连通

桥接模式---大家都可以访问这台机子,但在测试过程中容易造成网络拥堵,资源分摊不均

3.物理机网络情况

a)在物理机开始栏--cmd

b)物理机对虚拟机网络连通

ping1192.168.230.128ping后接1个或多个空格】

c)物理机对外网连通:

ping baidu.com(访问域名实际也是转化为访问IP

4.虚拟机网络情况

a)虚拟机对物理机网络连通

b)虚拟机对外网连通

5.远程控制终端xshell5

安装软件---新建会话

用户登录  

6、SSH协议

 

SSH是安全外壳协议  为 Secure Shell 的缩写,SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。

 

关于“协议SSH”详细内容 :http://www.tuicool.com/articles/2Mfuai

二、Linux常用命令

1、linux简介

主要特征:

a)开放性—兼容、开源

b)多用户—各用户有特定权限,互不影响

c)多任务—调度进程平等访问处理器

d出色的速度性能—连续nn年无需重启

e)良好的用户界面—1.用户命令界面;2.系统调用界面;3.图形用户界面

f)丰富的网络功能—linuxInternet基础上产生和发展的,有完善的内置网络

g)可靠的系统安全—权限控制

h)良好的可移植性—可在任何环境、任何平台运行

 

2、linux系统目录结构

  

2、Linux 基础命令

 

ifconfig—查看系统网络状态

ifconfig eth0 mtu N 【设置网络设备eth0mtu的值为N

ls—查看目录(目录操作)

LLLs –L都是查看目录详细信息

 

灰色:普通文件;蓝色:目录文件;绿色:可执行文件;红色:压缩文件; 

粉红色:图片文件;黄色(橙色):设备文件;

浅蓝色:链接文件(类似 windows中的快捷方式);

 # ls –l   //一行显示一个文件信息(详细)

# ls –t hxy   //按修改时间显示hxy目录文件

# ls –lt //同时使用两个以上的选项

3、访问权限—使用ls –l查看

前面的”-rw-r--r--”就表示文件或目录的权限,这里共有10个位置,其中:

第1位:表示文件的类型,文件类型可分为以下几种:

-:表示该文件是普通文件。

d:表示该文件是一个目录。

l:表示该文件是一个链接文件。

b:表示该文件是块设备文件,块设备通常为硬盘、光驱等传输速度较快的物理设备。

c:表示键盘、鼠标等传输速度较慢的设备文件

 

剩余9位,每3位一组,按左右顺序分别为

文件所有者(user)权限(第一组:第2-4位)

与文件所有者同组用户(group)的权限(第二组:5-7位)   

 

系统中其他用户(other)的权限(第三组:8-10位)

一组3位按从左至右顺序分别表示

读(r

(w)

执行(x)权限,

横线”-”表示没有相应权限。 

例如:上面he目录的访问权限是drwxr-xr-x,表示:

其是一个目录(第1位:d)

其所属用户有读写执行权限(第一组(2-4):rwx)

与所属用户同组的用户只有读和执行权限(第二组(5-7)r-x)

其他用户也只有读和执行权限(第三组(8-10位):r-x)

4、cd—切换目录

  • # cd  /usr/bin //切换到根目录下的usr/bin子目录
  • # cd .. //返回上一级目录
  • #cd / //切换根目录
  • #cd          //不加路径参数,或cd ~,回到当前用户的主目录
  • # cd ~ //回到当前用户的主目录

# cd - //回到当前目录之前所在的目录返回上一级输入的命令时的路径 

当操作的文件或目录在当前目录下时,可以直接命令 + 文件名/目录名

当操作的文件或目录不在当前目录下时, 需要加上绝对路径

     bin绝对路径:/usr/bin

5、mkdir—创建目录

  • # mkdir testd
  • # ls
  • # mkdir –p grade10/class01  //带参数p一次可以建立多个层次目录 

mkdir santa santa2 santa3创建同一级目录的3个新目录

mkdir –p santa/santa2/santa3 创建下级目录

 

6、pwd—查看当前路径

7、touch—创建文件

  • a   或--time=atime或--time=access或--time=use  只更改存取时间。
  • -c   或--no-create  不建立任何文档。
  • -d  使用指定的日期时间,而非现在的时间。
  • -f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m   或--time=mtime或--time=modify  只更改变动时间。
  • -r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

        -t  使用指定的日期时间,而非现在的时间

8、rm/rmdir—删除目录

说明:rmdir作用是删除目录,但被删除的目录为空时才能用rmdir删除。

  • -p:递归删除目录,当子目录删除后其父目录为空时,也一同被删除。

rm语法:rm [-d][-i][-r][-v][-f] 文件名或目录名

  • -f:强制删除文件,不提示
  • -i:删除每个文件时,先给提示询问用户
  • -r:删除整个目录,包括文件和子目录(但要询问)
  • -v:显示指令执行过程
  • -rf:强制删除目录且不询问

9、mv--移动文件

 

格式:mv [选项] <源文件或目录>  <目标文件或目录>

 

说明:

 

  • mv根据第二个参数类型的不同(是目标文件还是目标目录),确定将文件重命名或将其移到一个目标目录中。
  • 若目标文件所在目录与源文件目录不是同一个,且目标文件是新文件名,这时源文件被移到目标目录中并被重新命名.

 

参数:

 

  • -i:表示交互方式操作,对目标文件覆盖给出提示询问(默认)。  
  • -f禁止交互;

 

为防止对已存在文件造成破坏,最好使用i选项

10、cp复制文件

语法:cp [选项] <源文件或目录>  [目标文件或目录]

 

参数:

  • -a:该选项通常在复制目录时使用,它保留链接和文件属性,并递归复制目录。
  • -d:复制时保留链接。
  • -f:覆盖目标文件已存在文件,不做提示;
  • -i:覆盖目标文件时有提示;
  • -p:除复制文件内容外,还将其修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一目录,则cp 将递归复制该目录下所有的子目录和文件,目标文件也必须为一个目录。
  •  

11、rm删除文件

语法:rm [-d][-i][-r][-v][-f] <文件名或目录名>

  • -f:强制删除文件或目录,不提示
  • -i:删除每个文件时,先给提示询问用户
  • -r:删除整个目录,包括文件和子目录
  • -v:显示指令执行过程
  •  

12、rename—文件重命名

语法: rename  <源文件名修改部分>  <修改成的目标文件名部分>  <改名的文件名>

说明:rename可对一个或多个文件同时重命名.

模糊匹配 多个文件重命名

例如:test.ini  test.txt(特点同名不同后缀)

rename   test(原名)tt(替代名) test* (tttesttest*为修改的部位)

>>>>> tt.ini  tt.xt

13、cat/more/less查看文件内容

语法: cat  <文件名>

说明:当cat查看的文件内容较长时,可使用管道输出到more或less中,more到文件尾自动结束,less使用q键退出。

例如:

# cat text3.txt # more text3.txt #less text3.txt

 

Cat(把文件整体显示出来并结束),弊端:不适用于文件内容多                     

 

Morectrl + c)终止查阅:more的作用是把内容多的文件,把该内容分页查看

Less(使用q结束)

 14、head/tail—查看文件头/尾部内容

 

Head  默认头10行,(head -5 4.txt  显示前5行)

Tail    默认最后10行,(同上)tail -6  显示尾6

 

tail主要用于查看日志文件等不断增长的文件,用来关心最新添加到尾部分的内容。

例:#tail text3.txt

 

Tail –f 4.txt    实时动态查看最后10行,常用于跟踪日志文件等

 

ping 10.0.0.111 >test.log &【把ip的内容保存在test.log   &为结束符】

ping 的内容 输出到 文件中

 

tail –f test.log 查看最新的尾10行。----------结束动态显示:ctrl+c

 15、find—查找文件

find语法:

find [指定目录] <选项> <查找文件名>

参数:

  • -name<文件名> :查找指定文件名的文件
  • -amin<分钟>:查找在指定时间内曾被存取过的文件目录
  • -cmin<分钟>:查找在指定时间被更改的文件目录
  • -group<组名>:查找符合批定群组名称的文件目录
  • -user<拥有者>:查找符合指定拥有者名称的文件目录

 

说明:[指定目录]默认为当前目录

 

例1:只知道某一文件名text3.txt,查找其所在目录

# find / -name text3.txt

例2:从root目录中 查找模式为’text*.txt’文件所在目录

# find /root –name  ‘text*.txt’

3Find / -name test*

[/接目录 或者 /后接一个空格:意思是针对整个目录]

-name:文件名(类型)】【test*:含名字test但不清楚属性用*

 

16、ps—查看系统进程

-l:用长格式列出

-u:列出使用者名称和使用时间

-m:列出内存分布情况

-r:只列正在前台执行程序

ps –ef-e 所有,-f详细】

 

Ps –ef | grep crp*

| 管道符号,将前面命令的输出作为后面命令的输入

在所有里面取一个crp

 

17、grep—查找包含字符串的文件

grep :文本搜索命令,在指定文件中查找包含字符串的文件

语法:grep [选项] ‘查找字符串’ <查找文件名>

例如:显示当前目录中所有t开头的文件中包含txt字符的行;

./   表示当前目录

../  表示上一级目录

*表示所有,模糊匹配

 

# grep ‘txt’  ./t*  

#grep –l ‘txt ’ ./t*

只显示包含字符串的文件名称.

17、top—查看内存进程

  • 是linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况 ,类似于Windows的任务管理器。本文详细介绍了top命令的使用方法。

语法:

top [-] [d delay] [q] [c] [S] [s] [i] [n]

参数:

  • d:指定更新的间隔,以秒计算。
  • q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高
  • 的优先序执行。
  • c:显示进程完整的路径与名称。
  • S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。
  • s:安全模式。
  • i:不显示任何闲置(Idle)或无用(Zombie)的行程。
  • n:显示更新的次数,完成后将会退出top。
  •  

  •  

  •  

18、kill—中止进程

语法:

kill [-s signal |-p] [-a] pid

说明:

kill送出一个特定的信号( signal )给pid的进程而做特定的动作,若没有指定,默认是送出终止(TERM)信号

  • -s( signal):其中可用的信号有:HUP(1),KILL(9)、TERM(15),分别表示重跑、砍掉、结束;
  • -P: 印出 pid,并不送出信号
  • -l:列出所有可用的信号名称

例如:# kill -9 90 # kill –HUP 456

19、gzip/tar—压缩或解压文件

gzip语法 :

gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ...  ]  

压缩好的文件为红色,文件属性为.gz,原文件将不存在(解压反之)
参数   

  • -l :列出压缩文件的内容
  • -f :强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。
  • -9 :以最大的压缩比压缩
  • -d :解压缩
  • -r  :对目录进行递归操作

范例: 以最高压缩比压缩a.tar文件>>>>>gzip -9 a.tar

tar语法:

tar [主选项+辅选项] 文件或者目录 

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

  • -c: 建立压缩文件
  • -x:解压
  • -t:查看内容
  • -r:向压缩归档文件末尾追加文件
  • -u:更新原压缩包中的文件

Tar –cvzf my.tar.gz test.log(my.tar.gz新文件名,test.log原文件)

Cvzf:  c(建立压缩文件)   v(显示所以打包文件)   zgzip)   f(必须放在最后其他的可以乱)

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

 

辅选项:

  • -z:有gzip属性的
  • -j:有bz2属性的
  • -Z:有compress属性的
  • -v:显示所有过程
  • -O:将文件解开到标准输出

 

下面的参数-f是必须

l -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接压缩文件名。

 

  • 范例一:

压缩

  • tar –cvf jpg.tar *.jpg  将目录里所有jpg文件打包成tar.jpg
  • tar –czf jpg.tar.gz *.jpg   将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
  • tar –cjf jpg.tar.bz2 *.jpg 将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2
  • tar –cZf jpg.tar.Z *.jpg   将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z
  • rar a jpg.rar *.jpg rar格式的压缩,需要先下载rar for linux
  • zip jpg.zip *.jpg   zip格式的压缩,需要先下载zip for linux

 

  • 范例二:

解压

l tar –xvf file.tar  解压 tar

l tar -xzvf file.tar.gz 解压tar.gz

l tar -xjvf file.tar.bz2   解压 tar.bz2

l tar –xZvf file.tar.Z   解压tar.Z

l unrar e file.rar 解压rar

l unzip file.zip 解压zip

 

总结

ü *.tar tar –xvf 解压

ü *.gz gzip -d或者gunzip 解压

ü *.tar.gz*.tgz tar –xzf 解压

ü *.bz2 bzip2 -d或者用bunzip2 解压

ü *.tar.bz2tar –xjf 解压

ü *.Z uncompress 解压

ü *.tar.Z tar –xZf 解压

ü *.rar unrar e解压

ü *.zip unzip 解压

 19、du—显示指定的目录或文件所占用的磁盘空间

du语法  

du [参数] [目录或文件]
参数

    • -a或-all   显示目录中所有文件的大小。
    • -b  显示目录或文件大小时,以byte为单位。
    • -c  显示每个目录和文件的大小,同时也显示所有目录或文件的总和。
    • -D 显示指定符号连接的源文件大小。
    • -h  以K,M,G为单位,提高信息的可读性。
    • -H 与-h参数相同,但是K,M,G是以1000为换算单位。 
    • -k  以1024 bytes为单位。

20、df—显示磁盘的使用状况

df语法

df [选项]... [FILE]...

范例: 显示系统所配置的每一个磁盘当前被占用的空间大小>>>>>>#df –k

21、useradd—新建用户

useradd语法

useradd [参数] 用户名

参数 

  • -d<登入目录>  指定用户登入时的启始目录。 
  • -e<有效期限>  指定帐号的有效期限。 
  • -f<缓冲天数>  指定在密码过期后多少天即关闭该帐号。 
  • -g<群组>  指定用户所属的群组。 
  • -G<群组>  指定用户所属的附加群组。 
  • -m  自动建立用户的登入目录。 
  • -M  不要自动建立用户的登入目录。 
  • -n  取消建立以用户名称为名的群组. k
  • -r  建立系统帐号。 
  • -s<shell>   指定用户登入后所使用的shell 
  • -u<uid>  指定用户ID .

范例: useradd oracle –g oinstall –G dba –d /home/oracle

【系统将创建一个用户oracle,oracle 用户的首要组为oinstall,次要组为dba,Home 目录为/home/oracle】     test1—主要组    syunke—次要组

说明:

默认创建的用户将会在home下为该用户创建一个目录,为用户的home directory,即用户主目录,用户登陆时会自动登入到该目录,路径为/home/username

useradd yonghu2 -d /home/yonghu2 -g test1 -G syunke
useradd yonghu2 -g test1 -G syunke -d /home/yonghu2
同样的作用,位置可以调换。

主要组,次要组

显示new3的信息是在次要组new2492)

cat命令查看所有用户组及ID内容

sermod 修改用户信息

Yonghu3是和root同一组,yonghu5root是不同组

 

22.userdel—删除用户

userdel语法

userdel [-r] 用户名

参数

-r 同时删除用户的home directory和邮件

 

23、groupadd新增用户组

24、groupadd新增用户组

groupadd语法 :将新用户组加入系统

 groupadd [-g gid] [-o]] [-r] [-f] groupname

 

参数

  • -g gid  指定组的id
  • -r 增加一个系统账号,组id低于499
  • -f 当组已存在时强制退出
  • >>>#group –g 600 santa 【新建一个指定id600 的用户组santa

    >>>#cat /etc/group 【查看所有用户组信息】

25、groupdel删除用户组

groupdel语法

groupdel 组名

当你要删除的用户组是别的用户的主要组时,删除不了

26 、passwd—修改密码

出于系统安全考虑,Linux 系统中的每一个用户除了有其用户名外,还有其对应的用户口令。用户可以随时用passwd 命令改变自己的口令

该命令的一般格式为:   passwd

输入该命令后,按系统提示依次输入密码和密码确认后即可完成用户密码的修改。

此外超级用户还可以修改其他用户的口令命令如下:passwd 用户名

27、su提升权限

su 命令这个命令非常重要,它可以让一个普通用户拥有超级用户或其他用户的权限,也可以让超级用户以普通用户的身份做一些事情。

普通用户使用这个命令时必须有超级用户或其他用户的口令。

如要离开当前用户的身份可以键入exit 命令,

 

su语法:

su - 用户名 

赋予root权限

 

方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉

 

## Allows people in group wheel to run all commands

%wheel    ALL=(ALL)    ALL   (在%前有一个#,把它去掉)

 

然后修改用户,使其属于root组(wheel),命令如下:

 

#usermod -g root tommy

 

修改完毕,现在可以用tommy帐号登录,然后用命令 su – ,即可获得root权限进行操作。

 

方法二:修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:

 

## Allow root to run any commands anywhere

 root    ALL=(ALL)     ALL

 tommy   ALL=(ALL)     ALL

 

修改完毕,现在可以用tommy帐号登录,然后用命令 sudo – ,即可获得root权限进行操作。

 

方法三:修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:

 tommy:x:0:33:tommy:/data/webroot:/bin/bash

只是一个例子,实际工作中不要对root 目录做这样操作 

 

管理员普通用户

28 、chmod—改变文件或目录权限

 

chmod语法 :

 chmod [-cfvR] mode file...

参数 :

mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中

  • u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。 r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
  • -c : 若该档案权限确实已经更改,才显示其更改动作
  • -f : 若该档案权限无法被更改也不要显示错误讯息
  • -R : 对目前目录下的所有档案与子目录进行相同的权限变更

Yonghu3 和root是在同一组里,所以要改yonghu3的权限需要在root的前提下用chmod g+w yonghu3

 修改sudoers的读写状态,用chmod u+w sudoers(把sudoers是只读文件改成读写)

r     4
w    2
x    1 

意思是chmod ugoa】【-+=】【rwxXst】  (管道符号:把前面的输出作为后面的输入)

 

Chmod g-wo-w 1.txt【这里的不能有空格】

linux的文件类型

   _(普通文件) d(目录) l(链接) p(命名管道) b(块设备文件) s(套接字 文件) c(字符设备文件)

   讲解一个简单例子

   drwxr-x--x 2 root root 4096 02-10 14:20 test

   d : 说明是目录

   rwx:是文件属主的权限,有读、写、执行权限

   r-x: 是同组的用户的权限,有读、执行的权限

   --x: 是其他用户的权限,有执行的权限

 

Each MODE is of the form `[ugoa]*([-+=]([rwxXst]*|[ugo]))+'.

   说明如下:

   [ugoa]

   u:文件属主权限 g:同组用户权限 o:其他用户权限 a:所有用户

   [-+=]

   -:取消权限 +:增加权限 =:设置权限

   [rwxXst]

   r::读 w:写 x:执行 s:set-ID t:粘性位

   [ugo]

   u:针对文件属主操作 g:针对同组的用户操作 o:针对其他用户操作

   就上面的例子修改权限

   [root@linux-3 shell]# chmod o+r test/ #其他用户有读的权限

   [root@linux-3 shell]# ll

   总计 8

   drwxr-xr-x 2 root root 4096 02-10 14:20 test

   [root@linux-3 shell]# chmod 755 test/ #这样也是可以给予权限的

   [root@linux-3 shell]# ll

   总计 8

   drwxr-xr-x 2 root root 4096 02-10 14:20 test

 详细了解chmod的用法:::http://www.ahlinux.com/start/cmd/409.html 

29、netstat查看网络状态

  • 显示当前服务器所有网络连接状态 :netstat –a
  • 显示tcp连接 :netstat –t
    • 显示所有监听的服务端口 :netstat –l 

30、telnet连接指定端口

telnet语法:

telnet address [port]

31、ping判断远端网络功能是否正常

ping语法 :  

ping [-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]

 

功能:

指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常

 

参数:

  • -c<完成次数>   设置完成要求回应的次数。
  • -f   极限检测。
  • -i<间隔秒数>   指定收发信息的间隔时间。
  • -I<网络界面>   使用指定的网络界面送出数据包。

-s<数据包大小>   设置数据包的大小。

32、 vi—文件编辑

vi语法:

vi [文件名]

 

vi打开文件-- Insert 插入内容-- Esc再输入冒号:--再输入wqw保存,q退出)

 

q!(强制退出)

 

cat查阅文件

文件2.txt   15L(15)  149C149个字符)

vi

n下一个

N上一个

/在光标所在的位置向上查找

?在光标所在位置向下查找

G 光标移动文件最后

dd 删除光标所在的那一行

yy 复制 p粘贴

 

启动网络vi /etc/sysconfig/network-scripts/ifcfg-eth0

32、 嵌入式编程

 

Echo(输出命令)

 

`date`时间

33 、reboot—重启系统

 

34 、shutdown/poweroff—关闭系统

shutdown [OPTION]… TIME [MESSAGE]

  • [-r] 重启计算器。 
  • [-k] 并不真正关机只是送警告信号给每位登录者 
  • [-h] 关机后关闭电源。 
  • [-c] 取消目前正在执行的关机程序,可以给当前登录的用户一个提示信息 
  • [-F] 在重启系统时执行磁盘检查 fsck 
  • [-f] 在重启系统时不检查磁盘 

举例:

ü 要在 10:00关闭系统,并给登录用户一条提示信息: >>>>># shutdown -h 10:00 “系统维护10:00关机,11:00恢复

要在15分钟后重启计算机: >>>>># shutdown -r +15

35、clear清屏

36、tab—补全

eg: ls -l a然后点击tab键,则直接显示ls -l anaconda-ks.cfg

Rootqq(文件属性) Rootq群(文件属主所在组)

1598:文件大小  1213 00:37 :时间 anaconda-ks.cfg:文件名

 

38、 tenlent—yun

提示telent没这个指令

yum   原码安装,安装好了后就可以用talnet命令

UID 用户ID
PID 进程ID
PPID 父进程ID
C CPU占用率
STIME 开始时间
TTY 开始此进程的TTY
TIME 此进程运行的总时间
CMD 命令名

 

posted @ 2017-04-25 00:50  柠檬馨语  阅读(139)  评论(0编辑  收藏  举报