• 第一天 Linux基础篇


    课程介绍

    1.认识Linux的不同版本

    2.以及应用领域

    3.文件和目录

    4.Linux命令概述

    5.Linux命令-文件

    6.Linux命令-系统管理-磁盘管理

    认识Linux

    什么是操作系统  生活中的操作系统(win7,Mac,Android,iOS)一共四个电脑手机苹果,安卓

    操作系统的发展史

    Unix

    1965年之前的时候,电脑并不像现在⼀样普遍,它可不是⼀般⼈能碰的起的,除⾮是军事
    或者学院的研究机构,⽽且当时⼤型主机⾄多能提供30台终端(30个键盘、显示器),连
    接⼀台电脑

    为了解决数量不够⽤的问题
    1965年左后由⻉尔实验室、麻省理⼯学院 以及 通⽤电⽓共同发起了Multics项⽬,想让⼤
    型主机⽀持300台终端
    1969年前后这个项⽬进度缓慢,资⾦短缺,⻉尔实验室退出了研究
    1969年从这个项⽬中退出的Ken Thompson当时在实验室⽆聊时,为了让⼀台空闲的电脑
    上能够运⾏“星际旅⾏”游⾏,在8⽉份左右趁着其妻⼦探亲的时间,⽤了1个⽉的时间 编写
    出了 Unix操作系统的原型
    1970年,美国⻉尔实验室的 Ken Thompson,以 BCPL语⾔ 为基础,设计出很简单且很
    接近硬件的 B语⾔(取BCPL的⾸字⺟),并且他⽤B语⾔写了第⼀个UNIX操作系统。

    因为B语⾔的跨平台性较差,为了能够在其他的电脑上也能够运⾏这个⾮常棒的Unix操作
    系统,Dennis Ritchie和Ken Thompson 从B语⾔的基础上准备研究⼀个更好的语⾔

    肯·汤普逊(左)和丹尼斯·⾥奇(右)
    1972年,美国⻉尔实验室的 Dennis Ritchie在B语⾔的基础上最终设计出了⼀种新的语
    ⾔,他取了BCPL的第⼆个字⺟作为这种语⾔的名字,这就是C语⾔
    1973年初,C语⾔的主体完成。Thompson和Ritchie迫不及待地开始⽤它完全重写了现在
    ⼤名鼎鼎的Unix操作系统

    操作系统的发展

    1.Linux内核及发⾏版介绍
    <1>Linux内核版本
    内核(kernel)是系统的⼼脏,是运⾏程序和管理像磁盘和打印机等硬件设备的核⼼程序,
    它提供了⼀个在裸设备与应⽤程序间的抽象层。
    Linux内核版本⼜分为稳定版和开发版,两种版本是相互关联,相互循环:
    稳定版:具有⼯业级强度,可以⼴泛地应⽤和部署。新的稳定版相对于较旧的只是修
    正⼀些bug或加⼊⼀些新的驱动程序。
    开发版:由于要试验各种解决⽅案,所以变化很快。
    内核源码⽹址:http://www.kernel.org 所有来⾃全世界的对Linux源码的修改最终都会汇总
    到这个⽹站,由Linus领导的开源社区对其进⾏甄别和修改最终决定是否进⼊到Linux主线
    内核源码中。

    2.应⽤领域
    个⼈桌⾯领域的应⽤
    此领域是传统linux应⽤最薄弱的环节,传统linux由于界⾯简单、操作复杂、应⽤软件少的
    缺点,⼀直被windows所压制,但近些年来随着ubuntu、fedora等优秀桌⾯环境的兴起,
    同时各⼤硬件⼚商对其⽀持的加⼤,linux在个⼈桌⾯领域的占有率在逐渐的提⾼
    典型代表:ubuntu、fedora、suse linux
    在Ubuntu中玩QQ

    服务器领域
    linux在服务器领域的应⽤是其重要分⽀
    linux免费、稳定、⾼效等特点在这⾥得到了很好的体现,但早期因为维护、运⾏等原因同
    样受到了很⼤的限制,但近些年来linux服务器市场得到了⻜速的提升,尤其在⼀些⾼端领
    域尤为⼴泛
    典型代表:
    Red Hat公司的AS系列
    完全开源的debian系列
    suse EnterPrise 11系列等

    嵌⼊式领域
    近些年来linux在嵌⼊式领域的应⽤得到了⻜速的提⾼
    linux运⾏稳定、对⽹络的良好⽀持性、低成本,且可以根据需要进⾏软件裁剪,内核最⼩
    可以达到⼏百KB等特点,使其近些年来在嵌⼊式领域的应⽤得到⾮常⼤的提⾼
    主要应⽤:机顶盒、数字电视、⽹络电话、程控交换机、⼿机、PDA、等都是其应⽤领
    域,得到了摩托罗拉、三星、NEC、Google等公司的⼤⼒推⼴

    类Unix系统⽬录结构
    ubuntu没有盘符这个概念,只有⼀个根⽬录/,所有⽂件都在它下⾯

    Linux ⽬录
    /:根⽬录,⼀般根⽬录下只存放⽬录,在Linux下有且只有⼀个根⽬录。所有的东⻄
    都是从这⾥开始。当你在终端⾥输⼊“/home”,你其实是在告诉电脑,先从/(根⽬
    录)开始,再进⼊到home⽬录。
    /bin、/usr/bin: 可执⾏⼆进制⽂件的⽬录,如常⽤的命令ls、tar、mv、cat等。
    /boot:放置linux系统启动时⽤到的⼀些⽂件,如Linux的内核⽂件:/boot/vmlinuz,
    系统引导管理器:/boot/grub。
    /dev:存放linux系统下的设备⽂件,访问该⽬录下某个⽂件,相当于访问某个设备,
    常⽤的是挂载光驱 mount /dev/cdrom /mnt。

    /etc:系统配置⽂件存放的⽬录,不建议在此⽬录下存放可执⾏⽂件,重要的配置⽂
    件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d。
    /home:系统默认的⽤户家⽬录,新增⽤户账号时,⽤户的家⽬录都存放在此⽬录
    下,~表示当前⽤户的家⽬录,~edu 表示⽤户 edu 的家⽬录。
    /lib、/usr/lib、/usr/local/lib:系统使⽤的函数库的⽬录,程序在执⾏过程中,需要调
    ⽤⼀些额外的参数时需要函数库的协助。
    /lost+fount:系统异常产⽣错误时,会将⼀些遗失的⽚段放置于此⽬录下。
    /mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不⼀定,可以选
    择任意位置进⾏挂载。
    /opt:给主机额外安装软件所摆放的⽬录。
    /proc:此⽬录的数据都在内存中,如系统核⼼,外部设备,⽹络状态,由于数据都存
    放于内存中,所以不占⽤磁盘空间,⽐较重要的⽬录有
    /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等。
    /root:系统管理员root的家⽬录。
    /sbin、/usr/sbin、/usr/local/sbin:放置系统管理员使⽤的可执⾏命令,如fdisk、
    shutdown、mount 等。与 /bin 不同的是,这⼏个⽬录是给系统管理员 root使⽤的命
    令,⼀般⽤户只能"查看"⽽不能设置和使⽤。
    /tmp:⼀般⽤户或正在执⾏的程序临时存放⽂件的⽬录,任何⼈都可以访问,重要数
    据不可放置在此⽬录下。
    /srv:服务启动之后需要访问的数据⽬录,如 www 服务需要访问的⽹⻚数据存放在
    /srv/www 内。
    /usr:应⽤程序存放⽬录,/usr/bin 存放应⽤程序,/usr/share 存放共享数据,/usr/lib
    存放不能直接运⾏的,却是许多程序运⾏所必需的⼀些函数库⽂件。/usr/local: 存放
    软件升级包。/usr/share/doc: 系统说明⽂件存放⽬录。/usr/share/man: 程序说明⽂件
    存放⽬录。
    /var:放置系统执⾏过程中经常变化的⽂件,如随时更改的⽇志⽂件
    /var/log,/var/log/message:所有的登录⽂件存放⽬录,/var/spool/mail:邮件存放
    的⽬录,/var/run:程序或服务启动后,其PID存放在该⽬录下。

    ⽤户⽬录
    位于/home/user,称之为⽤户⼯作⽬录或家⽬录,表示⽅式:

    /home/user
    ~

    相对路径和绝对路径
    绝对路径
    从/⽬录开始描述的路径为绝对路径,如:
    cd /home
    ls /usr
    相对路径
    从当前位置开始描述的路径为相对路径,如:
    cd ../../
    ls abc/def

    .和..
    每个⽬录下都有.和..
    . 表示当前⽬录
    .. 表示上⼀级⽬录,即⽗⽬录
    根⽬录下的.和..都表示当前⽬录

    ⽂件权限

    第1个字⺟代表⽂件的类型:“d” 代表⽂件夹、“-” 代表普通⽂件、“c” 代表硬件字符设
    备、“b” 代表硬件块设备、“s”表示管道⽂件、“l” 代表软链接⽂件。 后 9 个字⺟分别代表三
    组权限:⽂件所有者、⽤户者、其他⽤户拥有的权限。

    每⼀个⽤户都有它⾃身的读、写和执⾏权限。
    第⼀组权限控制访问⾃⼰的⽂件权限,即所有者权限。
    第⼆组权限控制⽤户组访问其中⼀个⽤户的⽂件的权限。
    第三组权限控制其他所有⽤户访问⼀个⽤户的⽂件的权限。
    这三组权限赋予⽤户不同类型(即所有者、⽤户组和其他⽤户)的读、写及执⾏权限就构
    成了⼀个有9种类型的权限组。

    1.命令使⽤⽅法
    Linux命令格式:
    command [-options] [parameter1] …

    说明:
    command: 命令名,相应功能的英⽂单词或单词的缩写 [-options]:选项,可⽤来对命令
    进⾏控制,也可以省略, []代表可选 parameter1 …:传给命令的参数:可以是零个
    ⼀个或多个

    2.查看帮助⽂档(help 和 man)
    <1>--help
    ⼀般是linux命令⾃带的帮助信息
    如:ls --help
    <2>man(有问题找男⼈,manual)
    man是linux提供的⼀个⼿册,包含了绝⼤部分的命令、函数使⽤说明
    该⼿册分成很多章节(section),使⽤man时可以指定不同的章节来浏览。
    例:man ls ; man 2 printf
    man中各个section意义如下:
    1. Standard commands(标准命令)
    2. System calls(系统调⽤,如open,write)
    3. Library functions(库函数,如printf,fopen)
    4. Special devices(设备⽂件的说明,/dev下各种设备)
    5. File formats(⽂件格式,如passwd)
    6. Games and toys(游戏和娱乐)
    7. Miscellaneous(杂项、惯例与协定等,例如Linux档案系统、⽹络协定、ASCII 码;
    environ全局变量)
    8. Administrative Commands(管理员命令,如ifconfig)
    man是按照⼿册的章节号的顺序进⾏搜索的。
    man设置了如下的功能键:
    功能键 功能
    空格键 显示⼿册⻚的下⼀屏
    Enter键 ⼀次滚动⼿册⻚的⼀⾏
    b 回滚⼀屏
    f 前滚⼀屏
    q 退出man命令
    h 列出所有功能键

    3.⾃动补全:(tab)
    在敲出命令的前⼏个字⺟的同时,按下tab键,系统会⾃动帮我们补全命令

    4.历史命令:(上下键)
    当系统执⾏过⼀些命令后,可按上下键翻看以前的命令,history将执⾏过的命令列举出来

    Linux命令-⽂件、磁盘管理

    <1>查看⽂件信息:ls

    ls是英⽂单词list的简写,其功能为列出⽬录的内容,是⽤户最常⽤的命令之⼀,它类似于
    DOS下的dir命令。

    ls常⽤参数:
    参数 含义
    -a 显示指定⽬录下所有⼦⽬录与⽂件,包括隐藏⽂件
    -l 以列表⽅式显示⽂件的详细信息
    -h 配合 -l 以⼈性化的⽅式显示⽂件⼤⼩

    通配符  含义(有四个 * ? 【】 /)

    * ⽂件代表⽂件名中所有字符

    ls te* 查找以te开头的⽂件
    ls
    *html
    查找结尾为html的⽂件
    ? 代表⽂件名中任意⼀个字符
    课程介绍
    34 Linux命令-⽂件
    ls ?.c 只找第⼀个字符任意,后缀为.c的⽂件
    ls
    a.?
    只找只有3个字符,前2字符为a.,最后⼀个字符任意的⽂件
    []
    [”和“]”将字符组括起来,表示可以匹配字符组中的任意⼀个。“-”⽤于表示
    字符范围。
    [abc] 匹配a、b、c中的任意⼀个
    [a-f] 匹配从a到f范围内的的任意⼀个字符
    ls [a-
    f]*
    找到从a到f范围内的的任意⼀个字符开头的⽂件
    ls a-f 查找⽂件名为a-f的⽂件,当“-”处于⽅括号之外失去通配符的作⽤

    如果要使通配符作为普通字符使⽤,可以在其前⾯加上转义字
    符。“?”和“*”处于⽅括号内时不⽤使⽤转义字符就失去通配符的作⽤。
    ls *a 查找⽂件名为*a的⽂件

    <5>清屏:clear
    clear作⽤为清除终端上的显示(类似于DOS的cls清屏功能),也可使⽤快捷键:Ctrl + l ( “l”
    为字⺟ )。

    <6>切换⼯作⽬录: cd

    cd后⾯可跟绝对路径,也可以跟相对路径。

    cd
    切换到当前⽤户的主⽬录(/home/⽤户⽬录),⽤户登陆的时候,默认的⽬录
    就是⽤户的主⽬录。
    cd
    ~
    切换到当前⽤户的主⽬录(/home/⽤户⽬录)
    cd
    .
    切换到当前⽬录
    cd
    ..
    切换到上级⽬录
    cd
    -
    可进⼊上次所在的⽬录

    如果路径是从根路径开始的,则路径的前⾯需要加上 “ / ”,如 “ /mnt ”,通常进⼊某个
    ⽬录⾥的⽂件夹,前⾯不⽤加 “ / ”。

    <7>显示当前路径:pwd
    使⽤pwd命令可以显示当前的⼯作⽬录,该命令很简单,直接输⼊pwd即可,后⾯不带参
    数。

    <8>创建⽬录:mkdir
    通过mkdir命令可以创建⼀个新的⽬录。参数-p可递归创建⽬录。
    需要注意的是新建⽬录的名称不能与当前⽬录中已有的⽬录或⽂件同名,并且⽬录创建者
    必须对当前⽬录具有写权限。

    <9>删除⽬录:rmdir
    可使⽤rmdir命令删除⼀个⽬录。必须离开⽬录,并且⽬录必须为空⽬录,不然提示删除
    失败。
    <10>删除⽂件:rm
    可通过rm删除⽂件或⽬录。使⽤rm命令要⼩⼼,因为⽂件删除后不能恢复。为了防⽌⽂
    件误删,可以在rm后使⽤-i参数以逐个确认要删除的⽂件。
    常⽤参数及含义如下表所示:
    参数 含义
    -i 以进⾏交互式⽅式执⾏(会询问是否真的删除)
    -f 强制删除,忽略不存在的⽂件,⽆需提示
    -r 递归地删除⽬录下的内容,删除⽂件夹时必须加此参数

    <15>拷⻉⽂件:cp
    cp命令的功能是将给出的⽂件或⽬录复制到另⼀个⽂件或⽬录中,相当于DOS下的copy
    命令。
    常⽤选项说明:


    含义
    -a
    该选项通常在复制⽬录时使⽤,它保留链接、⽂件属性,并递归地复制⽬
    录,简单⽽⾔,保持⽂件原有属性。
    -f 已经存在的⽬标⽂件⽽不提示
    -i 交互式复制,在覆盖⽬标⽂件之前将给出提示要求⽤户确认
    -r
    若给出的源⽂件是⽬录⽂件,则cp将递归复制该⽬录下的所有⼦⽬录和⽂
    件,⽬标⽂件必须为⼀个⽬录名。
    -v 显示拷⻉进度

    <16>移动⽂件:mv
    ⽤户可以使⽤mv命令来移动⽂件或⽬录,也可以给⽂件或⽬录重命名。
    常⽤选项说明:


    含义
    -f 禁⽌交互式操作,如有覆盖也不会给出提示
    -i
    确认交互⽅式操作,如果mv操作将导致对已存在的⽬标⽂件的覆盖,系统会
    询问是否重写,要求⽤户回答以避免误覆盖⽂件
    -v 显示移动进度

    <2>输出重定向命令:>
    Linux允许将命令执⾏结果重定向到⼀个⽂件,本应显示在终端上的内容保存到指定⽂件
    中。
    如:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )

    >输出重定向会覆盖原来的内容,>>输出重定向则会追加到⽂件的尾部。

    <3>分屏显示:more
    查看内容时,在信息过⻓⽆法在⼀屏上显示时,会出现快速滚屏,使得⽤户⽆法看清⽂件
    的内容,此时可以使⽤more命令,每次只显示⼀⻚,按下空格键可以显示下⼀⻚,按下q
    键退出显示,按下h键可以获取帮助。

    <4>管道:|
    管道:⼀个命令的输出可以通过管道做为另⼀个命令的输⼊。
    管道我们可以理解现实⽣活中的管⼦,管⼦的⼀头塞东⻄进去,另⼀头取出来,这⾥“ |
    ”的左右分为两端,左端塞东⻄(写),右端取东⻄(读)。

    <11>建⽴链接⽂件:ln
    Linux链接⽂件类似于Windows下的快捷⽅式。
    链接⽂件分为软链接和硬链接。
    软链接:软链接不占⽤磁盘空间,源⽂件删除则软链接失效。
    硬链接:硬链接只能链接普通⽂件,不能链接⽬录。
    使⽤格式:
    ln 源⽂件 链接⽂件
    ln -s 源⽂件 链接⽂件
    如果 没有-s 选项代表建⽴⼀个硬链接⽂件,两个⽂件占⽤相同⼤⼩的硬盘空间,即使删
    除了源⽂件,链接⽂件还是存在,所以-s选项是更常⻅的形式。
    注意:如果软链接⽂件和源⽂件不在同⼀个⽬录,源⽂件要使⽤绝对路径,不能使⽤相对
    路径。

    <12>查看或者合并⽂件内容:cat

    <13>⽂本搜索:grep
    Linux系统中grep命令是⼀种强⼤的⽂本搜索⼯具,grep允许对⽂本⽂件进⾏模式查找。
    如果找到匹配模式, grep打印包含模式的所有⾏。
    grep⼀般格式为:
    grep [-选项] ‘搜索内容串’⽂件名

    在grep命令中输⼊字符串参数时,最好引号或双引号括起来。例如:grep‘a ’1.txt。
    常⽤选项说明:
    选项 含义
    -v 显示不包含匹配⽂本的所有⾏(相当于求反)
    -n 显示匹配⾏及⾏号
    -i 忽略⼤⼩写
    grep搜索内容串可以是正则表达式。
    正则表达式是对字符串操作的⼀种逻辑公式,就是⽤事先定义好的⼀些特定字符、及这些
    特定字符的组合,组成⼀个“规则字符串”,这个“规则字符串”⽤来表达对字符串的⼀种过
    滤逻辑。

    grep常⽤正则表达式:
    参数 含义
    ^a ⾏⾸,搜寻以 m 开头的⾏;grep -n '^a' 1.txt
    ke$ ⾏尾,搜寻以 ke 结束的⾏;grep -n 'ke$' 1.txt
    [Ss]igna[Ll]
    匹配 [] ⾥中⼀系列字符中的⼀个;搜寻匹配单词signal、signaL、
    Signal、SignaL的⾏;grep -n '[Ss]igna[Ll]' 1.txt
    .
    (点)匹配⼀个⾮换⾏符的字符;匹配 e 和 e 之间有任意⼀个字符,
    可以匹配 eee,eae,eve,但是不匹配 ee,eaae;grep -n 'e.e'
    1.txt

    <14>查找⽂件:find
    find命令功能⾮常强⼤,通常⽤来在特定的⽬录下搜索符合条件的⽂件,也可以⽤来搜索
    特定⽤户属主的⽂件。
    常⽤⽤法:
    命令 含义
    find ./ -name test.sh 查找当前⽬录下所有名为test.sh的⽂件
    find ./ -name '*.sh' 查找当前⽬录下所有后缀为.sh的⽂件
    find ./ -name "[A-Z]*" 查找当前⽬录下所有以⼤写字⺟开头的⽂件
    find /tmp -size 2M 查找在/tmp ⽬录下等于2M的⽂件
    find /tmp -size +2M 查找在/tmp ⽬录下⼤于2M的⽂件
    find /tmp -size -2M 查找在/tmp ⽬录下⼩于2M的⽂件
    find ./ -size +4k -size -5M 查找当前⽬录下⼤于4k,⼩于5M的⽂件
    find ./ -perm 777 查找当前⽬录下权限为 777 的⽂件或⽬录

    <17>归档管理:tar
    计算机中的数据经常需要备份,tar是Unix/Linux中最常⽤的备份⼯具,此命令可以把⼀系
    列⽂件归档到⼀个⼤⽂件中,也可以把档案⽂件解开以恢复数据。
    tar使⽤格式 tar [参数] 打包⽂件名 ⽂件
    tar命令很特殊,其参数前⾯可以使⽤“-”,也可以不使⽤。
    常⽤参数:
    参数 含义
    -c ⽣成档案⽂件,创建打包⽂件
    课程介绍
    52 Linux命令-⽂件
    -v 列出归档解档的详细过程,显示进度
    -f 指定档案⽂件名称,f后⾯⼀定是.tar⽂件,所以必须放选项最后
    -t 列出档案中包含的⽂件
    -x 解开档案⽂件
    注意:除了f需要放在参数的最后,其它参数的顺序任意。

    <18>⽂件压缩解压:gzip
    tar与gzip命令结合使⽤实现⽂件打包、压缩。 tar只负责打包⽂件,但不压缩,⽤gzip压
    缩tar打包后的⽂件,其扩展名⼀般⽤xxxx.tar.gz。
    课程介绍
    54 Linux命令-⽂件
    gzip使⽤格式如下:
    gzip [选项] 被压缩⽂件
    常⽤选项:
    选项 含义
    -d 解压
    -r 压缩所有⼦⽬录

    tar这个命令并没有压缩的功能,它只是⼀个打包的命令,但是在tar命令中增加⼀个选项(-
    z)可以调⽤gzip实现了⼀个压缩的功能,实⾏⼀个先打包后压缩的过程。
    压缩⽤法:tar cvzf 压缩包包名 ⽂件1 ⽂件2 ...
    -z :指定压缩包的格式为:file.tar.gz

    解压⽤法: tar zxvf 压缩包包名
    -z:指定压缩包的格式为:file.tar.gz

    解压到指定⽬录:-C (⼤写字⺟“C”)

    <19>⽂件压缩解压:bzip2
    tar与bzip2命令结合使⽤实现⽂件打包、压缩(⽤法和gzip⼀样)。
    tar只负责打包⽂件,但不压缩,⽤bzip2压缩tar打包后的⽂件,其扩展名⼀般⽤
    xxxx.tar.gz2。
    在tar命令中增加⼀个选项(-j)可以调⽤bzip2实现了⼀个压缩的功能,实⾏⼀个先打包后压
    缩的过程。
    压缩⽤法:tar -jcvf 压缩包包名 ⽂件...(tar jcvf bk.tar.bz2 *.c)
    解压⽤法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.bz2)
    <20>⽂件压缩解压:zip、unzip
    通过zip压缩⽂件的⽬标⽂件不需要指定扩展名,默认扩展名为zip。
    压缩⽂件:zip [-r] ⽬标⽂件(没有扩展名) 源⽂件
    解压⽂件:unzip -d 解压后⽬录⽂件 压缩⽂件

    <21>查看命令位置:which

    Linux命令-系统管理
    <1>查看当前⽇历:cal
    cal命令⽤于查看当前⽇历,-y显示整年⽇历:

    <2>显示或设置时间:date
    设置时间格式(需要管理员权限):
    date [MMDDhhmm[[CC]YY][.ss]] +format
    CC为年前两位yy为年的后两位,前两位的mm为⽉,后两位的mm为分钟,dd为天,hh为
    ⼩时,ss为秒。如: date 010203042016.55。
    显示时间格式(date '+%y,%m,%d,%H,%M,%S'):
    format格式 含义
    %Y,%y 年
    %m ⽉
    %d ⽇
    课程介绍
    59 Linux命令-系统管理、磁盘管理
    %H 时
    %M 分
    %S 秒

    <3>查看进程信息:ps
    进程是⼀个具有⼀定独⽴功能的程序,它是操作系统动态执⾏的基本单元。
    ps命令可以查看进程的详细状况,常⽤选项(选项可以不加“-”)如下:
    选项 含义
    -a 显示终端上的所有进程,包括其他⽤户的进程
    -u 显示进程的详细状态
    -x 显示没有控制终端的进程
    -w 显示加宽,以便显示更多的信息
    -r 只显示正在运⾏的进程

    <4>动态显示进程:top
    课程介绍
    60 Linux命令-系统管理、磁盘管理
    top命令⽤来动态显示运⾏中的进程。top命令能够在运⾏后,在指定的时间间隔更新显示
    信息。可以在使⽤top命令时加上-d 来指定显示信息更新的时间间隔。
    在top命令执⾏后,可以按下按键得到对显示的结果进⾏排序:
    按键 含义
    M 根据内存使⽤量来排序
    P 根据CPU占有率来排序
    T 根据进程运⾏时间的⻓短来排序
    U 可以根据后⾯输⼊的⽤户名来筛选进程
    K 可以根据后⾯输⼊的PID来杀死进程。
    q 退出
    h 获得帮助

    <5>终⽌进程:kill
    kill命令指定进程号的进程,需要配合 ps 使⽤。
    使⽤格式:
    课程介绍
    61 Linux命令-系统管理、磁盘管理
    kill [-signal] pid
    信号值从0到15,其中9为绝对终⽌,可以处理⼀般信号⽆法终⽌的进程。
    kill 9133 :9133 为应⽤程序所对应的进程号

    <6>关机重启:reboot、shutdown、init
    命令 含义
    reboot 重新启动操作系统
    shutdown –r now 重新启动操作系统,shutdown会给别的⽤户提示
    shutdown -h now ⽴刻关机,其中now相当于时间为0的状态
    shutdown -h 20:25 系统在今天的20:25 会关机
    shutdown -h +10 系统再过⼗分钟后⾃动关机
    init 0 关机
    init 6 重启
    <7>检测磁盘空间:df
    df命令⽤于检测⽂件系统的磁盘空间占⽤和空余情况,可以显示所有⽂件系统对节点和磁
    盘块的使⽤情况。
    课程介绍
    63 Linux命令-系统管理、磁盘管理
    选项 含义
    -a 显示所有⽂件系统的磁盘使⽤情况
    -m 以1024字节为单位显示
    -t 显示各指定⽂件系统的磁盘空间使⽤情况
    -T 显示⽂件系统

    <8>检测⽬录所占磁盘空间:du
    du命令⽤于统计⽬录或⽂件所占磁盘空间的⼤⼩,该命令的执⾏结果与df类似,du更侧重
    于磁盘的使⽤状况。
    du命令的使⽤格式如下: du [选项] ⽬录或⽂件名
    选项 含义
    -a 递归显示指定⽬录中各⽂件和⼦⽬录中⽂件占⽤的数据块
    -s 显示指定⽂件或⽬录占⽤的数据块
    -b 以字节为单位显示磁盘占⽤情况
    -l 计算所有⽂件⼤⼩,对硬链接⽂件计算多次

    <9>查看或配置⽹卡信息:ifconfig
    如果,我们只是敲:ifconfig,它会显示所有⽹卡的信息:

    <10>测试远程主机连通性:ping

    Linux命令-⽤户、权限管理
    ⽤户是Unix/Linux系统⼯作中重要的⼀环,⽤户管理包括⽤户与组账号的管理。
    在Unix/Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有⼀个账号,
    并且对于不同的系统资源拥有不同的使⽤权限。
    Unix/Linux系统中的root账号通常⽤于系统的维护和管理,它对Unix/Linux操作系统的所有
    部分具有不受限制的访问权限。
    在Unix/Linux安装的过程中,系统会⾃动创建许多⽤户账号,⽽这些默认的⽤户就称为“标
    准⽤户”。
    在⼤多数版本的Unix/Linux中,都不推荐直接使⽤root账号登录系统。
    <1>查看当前⽤户:whoami
    whoami该命令⽤户查看当前系统当前账号的⽤户名。可通过cat /etc/passwd查看系统⽤
    户信息。
    由于系统管理员通常需要使⽤多种身份登录系统,例如通常使⽤普通⽤户登录系统,然后
    再以su命令切换到root身份对传统进⾏管理。这时候就可以使⽤whoami来查看当前⽤户的
    身份

    <2>查看登录⽤户:who
    who命令⽤于查看当前所有登录系统的⽤户信息。
    常⽤选项:
    选项 含义
    -m或am I 只显示运⾏who命令的⽤户名、登录终端和登录时间
    -q或--count 只显示⽤户的登录账号和登录⽤户的数量
    -u或--heading 显示列标题

    <3>退出登录账户: exit
    如果是图形界⾯,退出当前终端;
    如果是使⽤ssh远程登录,退出登陆账户;
    如果是切换后的登陆⽤户,退出则返回上⼀个登陆账号。
    <4>添加⽤户账号:useradd
    在Unix/Linux中添加⽤户账号可以使⽤adduser或useradd命令,因为adduser命令是指向
    useradd命令的⼀个链接,因此,这两个命令的使⽤格式完全⼀样。
    useradd命令的使⽤格式如下: useradd [参数] 新建⽤户账号


    含义
    -d
    指定⽤户登录系统时的主⽬录,如果不使⽤该参数,系统⾃动在/home⽬录
    下建⽴与⽤户名同名⽬录为主⽬录
    -
    m
    ⾃动建⽴⽬录
    -g 指定组名称
    相关说明:
    Linux每个⽤户都要有⼀个主⽬录,主⽬录就是第⼀次登陆系统,⽤户的默认当前⽬
    录(/home/⽤户);
    每⼀个⽤户必须有⼀个主⽬录,所以⽤useradd创建⽤户的时候,⼀定给⽤户指定⼀
    个主⽬录;
    ⽤户的主⽬录⼀般要放到根⽬录的home⽬录下,⽤户的主⽬录和⽤户名是相同的;
    如果创建⽤户的时候,不指定组名,那么系统会⾃动创建⼀个和⽤户名⼀样的组名。
    命令 含义
    useradd -d
    /home/abc abc -
    m
    创建abc⽤户,如果/home/abc⽬录不存在,就⾃动创建这个
    ⽬录,同时⽤户属于abc组
    课程介绍
    69 Linux命令-⽤户、权限管理
    useradd -d
    /home/a a -g test
    -m
    创建⼀个⽤户名字叫a,主⽬录在/home/a,如果主⽬录不存
    在,就⾃动创建主⽬录,同时⽤户属于test组
    cat /etc/passwd 查看系统当前⽤户名

    <5>设置⽤户密码:passwd
    在Unix/Linux中,超级⽤户可以使⽤passwd命令为普通⽤户设置或修改⽤户⼝令。⽤户也
    可以直接使⽤该命令来修改⾃⼰的⼝令,⽽⽆需在命令后⾯使⽤⽤户名。

    <6>删除⽤户:userdel
    命令 含义
    userdel abc(⽤户名) 删除abc⽤户,但不会⾃动删除⽤户的主⽬录
    userdel -r abc(⽤户名) 删除⽤户,同时删除⽤户的主⽬录

    <7>切换⽤户:su
    可以通过su命令切换⽤户,su后⾯可以加“-”。su和su –命令不同之处在于,su -切换到对
    应的⽤户时会将当前的⼯作⽬录⾃动转换到切换后的⽤户主⽬录:

    注意:如果是ubuntu平台,需要在命令前加“sudo”,如果在某些操作需要管理员才能操
    作,ubuntu⽆需切换到root⽤户即可操作,只需加“sudo”即可。sudo是ubuntu平台下允许
    系统管理员让普通⽤户执⾏⼀些或者全部的root命令的⼀个⼯具,减少了root ⽤户的登陆
    和管理时间,提⾼了安全性。
    命令 含义
    su 切换到root⽤户
    课程介绍
    71 Linux命令-⽤户、权限管理
    su root 切换到root⽤户
    su - 切换到root⽤户,同时切换⽬录到/root
    su - root 切换到root⽤户,同时切换⽬录到/root
    su 普通⽤户 切换到普通⽤户
    su - 普通⽤户 切换到普通⽤户,同时切换普通⽤户所在的⽬录
    Ubuntu下切换到root的简单命令:

    <8>查看有哪些⽤户组
    ⽅法⼀:
    cat /etc/group

    <9>添加、删除组账号:groupadd、groupdel
    groupadd 新建组账号 groupdel 组账号 cat /etc/group 查看⽤户组

    <10>修改⽤户所在组:usermod
    使⽤⽅法:usermod -g ⽤户组 ⽤户名

    <12>为创建的普通⽤户添加sudo权限
    新创建的⽤户,默认不能sudo,需要进⾏⼀下操作
    sudo usermod -a -G adm ⽤户名
    sudo usermod -a -G sudo ⽤户名
    <13>usermod -g 与 -G的区别
    -g ⽤来制定这个⽤户默认的⽤户组
    -G ⼀般配合'-a'来完成向其它组添加

    <14>修改⽂件权限:chmod
    chmod 修改⽂件权限有两种使⽤格式:字⺟法与数字法。
    字⺟法:chmod u/g/o/a +/-/= rwx ⽂件
    课程介绍
    75 Linux命令-⽤户、权限管理
    [ u/g/o/a ] 含义
    u user 表示该⽂件的所有者
    g group 表示与该⽂件的所有者属于同⼀组( group )者,即⽤户组
    o other 表示其他以外的⼈
    a all 表示这三者皆是
    [ +-= ] 含义
    + 增加权限
    - 撤销权限
    = 设定权限
    rwx 含义
    r
    read 表示可读取,对于⼀个⽬录,如果没有r权限,那么就意味着不能通过
    ls查看这个⽬录的内容。
    w
    write 表示可写⼊,对于⼀个⽬录,如果没有w权限,那么就意味着不能在
    ⽬录下创建新的⽂件。
    x
    excute 表示可执⾏,对于⼀个⽬录,如果没有x权限,那么就意味着不能通
    过cd进⼊这个⽬录。

    数字法:“rwx” 这些权限也可以⽤数字来代替
    字⺟ 说明
    r 读取权限,数字代号为 "4"
    w 写⼊权限,数字代号为 "2"
    课程介绍
    78 Linux命令-⽤户、权限管理
    x 执⾏权限,数字代号为 "1"
    - 不具任何权限,数字代号为 "0"
    如执⾏:chmod u=rwx,g=rx,o=r filename 就等同于:chmod u=7,g=5,o=4 filename
    chmod 751 file:
    ⽂件所有者:读、写、执⾏权限
    同组⽤户:读、执⾏的权限
    其它⽤户:执⾏的权限

    注意:如果想递归所有⽬录加上相同权限,需要加上参数“ -R ”。 如:chmod 777 test/ -R
    递归 test ⽬录下所有⽂件加 777 权限
    <15>修改⽂件所有者:chown

    <16>修改⽂件所属组:chgrp

    Linux基础完结篇,2019-2-28完成博客的撰写。还有就是编辑器,是一种文件内容修改的编辑器,不用鼠标,就可以在Linux上修改服务器上的文件内容。vim

       vi                                            ----游戏的基础一篇

  • 相关阅读:
    使用git bash提交代码到github托管
    电子邮件的正则表达式
    PHP正则表达式及实例
    php中session_start()函数的作用
    mysql 中文乱码
    mysql 安装以及配置
    高质量JAVA代码编写规范
    DAO设计模式
    深入浅出UML类图
    分析业务模型-类图(Class Diagram)
  • 原文地址:https://www.cnblogs.com/Py-king/p/10436861.html
Copyright © 2020-2023  润新知