精华内容
下载资源
问答
  • Linux系统关闭防火墙命令

    万次阅读 2019-01-22 10:04:17
    Linux系统关闭防火墙命令 下面是red hat/CentOs7关闭防火墙的命令! 1:查看防火状态 systemctl status firewalld service iptables status 2:暂时关闭防火墙 systemctl stop firewalld service iptables stop 3:永久...

    Linux系统关闭防火墙命令

    下面是red hat/CentOs7关闭防火墙的命令!

    1:查看防火状态

    systemctl status firewalld

    service iptables status

    2:暂时关闭防火墙

    systemctl stop firewalld

    service iptables stop

    3:永久关闭防火墙

    systemctl disable firewalld

    chkconfig iptables off

    4:重启防火墙

    systemctl enable firewalld
    在这里插入图片描述

    展开全文
  • Linux关闭防火墙命令

    万次阅读 多人点赞 2019-05-27 14:59:55
    一、下面是red hat/CentOs7关闭防火墙的命令! 1:查看防火状态 systemctl status firewalld service iptablesstatus 2:暂时关闭防火墙 systemctl stop firewalld service iptablesstop 3:永久关闭防火墙 ...

    一、下面是red hat/CentOs7关闭防火墙的命令!

    1:查看防火状态

    systemctl status firewalld

    service  iptables status

    2:暂时关闭防火墙

    systemctl stop firewalld

    service  iptables stop

    3:永久关闭防火墙

    systemctl disable firewalld

    chkconfig iptables off

    4:重启防火墙

    systemctl enable firewalld

    service iptables restart  

    5:永久关闭后重启

    //暂时还没有试过

    chkconfig iptables on

     

    二、firewalld

    Centos7默认安装了firewalld,如果没有安装的话,可以使用 yum install firewalld firewalld-config进行安装。

    1.启动防火墙

    systemctl start firewalld 

    2.禁用防火墙

    systemctl stop firewalld

    3.设置开机启动

    systemctl enable firewalld

    4.停止并禁用开机启动

    sytemctl disable firewalld

    5.重启防火墙

     

    firewall-cmd --reload
    

    6.查看状态

    systemctl status firewalld或者 firewall-cmd --state

    7.查看版本

    firewall-cmd --version

    8.查看帮助

    firewall-cmd --help

    9.查看区域信息

    firewall-cmd --get-active-zones

    10.查看指定接口所属区域信息

    firewall-cmd --get-zone-of-interface=eth0

    11.拒绝所有包

    firewall-cmd --panic-on

    12.取消拒绝状态

    firewall-cmd --panic-off

    13.查看是否拒绝

    firewall-cmd --query-panic

    14.将接口添加到区域(默认接口都在public)

    firewall-cmd --zone=public --add-interface=eth0(永久生效再加上 --permanent 然后reload防火墙)

    15.设置默认接口区域

    firewall-cmd --set-default-zone=public(立即生效,无需重启)

    16.更新防火墙规则

    firewall-cmd --reload或firewall-cmd --complete-reload(两者的区别就是第一个无需断开连接,就是firewalld特性之一动态
    添加规则,第二个需要断开连接,类似重启服务)

    17.查看指定区域所有打开的端口

     

    firewall-cmd --zone=public --list-ports

    18.在指定区域打开端口(记得重启防火墙)

     

    firewall-cmd --zone=public --add-port=80/tcp(永久生效再加上 --permanent)
    

    说明:
    –zone 作用域
    –add-port=8080/tcp 添加端口,格式为:端口/通讯协议
    –permanent #永久生效,没有此参数重启后失效

    补充:

    CentOS 7 下使用 Firewall 

    在 CentOS 7 中,引入了一个新的服务,Firewalld,下面一张图,让大家明确的了解 Firewall 与 iptables 之间的关系与区别。

    firewall stack

    安装它,只需

    # yum install firewalld
    

    如果需要图形界面的话,则再安装

    # yum install firewall-config
    

    一、介绍

    防火墙守护 firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config (gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。

    zone

    Firewall 能将不同的网络连接归类到不同的信任级别,Zone 提供了以下几个级别

    • drop: 丢弃所有进入的包,而不给出任何响应
    • block: 拒绝所有外部发起的连接,允许内部发起的连接
    • public: 允许指定的进入连接
    • external: 同上,对伪装的进入连接,一般用于路由转发
    • dmz: 允许受限制的进入连接
    • work: 允许受信任的计算机被限制的进入连接,类似 workgroup
    • home: 同上,类似 homegroup
    • internal: 同上,范围针对所有互联网用户
    • trusted: 信任所有连接

    过滤规则

    • source: 根据源地址过滤
    • interface: 根据网卡过滤
    • service: 根据服务名过滤
    • port: 根据端口过滤
    • icmp-block: icmp 报文过滤,按照 icmp 类型配置
    • masquerade: ip 地址伪装
    • forward-port: 端口转发
    • rule: 自定义规则

    其中,过滤规则的优先级遵循如下顺序

    1. source
    2. interface
    3. firewalld.conf

    二、使用方法

    # systemctl start firewalld         # 启动,
    # systemctl enable firewalld        # 开机启动
    # systemctl stop firewalld          # 关闭
    # systemctl disable firewalld       # 取消开机启动
    

    具体的规则管理,可以使用 firewall-cmd,具体的使用方法可以

    $ firewall-cmd --help
    
    --zone=NAME                         # 指定 zone
    --permanent                         # 永久修改,--reload 后生效
    --timeout=seconds                   # 持续效果,到期后自动移除,用于调试,不能与 --permanent 同时使用
    

    1. 查看规则

    查看运行状态

    $ firewall-cmd --state
    

    查看已被激活的 Zone 信息

    $ firewall-cmd --get-active-zones
    public
      interfaces: eth0 eth1
    

    查看指定接口的 Zone 信息

    $ firewall-cmd --get-zone-of-interface=eth0
    public
    

    查看指定级别的接口

    $ firewall-cmd --zone=public --list-interfaces
    eth0
    

    查看指定级别的所有信息,譬如 public

    $ firewall-cmd --zone=public --list-all
    public (default, active)
      interfaces: eth0
      sources:
      services: dhcpv6-client http ssh
      ports:
      masquerade: no
      forward-ports:
      icmp-blocks:
      rich rules:
    

    查看所有级别被允许的信息

    $ firewall-cmd --get-service
    

    查看重启后所有 Zones 级别中被允许的服务,即永久放行的服务

    $ firewall-cmd --get-service --permanent
    

    2. 管理规则

    # firewall-cmd --panic-on           # 丢弃
    # firewall-cmd --panic-off          # 取消丢弃
    # firewall-cmd --query-panic        # 查看丢弃状态
    # firewall-cmd --reload             # 更新规则,不重启服务
    # firewall-cmd --complete-reload    # 更新规则,重启服务
    

    添加某接口至某信任等级,譬如添加 eth0 至 public,永久修改

    # firewall-cmd --zone=public --add-interface=eth0 --permanent
    

    设置 public 为默认的信任级别

    # firewall-cmd --set-default-zone=public
    

    a. 管理端口

    列出 dmz 级别的被允许的进入端口

    # firewall-cmd --zone=dmz --list-ports
    

    允许 tcp 端口 8080 至 dmz 级别

    # firewall-cmd --zone=dmz --add-port=8080/tcp
    

    允许某范围的 udp 端口至 public 级别,并永久生效

    # firewall-cmd --zone=public --add-port=5060-5059/udp --permanent
    

    b. 网卡接口

    列出 public zone 所有网卡

    # firewall-cmd --zone=public --list-interfaces
    

    将 eth0 添加至 public zone,永久

    # firewall-cmd --zone=public --permanent --add-interface=eth0
    

    eth0 存在与 public zone,将该网卡添加至 work zone,并将之从 public zone 中删除

    # firewall-cmd --zone=work --permanent --change-interface=eth0
    

    删除 public zone 中的 eth0,永久

    # firewall-cmd --zone=public --permanent --remove-interface=eth0
    

    c. 管理服务

    添加 smtp 服务至 work zone

    # firewall-cmd --zone=work --add-service=smtp
    

    移除 work zone 中的 smtp 服务

    # firewall-cmd --zone=work --remove-service=smtp
    

    d. 配置 external zone 中的 ip 地址伪装

    查看

    # firewall-cmd --zone=external --query-masquerade
    

    打开伪装

    # firewall-cmd --zone=external --add-masquerade
    

    关闭伪装

    # firewall-cmd --zone=external --remove-masquerade
    

    e. 配置 public zone 的端口转发

    要打开端口转发,则需要先

    # firewall-cmd --zone=public --add-masquerade
    

    然后转发 tcp 22 端口至 3753

    # firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=3753
    

    转发 22 端口数据至另一个 ip 的相同端口上

    # firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toaddr=192.168.1.100
    

    转发 22 端口数据至另一 ip 的 2055 端口上

    # firewall-cmd --zone=public --add-forward-port=port=22:proto=tcp:toport=2055:toaddr=192.168.1.100
    

    f. 配置 public zone 的 icmp

    查看所有支持的 icmp 类型

    # firewall-cmd --get-icmptypes
    destination-unreachable echo-reply echo-request parameter-problem redirect router-advertisement router-solicitation source-quench time-exceeded
    

    列出

    # firewall-cmd --zone=public --list-icmp-blocks
    

    添加 echo-request 屏蔽

    # firewall-cmd --zone=public --add-icmp-block=echo-request [--timeout=seconds]
    

    移除 echo-reply 屏蔽

    # firewall-cmd --zone=public --remove-icmp-block=echo-reply
    

    g. IP 封禁

    # firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='222.222.222.222' reject"
    

    当然,我们仍然可以通过 ipset 来封禁 ip

    封禁 ip

    # firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:ip
    # firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=222.222.222.222
    

    封禁网段

    # firewall-cmd --permanent --zone=public --new-ipset=blacklist --type=hash:net
    # firewall-cmd --permanent --zone=public --ipset=blacklist --add-entry=222.222.222.0/24
    

    导入 ipset 的 blacklist 规则

    # firewall-cmd --permanent --zone=public --new-ipset-from-file=/path/blacklist.xml
    

    如果已经存 blacklist,则需要先删除

    # firewall-cmd --get-ipsets
    blacklist
    # firewall-cmd --permanent --zone=public --delete-ipset=blacklist
    

    然后封禁 blacklist

    # firewall-cmd --permanent --zone=public --add-rich-rule='rule source ipset=blacklist drop'
    

    重新载入以生效

    # firewall-cmd --reload
    

    查看 blacklist

    # firewall-cmd --ipset=blacklist --get-entries
    

    以上都是一些常用方法,更多高级方法,请参考:

    展开全文
  • Linux系统编程常用命令总结

    万次阅读 多人点赞 2019-08-14 23:08:29
    一、Linux常用命令 1、常用工具 2、目录和文件命令 3、安装和卸载软件命令 4、压缩包管理 5、文件属性、用户用户组及查找与检索命令 6、网络管理命令 7、其他命令 二、Linux vi/vim常用命令 三、Linux下...

    目录

    一、Linux常用命令

    1、常用工具

    2、目录和文件命令

    3、安装和卸载软件命令

    4、压缩包管理

    5、文件属性、用户用户组及查找与检索命令

    6、网络管理命令

    7、其他命令

    二、Linux vi/vim常用命令

    三、Linux下软件源更新失败问题解决


    一、Linux常用命令

    1、常用工具

    (1)XshellXShell是一个模块化模拟器,因为它提供了许多下拉选项卡。然后,用户可以单击这些选项卡以创建完全独立的窗口,它旨在允许计算机充当终端。

    (2)WinSCP :WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件。

    (3)SecureCRTSecureCRT是一个出色的终端管理器和安全验证器,可以帮助保护您最敏感的数据。

    (4)Putty:Putty是一个免费的、Windows x86平台下的Telnet、SSH和rlogin客户端。

    (5)Bitvise SSH Client:Bitvise SSH是一款支持SSH和SFTP的Windows客户端。由Bitvise开发和提供专业支持。这款软件工具性能突出,易于安装、便于使用。Bitvise SSH客户端拥有功能丰富的图形界面,通过自动重连功能的内置代理进行动态端口转发。

    (6)DameWare SSH:DameWare SSH是最好的免费SSH客户端。该免费工具是一个终端模拟器,可以从一个易用的控制台建立多个telnet和SSH连接。

    2、目录和文件命令

    (1)用户目录:位于/home/user,称之为用户工作目录;

    (2)ls:是英文单词list的简写,其功能为列出目录的内容;

    • ls -a 列出隐藏文件,文件中以开头的均为隐藏文件,如:~/.bashrc
    • ls -l 列出文件的详细信息
    • ls -R 连同子目录中的内容起列出​

    (3)cd:change dir 改变当前所在路径,使用“cd”命令跳转到相应目录。使用时要确认后面的目标目录是否存在。比如:cd file1;cd file1/file2;cd ..(返回上一级目录);cd(返回根目录)

    (4)which:查看指定命令所在的路径,如:which ls 

    (5)pwd查看当前所在路径,当打开终端时,如果需要自己目前在哪一个目录,可以使用pwd命令,它返回一个绝对的路径(从根“/”开始的路径)

    (6)mkdir:mkdir用于创建目录,可以一次创建多个

    (7)rmdir:rmdir用于删除空目录,可以一次删除多个

    (8)touch:将每个文件的访问及修改时间都更新为目前的时间,如果文件不存在则创建一个字节数为0的文件,它可以产生任何文件,可以是一个空的txt文件,也可以是一个空的zip文件等。

    (9)rm:  使用rm命令删除文件。但是rm不能简单地删除目录。使用“rm - rf”删除目录(跟一个参数r),此时,会删除文件夹和文件夹中的文件。rm -rf bazel*   表示删除所有以bazel为前缀的文件。sudo rm -rf protobuf/  表示强制递归删除 protobuf文件夹下的所有文件。

    (10)mv使用mv命令重命名文件或移动文件;例:mv A B(将目录A重命名为目录B),mv hello /mnt/f/linux/(将hello文件移动到linux目录下)

    (11)cp:拷贝文件和拷贝目录;它需要两个参数:第一个是:从哪里copy文件,第二个参数是把文件copy到哪里去例:cp file1 file2,cp file1 /dir,cp file1 ../,cp - r /usr/xu/ /usr/liu/ 表示将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中。

    (12)cat:查看文件内容,输出到终端,如果cat时没有跟文件名,则读标准输入,遇到\n后,输出到标准输出,终端下输入Ctrl -d表示结束;cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的

    • $ cat filename # 显示整个文件内容

    • $ cat > filename # 创建一个文件,并把标准输入输出到filename文件中,以ctrl+d作为输入结束 ; cat<<EOF>filename或cat>filename<<EOF,以EOF作为输入结束,和ctrl+d的作用一样

    • $cat file1 file2 > file #将几个文件合并为一个文件

    (13)more:​查看文本文件的内容,屏幕显示完一屏就等待用户按下任意键再滚动到下屏,如果中途不想继续看下去了,可以按Ctrl+C或q终止显示;more file1;

    (14)less:查看文本文件的内容,屏幕显示完一屏就等待用户按键,用户可以向上或向下查看,如果中途不想继续看下去了,可以按Ctrl+C或q终止显示;

    (15)head:显示指定文件的前面几行。如果没有指定文件,将从标准输入(键盘)上读取。如果没有指定要显示的行数,则默认显示前10行。如果要显示文件的前5行:head -5 file1;

    (16)tail:显示指定文件的最后几行。若没有指定显示的行或字符数,则默认显示末尾10行。如果要显示文件的末5行:tail -5 file1;

    (17)wc:​利用 wc 指令我们可以计算文件的 Byte 数、字数、或是列数,若不指定文件名称、或是所给予的文件名为“-”,则 wc 指令会从标准输入设备读取数据。

    • -c 或–bytes 或–chars 只显示 Bytes 数。
    • -l 或–lines 只显示列数。
    • -w 或–words 只显示字数。

    (18)du:查看某个目录的大小;以M为单位:du -hm /home/asialee/test;以B为单位:du -hb ./*;以K为单位,4K的整倍数:du -hk ./*;

    (19)df:查看磁盘的使用情况;

    • ​​df --block-size=GB
    • df--block-size=MB

    3、安装和卸载软件命令

    (Ubuntu环境下安装和卸载软件命令)

    (1)apt-get:在Linux中,使用apt来安装软件包(需要在root权限下操作,用sudo命令)

    更新源服务器列表:sudo vi /etc/apt/sources.list

    更新完服务器列表后需要更新下源

    • sudo apt-get update 更新源(更新软件库),只检查,不更新(已安装的软件包是否有可用的更新,给出汇总报告)
    • sudo apt-get install package 安装包
    • sudo apt-get remove package 删除包
    • sudo apt-cache search package 搜索软件包
    • sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等
    • sudo apt-get install package --reinstall 重新安装包
    • sudo apt-get -f install 修复安装
    • sudo apt-get remove package --purge 删除包,包括配置文件等
    • sudo apt-get build-dep package 安装相关的编译环境
    • sudo apt-get upgrade 更新已安装的包,更新已安装的软件包,用法:sudo apt upgrade 软件包名。
    • sudo apt-get dist-upgrade 升级系统
    • sudo apt-cache depends package 了解使用该包依赖那些包
    • sudo apt-cache rdepends package 查看该包被哪些包依赖
    • sudo apt-get source package 下载该包的源代码
    • sudo apt-get clean && sudo apt-get autoclean 清理无用的包
    • sudo apt-get check 检查是否有损坏的依赖
    • bazel clean: 清除bazel编译的缓存

    注:sudo:超级用户命令, sudo是在Linux命令行广泛使用的“超级用户”命令。例如,如果想要进入administrator或root权限,就可以使用sudo命令。

    (2)源码安装

    • 解压缩源代码包
    • cd dir
    • ./configure 检测文件是否缺失,创建Makefile,检测编译环境
    • make 编译源码,生成库和可执行程序
    • sudo make install 把库和可执行程序,安装到系统路径下

    4、压缩包管理

    (1)tar:可以解压一些类型的文件,如.tar,.tar.gz,.tar.bz2等。

    • .tar文件:打包,tar cvf dir.tar dir;解压,tar xvf dir.tar dir;
    • .tar.gz文件:打包,tar zcvf dir.tar.gz dir;解压,tar zxvf dir.tar.gz;
    • .tar.bz2文件:打包,tar jcvf dir.tar.bz2 dir;解压,tar jxvf dir.tar.bz2;

    (2)rar

    • rar a -r newdir dir ;打包:把dir压缩成newdir.rar
    • unrar x newdir.rar ;解包:把newdir.rar解压缩到当前目录

    (3)zip

    • zip -r dir.zip dir;用zip压缩文件,比如:“zip -r file.zip file”表示将file目录压缩为file.zip;“zip -r file.zip file1 file2”表示将file1文件和file2文件压缩成为file.zip;
    • unzip dir.zip;用unzip解压zip文件,比如:“unzip file.zip”表示file.zip直接解压到当前目录里面;“unzip file.zip -d dir”表示file.zip解压到dir目录里面;“unzip file\*.zip”表示file1,file2同时解压到当前目录里。

    5、文件属性、用户用户组及查找与检索命令

    (1)whoami:查看当前登录用户;

    (2)chmod:改变文件权限命令

    • chmod [who] [+|-|=] [mode] 文件名:文字设定法

    操作对象who可是下述字母中的任一个或者它们的组合

    • u 表示“用户(user)”,即文件或目录的所有者。
    • g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
    • o 表示“其他(others)用户”。
    • a 表示“所有(all)用户”。它是系统默认值。

    操作符号表示:

    • + 添加某个权限。
    • -取消某个权限。
    • =赋予给定权限并取消其他所有权限(如果有的话)。

    设置mode所表示的权限可用下述字母的任意组合

    • r 可读。
    • w 可写。
    • x 可执行。
    • chmod [mode] 文件名:数字设定法

    数字表示的属性的含义:

    • 0表示没有权限,
    • 1表示可执行权限,
    • 2表示可写权限,
    • 4表示可读权限

    (3)chownchgrp

    (4)find:根据文件名查找

    (5)grep:根据内容检索

    • -c:只输出匹配行的计数。
    • -I:不区分大小写(只适用于单字符)。
    • -h:查询多文件时不显示文件名。
    • -l:查询多文件时只输出包含匹配字符的文件名。
    • -n:显示匹配行及行号。
    • -s:不显示不存在或无匹配文本的错误信息。
    • -v:显示不包含匹配文本的所有行。
    • -R: 连同子目录中所有文件一起查找。

    比如到系统头文件目录下查找所有包含printf的文件:$ grep 'printf' /usr/include -R;

    6、网络管理命令

    (1)ifconfig查看IP地址,网卡信息;

    • sudo ifconfig eth0 down:关闭网卡;
    • sudo ifconfig eth0 up:开启网卡eth0;
    • sudo ifconfig eth0 IP:给eth0配置临时IP;

    (2)ping:ping 主机名/IP地址;使用ping检查与服务器的连接,比如:“ping www.baidu.com"。

    (3)netstat

    (4) nslookup

    (5)finger:查询用户的信息,通常会显示系统中某个用户的用户名、主目录、停滞时间、登录时间、登录shell等信息等。

    (6)远程登陆命令

    ssh 是一个用来登录到远程机器并执行命令的程序(远程连接);

    ssh user@host //登录到的机器地址 (ssh asialee@172.18.17.34)

    ssh -p port user@host // 连接到特定端口的选项 (ssh -p 22 asialee@172.18.17.34)

    退出远程连接:exitCtrl+D

    7、其他命令

    (1)Tap可以自动填充剩余内容。例如,一个文件为hello.c,你只要按”vi he+TAB“就可以自动把后面的"llo.c"自动补足。

    (2)man,help:如果对某个命令不熟悉,不知怎样使用,这个命令可以帮助您了解命令以及如何使用命令,使用man命令,它显示命令的手册页。例如,“man cd”显示了cd命令的用法。同样功能,也可以用“help cd ”来实现。

    (3)clear:清屏,使光标和提示符回到屏幕第一行。快捷键可以使用:Ctrl -l。

    (4)date :显示当前时间;cal :显示年月的日历。

    (5)locate: 类似于Windows中的搜索命令一样。当你不知道保存文件的位置或文件的实际名称时,此命令非常有用。例如,你想搜索一个含有“hello”的文件,它会给出一个Linux系统中所有包含“hello”的文件的列表。

    (6)free -m:查看空闲内存。

    (7)uname -a:查看内核版本信息。

    (8)nano,vi:编辑命令,nano, vi,都是已经在Linux命令行中安装的文本编辑器。nano是一个很好的文本编辑器,用颜色表示关键字,可以兼容大多数语言,如“nano check.txt”可以创建一个check.tx文件;vi比nano更简单,也可以用来创建新文件或修改文件。

    (9)Ctrl+Z强制退出。

    (10)sudo halt,或者 sudo reboot,重启系统 。

    二、Linux vi/vim常用命令

    vi/vim 基本共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)

    vi/vim 常用按键说明

    1、一般模式主要有光标移动、搜索替换和删除复制粘贴等

    (1)移动光标的方法

    移动光标的方法
    h 或 向左箭头键(←)光标向左移动一个字符
    j 或 向下箭头键(↓)光标向下移动一个字符
    k 或 向上箭头键(↑)光标向上移动一个字符
    l 或 向右箭头键(→)光标向右移动一个字符
    如果你将右手放在键盘上的话,你会发现 hjkl 是排列在一起的,因此可以使用这四个按钮来移动光标。 如果想要进行多次移动的话,例如向下移动 30 行,可以使用 "30j" 或 "30↓" 的组合按键, 亦即加上想要进行的次数(数字)后,按下动作即可!
    [Ctrl] + [f]屏幕『向下』移动一页,相当于 [Page Down]按键 (常用)
    [Ctrl] + [b]屏幕『向上』移动一页,相当于 [Page Up] 按键 (常用)
    +光标移动到非空格符的下一行
    -光标移动到非空格符的上一行
    n<space>那个 n 表示『数字』,例如 20 。按下数字后再按空格键,光标会向右移动这一行的 n 个字符。例如 20<space> 则光标会向后面移动 20 个字符距离。
    0 或功能键[Home]这是数字『 0 』:移动到这一行的最前面字符处 (常用)
    $ 或功能键[End]移动到这一行的最后面字符处(常用)
    G移动到这个档案的最后一行(常用)
    nGn 为数字。移动到这个档案的第 n 行。例如 20G 则会移动到这个档案的第 20 行(可配合 :set nu)
    gg移动到这个档案的第一行,相当于 1G 啊! (常用)
    n<Enter>n 为数字。光标向下移动 n 行(常用)

    (2)搜索替换

    搜索替换
    /word向光标之下寻找一个名称为 word 的字符串。例如要在档案内搜寻 vbird 这个字符串,就输入 /vbird 即可! (常用)
    ?word向光标之上寻找一个字符串名称为 word 的字符串。
    n这个 n 是英文按键。代表重复前一个搜寻的动作。举例来说, 如果刚刚我们执行 /vbird 去向下搜寻 vbird 这个字符串,则按下 n 后,会向下继续搜寻下一个名称为 vbird 的字符串。如果是执行 ?vbird 的话,那么按下 n 则会向上继续搜寻名称为 vbird 的字符串!
    N这个 N 是英文按键。与 n 刚好相反,为『反向』进行前一个搜寻动作。 例如 /vbird 后,按下 N 则表示『向上』搜寻 vbird 。
    使用 /word 配合 n 及 N 是非常有帮助的!可以让你重复的找到一些你搜寻的关键词!
    :n1,n2s/word1/word2/gn1 与 n2 为数字。在第 n1 与 n2 行之间寻找 word1 这个字符串,并将该字符串取代为 word2 !举例来说,在 100 到 200 行之间搜寻 vbird 并取代为 VBIRD 则:
    『:100,200s/vbird/VBIRD/g』。(常用)
    :1,$s/word1/word2/g 或 :%s/word1/word2/g从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !(常用)
    :1,$s/word1/word2/gc 或 :%s/word1/word2/gc从第一行到最后一行寻找 word1 字符串,并将该字符串取代为 word2 !且在取代前显示提示字符给用户确认 (confirm) 是否需要取代!(常用)

    (3) 删除、复制和粘贴

    删除、复制与贴上
    x, X在一行字当中,x 为向后删除一个字符 (相当于 [del] 按键), X 为向前删除一个字符(相当于 [backspace] 亦即是退格键) (常用)
    nxn 为数字,连续向后删除 n 个字符。举例来说,我要连续删除 10 个字符, 『10x』。
    dd删除游标所在的那一整行(常用)
    nddn 为数字。删除光标所在的向下 n 行,例如 20dd 则是删除 20 行 (常用)
    yy复制游标所在的那一行(常用)
    nyyn 为数字。复制光标所在的向下 n 行,例如 20yy 则是复制 20 行(常用)
    p, Pp 为将已复制的数据在光标下一行贴上,P 则为贴在游标上一行! 举例来说,我目前光标在第 20 行,且已经复制了 10 行数据。则按下 p 后, 那 10 行数据会贴在原本的 20 行之后,亦即由 21 行开始贴。但如果是按下 P 呢? 那么原本的第 20 行会被推到变成 30 行。 (常用)
    u复原前一个动作。(常用)
    [Ctrl]+r重做上一个动作。(常用)
    这个 u 与 [Ctrl]+r 是很常用的指令!一个是复原,另一个则是重做一次~ 利用这两个功能按键,你的编辑,嘿嘿!很快乐的啦!
    .不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了! (常用)

    2、一般模式切换到编辑模式的可用的按钮说明

    进入输入或取代的编辑模式
    i, I进入输入模式(Insert mode):
    i 为『从目前光标所在处输入』, I 为『在目前所在行的第一个非空格符处开始输入』。 (常用)
    a, A进入输入模式(Insert mode):
    a 为『从目前光标所在的下一个字符处开始输入』, A 为『从光标所在行的最后一个字符处开始输入』。(常用)
    o, O进入输入模式(Insert mode):
    这是英文字母 o 的大小写。o 为『在目前光标所在的下一行处输入新的一行』; O 为在目前光标所在处的上一行输入新的一行!(常用)
    r, R进入取代模式(Replace mode):
    r 只会取代光标所在的那一个字符一次;R会一直取代光标所在的文字,直到按下 ESC 为止;(常用)
    上面这些按键中,在 vi 画面的左下角处会出现『--INSERT--』或『--REPLACE--』的字样。 由名称就知道该动作了吧!!特别注意的是,我们上面也提过了,你想要在档案里面输入字符时, 一定要在左下角处看到 INSERT 或 REPLACE 才能输入喔!
    [Esc]退出编辑模式,回到一般模式中(常用)

     3、一般模式切换到指令行模式的可用的按钮说明

    指令行的储存、离开等指令
    :w将编辑的数据写入硬盘档案中(常用)
    :w!若文件属性为『只读』时,强制写入该档案。不过,到底能不能写入, 还是跟你对该档案的档案权限有关啊!
    :q离开 vi (常用)
    :q!若曾修改过档案,又不想储存,使用 ! 为强制离开不储存档案。
    注意一下啊,那个惊叹号 (!) 在 vi 当中,常常具有『强制』的意思~
    :wq储存后离开,若为 :wq! 则为强制储存后离开 (常用)
    :w [filename]将编辑的数据储存成另一个档案(类似另存新档)
    :r [filename]在编辑的数据中,读入另一个档案的数据。亦即将 『filename』 这个档案内容加到游标所在行后面
    :n1,n2 w [filename]将 n1 到 n2 的内容储存成 filename 这个档案。

    4、vim的环境变更

    vim 环境的变更
    :set nu显示行号,设定之后,会在每一行的前缀显示该行的行号
    :set nonu与 set nu 相反,为取消行号!

     5、vim 中批量添加注释

    方法一 :块选择模式

    批量注释:

    Ctrl + v 进入块选择模式,然后移动光标选中你要注释的行,再按 Shift+i 进入行首插入模式输入注释符号如 // 或 #,输入完毕之后,按两下 ESCVim 会自动将你选中的所有行首都加上注释,保存退出完成注释。

    取消注释:

    Ctrl + v 进入块选择模式,选中你要删除的行首的注释符号,注意 // 要选中两个,选好之后按 d 即可删除注释,ESC 保存退出。

    方法二: 替换命令

    批量注释:

    使用下面命令在指定的行首添加注释。使用名命令格式: :起始行号,结束行号s/^/注释符/g(注意冒号)。

    取消注释:

    使用名命令格式: :起始行号,结束行号s/^注释符//g(注意冒号)。

    例子:

    • 在 10 - 20 行添加 // 注释 :10,20s#^#//#g
    • 在 10 - 20 行删除 // 注释 :10,20s#^//##g
    • 在 10 - 20 行添加 # 注释 :10,20s/^/#/g
    • 在 10 - 20 行删除 # 注释 :10,20s/#//g

    三、Linux下软件源更新失败问题解决

    Ubuntu18.04LTS 设置失效,配置软件源,软件源更新失败:无法安全地用该源进行更新 ,错误如下:

    解决方法如下:

    1、下载Ubuntu对应版本的镜像源

    Ubuntu镜像源下载   

    注意:Ubuntu版本要和本地的版本对应。

    2、进入文件所在目录,把下载的 sources.list 文件移动到 /etc/apt/ 目录下覆盖原来的 sources.list 。

    展开全文
  • Linux系统常用基本命令总结

    万次阅读 多人点赞 2018-11-13 22:42:20
    Linux基本命令 Linux的简介 Linux的厂商 Linux的目录结构 基于虚拟机的环境搭建 常用命令与示例 一、文件基本操作命令 1. ls命令 2. pwd命令 3. mkdir命令 4. cd命令 5. touch命令 6. cp命令 7. mv命令...

    目录

    Linux基本命令

    Linux的简介

    Linux的厂商

    Linux的目录结构

    基于虚拟机的环境搭建

    常用命令与示例

    一、文件基本操作命令

    1. ls命令

    2.  pwd命令

    3.  mkdir命令

    4. cd命令

    5. touch命令

    6. cp命令

    7. mv命令

    8.  rmdir命令

    9.  rm命令

    10.  cat命令

    11  more和 less命令

    12.  head命令

    13.  tail命令

    二、用户、组管理命令

    1. groupadd命令

    2. useradd命令

    3. userdel命令

    4. groupdel命令

    5. passwd命令

    6. usermod命令

    7. id命令

    三、 文件属性操作命令

    1. chown命令

    2. chgrp命令

     3. chmod命令

    四、i节点及其相关命令

    (1)ln命令示例一——建立硬连接

    (2)ln命令示例二——建立符号连接

    五、 查找命令

    1. which命令

    2. whereis命令

    3. find命令

    六、 文件内容操作命令

    1. grep命令

    2. wc命令

    3. sort命令

    4. diff 命令

    5. cut 命令

    七、 压缩与打包命令

    1. tar命令

    八、网卡配置命令

    (1)ifconfig命令示例一——显示接口(网卡)配置参数

    (2)ifconfig命令示例二——设置接口(网卡)配置参数

    (3)ifconfig命令示例三——禁用某块网卡

    (4)ifconfig命令示例四——激活某块网卡

    九、rpm命令

    (1)rpm命令示例一——查询系统中安装的软件包

    (2)rpm命令示例二——查询软件包中文件清单

    (3)rpm命令示例三——卸载指定的软件包

    (4)rpm命令示例四——安装软件包

    (5)rpm命令示例五——强制安装软件包

    (6)rpm命令示例五——忽略依赖关系安装软件包

    # rpm  -ivh  --nodeps  php-4.3.9-3.1-i386.rpm

    (7)卸载

    十、 其他安装方式

    yum安装       yum install 软件名字       yum install yum-fastestmirror       yum remove

    源码安装

    十一、 查看进程命令

    1. ps命令

    2. pstree命令

    3. top命令

    4. kill命令


     

    Linux基本命令

    Linux的简介

    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。

     

    Linux的厂商

     

    Linux的目录结构

    基于虚拟机的环境搭建

    vi /etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0 #网卡设备名称
                ONBOOT=yes #启动时是否激活 yes|no
                BOOTPROTO=static #协议类型 dhcp bootp none
                IPADDR=192.168.134.136 #网络IP地址
                NETMASK=255.255.255.0 #网络子网地址
                GATEWAY=                     #网关地址
                BROADCAST=192.168.134.255 #广播地址
                TYPE=Ethernet #网卡类型为以太网

    关闭防火墙

         service iptables stop

         chkconfig iptables off

    常用命令与示例

    说明:

    • Linux 命令及其参数是严格区分大小写

    • Linux文件名严格区分大小写

    一、文件基本操作命令

    1. ls命令

    • ls命令的功能是显示指定目录下的文件目录清单相当于dos下的dir命令,而且其参数更加丰富多样。

    1ls示例一——不带参数

    [root@yxy ~]# ls

    anaconda-ks.cfg  install.log  install.log.syslog

    功能:显示指定目录中的文件清单,如果没有指定任何目录,则默认为当前目录。

    2ls示例二——显示隐含文件

    [root@yxy ~]# ls -a

    .   anaconda-ks.cfg  .bash_logout   .bashrc  install.log         .tcshrc

    ..  .bash_history    .bash_profile  .cshrc   install.log.syslog

    参数-a的功能:显示隐含文件。

    说明:若文件名以“.”开头,则认为是隐含的,进而普通的ls命令不显示以“.”开头的文件;所以要完全显示某目录下的文件清单,必须加上-a参数才行。

    3ls示例三——长格式输出

    [root@yxy ~]# ls -l

    总用量 24

    -rw-------. 1 root root  1116 11月 13 18:15 anaconda-ks.cfg

    -rw-r--r--. 1 root root 12526 11月 13 18:15 install.log

    -rw-r--r--. 1 root root  3482 11月 13 18:14 install.log.syslog

    参数-l 的功能是:以长格式列表输出指定目录中的文件清单

    以上述输出中文件install.log为例

     解释长格式输出的内容如下

    文件权限  连接数  属主    属组    大小   日期     时间      文件名

    -rw-r--r--.    1   root   root   12526  1113 18:15 install.log

    Linux文件有三种典型的权限,即r读权限、w写权限和x执行权限。在长格式输出中在文件类型的后面有9列权限位,实际上这是针对不同用户而设定的,如下所示。

    属主的权限  属组的权限  其他用户的权限

         rwx                 rwx                  r-x

    4ls示例四——递归显示

    [root@yxy ~]# ls -R

    .:

    anaconda-ks.cfg  install.log  install.log.syslog

    参数-R 的功能是:递归显示指定目录下的文件清单,

    即会显示指定目录分支内各子目录中的文件清单。

    2.  pwd命令

    示例:pwd

    [root@yxy ~]# pwd

    /root

    功能:显示当前目录

    3.  mkdir命令

    1mkdir示例一

    [root@yxy ~]# mkdir abc

    功能:在当前目录下创建目录abc

    2mkdir示例二——创建多级目录

    [root@yxy ~]# mkdir -p a/b/c

    [root@yxy ~]# ls -R a

    a:

    b

     

    a/b:

    c

     

    a/b/c:功能:参数-p功能是如果要创建的目录的父目录不存在,则先创建其父目录,再创建该目录; 如果指定的目录存在,则不影响原目录,也不会报错。在本示例中会连续创建a目录、a/b目录、a/b/c目录。

    4. cd命令

    (1)cd示例一——切换工作目录

    [root@yxy ~]# cd /var

    [root@yxy var]# pwd

    /var

    功能:将当前的工作目录切换为/var

    (2)cd示例二——切换到当前用户的主目录

    [root@yxy var]# cd

    [root@yxy ~]# pwd

    /root

    功能:不带参数的cd命令直接将当前的工作目录切换为该用户的主目录。主目录又称为家目录,在RHEL中是在创建用户时,自动在/home下为用户创建一个用其用户名同名的目录,并将该目录的所有权划归给该用户所有。

    注意:字符“~”代表(当前)用户的主目录。                   

    5. touch命令

    1touch示例一——创建空文件

    [root@yxy ~]# touch myfile

    [root@yxy ~]# ls -l myfile

    -rw-r--r--. 1 root root 0 11月 13 23:48 myfile

    功能:如果myfile不存在,则创建一个大小为0字节名为myfile的空文件。

    2touch示例二——改变文件的最后修改时间

    再执行一次touch myfile

    [root@yxy ~]# touch myfile

    [root@yxy ~]# ls -l myfile

    -rw-r--r--. 1 root root 0 11月 13 23:49 myfile

    功能:如果myfile已存在,则将改变myfile的最后修改时间。

    6. cp命令

    1cp示例一——复制文件

    [root@yxy ~]# cp /etc/*   abc

    功能:将/etc/目录下的文件复制到目录abc中。*是通配符,可以匹配多个字符;“?”只能匹配一个字符。

    2cp示例二——复制目录

    [root@yxy ~]# cp  -R   /etc  abc

    功能:增加了参数-,就能将目录/etc下面的所有子目录和文件都复制到目录abc中。

    7. mv命令

    1mv示例一——将文件移动到目录中

    [root@yxy ~]# mv  myfile  mydir1

    功能:如果mydir1存在且是个目录,则将文件myfile移动到目录mydir1中。

    2mv示例二——文件改名

    [root@yxy ~]# mv myfile myfile2

    功能:将文件(或目录)myfile改名myfile2

    8.  rmdir命令

    [root@yxy ~]# rmdir   mydir1

    功能:删除指定的空目录

    9.  rm命令

    1rm示例一——删除文件

    [root@yxy ~]# rm  php.ini

    功能:删除指定的文件 php.ini。

    2rm示例二——删除目录

    [root@yxy ~]# rm  -rf  abc

    功能:参数-r递归的意思,即可以删除非空目录;参数-f强制的意思。

    10.  cat命令

    1cat示例一——显示文件内容

    [root@yxy ~]# cat myfile

    hello,world

    功能:指定文件myfile的内容

    2cat示例二——创建文件

    [root@yxy ~]# cat  >  myfile2

    Welcome to Linux World!

    ctrl+d结束输入

    功能:利用输出重定向符“>”来创建简短的文本文件myfile2。

    11  more less命令

    # more  /etc/httpd/conf/httpd.conf

    功能:分屏显示指定文件httpd.conf的内容,非常适合显示超过一屏的文本文件。每按一下空格键,向后翻一屏;每按一次回车键,向后翻一行。

    说明:less与more功能很相似,只不过less功能更强大,支持PageUp键向前翻屏,及PageDown向后翻屏。

    12.  head命令

    1head示例一——显示文件头10行内容

    # head  /etc/httpd/conf/httpd.conf

    功能:默认显示指定文件的10的内容。

    2head示例二——显示文件头n行内容

    # head -n 19 /etc/httpd/conf/httpd.conf

    功能:参数-n设置显示指定行数,本例会显示文件的头19行的内容。

    13.  tail命令

    1tail示例一——显示文件最后10行内容

    # tail  /etc/httpd/conf/httpd.conf

    功能:默认显示指定文件的末尾10的内容。

     2tail示例二——显示文件最后n行内容

    # tail  -n 12  /etc/httpd/conf/httpd.conf

    功能:参数-n设置显示指定行数;

              本例会显示文件的末尾12行的内容。

    二、用户、组管理命令

    • Linux采用来组织和管理用户

    • 在Linux中每个用户有唯一的用户标识符UID,该UID是一个无符号整数。

    • 同时每个用户也必须至少属于一个组,也有组标识符GID

    • 其中UID与GID独立编号。

     

    1. groupadd命令

    1groupadd示例一——创建组账号

    [root@yxy ~]# groupadd  mygroup1

    功能:创建一个新组mygroup1,其GID号为已存在GID号的下一个顺序编号。

    说明:创建一个组的同时会在/etc/group文件中为该组增加相应的一行,用来记录该组的名称、GID号及成员等信息

    2groupadd示例二——创建组账号并设置其GID

    # groupadd  -g 5000  mygroup2

    功能:创建一个新组mygroup2,并指定其GID号为5000,其中-g用来设置用户的主要组,每个用户都有一个主要组。

    2. useradd命令

    1useradd示例一——创建用户账号

    [root@yxy ~]# useradd  user1

    功能:创建一个用户user1,同时在/etc/passwd文件和/etc/shadow文件增加一行,并自动为用户创建相应的主目录:/home/user1。

    说明:/etc/passwd文件记录了系统中每个用户的用户名、UID号、GID号、主目录、shell等信息

    注意:用户的口令原来也存放在此文件中,现在为了保证安全采用了影子口令文件/etc/shadow来保存每个用户的口令

    2useradd示例二——创建用户账号并设置相应属性值

    # useradd  -u 600  -g mygroup1  -G mygroup2  -d  /home/student1  s1

    功能:创建用户s1,其中参数

    -u指定UID号为600;

    -g指定用户的主要组为mygroup1;

    -G指定用户的附加组为mygroup2,每个用户可以有多个附加组;

    -d 指定用户的主目录为/home/student1。

    3. userdel命令

    1userdel示例一——删除用户

    [root@yxy ~]# userdel  user1

    功能:删除指定的用户user1。

    2userdel示例二——删除用户的同时删除其主目录

    [root@yxy ~]# userdel  -r  user2

    功能:删除指定的用户user2,同时删除其主目录

    4. groupdel命令

    [root@yxy ~]# groupdel mygroup2

    功能:删除指定的组

    注意:当某个组是某现有用户的主要组时,则不能被删除。

     

    5. passwd命令

    1passwd示例一——改变口令

    [root@yxy ~]# passwd

    Changing password for user user1.

    Changing password for user1

    (current) Unix password:

    New Unix password:

    BAD PASSWORD: it is too simplistic/systematic

    New Unix password:

    BAD PASSWORD: is too similar to the old one

    New Unix password:

    Retype new Unix password:

    passwd: all authentication tokens updated successfully.

    功能:普通用户只可以修改自己的口令

    2passwd示例二——禁止用户登录 

    [root@yxy ~]# passwd  -l  user1

    Locking password for user user1.

    passwd: Success

    功能:参数-l 可以给指定的用户user1加锁,即禁止该用户登录。

    3passwd示例三——恢复用户登录

    [root@yxy ~]# passwd  –u  user1

    Unlocking password for user user1.

    passwd: Success.

    功能:参数-u 可以给指定的用户user1解锁,即恢复该用户登录。

    4passwd示例四——删除用户口令

     [root@yxy ~]# passwd  -d  user1

    Removing password for user user1.

    passwd: Success

    功能:参数-d 可以删除指定的用户user1口令,即以user1登录时无需口令。

    6. usermod命令

    # usermod  -u  601  -g 501  s1

    功能:将(已存在的)用户s1的UID号修改为601、主要组修改为501

    7. id命令

    [root@yxy ~]# id  user1

    uid=501(user1) gid=501(user1) groups=501(user1)

    功能:显示用户的UIDGID及所属的组信息

     

    三、 文件属性操作命令

     

    1. chown命令

    1chown示例一——改变文件的属主

    [root@yxy ~]# chown  user1  hello.txt

    功能:将指定文件hello.txt的属主(所有者)改为user1。

    2chown示例二——递归改变文件的属主

    # chown  -R  user1  mydir

    功能:参数-R,表示递归即可以深入到指定目录中的每一层,将所有子目录和文件的属主(所有者)改为指定的用户;本例中会mydir目录中所有子目录和文件的属主设定为user1

    2. chgrp命令

    1chgrp示例一——改变文件的属组

    # chgrp  mygroup1  hello.txt

    功能:将指定文件hello.txt的属组改为mygroup1。

    2chgrp示例二——递归改变文件的属组

    # chgrp  -R  mygroup1  mydir

    功能:参数-R,表示递归,即可以深入到指定目录中的每一层,将所有子目录和文件的属组改为指定的组;本例中会将mydir目录中所有子目录和文件的属组设定为mygroup1。

     3. chmod命令

    1chmod示例一——字母方式

       图中字母u针对属主、g针对属组、o针对其他用户、a针对所有用户;

        =表示赋予(设置)指定权限,要注意它会覆盖原权限,+表示在原有权限的基础上增加指定权限,-表示在原有权限的基础上去掉指定权限;

        rwx三种权限,既可以单独使用也可以组合使用

    # chmod  u+x  host.conf

    功能:为文件host.conf的属主增加执行权限。

    # chmod  g-w,o=x  host.conf

    功能:将文件host.conf的属组去掉写权限,同时将其他用户设置为只有执行权限,而文件属主的权限不变。

    2chmod示例二——数字方式

    chmod的数字使用方式,使用起来也是很方便的,关键是一个数制转换的问题。

    这种方式是先将每个权限位化成二进制数,其中如果某权限位是“-”则用0来表示,否则用1来表示;接着,将这9列权限分为三组(每三位一组),再将每组化成一个八进制数。

    例如,某文件有如下权限rwxrw-r--,则转换为二进制数为111110100,再化为八进制数则为764;反之,当看到八进制数764时也应该很快转化为相应权限。

    # chmod  764  host.conf

    功能:将文件host.conf的权限设置为:

    属主拥有全部权限;

    属组拥有读写权限;

    其他用户拥有只读权限。

     

    四、i节点及其相关命令

    1ln命令示例一——建立硬连接

    [root@yxy ~]# ln  myfile  myfile.hlink

    功能:为文件myfile创建名为myfile.hlink的硬连接。

    [root@yxy ~]# ls  -il

    180590 -rw-rw-r--  2  user1 user1   12 Aug 17 12:14 myfile

    180590 -rw-rw-r--  2  user1 user1   12 Aug 17 12:14 myfile.hlink

    说明:通过ls  il 命令可以看出myfile与myfile.hlink的i节点号(最左面的数)是一样的,即硬连接与原文件共用同一个i节点,请注意两个文件的连接数(位于长格式列表中权限位与属主之间的数)都增加了1变成2了。

    2ln命令示例二——建立符号连接

    [root@yxy ~]# ln  -s  myfile  myfile.slink

    功能:为文件myfile创建名为myfile.slink的符号连接。

    [root@yxy ~]# ls  -li

    180590 -rw-rw-r--    2  user1 user1   12 Aug 17 12:14 myfile

    180590 -rw-rw-r--    2  user1 user1   12 Aug 17 12:14 myfile.hlink

    180606 lrwxrwxrwx  1  user1 user1    6 Aug 21 06:21 myfile.slink -> myfile

    说明:硬链接若一个inode号对应多个文件名时,则称之为硬链接。硬链接具有以下几个特性:文件拥有相同的inode号和数据块;只能对已存在的文件创建硬链接;不能跨越文件系统创建硬链接;不能堆目录创建硬链接;删除一个硬链接文件不影响其他相同inode号的文件。软链接在Linux中,若文件的数据块中存放的内容是另一文件的路径名,则称之为软连接。软链接类似于Windows系统下的快捷方式。软连接有自己的inode号和用户数据块。为此,软链接避免了硬链接的诸多限制,软链接主要具有以下特点:软链接有自己的文件属性及权限等;可以对不存在的文件或目录创建软链接;软链接可以跨越文件系统创建;删除软链接时不会影响被指向的文件;若原文件被删除时,相关软链接文件被称为死链接(当该路路劲的文件重新创建时,死链接可以恢复正常)。

     

    五、 查找命令

    1. which命令

    [root@yxy ~]# which cp

    /bin/cp

    [root@yxy ~]# which updatedb

    /usr/bin/updatedb

    功能:显示命令的绝对路径。

    注意:该命令只能在命令搜索路径指定的目录中去查找命令或程序。

    2. whereis命令

    [root@yxy ~]# whereis ln

    ln: /bin/ln /usr/share/man/man1/ln.1.gz /usr/share/man/man1p/ln.1p.gz

    功能查询指定命令所在目录以及帮助文档所在目录。

    3. find命令

    1find示例一——按文件名查找

    # find  /  -name  "dhcpd*"

    功能:参数-name指明按文件名进行查找,即从/目录开始查找以dhcpd开头的所有文件。

    2find示例二——按文件大小查找

    [root@yxy ~]# find  /etc  -size  8

    功能:从/etc下开始查找大小为8块的文件,此处默认512字节为1块。若认为块大小为1k,则应写为8k。

       其它可以使用的单位有c(字节)、w(双字节)、M(兆字节)和G(吉字节)。

    3find示例三——按文件类型查找

    # find  /var  -type d  -print

    功能:从/var目录下开始查找类型为目录的文件,其中参数-print是显示到屏幕上的意思,经常省略。

    4find示例四——按文件的修改时间查找

    [root@yxy ~]# find  .  -cmin -5

    功能:从当前目录下查找5分钟之内修改过的文件。

       如果把“-5”改为 “+5”,则表示查找5分钟以前修改过的文件。不带“+”或“-”,则认为整5分钟。

      如果把时间单位改为天,则使用参数“-ctime”,请看示例:

    [root@yxy ~]# find  .  -ctime -5

    5find示例五——按文件的权限查找

    [root@yxy ~]#find  mytmp  -perm  755

    功能:查找mytmp目录下的权限恰为755的文件。

    [root@yxy ~]#find  mytmp  -perm  +755

    功能:查找mytmp目录下的满足755中任何一种权限的文件,即符合任何一个指定的权限位即可。

    [root@yxy ~]#find  mytmp  -perm  -755

    功能:查找mytmp目录下的权限至少满足755的文件,即指定的所有权限位必须符合才算满足查询条件。

     

    六、 文件内容操作命令

     

    1. grep命令

    1grep示例一——在指定的文件中查找包含特定的字符串的行

    [root@yxy ~]# grep  "bind"  host.conf

    功能:在文件host.conf中查找包含字符串“bind”行。

    [root@yxy ~]# grep  "network"  /etc/*.conf

    功能:利用通配符可在多个文件中查找包含特定的字符串的行。本例会在/etc下扩展名为.conf文件中查找包含字符串“network”的行。

    2grep示例二——查找不包含指定字符串的行

    # grep  -v  "network"  /etc/nsswitch.conf

    功能:查找/etc/nsswitch.conf文件中包含字符串“network”的行。

    2. wc命令

    1wc示例一——统计指定文件的行数、单词数和字符数

    [user1@server2 ~]# wc  /etc/nsswitch.conf

      63  272  1718  /etc/nsswitch.conf

    功能:统计出文件/etc/nsswitch.conf共有63行、272个单词、1718个字符。

    2wc示例二——参数使用

    # wc  -l  /etc/nsswitch.conf

    63  /etc/nsswitch.conf

    功能:参数-l的功能可统计出指定文件的行数。另外,利用参数-w统计单词,利用-c统计字符数。

    3. sort命令

    1sort示例一——按正序输出

    [root@yxy ~]# sort  mytest

    功能:将指定文件以行为单位按正序输出。

    2sort示例二——按逆序输出

    [root@yxy ~]# sort  -r  mytest

    功能:将指定文件以行为单位按逆序输出。

    4. diff 命令

    [root@yxy ~]# diff  test  mytest

    功能:比较文件test与mytest是否相同,将不同之处输出到屏幕上。

    5. cut 命令

       cut命令是一个文本提取工具,它以为单位,将每行看作一条记录,而字段之间的分隔符可以灵活地定义

    1cut示例一——按特定的分隔符提取指定的字段

    [user1@server2 ~]# cut  -d:  -f1  /etc/passwd

    功能:参数-d用来定义字段之间的分隔符,参数-f指定提取第几个字段;本例为提取/etc/passwd文件中以“:”为分隔符的第1个字段。

    七、 压缩与打包命令

     

    1. tar命令

     tar命令是经典的备份/还原命令,几乎所有最新的软件包都是通过tar发布的。

    1tar命令示例一——打包(备份)

    [user1@server2 ~]# tar  -cvf  myetc.tar  /etc

    功能:  参数-c的功能是打包(创建),

               参数-v是显示处理过程,

               参数-f是用来指定文档名;

    本例的功能是:将目录/etc打包为一个名为myetc.tar的文档。

    2tar命令示例二——打包(备份)并压缩

    # tar  -zcvf  myetc.tar.gz  /etc

    功能:将目录/etc打包并压缩为一个名为myetc.tar.gz的文档。

    说明:其中参数-z是调用gzip命令来压缩,扩展名为gz

    参数-Z是调用compress命令来压缩,扩展名为Z,

    参数-j是调用bzip2命令来压缩,扩展名为bz2

     

    八、网卡配置命令

    1ifconfig命令示例一——显示接口(网卡)配置参数

    [root@server2 ~]# ifconfig

    功能:显示网卡参数的配置情况,包括IP地址子网掩码、广播地址等。

    2ifconfig命令示例二——设置接口(网卡)配置参数

    # ifconfig  eth0  10.22.1.103  netmask  255.255.255.0

    功能:设置网卡eth0的IP地址为10.22.1.103、掩码为255.255.255.0

    说明:eth0是系统中1以太网卡的名称,eth1是系统中2以太网卡的名称,以此类推。lo是环回测试网卡的名称。

    3ifconfig命令示例三——禁用某块网卡

    [root@server2 ~]# ifconfig  eth0  down

    功能:禁用网卡eth0。

    说明:此时再用不带参数的ifconfig命令是不能显示eth0的信息的,需要加上参数-a才可显示被禁用的网卡信息。

    4ifconfig命令示例四——激活某块网卡

    [root@server2 ~]# ifconfig  eth0  up

    功能激活网卡eth0。

    九、rpm命令

    1rpm命令示例一——查询系统中安装的软件包

    [root@yxy ~]# rpm -qa

    功能:查询系统中安装的软件包列表,其中参数-q的功能是“查询”,参数-a的功能是“所有的”。

    2rpm命令示例二——查询软件包中文件清单

    [root@yxy ~]#rpm  -ql  php

    功能:查询已安装的软件包php中的文件列表,其中参数-l的功能是“列出指定软件包中的文件”。

    3rpm命令示例三——卸载指定的软件包

    [root@yxy ~]# rpm  -e  php

    功能:卸载已安装的软件包php,参数-e的功能是“卸载”。

    说明请注意执行上述命令时,采用的身份是不同的,普通用户只能执行查询操作。

    4rpm命令示例四——安装软件包

    # rpm  -ivh  php-4.3.9-3.1-i386.rpm

    功能:安装软件包php,

       参数-i的功能是“安装”,

       参数-v的功能是“显示处理过程”,

       参数-h的功能是显示“#”来表示进度。

    5rpm命令示例五——强制安装软件包

    # rpm  -ivh  --force  php-4.3.9-3.1-i386.rpm

    功能:强制安装软件包php,参数--force表示强制的意思。

    说明:如果要安装的软件的版本比较低或该软件包在系统中已存在,系统会给出提示并拒绝安装,此时可以加上参数—force来进行强制安装。

    6rpm命令示例五——忽略依赖关系安装软件包

    # rpm  -ivh  --nodeps  php-4.3.9-3.1-i386.rpm

    功能:安装软件包php时忽略与其它软件包的依赖关系,参数--nodeps表示忽略依赖关系

    说明:在安装或卸载软件时经常会遇到提示“该软件包与某某软件包存在依赖关系”,只有加上参数--nodeps忽略掉依赖关系才能进行安装或卸载。

    7)卸载


                 首先通过  rpm -q <关键字> 可以查询到rpm包的名字

    然后 调用 rpm -e <包的名字> 删除特定rpm包

    如果遇到依赖,无法删除,使用 rpm -e --nodeps <包的名字> 不检查依赖,直接删除rpm包

     

    十、 其他安装方式

    1. yum安装
             yum install 软件名字
             yum install yum-fastestmirror
             yum remove

    2. 源码安装

    ./configure
                make
                make install
                make clean
    make distclean

    十一、 查看进程命令

    1. ps命令

    1ps命令示例一——不带参数

    [user1@server2 ~]# ps

    功能:查询在当前控制台上运行的进程。

    2ps命令示例二——查看所有进程

    [user1@server2 ~]# ps  -aux

    功能:查询系统中所有运行的进程,包括后台进程,其中参数a是所有进程,参数x包括不占用控制台的进程,参数u显示用户。

    3ps命令示例三——查看所有进程

    [user1@server2 ~]# ps  -ef

    功能:查询系统中所有运行的进程,包括后台进程,而且可以显示出每个进程的父进程号。

    2. pstree命令

    1pstree命令示例一——树状格式显示进程列表

    [user1@server2 ~]# pstree

    功能:以树状格式显示系统的进程列表。

    2pstree命令示例二——带进程号的树状格式显示进程列表

    [user1@server2 ~]# pstree  -p

    功能:以树状格式显示系统的进程列表,并标识出每个进程的进程号。 

    3. top命令

    [user1@server2 ~]# top

    功能:动态地显示系统中的进程。

    4. kill命令

    1kill命令示例一——杀掉指定进程

    [user1@server2 ~]# kill  3029

    功能:kill命令可以杀掉一个进程,当然普通用户只能杀掉自己的进程。

    说明:上述命令中3029是进程号;一般在执行kill命令之前,先用pspstree来查询一下将要被杀掉的进程的进程号。

    2kill命令示例二——强制杀掉指定进程

    [user1@server2 ~]# kill  -9  3029

    功能:强制终止3029号进程的运行,其中参数-9代表强制的意思。

    说明:实际上kill命令是向该进程发送信号,该进程接到信号后决定是否停止运行,有些守护进程必须要收到参数9才终止运行。

     

    展开全文
  • linux 操作系统笔记基础命令

    万次阅读 多人点赞 2021-05-28 13:59:30
    文章目录linux 基础命令cd 命令详解ls 命令详解pwd 命令详解hostname命令详解clear命令详解who、whoami、w 命令which 命令cal 命令详解ldd 命令详解scp 命令详解ssh 命令linux 用户权限useradd 命令详解usermod 命令...
  • Linux系统常见命令

    千次阅读 多人点赞 2019-10-28 13:44:45
    ###Linux基本命令 ...一 .Linux系统命令结构 命令 +空格+条件/参数+空格+对象/目录/文件 例如:rm -f /oldboy 二 .关机或重启命令 shutdown命令 [-r] 重新启动 [-h] 关机 [-c] 取消关机/重启 [-t] ...
  • Linux中top命令参数详解

    万次阅读 多人点赞 2019-07-31 19:28:22
    top命令经常用来监控linux系统状况,是常用的性能分析工具,能够实时显示系统中各个进程的资源占用情况。 top的使用方式 top [-d number] | top [-bnp] 参数解释: -d:number代表秒数,表示top命令显示的页面...
  • 即使现在Linux系统基本都是相对稳定,但有时候驱动程序和应用程序也可能存在一些小问题,这时就需要重新启动Linux系统主机,今天美联科技就来讲解下,关闭或重新启动Linux系统的几个实用命令。 1、关机 Linux系统...
  • Linux命令关闭系统的方法

    千次阅读 2017-10-11 15:48:14
    Linux命令关闭系统的方法 shutdown 命令可以安全地关闭或重启Linux 系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还答应用户指定一个时间参数,可以是一个精确的时间,也可以是从现在...
  • Linux常用命令

    万次阅读 多人点赞 2018-11-08 11:49:23
    一、基本命令 1.1 关机和重启 1.2 帮助命令 二、目录操作命令 2.1 目录切换 cd 2.2 目录查看 ls [-al] 2.3 目录操作【增,删,改,查】 2.3.1创建目录【增】 mkdir 2.3.2删除目录或文件【删】rm 2.3.3目录...
  • 后面觉得一个python进程一直运行,怕是有点浪费资源,决定最后利用linux系统的定时任务来做这件事,以前没有怎么好好用过linux系统,只能一边找资料一边学习,经同事推荐,使用crontab就可以满足我的需求,就学习了...
  • linux 使用bash命令关闭TCP连接

    千次阅读 2021-01-11 09:50:02
    有时候为了测试异常环境,在不断网的情况下,如何使用bash命令关闭TCP的连接呢? 下面谈两种使用bash命令关闭tcp连接的方法: tcpkill命令 先安装dsniff包:sudo apt install dsniff 下载地址:...
  • linux重启和关闭系统命令

    万次阅读 2018-10-04 12:56:56
    重启命令: 1、reboot 2、shutdown -r now 立刻重启(root用户使用) 3、shutdown -r 10 过10分钟自动重启(root用户使用) 4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 关机命令: 1、halt 立刻关机 2、...
  • linux系统文件管理命令

    千次阅读 2018-03-30 17:48:31
    2.shell是一种解释器,是保护系统内核不被篡改的软件,我们现在所使用linux系统中默认启动的shell是bash。3.在shell中命令必须在行提示符之后输入,若行提示符被占用,那么,ctrl+c可以结束占用当前行提示符从而...
  • Linux 查看系统日志命令

    千次阅读 2020-01-11 13:28:19
    Linux 系统中有很多重要的日志文件,这些文件可以保存很多访问 Linux的日志记录,这些日志大多存放在/var/log目录下和/run目录下,但是这些日志中,有些并不能使用cat,vi,more等命令打开,而是需要用到一些特殊的...
  • 3种关闭linux系统端口方法

    万次阅读 2018-07-05 15:33:24
    3种关闭linux系统端口方法 linux系统下怎么关闭一个端口 下面总结三种关闭linux系统端口的方法提供分享 1、通过杀掉进程的方法来关闭端口 每个端口
  • Linux系统抓包命令tcpdump使用实例

    千次阅读 2016-01-27 15:49:02
    linux系统网络抓包用tcpdump,首先当然是看有没有安装了,没有就用yum安装一下。 tcpdump是linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是centos 7。 tcpdump的命令格式 ...
  • linux系列之常用运维命令整理笔录

    万次阅读 多人点赞 2019-10-28 17:33:21
    本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些...
  • Linux系统崩溃的命令

    千次阅读 2019-01-22 13:22:47
    故意让系统崩溃 echo "c" &gt; /proc/sysrq-trigger 其他命令 # 立即重新启动计算机 echo "b" &gt; /proc/sysrq-trigger # 立即关闭计算机 echo "o" &gt; /proc/sysrq...
  • Linux 关闭和重启的命令

    千次阅读 2016-12-14 13:41:27
    Linux 关闭和重启的命令 Edit By mrajian Linux 关闭和重启的命令 概要: Linux 中常用的关机和重启命令有 shutdown、 init、 halt、 reboot、 poweroff 和 telinit,它们都可以达到关机和重新启动的目的,...
  • 用于立即关闭系统,也指定时间关闭系统 #shutdown -h 1 一分钟后关闭系统 #shutdown -h now 立即关闭系统 root用户(根用户)发出关机命令后,用户应该立即停止正在进行的作业,保存必要的数据然后退出...
  • Linuxlinux终端命令关闭pycharm

    千次阅读 2020-08-22 16:46:34
    即之前程序被挂载着有残留,需要强制关闭才能重新使用pycharm。 使用 ps u 查看属于pycharm的pid代码是多少,假如是1234 那么再使用 kill -9 1234 即可杀掉已经挂载的程序,之后就可以重新打开了。 ...
  • LinuxLinux常用命令

    万次阅读 2018-05-29 09:55:03
    Linux系统安装成功后,就可以进入到与Windows类似的图形化界面了。这个界面就是Linux图形化界面X窗口系统的一部分。X窗口系统仅仅是Linux上的一个软件,它并不是Linux自身的一部分。 虽然X窗口系统已经和Linux系统...
  • 以前没怎么接触过linux和weblogic,用的都是tomcat,近期做项目用到了weblogic,使用linux系统部署服务的,废话不多说,进入正题。  1、查看当前系统的java服务:ps -ef|grep java ;查看weblogic服务: ps -ef|grep...
  • Linux系统卸载vmware命令

    千次阅读 2019-07-24 22:42:45
    1、执行 vmware-installer -u vmware-workstation 命令 [root@localhost ~]# vmware-installer -u vmware-workstation 2、弹出关闭vmware窗口,点击【Next】,如下图: 3、是否删除配置,选【yes】或者【no】...
  • 停止虚拟机Linux系统的ping命令

    千次阅读 2019-09-09 19:54:46
    CTRL+c或CTRL+z方式退出 也可以设置选项方式,使得ping命令执行若干次包就终止。ping 192.168.34.44 -c 4,此时ping命令将执行4次
  • Linux系统终端常用指令命令汇总

    万次阅读 多人点赞 2018-07-20 17:37:39
    命令 功能说明 线上查询及帮助命令 man ... 查看命令帮助,命令... 查看Linux内置命令的帮助,比如cd命令。 文件和目录操作命令 ls 全拼list,功能...
  • Linux系统管理命令大全

    千次阅读 2016-04-07 10:38:12
    对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。熟悉了Linux常用的文件处理命令以后,这一讲介绍对系统和用户进行管理的命令。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 410,685
精华内容 164,274
关键字:

关闭linux系统可使用命令

linux 订阅