Linux

By | 2019年9月4日

一.linux操作系统安装及初始化配置(熟悉)。

  1.计算机操作系统简介

    (1)掌握操作系统的定义

   (2)掌握操作系统的内核的定义:

   (3)了解两种操作系统用户界面:图形界面、命令行界面。

  2.了解Linux主要发行版:

    Linux 发行版(也被叫做 GNU/Linux 发行版)通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件
       CentOS , Ubuntu ,  Redhat ,  Fedora  ,openSUSE , Linux ,Mint等等

  3.安装Linux操作系统的准备工作。

    (1)安装VMware Workstation软件,用来方便创建虚拟机。

   (2)先下载Centos 6.8 镜像文件。下载地址:http://man.linuxde.net/download/CentOS_6_8

   (3)打开VMware Workstation,创建虚拟机。安装Centos 对应的镜像文件。

二.linux操作系统目录结构及文件级增删改查操作(重点)。

  1.登录和退出linux。

    (1).关闭:init 0

   (2).掌握什么是Linux终端:右键->在终端打开

   (3).掌握切换虚拟终端的方法: Ctrl+Alt+【1-6】,如想切换到第二号虚拟机按 Ctrl+Alt+F2

                Ctrl+Alt+N : 新建一个命令窗口。

      (4).掌握普通用户登录后系统的提示符:$

   (5).掌握 root 用户登录后系统的提示符:#

   (6).掌握退出命令:exit

  2.Linux命令

     1.命令语法格式: 命令 【选项】【参数】

        Ls  浏览所有的文件 。

        Ls -l 查看所有文件的常用信息 ;  ls – a :显示隐藏文件。 ; ls – all  查看所有文件信息。

             whoaml命令  (我是谁)。

        passwd :新增用户和更改密码。

        who  :列举目前哪些用户在系统上工作。

        useradd : 创建用户名。                   usseradd + 空格+用户名

    2.date:查看日期。  date  ‘月-日-时-分-年’:修改日期。

    3.cal :查看日历。

    4.clear:清除屏幕。          crtl+l 清屏快捷键

    5.hwclock -s 同步到硬件  -w 同步到系统

    6.useradd  名字  :创建用户。   passwd  名字 :创建用户,能设置密码

    7. su :从当前用户切换到另一个指定的用户。               su – 名字 :切换到 名字

    8. man :获取某个Linux命令的使用说明。

    9.使用“命令名 –help” 获取帮助。

    10.cd:用来切换目录。        cd.. :返回上一级目录。           cd ~(漂号) :切换到当前的目录。

                        cd -(减号) :返回上一次目录。

     11.pwd :查看当前在哪个目录下。

     12.cp:拷贝命令。         cp -I :覆盖前询问一下。               cp -r :递归拷贝目录。

     13. mv :移动命令。           mv +文件名 + 新文件名 :更改名字。

     14.mkdir :创建目录。         mkdir -p : 创建树形目录,一连串的目录。

     15.touch :创建文件。        比如 touch /test/{1..9}.txt   创建1.txt,2.txt 到9.txt

     16.rm :删除文件命令。     rm – F:强制删除,不带提示的。

      rm -R :删除目录。   (公司中严禁使用。可用mv 移除命令)

      17. cat 命令:查看文件内容。     head :显示文件的头几行,默认前十行。

                    tail :默认显示后十行。   tail -f :动态查看文件内容变化,一般来看日志文件。

    18. less : 查看命令。能用上下键来翻。             more :查看文件内容命令。只能用‘’回车‘’来翻。

  3.了解文件系统的目录。

       1.使用“/”来表示根目录

    2.使用“.”表示当前目录,使用“..”表示父目录。“.”开头的表示隐藏文件

    3.bin目录:用来存放常用的可执行文件。               sbin目录:用来存放常用的可执行文件。

       家目录(home):用来存放自己的文件或目录。  dev目录:设备文件目录。

       etc目录:配置文件目录。           tmp目录:临时文件目录。

        挂载点(目录): /media或/mmt目录

    4.Tab键 :自动补齐代码。

    5.绝对路径和相对路径:不是“/”开头的就是相对路径,是相对当前的路径来说的。

      绝对路径:必须以一个正斜线(/)开始。

三.linux操作系统用户、权限管理(重点)。

  1.用户权限及其内容。

    (1)创建用户相关的文件。

      <1>.useradd : 创建用户名。     usseradd + 空格+用户名

         增加用户常用选项: -u 指定用户的UID,   - g 指定用户所属的群组,  - d 指定用户的家目录,

                  - c指定用户的备注信息,  – s 指定用户所有的shell

         删除用户:userdel -r 用户名     能删除干净。

         修改用户:usermod -d /home/bables laoliu   修改老刘用户的家目录为/home/bables的命令

              usermod -G baby laoliu  将老刘这个用户添加到baby这个群组中的命令。是覆盖的模式。

                  -aG 是追加的模式。

              usermod -g dog laoliu  将老刘这个用户的gid变更为dog群组中的命令。

              usermod -L 将用户的账号锁住      usermod -U 将用户的账号解锁

          查看信息: tail -l  /etc/passwd

          用户信息格式介绍:root:x:0:0:root:/root:/bin/bash     每一行就是一个用户信息。

         用户名:X 占位符代表密码:U ID(user id):组ID(group id):用户的描述信息(可以随便写):家目录:用户                   的shell,可执行文件(/bin/bash指可以登陆操作系统)

          U ID :500以前的ID都是系统用的。500以后的是普通用户的.

      <2>查看密码。  less  /etc/passwd     u密码: less  /etc/shadow 

      <3>查看组id 。  less  /etc/group      组密码: less  /etc/gshadow

      <4>查看邮箱。  ls /var/spool/mail/     查看用户家目录信息: ls /home/用户名

      <5>查看用户信息。id + 用户名

    (2).添加组。 groupadd group2 添加group2

       删除群组:groupdel group2 

  2.用户权限。

      LL 查看权限

      ls -l 查看信息,以下来介绍各个名称。

       -rw-r–r–    1           root    root    1423     11月 9 20:21    install.log

       权限信息  硬链接数  属主  属组  文件大小  文件创建日期    文件名 

       权限信息分10位:如 drwxr-xr-x  ; -rw-r–r–

           第1位: - 代表普通文件,d 代表目录,b代表设备文件,l 代表软连接,p代表管道文件。

           第2~4位: 属主的权限 (u) ,分三类:读r,写w,执行x,没有就用-代替

           第5~7位:属组的权限 (g),分三类:读r,写w,执行x,没有就用-代替

           第8~10位:其他用户(o) ,分三类:读r,写w,执行x,没有就用-代替

             r 代表4      w 代表 2      x 代表 1

       修改文件权限:比如 chmod  u=rwx 或者 u+rw     u-rw

                 比如  chmod 664 a.txt   和 chmod  u=rw, g=rw,c=x a.txt   结果是一样的。

       执行文件的方法:  sh 文件路径  ; bash 文件路径 ; . 文件路径  ; ./文件路径

  3.修改权限

       chown 属主.属组  参数     

        只改属主:chown 属主  参数                         只改属组:  chown . 属组 参数

      递归修改:chown -R 属主.属组  参数

  4.文件合并。

          >  大于号 :将左边的内容覆盖到右边的文件。

      >> 2个大于号  :将左边的内容追加到右边的文件。

        echo :回显内容

      wc :查看文件有多少行。

      | :管道符,把左边的命令交给右边当作右边的条件。

四.开源软件及linux下软件包管理(重点)。

  1..归档文件和归档技术。

      归档(archiving):将许多文件或目录打包成一个文件。

      tar -c :创建一个新的tar文件。  – t :列出tar文件中目录的内容。 -x :从tar文件中抽取文件。

        -f :指定归档文件名或磁带或软盘设备(一般都要选)      -v :显示打包的文件的详细内容

  2.压缩文件。 将一个大的文件通过一些压缩算法变成一个小文件。

         gzip命令:将文件压缩。以 gz 结尾。  bzip2命令:压缩文件,以 bz2 结尾。

      gunzip命令:将文件解压。     bunzip2命令:解压文件。

  3.利用vi编辑器创建和编辑正文文件。

      <1>.编辑模式 : a 或 i 或 o 进入编辑模式。 ESC退出到命令行模式

      <2>命令行模式:    dd: 删除当前行。      ndd : 删除多行。     u:撤销上一步操作。 ctrl+r :恢复上一步操作。

                 yy : 复制当前行。     nyy :复制多行。  

               p :将已复制的数据粘贴在光标下一行。       P:将已复制的数据粘贴在光标上一行。

                   例如: yy 10000p  复制10000行。 dd p 剪贴操作

               跳到行首:0        跳到行尾:$      跳到文章开头:gg     跳到文章某行; 数字+shift+G

               跳到屏幕开头:H    跳到屏幕中央:M   跳到屏幕底部:L

               ctrl + a :跳到命令的首部                     Ctrl + e :跳到命令的尾部

     <3>扩展模式: ’‘从命令行进入到扩展模式    wq! 强制保存退出  。  set  nu :显示出行号

  4.LINUX系统引导的顺序。 

      BIOS——>MBR——>Boot loader——>kernel—–>init process  

      init 分为七个级别 0-6,。

        0代表关机;1代表单用户;2代表多用户(无网络);3代表多用户;4给开发用的;5是图形页面;6是重启。

        <1>如何进入单用户模式并修改root用户密码?

          在读秒时按任意键,按e选择kernel开头的按e进去,进去后按空格输入1,按回车后再按b运行就OK了。

          开始输入passwd root 修改密码,再重启就好了。

        <2>如何设置把密码进行MD5加密?

          输入grub-  然后输入grub-MD5-crypt回车,输入密码后拿到MD5密码。

          输入 vim  /etc/grub.conf 回车 ,在title上面插入一行 "password –md5  md5密码 " 后esc并保存退出。 重启就可以了。

       <1>Top命令:显示系统中各个进程的资源占用情况,类似于windows的任务管理器。

          僵尸进程:主进程被关闭,有些子进程还占着内存,这个子进程就是僵尸进程(zombie)

          系统进程(sy):内核运行的程序。 用户进程(us):应用程序。 id:剩余的cpu。

          buffer:缓冲区,内存中单独分出来的一块地方,把一堆零散的数据攒起来够一定规模了,才统一执行。                cache:高速缓存,介于内存和CPU自己建的处理。  PID:进程号。

     <2>.free命令:显示内存的使用状态。

          free -m 以兆为单位。      free -h 以G为单位。

     <3>.ps:系统中进程的查看。 

          ps aux :显示所有进程的信息。 

          grep + “内容” :能过滤“ ”内容。  grep -v + “内容”:反向匹配

          kill命令:杀死进程.    kill -9 + pid 或 %工作号:强制杀死进程号                    ctrl + c :终止程序。  

          jobs :查看后台运行的程序。 fg %工作号:后台程序调到前台来运行。

          pkill -9 进程名:会把所有叫做进程名的全杀了。

          一个终端就是一个bash程序。

五.Linux操作系统磁盘管理(了解)。

  1.文件系统和磁盘分区及挂载。

    <1> fdisk -l  /dev/sdb  :查看sdb磁盘的详细信息。

        硬盘最多只能分4个主分区,第四个为扩展分区。其余再建的分区叫逻辑分区用的是扩展分区里面的空间。

        extended:扩展分区。  包含多创建的磁盘分区(逻辑分区)。

        三大存储: 1.块存储:大的硬盘 。 2. 文件存储:文件夹的形式。 3.对象存储:如百度网盘。

    <2>建磁盘流程:

       先查看磁盘,然后创建分区,建完分区后要更新下,命令为:partprobe。然后格式化磁盘,

        命令为:mkfs.ext4 /dev/sdb1 回车;mkfs.ext4 /dev/sdb2 回车;mkfs.ext4 /dev/sdb3 回车;mkfs.ext4 /dev/sdb5 回车 .等等。(sdb4位扩展分区,不能用)

   <3>挂载 mount                     查看 :df

     先创建磁盘 mkdir /sdb2 ,然后mount  /dev/sdb2  /text1/, 再 df查看下。

     umount 卸载

     统计下etc目录多大:du -sh /etc

    <4>写个文件来测试硬盘读写速度:

     dd  if=/dev/zero  of=/sdb2/test  bs=1G count=1   把zero写入到text中,文件大小1G,数量为1

    <5>磁盘占满的情况:

     一个文件对应一个inode编号,磁盘满了分两种情况,一是一个文件5G,空间占满了;二是10000个文件每个文件                    1k,把 iNode编号占满了。

六.Linux操作系统网络基础(重点)。

   1.操作系统分为四大类块:super block (超级块,掌管全局) ; inode block  ;

                       directory block (根目录块); block

   2.软连接和硬链接

     软连接: ln -s /a/source.txt  /b/des.txt   前者是原文件路径,后者是目标文件路径。相当于弄了一个快捷方式。

     特点:   就相当于win中的快捷方式;删除链接文件,源文件无影响;软连接可以跨分区;

               删除源文件,链接文件失效;修改源文件\链接文件,内容都变 ;软连接是指向文件名的。

     硬链接: ln  /a/s.txt   /b/d.txt  

     特点:   删除链接文件,源文件无影响; 硬链接不可以跨分区;

               删除源文件,链接文件无影响;修改源文件\链接文件,内容都变;硬链接执行 inode号。

七.Linux操作系统进程管理(重点)。

   1.IP地址与子网划分。

     IP地址分为网络地址和主机地址两种。

       如172.16.45.10/16    网络地址:172.16.0.0    主机地址:172.16.45.10

    原生IP地址分成5种:A、B、C、D、E类 ,主要是前三类。

       A类:1.0.0.0  126.0.0.0                B类:128.0.0.0  ~ 191.255.0.0      C类:192.0.0.0 ~223.255.255.0

  2.linux的网络管理

       ifconfig :查看ip配置信息    

     临时配置网卡地址: ifconfig eth0 192.168.10.100 netmask 255.255.255.0

              ifconfig eth0 192.168.10.100/24

       手动配置网关: route add default gw 192.168.11.254

          重启网络服务:service network restart     重启后临时修改的就没了!

       永久配置网卡地址:vim  /etc/sysconfig/network-scripts/ifcfg-eth0   回车进入文件中

            ONBOOT=yes       NM_CONTROLLED=no    BOOTPROTO=static    IPADDR=192.168.11.200                    NETMASK=255.255.255.0     GATEWAY=192.168.11.1   DNS1=202.106.0.20     DNS2=8.8.8.8

          先把守护进程关闭:service NetworkManager stop    ,配置完后记得重启服务。

      清空防火墙规则:iptables -F  或者  service iptables stop

        查看NetworkManager服务信息: cnkconfig  –list | grep ‘NetworkManager’

      关闭NetworkManager服务信息: cnkconfig  –level 2345 NetworkManager off

      打开NetworkManager服务信息: cnkconfig  –level 35NetworkManager on 

      查看网关 :route -n      查看DNS: cat  /etc/resolv.conf   配置DNS: vim /etc/resolv.conf

      打开网卡:ifconfig eth0 up  关闭网卡:ifconfig eth0 down

      让网卡加载配置文件:ifup eth0      先关闭才能用这个加载命令,ifdown eth0

      解析顺序:1:/etc/hosts  2:dns

      临时修改主机名:hostname  xxx    永久修改主机名: vim   /etc/sysconfig/network

    <1.>桥接模式,常用的是这种。

    用来检测一个子网内有没有IP地址冲突的问题?

             arping -I eth0 192.168.X.X   如果有冲突会返回两个Mark地址。

    连接网络后。ping一下测试一下。 命令为:  ping -c 1 192.168.X.X   

       <2>NAT模式。(网络地址转换),虚拟机会连到本地的VMnet8.

    snat :原地址转换。比如手机连接路由器来上网,路由器会将手机的地址转换为自己的ip地址,然后去访问网址。

   3.软件包管理。

     RPM:红帽软件包管理。内部是二进制格式,省了编译的过程。

    rpm的安装过程:rpm–>/media/centos_6.8_final/Packages

    安装rpm: rpm -ivh +软件包

    查看全部已安装的软件包  :rpm -qa               查看具体的:   rpm -q +软件包名 

    卸载软件包:rpm -e +软件包(把后缀名rpm去掉)

      再安装软件包:rpm -ivh 软件包名 –force   强制安装。

    忽略依赖性删包: rpm -e 包名  –nodeps

    解决依赖性安装:rpm -ivh 软件包名

    从网站上下载:wget + 网址

    查看软件包安装位置: rpm -ql 软件包名

    查看安装包的详细信息:rpm -qi 软件包名

  4.yum的功能.:解决依赖性关系

     配置本地yum源:vim /etc/yum.repos.d/local.repo

    yum安装过程:yum–>/media/centos_6.8_final–>repodata–>找到需要的所有的软件包–》安装

      自定义yum源:

      安装creatrepo –>mkdir  /test –>cp 软件包 /test–>createrepo /test—>修改/etc/yum.repos.d/local.repos(baseurl=file:///test)

    删除:yum erase 包名

    安装:yum -y install http*  安装所有的http包及其依赖的包

          yum  install  包名 -y

    制作缓存:yum makecache

    设置下载的安装包不被清除: vim /etc/yum.conf  把keepcache改为1,把cachedir改为自己想存的地址。

  5.源码安装流程:

    1.准备:yum groupinstall "开发工具” ; yum   install gcc-* glibc-*  -y

    2.解包:tar xvf python安装包

    3.执行 configure脚本  添加编译参数。   比如:./configure –prefix=/usr/local/python3.5(指定下一步安装的路径)

    4.编译 : make

    5.安装:make install

    安装成功后设置环境变量来用于快捷启动: 

       <1>l临时修改: echo $PATH——》PATH=/usr/local/python3.5/bin/

       <2 >永久修改:vim /etc/profile  在文件末尾加上两行:PATH=/usr/local/python3.5/bin/  ;export  PATH。保存退出

八.网络服务基础(了解)。

  1.ssh服务。

  2.apache服务。

    部署服务的步骤

      1.准备环境:关闭防火墙:service iptables stop(chkconfig iptables off)

            关闭selinux:setenforce(修改文件 vim /etc/sysconfig/selinux  中的SELINUX=disabled)

            配置ip

      2.安装软件包:yum install httpd -y

      3.修改配置配置文件:vim /etc/httpd/conf/httpd.conf   文件里面listen=80 和 docemunts=“/var/www/html”

      4. 重启服务:service httpd restart

            echo ‘test’   >> /var/www/html/index.html

            echo ‘test’   >> /var/www/html/a.txt

      5.测试:  打开浏览器 输入:http://服务端ip:端口/a.txt

  3.samba服务。是一个网络服务器。

    掌握配置samba服务:

      comment=。。。设置共享注译

      path=设置共享目录的物理路径。

      valid users = @组名,用户名 设置允许那些合法组成或用户访问。

      public = yes|no 设置该共享为隐藏共享

      writable = yes|no 设置是否允许客户端写入数据。

      hosts allow = 设置允许访问该共享的合法网段或ip

      samba安全认证掌握两种:share(匿名访问) user:用户名密码

      添加smb用户和设置密码:smbpasswd -a 用户

      Useradd u 

 

发表评论