zoukankan      html  css  js  c++  java
  • linux相关总结

    一.在linux的世界里,有问题问man,相当于java的api。其用法是man 你不会的命令
    二.Linux系统有7个运行级别(runlevel):常用的是3和5
      运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
      运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
      运行级别2:多用户状态(没有NFS),没有网络服务
      运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
      运行级别4:系统未使用,保留
      运行级别5:X11表示控制台,进入图形界面
      运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
    三.启动过程
      1.内核引导
        接通电源BIOS自检,按照BIOS中设置的启动设备(通常是硬盘)来启动,操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。  
      2.运行init
        init 进程是系统所有进程的起点,你可以把它比拟成系统所有进程的老祖宗,没有这个进程, 系统中任何进程都不会启动。init 程序首先是需要读取配置文件 /etc/inittab
      3.RunLevel
        许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。
        init进程的一大任务,就是去运行这些开机启动的程序。
        但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。
        Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。
        也就是说,启动时根据"运行级别",确定要运行哪些程序。 
        Linux系统有7个运行级别(runlevel):
        运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
        运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
        运行级别2:多用户状态(没有NFS)
        运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
        运行级别4:系统未使用,保留
        运行级别5:X11控制台,登陆后进入图形GUI模式
        运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
      4.系统初始化
        在init的配置文件中有这么一行: si::sysinit:/etc/rc.d/rc.sysinit 它调用执 了/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要是完成一些系统初始化的工  作,rc.sysinit是每一个运行级别都要首先运行的重要脚本,它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务  
      5.建立终端
        rc执行完毕后,返回init。这时基本系统环境已经设置好了,各种守护进程也已经启动了。
        init接下来会打开6个终端,以便用户登录系统。在inittab中的以下6行就是定义了6个终端:
      
      6.用户登录系统
        一般来说,用户的登录方式有三种:
        (1)命令行登录
        (2)ssh登录
        (3)图形界面登录
      
    四.VIM编辑器
      1.增减行号的命令:增加行号:set nu,去掉行号:set nonu
      2.三种模式
        ①一般模式:以 vi 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整    行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。
        删除光标当前行,dd
        删除光标(含)后多少行,d数字d
        撤销上一步,u
        复制光标当前一行,yy
        复制一段(从第几行到第几行),y数字y
        箭头移动到目的行粘贴,p
        删除一个字母
        x,相当于del
        X,相当于Backspace
        删除一个词,dw
        复制一个词,yw
        移动到行头,shift+^
        移动到行尾,shift+$
        移动到页头,数字1+shift+g
        移动到页尾,shift+g
        移动到目标行,数字N+shift+g
      ②编辑模式:在一般模式中可以进行删除、复制、贴上等等的动作,但是却无法编辑文件内容的! 要等到你按下『i, I, o, O, a, A, r, R』等任何一个字母之后才会进入编辑模式。  注意了!通常在 Linux 中,按下这些按键时,在画面的左下方会出现『INSERT 或 REPLACE 』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下  『Esc』这个按键即可退出编辑模式。
        i当前光标前
        a当前光标后
        o当前光标的下一行
      ③指令模式:在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行。在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号,等的动作则是在此模式中达成的!
      :q    //quit退出vi编辑器
      :w   //write保存修改的内容
      :wq  //保存并退出
      :q!  //强制退出,当对文本内容作了修改而不想要保存时
      :w!  //强制保存,当没有文本的写权限时
      w
      q
      ! 感叹号强制执行
      替换
      :%s/old字符/new字符/g
      /
      查找,/被查找词,n是查找下一个,shift+n是往上查找
      ?
      查找,?被查找词,n是查找上一个,shift+n是往下查找
    五Linux用户与用户组
    1.用户
    新增用户:useradd 用户名
    对用户设置密码:passwd 新建用户名,之后根据提示输入密码
    用户存在否:id 用户名
    查看当前用户:whoami/who am i
    切换用户:su - username名字 切换用户
    删除用户:userdel
    修改用户:usermod(讲完后面的用户组知识点后再回来讲解)
    usermod -g 用户组 用户名
    2.用户组:每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。
    新增组:groupadd 组名
    删除组:groupdel 组名
    修改组:groupmod 组名
    groupmod -n 新组名 老组名
    六.文件与目录结构
    1.目录结构
    树状目录结构
    /bin:是Binary的缩写, 这个目录存放着最经常使用的命令
    /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里
    /dev:Device(设备)的缩写,该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
    /etc:所有的系统管理所需要的配置文件和子目录。
    /home:存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
    /lib:系统开机所需要最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
    /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
    /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
    /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
    /opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
    /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    /root:该目录为系统管理员,也称作超级权限者的用户主目录。
    /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
    /selinux:这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙
    /srv:service缩写,该目录存放一些服务启动之后需要提取的数据。
    /sys: 这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
    /tmp:这个目录是用来存放一些临时文件的。
    /usr: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。
    /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
     
    cd~回到当前用户的家目录
    cd-回到上一次所在的目录
     
    2.文件属性
    Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组
    从左到右的10个字符表示:
    以三个为一组,且均为『rwx』 的三个参数的组合。
    其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,
    如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
    第0位确定文件类型,
    第1-3位确定属主(该文件的所有者)拥有该文件的权限。---User
    第4-6位确定属组(所有者的同组用户)拥有该文件的权限,---Group
    第7-9位确定其他用户拥有该文件的权限 ---Other
    作用到文件:
    [ r ]代表可读(read): 可以读取,查看
    [ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件.
    [ x ]代表可执行(execute):可以被系统执行
    作用到目录:
    [ r ]代表可读(read): 可以读取,ls查看目录内容
    [ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
    [ x ]代表可执行(execute):可以进入该目录
    3.文件权限类
    chmod
    改变文件或者目录权限
    文件: r-查看;w-新增修改;x-执行文件
    目录: r-列出目录内容;w-在目录中创建和删除;x-进入目录
    删除一个文件的前提条件:该文件所在的目录有写权限,你才能删除该文件。
      
  • 相关阅读:
    vue实现 toggle显示隐藏效果
    html+css奇淫技巧 3 教你如何伪类控制字体间距左右排版
    js 数组,字符串,json互相转换
    forEach 与for in
    js/jq 选项卡开发js代码
    html奇淫技巧 2 教你如何进行图文环绕布局 原创
    2019-05-07 开始记笔记vue
    vue src 拼接
    js 反选 全选看出你处于哪个阶段!
    JS获取浏览器窗口大小 获取屏幕,浏览器,网页高度宽度(转载)
  • 原文地址:https://www.cnblogs.com/sjs355/p/7645445.html
Copyright © 2011-2022 走看看