linux之基本使用

linux

安装

  • 安装注意
    1. 虚拟机分配的资源不能超过本机自身资源
    2. 网络连接:NAT模式,仅能本机的windows访问,内网其他机子无法访问。桥接:内网其他机子也可访问
    3. 安装vm tools 是windows与linux交互

目录

  • linux目录结构的特点?
    以'/'为根目录的树形结构。在linux的目录中一切皆文件
  • 常见目录
    1. /dev 硬件设备映射为文件
    2. /media U盘挂载处
    3. /root 超级用户的主目录
    4. /bin 存放最常用的指令
    5. /lib 动态连接共享库
    6. /opt 安装包
    7. /boot 系统配置
    8. /mnt 共享文件处
    9. /etc 配置文件和子目录 my.config
    10. /home 每个用户专属的文件夹存放处
    11. /usr 软件安装处
    12. /usr/local 软件安装的目录
    13. /var 经常被修改的文件。如日志

远程连接

  • 如何远程连接?
    通过XShell之类的软件连接,连接之前要确定linux已经开启sshd服务。通过终端输入setup查看
    通过xftp用来传输文件

vi与vim

  • 什么是vi与vim?
    文本编辑器,vim是加强版

  • 三种常见模式
    1. 插入
      按下 i I o O a A R 任一字母进入编辑模式
    2. 命令行
      : 进入模式 q 退出 q! 强制退出 wq 保存退出
    3. 正常
      vim进入 其他模式通过ESC进入该模式
  • 常用快捷键
    yy 拷贝当前行 在正常模式下
    5yy 拷贝5行 在正常模式下
    p 粘贴 在正常模式下
    dd 删除当前行 在正常模式下
    5dd 删除5行 在正常模式下
    G 文档末行 在正常模式下
    gg 文档首行 在正常模式下
    u 撤销 在正常模式下
    20 shift g 跳转到20行 在正常模式下
    /hello 查找hello 在命令行模式下
    :set nu 显示行号 在命令行模式下
    :set nonu 取消行号 在命令行模式下

开机与重启与注销

  • 关机重启
    shutdown
    shutdown -h now 马上关机
    shutdown -h 1 一分钟关机
    shutdown -r now 马上重启
    halt 关机
    reboot 重启
    sync 同步内存指令,把内存数据写入

  • 用户登陆注销
    通过普通用户登录,尽量不用root登录
    logout 注销用户

用户管理

  • 用户组
    每个用户都至少属于一个用户组
  • 添加用户
    useradd [选项] 用户名
    添加成功会自动创建对应的home目录
  • 添加用户到并且指定其对应的home目录
    useradd -d /home/test/ xiaoming
  • 指定密码
    passwd xiaoming
  • 删除用户
    userdel 用户名
  • 删除保留对应home
    userdel xiaoming
  • 删除不保留对应home
    userdel -r xiaoming
  • 查询用户信息
    id 用户名
  • 切换用户
    su 用户名
  • 返回用用户
    exit
  • 查询当前用户
    whoami
  • 增加组
    groupadd 组名
  • 添加用户指定组
    useradd -g 用户组 用户名
  • 修改用户组
    usermod -g 用户组 用户名
  • 用户信息存放在哪里?
    /etc/passwd
  • 用户组信息存放在哪里?
    /etc/group
  • 密码信息存放在哪里?
    /etc/shadow

运行级别

  • linux分七个运行等级,类比Windows的普通模式与安全模式,配置文件在etc/inittab
    0-关机
    1-单用户
    2-多用户无网络
    3-多用户有网络
    4-系统未使用保留给用户
    5-图形界面
    6-系统重启
    init[0123456]

帮助命令

  • 查看帮助目录
    man ls
    help cd

文件目录类

  • 如何显示当前目录的绝对路径?
    pwd
  • 如何查看当前目录内容?
    ls -al :显示所有,包括隐藏
    ls -l : 以列表信息显示
  • 如何切换目录?
    cd .. 上一级
    cd ~家目录
  • 如何创建目录?
    mkdir /home/dog 创建单级目录
    mkdir -p /home/animals/tiger 创建多级目录
  • 如何删除目录?
    mkdir /home/dog 删除空目录
    rm -rf /home/tigers 删除非空目录
  • 如何创建文件?
    touch 文件名称
  • 如何拷贝文件?
    cp source dest 拷贝单个文件
    cp -r source dest 递归拷贝文件夹
    \cp -r source dest 递归拷贝文件夹不提示覆盖
  • 如何移除文件或目录?
    rm /home/aaa
    rm -r /home/aaa 递归删除整个文件夹
    rm -rf /home/aaa 递归删除不提示
  • 如何重命名或者移动?
    mv oldName newName 重命名
    mv fileName /temp/ 移动到文件夹
  • 如何查看文件?
    cat /etc/profile 只读文件
    cat -n /etc/profile | more 分页显示且有行号
  • 如何重定向和追加?
    ls -l>fileName 列表内容覆盖写入文件中
    ls -al>>=fileName 列表内容追加写入到文件中
    cat fileName1>fileName2 文件1覆盖到文件2
    echo "txt">>fileName
  • 如何输出内容到控制台?
    echo [选项] [内容]
    echo $path 输出环境变量
  • 查看部分文件?
    head /etc/profile 默认查看文件前10行
    head -n 5 /etc/profile 查看文件前5行
    tail /etc/profile 默认查看文件后10行
    tail -n 5 /etc/profile 查看文件后5行
    tail -f /etc/profile 动态追踪监视文件,用于查看日志
  • 如何查看执行过的指令?
    history 查看所有指令
    history 10 查看10条历史指令
    !33 执行第33条历史指令

时间日期

  • 如何显示当前时间?
    date
    date +%Y 显示年
    date +%m 显示月
    date +%d 显示日
    date "+%Y-%m-%d" 按规定的格式显示时间
  • 如何设置时间?
    date -s "2019-10-10 11:22:22" 按字符串内容指定时间
  • 如何查看日历?
    cal 显示当月
    cal 2020 显示指定年份

搜索查找

  • 如何查找?
    find /home -name hello.txt 在home目录的范围按文件名查找
    find /opt -user nobody 在opt目录范文内按文件归属用户名查找
    find / -size +20M 在根目录下查按文件大小查找
    find / -name *.txt 在根目录查找所有txt文件
  • 过滤和管道的应用?
    cat hello.txt | grep yes cat查看文件,管道 | 把cat查看的内容交给grep指令按 yes 条件查找
    cat hello.txt | grep -n yes 带行号
    cat hello.txt | grep -i yes 忽略大小写

解压压缩

  • 如何解压压缩文件?
    gzip hello.txt 对文件hello.txt进行压缩并且不保留原文件
    gunzip hello.txt.gz 对文件解压
  • 如何解压压缩文件和目录?
    zip -r test.zip /home/ 递归压缩整个home目录于test.zip中
    unzip -d /opt/tmp test.zip 把test.zip解压到/opt/tmp目录下
  • 如何打包和解包?
    tar -zcvf a.tar.gz a1.txt a2.txt 把a1.txt a2.txt两个文件打包压缩于a.tar.gz中
    tar -zcvf home.tar.gz /home/ 递归打包整个home目录zcvf
    tar -zxvf home.tar.gz 解压整个包zxvf
    tar -zxvf home.tar.gz -C /opt/ 解压到/opt目录中

组管理和权限管理

  • 文件的所有者,所在组,其他组。所有者和所有组不一定一致。
    ls -ahl 查看文件所有者
    chown root test.txt 修改文件所有者
    chgrp centos test.txt 修改文件所在组
    usermod -g root centos 修改centos到root组中

  • 文件类型有哪些?
    - 普通文件
    d: 目录
    l 软链接
    c 字符设备,键盘
    b 块设备,硬盘

  • 文件权限怎么查看?
    查看文件权限,查看一个文件,前面先显示的是所有者,所在组,其他组三个权限等级
    权限等级分为读写运行
    -rw-r--r-- 1 tom police 6 3月 20 19:24 ok.txt
    0-9位
    - 类型为文件
    rw- 所有者读写权限
    r-- 文件所在组只有读权限
    r-- 文件其他组只有读权限
    1 子目录个数或者硬连接个数
    6 文件字节大小,文件夹恒为4096
  • 权限种类rwx?
    对于文件 rwx 读取,修改,执行
    对于目录 rwx 读取ls查看,修改mkdir创建删除重命名目录,执行cd可以进入目录
  • 如何修改权限?
    r=4 w=2 x=1 数组表示法
    7=rwx
    6=rw
    5=rx
    3=wx
    0=无权限
    u:所有者 g:所在组 o:其他人 a:所有人
    chmod u=rwx,g=rx,o=rx abc 修改abc权限,所有者rwx,其他人rx,所在组rx
    chmod u-x,g+w abc 所有者取消x权限,所有组增加w权限
  • 如何修改文件所有者?
    chown -R tom kkk/ 递归修改kkk文件夹的所有文件的所有者为tom
  • 如何修改文件所有者?
    chgrp -R bandit kkk/

任务调度

  • crontab

  • 如何设置调度文件?
    存放于/etc/crontab
  • 调度文件的理解?
    crontab -e 进入调度文件编辑,部署调度任务。可以直接写入任务或者通过调用sh指令文件写入任务,sh指令文件要设置x权限。
    */1 * * * * ls -l /etc >> /tmp/to.txt 表示每分钟执行,把etc列表追加写入/tmo/to.txt
  • 如何实际应用?
    vim matask.sh 编辑一个sh文件,写入执行内容date >> /tmp/mydate,给与mytaskx权限,通过corntab -e进入部署文件,写入*/1 * * * * /home/mytask.sh
  • 举例应用?
    每天两点自动备份mysql中的testdb到文件mydb.bak中

分区

  • 如何查看系统的分区和挂载的情况?
    lsblk -f
  • 如何查询磁盘情况?
    df -lh
  • 如何查询某个目录使用情况?
    du -ach --max-depth=1 /opt
    -s 指定目录(否则为当前目录)
    -h 带计量单位
    -a 含文件
    --max-depth=1 子目录深度
    -c 列出明细的同时
  • 实用指令?
    ls -l /home | grep "^-" | wc -l 先查询,用grep过滤"-"得到所有文件,用wc统计。
    ls -lR /home | grep "^-" | wc -l 先查询,用grep过滤"-"得到所有文件,用wc统计。-R递归
    tree 树形展示文件

网络配置

  • 自动获取IP的缺点?
    可能IP地址会发生改变,不适合服务器应用。
  • 如何固定IP?
    通过配置 /etc/system/network -scripts/ifcfg-eth0
  • 如何查看网络情况?
    -an 按一定的顺序
    -p 显示哪个进程在调用
    netstat -anp | more 查看所有网络
    netstat -anp | sshd 查看sshd的网络情况

进程管理

  • 如何查看系统执行的进程?
    ps -a 当前终端所有进程信息
    ps -u 用户格式显示进程信息
    ps -x 后台进程运行的参数
    ps -aux | grep sshd 查看sshd相关进程
  • 如何查看父进程?
    ps -ef | more 查看父进程ppid
  • 如何终止进程?
    kill -9 3333 通过进程号3333杀进程,-9强制自杀
    killall gedit 通过进程名杀死所有同名称的进程
  • 查看进程树
    pstree 进程树
    pstree -p 进程树带进程号
    pstree -u 进程树带进程所属用户
  • 动态监控进程?
    top 3秒刷新一次
    在top中输入u再输入用户名,监控某用户
    在top中输入k再输入进程id号,杀死某进程
    在top中输入N,按PID排序
    在top中输入M,按内存排序
    在top中输入P,按CPU排序
    top -d 10 10秒刷新一次

服务管理

  • 服务本质其实就是进程,运行在后台,监听着一个端口,等待着程序的请求。
  • 常见指令与参数?
    service 服务名 [start|stop|restart|reload|status]在centos7中使用的是systemctl
  • 如何检测端口是否在监听?
    telnet 192.168.52.3 22 windows的指令,查看服务器的22端口。
  • 查看所有服务?
    setup
    ls -l /etc/init.d/
  • 服务的运行级别?
    chkconfig --list 查看所有服务的在不同的运行级别是否启动
    chkconfig --level 5 sshd off sshd在5级别时不自动启动服务。

rpm包

  • rpm,类比setup.exe
  • 如何查询rpm?
    rpm -qa | grep firefox 查看有没有安装firefox
    rpm -qi firefox 查询安装信息
    rpm -ql firefox 查询安装了的文件和安装路径
    rpm -qf /etc/passwd 查询文件属于哪个软件包
  • rpm卸载?
    rpm -e firefox 卸载firefox
    rpm -e --nodeps firefox 强制卸载firefox
  • rpm安装
    rpm -ivh firefox.rpm 安装firefox
    -i 安装
    -v 提示
    -h 进度条

yum包

  • 基于rpm管理,优点自动安装依赖包
  • yum list | grep firefox 查找
  • yum install firefox 运行

猜你喜欢

转载自www.cnblogs.com/KSea/p/12355365.html
今日推荐