zoukankan      html  css  js  c++  java
  • linux笔记

    系统启动后需要输入用户名和密码
    用户名:root
    密码:之前安装过程设置的密码

    1、切换到/etc/sysconfig/network-script目录
    cd /etc/sysconfig/network-script
    2、将ifcfg-eth0被分成ifcfg-eth0.
    cp ifcfg-eth0 ifcfg-eth0.bak
    3、修改配置文件(ifcfg-eth0)
    修改内容:ONBOOT=yes
    添加内容:DNS1=8.8.8.8
    4、操作网卡(启动/停止/重启)
    启动:/etc/init.d/network start
    停止:/etc/init.d/network stop
    重启:/etc/init.d/network restart
    5、使用工具连接虚拟机
    推荐:putty,轻量,免费,方便(无需安装)
    6、开关机命令
    重启:shutdown -r now 或 reboot
    关机:shutdown -h now 或 poweroff 或 halt
    7、最常用命令及操作
    ifconfig:查看或配置网卡信息(包括IP)
    cd: change directory,切换工作目录
    ls: list,列表显示当前目录的内容
    pwd: print work directory,打印工作目录

    tab:自动补全(命令/参数)
    clear:清空屏幕(Ctrl + L)
    history:显示历史命令
    上/下:翻看历史命令
    ping ip/域名:网络监测
    Ctrl + c:结束进程
    8、VI基本操作
    打开文件:VI 文件名
    开始编辑:a或者i
    退出编辑:Esc
    保存退出:shift + zz

    /: 最高层的目录,是所有目录的直接或间接父级目录,也叫根目录
    /boot:启动目录,启动信息

    /bin:程序的启动文件,程序的命令

    /sbin:这是超级用户存放一些应用程序的地方

    /dev:设备目录

    /etc:Editable Text Configuration,可编辑文本配置,放一些配置信息

    /home:家目录,其实是指用户的目录

    /root:最大的用户有一个单独的目录

    /lib:存放一些库

    /lib64:给64位操作系统提供的,存放一些库

    /lost+found:这个目录平时是空的,系统非正常关机而留下“无家可归”的文件就在这里

    /meida:自动识别一些设备的时候,会挂在到这个地方,比如:CD/DVD

    /mnt:安装临时文件系统的安装点,让用户临时挂载其他的文件系统

    /proc:虚拟文件系统目录,是系统内存的映射。用来获取系统信息

    /tmp:用于存放各种临时文件,是公用的临时文件存储点

    /usr:Unix System Resource,Unix系统资源,这个目录很重要,用来放一些应用程序,
    之前是user的缩写,曾经的home目录,现在已经被/home取代了

    /opt:这里主要存放一些可选的程序,比如安装一些软件的最新Beta版本,用完直接删除
    软件安装在此目录,一个软件只有一个目录,可以一次性完全删除,而/user/local则不能

    /sys:是sysfs文件系统的挂载点,sysfs是一种虚拟的基于内存的文件系统,
    它的做作用除了与proc相同的具有查看和设定内核参数功能之外,统一设备模型

    /selinux:Security-Enhanced Linux的缩写,用来保证系统的安全
    getenforce:获取状态
    setenforce:设置状态
    永久关闭:
    打开:/etc/selinux/config
    修改:SELINUX=disabled

    /srv:系统启动服务时候可以访问的数据库目录

    /var:用于存放运行时需要改变数据的文件,比如各种服务的日志文件


    必备命令
    cd: change directory,切换工作目录
    -: 表示刚才的工作目录
    ~: 表示用户的家目录
    .: 表示当前目录
    ..: 表示上级目录
    /: 表示根目录
    pwd: print work directory,打印工作目录
    ls: list,列出指定目录的内容
    -a 显示所有文件,包括隐藏文件(以'.'开头的文件)
    -l 列表显示文件,会显示文件的所有信息,ls -1<==> ll
    -h 更加人性化的显示文件(文件大小会出现K/M/G等)

    ls -l 结果说明,按列描述如下:
    类型及权限 | 引用数 | 用户 | 组 | 大小 | 月 | 日 | 年/时间 | 名称
    文件类型说明:
    -:普通文件
    d:目录文件
    b:块设备
    c:字符设备
    l:链接
    s:套接字
    p:管道
    ping:一般用于检测网络是否联通,后可跟IP地址或者域名
    ifconfig:现在只需要知道ifconfig可以查看网卡信息就可以了

    终端编辑工具:vi/vim emacs等

    基本介绍:vim是vi的扩展,被誉为终端编辑器之神
    软件安装:yum install -y vim
    工作模式:
    1、正常模式
    1、使用格式说明 vim filename
    若文件不存在,则直接打开
    若文件不存在,则会新建,若不修改则不会创建空文件
    2、主要用来浏览或修改文本内容
    3、使用vim打开文件的默认模式
    4、在任意模式下按Esc按键即可进入该模式
    2、编辑模式
    主要用来向文本添加内容,也叫插入模式
    正常模式下输入以下字符都可进入该模式
    i:在光标所在字符前开始输入文字
    I:在行首指第一个非空白字符处开始输入文字
    a:在光标所在字符后开始输入文字
    A:在行首开始输入文字
    o:在光标所在行的下面单独开一新行来输入文字
    O:在光标所在行的上面单独开一新行来输入文字
    s:删除光标所在的字符并进入插入模式
    S:删除光标所在行并进入插入模式
    3、命令模式
    主要用来管理文件或设置vim,如:保存,退出,放弃等,而不是修改文件内容
    在正常模式下,输入‘:’即可进入命令模式,由于操作都是在一行完成,因此也叫单行模式
    保存文件:w
    退出软件:q
    保存退出:x,等价于wq,等价于正常模式下的shift+zz
    强制操作:!
    放弃修改:e!
    4、可视模式
    v:可视块模式
    V:可视化模式

    vim使用技巧:可以大大提高开发效率

    1、打开文件
    vim filename 打开文件,并将光标定位到文件开头
    1、若文件已存在,则直接打开
    2、若文件不存在,则新建文件(不做修改的文件不会创建)
    vim filename +n 打开文件,并将光标定位到文件第n行
    vim filename + 打开文件,并将光标定位到文件末尾
    2、光标定位
    gg:首行
    GG:尾行
    ngg:第n行,等价于命令模式下的:n,然后敲回车
    0:行首
    ^:首个非空字符
    $:行尾
    k:向上
    j:向下
    h:向左
    l:向右
    3、复制粘贴
    yy:复制光标所在行
    dd:剪切光标所在行
    p:粘贴缓冲区的内容
    nyy:复制光标开始的n行
    ndd:剪切光标开始的n行
    4、操作回退
    u:撤销刚才的操作
    Ctrl + r:反撤销
    5、查找替换
    命令模式下操作
    :?查找内容,然后敲回车即可查找相关内容,n向前翻,N向后翻
    :%s/查找内容/替换内容/[g],将查找到的内容替换,g表示全局替换,[]表示可选
    :起始行,结束行s/查找内容/替换内容/[g],替换从起始行到结束行查找到的内容,g功能同上
    6、基本配置
    :set nu 设置行号
    :set nonu 取消行号
    :set tabstop=4 设置tab键为四个空格
    :set fileeccodings=utf-8,gkb 设置字符集
    7、配置文件
    上面第6步在命令模式下的配置是单次的,退出vim后配置就无效了,
    要想一次配置,自动生效可以创建专门的配置文件
    在用户目录下,创建.vimrc文件,这个文件就是vim的配置文件,
    当该用户登录时就会生效,可以将vim相关的配置写入即可
    要想使配置文件生效可以重启系统,也可以使用命令:source ~/.vimrc
    说明:
    文件未保存就关闭vim时,会产生临时文件,下次打开时会提示恢复/删除等相关操作


    文件内容查看

    cat:
    作用:一次性顺序显示文件的所有内容
    格式:cat file
    tac:
    作用:一次性倒叙显示文件的所有内容
    格式:tac file
    head:
    作用:显示文件开头的若干行内容
    格式:head -n file n为要显示的行数
    tail:
    作用:显示文件结尾的若干行内容
    格式:tail -n file n为要显示的行数
    more:
    作用:分页显示其他命令执行的结果
    格式:其他命令 | more, 如: cat file | more
    说明:
    1、当内容显示一屏时停止
    2、空格向下翻页(只能向下)
    3、回车键向下显示一行
    4、q键退出(结束查看)
    less:
    作用:分页显示其他命令执行的结果
    格式:其他命令 | less, 如:cat file | less
    说明:
    与more命令功能相同,多了上下按键上下翻一行
    more和less的前面可以是很多查询搜索等命令,如:ls、find

    文件整体操作

    touch:
    作用:创建普通文件
    格式:touch file1 [file2]
    cp:
    作用:拷贝文件
    格式:cp 源文件 目标文件
    rm:
    作用:删除文件
    格式:rm 文件
    mv:
    作用:移动文件
    格式:mv 源文件 目标文件
    mkdir:
    作用:创建目录文件
    格式:mkdir dir1 [dir]
    rmdir:
    作用:删除空的目录文件
    格式:rmdir dir
    说明:
    1、删除文件时会有提示,若不想提示可以添加参数‘-f’
    2、删除或拷贝目录时需要添加参数‘-r’
    ln:
    作用:创建链接文件
    格式:ln [-s] 源文件 目标文件
    硬链接:不加‘-s’选项时,简答理解为一个文件有多个名字
    1、不占用实际空间
    2、不允许给目录创建
    3、只能跨文件系统
    软链接:添加‘-s’选项时,简单理解为一个文件的内容是另一个文件的路径
    1、类似于Windows的快捷方式
    2、可以对目录创建
    3、可以跨文件系统

    文件搜索定位

    grep:
    作用:general regular expression parser,通用规则表达式分析程序,
    是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
    格式:grep [选项] pattern [文件名]
    选项:
    -i:字母不区分大小写
    -n:显示行号
    说明:
    1、pattern为所要匹配的正则表达式字符串
    2、要用好grep这个工具,其实就是要写好正则表达式
    实例:
    grep ftp /etc/passwd
    在/etc/passwd文件下查找包含‘ftp’字符的行:
    grep 'test' d*
    显示所有以d开头的文件中包含‘test’的行。
    ls/bin | grep '^m'
    通过管道过滤ls /bin输出的内容,只显示以m开头的行。
    grep -i 'hello world' menu.h main.c
    显示在menu.h和main.c文件中匹配'hello world'的行,忽略大小写。
    find:
    作用:最常见和最强大的查找命令,你可以用它找到任何你想找的文件。
    格式:find [目录] [条件] [动作]
    目录:所要搜索的目录及其所有子目录。默认为当前目录。
    条件:所要搜索的文件的特征。
    动作:对搜索结果进行特定的处理。
    选项:
    -name:指定文件名,可以通过*模糊匹配
    -type:指定文件类型(b/c/d/p/l/f)
    -size:指定文件大小,单位可以为K/M/G,+表示大于,-表示小于
    -user:指定用户
    -group:指定组
    -mtime/atime/ctime:指定修改/访问/创建时间,单位为天,+表示几天前,-表示几天内
    -amin/mmin/cmin:功能同上,单位为分钟
    说明:如果你要寻找一个普通文件,使用find会是一个不错的主意。
    由于find在寻找数据的时候相当的耗资源,所以没事情不要使用find
    有更棒的指令可以取代,那就是whereis与which
    whereis:
    作用:只能用于程序名的搜索
    格式:whereis 命令
    实例:whereis grep
    结果: grep: /bin/grep /usr/share/man/man1/grep.1.gz
    名称 二进制文件路径 帮助文档路径
    which:
    作用:在$PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
    也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个
    格式:which 命令
    PATH:
    说明:环境变量,与Windows中(我的电脑>高级系统设置>高级>环境变量>系统变量)的path类似
    打印:echo $PATH
    导出:
    方式1:一次性设置
    export PATH=$PATH:dir1[:dir2]
    方式2:永久性的设置,所有用户有效,需要重启生效或使用source命令
    将方式1的导出操作添加到文件/etc/profile的末尾
    方式3:永久性的设置,只针对一个用户,需要重启生效或使用source命令,优先级高于2
    将方式1的导出操作添加到文件~/.bashrc的末尾

    文件压缩解压

    gzip:
    作用:压缩文件,只能是单个文件,不能是多个,也不能是目录
    格式;gzip file
    说明:执行命令会生成file.gz,删除原来的file
    选项:-d 等价于gunzip
    gunzip:
    作用:解压使用gzip压缩生成的文件
    格式:gunzip file.gz
    说明:解压file.gz文件,生成file,删除原来的file.gz
    bzip2/bunzip2:
    说明:
    1、用法与gzip/gunzip相同,只是多了‘-k’参数,压缩或解压后保留原文件
    2、使用bzip2压缩的文件后缀为bz2,而使用gzip压缩的文件后缀为gz
    tar:
    说明:gzip/gunzip/bzip2/bunzip2命令指适应于单个文件,
    而tar则可以将多个文件或目录进行压缩打包
    选项:
    -c:压缩
    -x:解压
    -z:使用gzip
    -j:使用bzip2
    -f:指定处理文件
    -v:显示(压缩解压过程的)详细信息
    -C:指定解压后存放文件的目录
    实例:
    tar -zcvf 123.tar.gz 1 2 3
    使用gzip将1 2 3压缩成123.tar.gz
    tar -zxvf 123.tar.gz [-C /tmp]
    使用gzip将123.tar.gz解压[至/tmp目录]

    文件权限管理
    chmod:
    作用:修改文件的权限
    说明:ls -l中的第一列就是权限相关信息,下面对其中的11个字符进行说明
    l:文件类型(b/c/d/l/s/p/-)
    2/3/4:文件所有者的读(r)/写(w)/执行(x)权限,-表示不具有该权限
    5/6/7:文件所有者所属的组的读/写/执行权限
    8/9/10:其他用户的读/写/执行权限
    11:.表示启用了selinux,空格表示没有开启selinux
    参数:
    r:可读
    w:可写
    x:可执行,在Linux系统中没有后缀的概念,文件的类型及权限不以后缀区分
    +:添加权限
    -:去掉权限
    =:设置权限
    u:用户
    g:组
    o:其他
    数值表示:
    Linux中的权限以一组数据来表示,所有者/组/其他的权限分别以3位二进制表示,
    然后再将其写成8进制就OK了,如:755 => 111 101 101,
    结果就是:所有者拥有读/写/执行权限,同组拥有读/执行权限,其他拥有读、执行权限
    实例:
    chmod +x file 给文件添加可执行权限
    chmod -w file 去掉文件的可写权限
    chmod u+x file 给文件的所有者添加可执行权限
    chmod g-w file 给文件同组去掉可写权限
    chmod u=rwx,g=rx,o=rx file 所有者读写执行,同组读写,其他读写
    chmod 0755 file 功能同上
    umask:
    作用:查看或设置umask的指,umask用来确定创建文件的默认权限
    格式:umask [value]
    说明:
    1、若后面没有跟指表示查看,后面有指表示设置
    2、创建的普通文件默认没有执行权限
    实例:umask为0222 => 000 010 010
    创建的目录文件权限 rwx r-x r-x
    创建的普通文件权限 rw- r-- r--
    配置:
    所有用户:/etc/profile
    单个用户:~/.profile或者~/.bash_profile
    lsattr:
    作用:修改文件的属性,可以提高系统的稳定性
    格式:chattr [选项] 文件
    选项:i:表示忽略,+表示添加,-表示去掉

    用户及用户组

    whoami:
    作用:查看当前登录的用户
    格式:whoami
    /etc/passwd:
    说明:该文件存放了系统中所有的用户,每一行的每一列如下
    用户名:密码:描述:用户ID/UID:组ID/GID:用户家目录:shell
    useradd:
    作用:添加(创建)用户
    格式:useradd 用户名
    选项:
    -d:指定用户家目录
    -u:指定用户ID,必须大于500(小于500都已被系统占用)
    -s:指定用户执行的shell,若用户已经创建可以使用以下方式禁止登陆
    chsh 用户名 -s /sbin/nologin
    userdel:
    作用:删除指定用户
    格式:userdel 用户名
    说明:彻底删除用户还需要删除‘/home/用户名’目录和‘/var/mail/用户名’目录
    passwd:
    作用:设置用户密码
    格式:passwd [用户名]
    说明:
    1、修改指定用户的密码,若不指定则修改当前登录的用户密码
    2、查看所有用户的密码/etc/shadow
    su:
    作用:切换用户
    格式:su [用户]
    说明:切换到指定用户,若不指定则切换到root用户
    sudo:
    说明:
    1、若只想简单的执行一个超级用户的命令,不想切换用户
    2、格式是在原来命令的前面加上sudo即可
    特殊标识:
    #:超级用户
    $:普通用户
    ~:表示用户家目录
    /etc/group:
    说明:查看系统中所有的组
    groupadd:
    作用:添加用户组
    格式:groupadd 组名
    groupdel:
    作用:删除用户组
    格式:groupdel 组名
    gpasswd:
    作用:向用户组添加或删除用户
    格式:gpasswd [选项] 用户名 组名
    选项:
    -a:将指定的用户加入指定组
    -d:将指定用户从指定组删除
    chgrp:
    作用:设置文件所属的组
    格式:chgrp 组名 文件名
    说明:修改文件所属的组
    chown:
    作用:设置文件的所有者
    格式:chown 用户[:组名] 文件名
    说明:修改文件的所有者[及组名]
    说明:
    1、修改用户及组的时候,可以使用UID或GID
    2、加上-R参数可以递归修改子目录的用户及组

    网络相关设置:

    ping:
    作用:通常用于检测网路设备的连通性
    格式:ping IP/域名
    选项:-c,指定方式测试数据包的次数
    ifconfig:
    作用:查看或设置网卡信息
    实例:
    ifconfig:查看活动网卡信息
    ifconfig eth0 down:关闭网卡,等价于fidown eht0
    ifconfig eth0 up:开启网卡,等价于ifup eht0
    服务:
    /eth/ini.d/network start|stop|restart 开启|关闭|重启 网路服务
    service network start|stop|restart 开启|关闭|重启 网络服务
    网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    HWADDR=00:1C:42:51:74:18DDR=
    TYPE=Ethernet
    UUID=b3de21de-5cc9-472d-ac0d-3e8198988ddd
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
    添加域名服务器(DNS)地址:/etc/resolv.conf
    8.8.8.8
    114.114.114.114
    添加本地域名解析服务:/etc/hosts
    127.0.0.1 www.hello.com

    服务以及进程:

    vmstat:
    结果:
    procs--------memory-------- ---swao--- -----io----- --system-- -----cpu-----
    r b swpd free buff cache si so bi bo in cs us sy id wa st
    说明:
    procs:进程
    r 表示运行队列(就是说多少个进程真的分配到cpu)
    b 表示阻塞的进程数
    memory:内存
    swpd 虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了
    free 空闲的物理内存的大小
    buff 用来存储,目录里面有什么内容,权限等得缓存
    cache 直接用来记忆我们打开的文件,给文件做缓冲
    swap:交换
    si 每秒从磁盘读入虚拟内存的大小
    so 每秒虚拟内存写入磁盘的大小
    io:块设备
    bi 块设备每秒接收的块数量
    bo 块设备每秒发送的块数量
    system:系统
    in 每秒CPU的中断次数,包括时间中断
    cs 每秒上下文切换次数
    cpu;中央处理器
    us 用户CPU时间
    sy 系统CPU时间
    id 空闲CPU时间,一般来说,id + us + sy = 100
    wa 等待IO的CPU时间
    st 虚拟机占用的时间百分比,一般 不用关心
    w:
    作用:what的简写,当前系统在干什么
    结果:
    12:36 up 5:50, 2 users, load average:0.00, 0.01, 0.05
    USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
    root tty1 - 06:46 1:19m 0.07s 0.07s -bash
    root pts/1 10.18.40.69 11:17 0.00s 0.10s 0.00s w
    说明:
    第一行:系统当前时间 开机持续时间,登录用户个数,平均负载(1/5/10分钟)
    其他行:用户|终端|来源|登录时间|空闲时间|使用时间|当前进程时间|正在做
    top:
    使用:
    1、w的详细显示,每3秒刷新一次,
    2、shift+m可以按照所占内存排序
    3、q退出监测
    结果:
    省略
    说明:
    第一行:功能同w
    第二行:任务信息
    第三行:CPU信息
    第四行:内存信息
    第五行:交换分区
    其他行:
    PID:进程号
    USER:用户
    PR:优先级
    NI:NICE
    VIRT:虚拟内存总量
    RES:虚拟内存中,未被交换的物理内存
    SHR:共享内存大小
    S:进程状态
    %CPU:CPU占用百分比
    %MEN:内存占用百分比
    TIME+:CPU使用时间
    COMMAND:进程名/命令
    free:
    说明:查看内存使用
    选项:-h人性化的显示
    ps:
    说明:查看进程
    选项:
    a:显示控制终端的所有进程
    u:显示用户信息
    x:显示没有控制终端的进程
    实例:ps aux
    kill:
    说明:杀死一个进程
    选项:-9,强制结束
    实例:kill -9 PID

  • 相关阅读:
    鳥哥的 Linux 私房菜——第十三章、学习 Shell Scripts(转发)(未完待续)
    鳥哥的 Linux 私房菜——第十六章、例行性工作排程 (crontab) (转发)(未完待续)
    RT-Thread ------ event 事件
    sscanf() ------ 获取字符串中的参数
    燃气热水器的调节
    Adobe Illustrator CC ------ AI脚本插件合集
    你真的理解CSS的linear-gradient?
    IDEA中Grep Console插件的安装及使用
    Windows下删除以.结尾文件夹的方法
    lwip库的发送和接收函数
  • 原文地址:https://www.cnblogs.com/huangcanbin/p/12066355.html
Copyright © 2011-2022 走看看