zoukankan      html  css  js  c++  java
  • Linux(二)—— Linux配置及指令

    Linux配置及指令

    一、linux中常用软件的安装

    yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop iftop iotop unzip telnet sl psmisc nethogs glances bc
    

    二、主机名和网络

    1、修改主机名

     hostnamectl set-hostname py3
    

    img

    2、设置网络

    # 1.进入配置
    vim /etc/hosts    
    # 2.光标移到最后一行
    o
    # 3.输入ip地址和主机名
    10.0.0.100 py3
    # 4.按Esc,冒号:wq,保存并退出
    

    img

    .png)

    3、域名查找命令nslookup

    三、关闭防火墙

    1、检查防火墙是否开启

    iptables -L
    

    2、清除策略

    iptables -F
    

    3、永久关闭第一个防火墙

    systemctl disable firewalld
    

    4、关闭第二个防火墙

    # 1.查看防火墙
    getenforce
    # 2.临时关闭防火墙
    setenforce 0
    # 3.永久关闭,进入配置
    vim /etc/selinux/config 
    # 4.修改配置,保存并退出
    SELINUX = disabled
    

    img

    .png)

    四、Linux命令

    1、命令组成

    命令体 			选项				参数(对象,文件)
    ls				   -l               /var
    

    2、文件的分类

    d :目录
    f :普通文件
    l :链接
    b :块设备,磁盘 光驱
    c :字符设备
    p :管道
    s :套接字
    

    3、命令提示符

    [root@oldboy ~]#        # '#'表示超级管理员用户 
    [oldguo@oldboy ~]$      # '$'表示普通用户
    

    4、常用快捷键

    ctrl + c	 # cancel 取消当前的操作 
    ctrl + l	 # (小写字母L)  clear(命令),清空当面屏幕
    ctrl + d	 # 退出当前用户 
    ctrl + r 	# 查找(历史命令)。 history|grep
    [TAB]:
    	1.命令补全
    	2.参数补全
    ctrl + a 	# 把光标移动到行首 
    ctrl + e	 # 把光标移动到行尾
    ctrl+ u 	# 把光标到行首的内容删除/剪切 
    ctrl + y 	# 粘贴 
    delete  	#  光标所在处从前往后删除内容
    ctrl + k 	# 把光标到行尾的内容删除/剪切 
    ctrl + → 	# 向右移动一个单词 
    ctrl + ← 	# 向左移动一个单词
    ctrl + s 	# 锁屏 
    ctrl + q 	# 解锁
    

    5、查看帮助

    man ls      # 手册,查看ls的手册
    ls --help     # 简要手册
    info ls     # 查看详细的ls的手册
    

    6、关机重启

    shutdown -r n    # n分钟以后重启
    shutdown -h n     # n分钟以后关机
    shutdown -r now  # 立即重启
    shutdown -c    # 取消关机重启
    
    # 常用关机重启命令
    reboot    # 重启
    poweroff    # 关机
    

    五、linux管理命令

    1、普通文件及目录的命令

    ls
    pwd
    cd
    tree
    mkdir
    touch
    cp
    mv
    rm
    

    2、目录

    • 绝对路径:从"/"开始一个具体路径
    • 相对路径:从当前目录开始的具体路径( pwd 可以查看当前所在目录)
    # 1.创建目录
    mkdir /oldboy   # 在根目录下创建oldboy目录,利用绝对路径创建
    mkdir old    # 在当前目录下创建old目录,利用相对路径创建
    mkdir -p a/b/c   # 创建多层目录,创建a,a下的b,b下的c
    mkdir a b c    # 同时创建a、b、c
    mkdir a{1..10}    # 批量创建a1~a10目录
    
    # 2.查询目录
    ls -ld /oldboy     # 查看oldboy目录是否存在,并查看其详细信息
    ls -ld a b c    # 同时查看a、b、c
    tree /a      # 查看多层目录,查看a下的所有目录,会以树状图的形式展示
    tree -L 2 /      # 查看根目录下的两次目录,如果是3,表示查看3层目录
    ls -ld dir*     # 产看以dir开头的所有文件
    
    # 3.删除目录(慎用)
    rm -rf /oldboy  # 删除根目录下的oldboy
    rm -rf a b c    # 同时删除a、b、c
    rm -rf dir*   # 删除以dir开头的所有目录
    # 通过文件句柄,有可能可以找回丢失数据(前提:不能重启,不能有大量数据写入)
    
    # 4.修改目录
    mv /root/oldboy/ /tmp    # 将oldboy文件移到tmp目录下
    mv /root/oldguo/ /tmp/oldguo.bak      # 将oldboy移到tmp中,并重命名
    mv oldboy old   # 当前目录下的oldboy重命名为old
    cp -r /tmp/old /     # 将old文件拷贝到根目录下
    cp -a /tmp/old /    # 带上源文件的属性权限拷贝
    
    # 5.切换目录
    cd /		# 切换到根目录下
    cd /oldboy       # 切换到根目录下的oldboy目录
    cd  oldboy     # 切换到当前目录下的oldboy
    cd ..      # 切换到上一层目录
    cd -        # 切换到上一次所在的目录
    

    3、普通文件

    (1)文件种类

    ASCII TEXT:纯文本文件(操作最多的)
    LSB Exe:二进制的可执行文件(命令,程序)
    压缩文件:zip tar  gz  bz2   cpio  iso
    二进制数据文件:
    

    (2)命令

    • linux中一切皆文件,不管是目录还是文件,名字都不能重复
    # 1.创建文件
    touch a.txt			# 创建a.txt文件
    
    # 2.删除文件
    rm -rf a.txt   # 删除a.txt文件
    
    # 3.查看文件
    ls -l a.txt    # 查看文件属性
    	# (1)小文件内容查看
        cat /etc/passwd   # 查看passpwd文件的内容
        cat /etc/passwd /etc/shadow   # 同时查看两个文件的内容
        cat -n /etc/passwd    # 查看文件内容,每行内容都带上序号
    
        # (2)分页显示大文件内容
        more /var/log/secure    # 使用空格下翻,只能往下翻,查看文件内容
        less /var/log/secure    # 既能往上翻,又能往下翻
    
        # (3)文件前多少行
        head /etc/passwd    # 查看前10行内容,默认是10行
        head -n3 /etc/passwd   # 查看前3行内容,默认是10行
        head -3 /etc/passwd    # 查看前3行内容,默认是10行
        
        # (4)文件后多少行
        tail /etc/passwd      # 查看后10行内容,默认是10行
        tail -2 /etc/passwd    # 查看后2行内容
        tail -f /var/log/secure      # 实时监控文件
    
    
    # 4.复制、剪切文件
    mv 		# 命令和目录的操作一样
    cp 		# 命令和目录的区别不需要加-r (加上也不报错)
    
    
    # 5.修改文件内容
    cat /etc/passwd >a.txt  	# >   覆盖重定向,如果文件没有,会自动创建
    cat /etc/passwd >>a.txt     # >>  追加重定向,如果文件没有,会自动创建
    echo "10.0.0.100 python3" >>/etc/hosts      # 将"10.0.0.100 python3"追加到hosts中
    

    4、vim编辑

    (1)命令模式

    vim passwd直接进入的就是初始模式,即命令模式

    	↑↓←→   # 上下左右光标移动
    	page up  page down    # 翻页
    	G   # 光标到达最后一行
    	1G   # 光标到达第一行(gg)
    	10G    # 第10行
    	^    # 光标到达行首
    	$    # 光标到达行尾
        /    # 搜索关键字
    	yy   # 复制光标所在行
    	Nyy    # 复制N行
    	dd   # 删除/剪切
    	Ndd   # 删除/剪切N行
    	p    # 粘贴
    	x(del)    # 删除光标所在字符
        dG   # 删除光标到文本末尾
    	d$    # 从光标删除到行尾,包括贯标所在字符
    	d^     # 从光标删除到行首,不包括光标所在字符
        r    # 替换光标所在字符
    	ZZ    # 保存退出
    	u     # 撤销上次操作
    

    (2)编辑模式

    a    # 在光标之后录入数据
    i     # 在光标之前录入数据
    o    # 在光标下一行开启新行录入数据
    A
    I
    O
    ESC    # 回到命令模式,建议每编辑完一行就ESC,退回到命令模式
    

    (3)末行模式

    在命令模式下,进入末行模式

    :q!     # 强制不保存退出
    :wq!      # 保存退出
    :set nu     # 在编辑器中显示行号
    :set nonu      # 在编辑器中不显示行号
    :%s/root/ROOT/g     # 批量修改,将所有的root替换为ROOT,g表示全局
    

    5、链接(快捷方式)

    ln -s passwd passwd.lnk
    ![](https://img2020.cnblogs.com/blog/1363327/202006/1363327-20200607164009424-1188230843.png)
    
    

    6、磁盘和文件系统

    [root@python3 ~]# ls -l /dev/sd*
    brw-rw---- 1 root disk 8,  0 Jan  3 15:28 /dev/sda
    brw-rw---- 1 root disk 8,  1 Jan  3 15:28 /dev/sda1
    brw-rw---- 1 root disk 8,  2 Jan  3 15:28 /dev/sda2
    brw-rw---- 1 root disk 8, 16 Jan  3 15:28 /dev/sdb
    [root@python3 ~]# fdisk -l
    

    (1)分区

    # 1.分区
    fdisk   /dev/sdb   # 进行分区
    m
    n     # 新建分区
    p     # 打印先有的分区
    w     # 保存分区
        
    # 2.格式化成文件系统(XFS)
    mkfs.xfs /dev/sdb1
    	
    # 3.挂载设备
    mkdir /data   # 格式化以后创建新的目录
    mount /dev/sdb1 /data	  # 把新的分区,挂载到data中
    	
    # 4.查看挂载的磁盘使用情况
    df -h
    

    (2)自动挂载

    # 自动挂载文件系统
    vim /etc/fstab   # 进入文件进行配置
    
    /dev/sdb1 /data xfs defaults 0 0   # 在配置文件中添加内容,挂载的分区、挂载位置、类型、默认参数、不检查系统
    

    img

    .png)

    • 挂载的分区使用UUID更加安全
    # 获取UUID
    blkid
    
    # 自动挂载,使用uuid
    UUID=R2PoCI-tOiD-Mksr-fsiW-5tBV-YIbV-pVYwfP /data xfs defaults 0 0
    

    img

    7、Raid

    (1)功能特性

    1.将多块磁盘合并成一块磁盘,提供更大的存储空间
    2.可以提供更高的IO能力
    3.数据物理层面的高安全
    

    (2)Raid的工作级别

    # 1.raid0
    条带化功能,性能极高,安全性和单盘一样
    至少两块盘,理论上盘越多性能越高
    
    # 2.raid1
    镜像功能,性能没有明显提升,安全性高.	
    浪费一半空间
    
    # 3.raid10
    镜像+条带化 ,至少四快盘,性能和安全兼顾
    浪费一般空间	
    
    # 4.raid5
    带有校验功能的条带化	
    存储数据时,根据数据计算校验值,存储到第三块盘.
    写入性能较低
    读数据性能较高
    至少三快盘,只允许一块盘损坏,浪费1/n的磁盘空间
    适合于读多写少的场景	
    

    8、用户、组、权限

    (1)用户的定义

    用户名(uid),密码,家目录(/home/oldboy),家目录下会有环境变量文件等.
    ​ 每个用户都必须有一个工作组,创建时没指定,自动创建一个同名的组

    (2)组的定义

    组名字,GID(1001~65535)

    (3)用户和组的管理

    a.组的管理
    # 1.创建组
    groupadd -g 1001 dev    # 创建分组,组id从1000开始
    groupadd -g 1002 sa
    groupadd -g 1003 dba
    
    # 2.查看组
    cat /etc/group
    tail -3 /etc/group
    
    # 3.删除组
    groupdel dba   # 删除组dba
    
    # 修改组(不建议改)
    groupmod -g 10086 dev    # 修改组的id
    
    b.用户的管理
    # 创建用户(普通用户)
    useradd oldguo     # 其余自动创建
    useradd -u 10011 -g dev oldguo      # 指定id,指定组,用户名
    
    # 查看用户
    id oldguo
    
    # 设置密码
    passwd oldguo
    
    # 切换用户
    su - oldboy     # 切换到oldboy用户
    exit     # 退出用户
    
    # 删除用户
    userdel -r oldboy
    
    # 修改用户(id)
    usermod -u 3000 oldguo
    

    (4)权限

    a.权限的分类
    r   4    # 读
    w   2 	 # 写
    x   1    # 执行
    
    b.权限的管理
    [root@py3 ~]# ls -l /a
    
    # drwxr-xr-x 3 root root 14 Jan  4 04:12 b
    drw ---->  root用户权限
    xr- ------>  文件所属组root组的权限
    xr-  ------->  文件的进行操作
    
    c.权限对应命令
                   目录                 				文件
    r              ls                  				cat more    ,vim
    w              目录下的修改        				vim   > 
    x              目录下所有操作都依赖于x              可执行程序
    
    d.设置权限
    # 设置权限  
    chmod -R  755 /data     # 755相当于 rwxrx-rx-
    chwon -R oldguo:dev /data     # 设置oldguo和dev的权限
    
    设置sudo权限
    visudo 命令找到默认91行 ,修改退出保存,设置的用户就有sudo权限了
    
    ![](https://img2020.cnblogs.com/blog/1363327/202006/1363327-20200607163443742-777735280.png)
    
    

    9、程序管理

    # 查看进程状态
    ps -ef     # 查看所有进程的状态
    ps -ef|grep mysql        # 查看mysql的状态
    
    # 关闭进程
    kill 1234(pid)    # 安全的结束
    kill -9 1234     # 如果进程崩了,也可以关闭
    pkill mysqld      # 批量关闭,关闭mysqld的所有进程
    
    # 服务的启动与关闭
    systemctl start httpd(服务的名字)      # 开启服务 centos7这么用
    systemctl restart httpd     # 重启服务
    systemctl stop httpd    # 关闭服务
    
    service nginx start centos7以下,6系列命令
    
    

    10、网络管理

    # 查看ip地址
    ip a
    或者
    ifconfig
    
    # ping命令
    
    
    # 网络配置
    vim /etc/sysconfig/network-scripts/ifcfg-eth0    # linux中默认的网卡位置,可以修改IP地址
    systemctl restart network     # 改完IP地址以后要重启网络
    
    # 查看已启动端口
    netstat -tulnp       # 查看启动的端口
    netstat -tulnp |grep 80       # 过滤查看端口
    ss -tulnp|grep 80     # 查看端口对应的详细信息
    

    11、alias别名命令

    12、压缩命令

    13、查看yum源

    [root@py3 ~]# cd /etc/yum.repos.d/
    [root@py3 yum.repos.d]# ls
    

    博客内容仅供参考,部分参考他人优秀博文,仅供学习使用

  • 相关阅读:
    052、Java中使用do…while循环实现1~100的累加
    051、Java中使用while循环实现1~100的累加
    050、Java中使用switch判断,使用字符串判断
    一个DOM元素绑定多个事件时,先执行冒泡还是捕获
    cookies,sessionStorage和localStorage的区别
    雅虎网页性能优化的35条黄金守则
    多域名指向同一个网站的好处
    减少页面加载时间的方法
    网站文件和资源的优化
    语义化的html
  • 原文地址:https://www.cnblogs.com/hanfe1/p/13037717.html
Copyright © 2011-2022 走看看