Linux常用命令笔记

linux—基础篇

linux是一款免费,开源安全,高效,稳定,处理高并发强悍的操作系统

Linux目录结构

不同于windows的C/D/E盘的目录结构,Linux采用层级式树状目录结构,最上层只有一个根目录,在根目录下有很多的子目录

在Linux世界里,一切皆文件

具体的目录结构:

  • /bin(user/bin,user/local/bin):Binary(二进制)的缩写,存放经常使用的命令
  • /sbin(/suer/sbin,/user/local/sbin):s是super user的意思,用于存放系统管理员使用的系统管理程序
  • /home:存放普通用户的主目录,在linux中每个用户都有一个自己的主目录,一般该目录名是以用户的账号命名的
  • /root:该目录为系统管理员,也称超级权限者的用户主目录
  • /lib:系统开机所需要的基本动态链接库,类似于windows下的dll文件,几乎所有应用程序都需要用到这些共享库
  • /lost+found:一般为空,非法关机后会存放一些文件
  • /etc:所有系统管理所需要的配置文件和子目录(环境变量也放在这里)
  • /usr:存放用户的应用程序和文件,类似于windows下的program files目录
  • /boot:存放启动linux时的一些核心文件,包括连接文件以及镜像文件
  • /proc:一个虚拟目录,它是系统内存的映射,访问这个目录可以获取用户信息
  • /srv:service的缩写,该目录存放服务启动之后需要提取的数据
  • /sys:安装了linux2.6内核中的新文件系统ysfs
  • /tmp:用来存放临时文件
  • /dev:类似于windows下的设备管理器,把所有硬件以文件的形式存储
  • /media:Linux会自动识别一些设备,如U盘,光驱等,识别后,Linux会把识别到的设备挂载到这个目录下
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将外部的存储挂载在mnt上,然后进入该目录查看内容
  • /opt:给主机安装额外软件所摆放的目录
  • /usr/local:另一个安装软件的目录,一般是通过编译源码方式安装的程序
  • /var:存放不断扩充的东西,习惯将经常修改的目录放在这里。
  • /selinux:一种安全子系统,它能控制程序只访问特定文件

远程登陆

Xshell是一个强大的终端模拟软件,他支持SSH1,SSH2,以及windows平台的TELNET协议

Xshell可以再windows界面下用来访问远程不同系统下的服务器,从而达到远程控制终端的目的。

如果希望安装好的Xshell就可以远程访问Linux的话,需要Linux启动sshd服务,用于监听22号端口

利用setup命令打开系统配置工具查看shdd,用hostname -I
+ifconfig命令可以查看ip地址

vi和vim三种常见模式

  • 正常模式:打开文档默认进入的模式,正常模式下,我们可以使用快捷键
  • 编辑模式(插入模式):按下任意一个键进入,一般按i即可
  • 命令行模式:提供读取,存储,替换,离开显示行号等功能

快捷键:按V进入视图,上下左右选择,y复制,p粘贴,d删除,yy复制整行(yyn,复制n行),dd删除整行,u:撤销;N:查找上一个;:数字:定位到某行

:set nu:显示行号,set nonu:取消行号 :noh查找高亮

关机与重启

shutdown -h now 立即关机

shutdown -h -1:表示一分钟后关机

shutdown -r now:立即重启

halt:效果等价于关机

reboot:重启系统

sync:把内存的数据同步到磁盘

登录时为了防止失误,可以用su -用户名 获取管理员身份

logout:注销

实用指令

指定运行级别

  • 0:关机
  • 1.单用户级别(找回密码时使用)
  • 2 多用户无网络服务
  • 3.多用户有网络服务
  • 4。保留级别
  • 5.图形界面
  • 6.重启

级别的指定文件在etc/inittab

命令:init [0,1,2,3,4,5,6]切换到运行级别

找回root密码

进入到单用户模式(不需要密码),然后修改密码

帮助指令

对某个指令不熟悉时可以使用帮助指令

  • man [命令活配置文件]获取帮助指令
  • help 命令 : 帮助指令

文件目录类

  • vim:进入编辑模式
  • pwd(print working directory):显示当前目录的绝对路径
  • ls:显示当前文件或目录的具体信息 -a:显示全部,-l以列表显示
  • cd:切换目录(cd~回到根目录)
  • mkdir [选项]:创建目录(常用选项:-p)
  • rmdir [选项]:删除目录(删除非空目录要使用rm -rf 删除的目录)
  • touch:创建一个空文件,支持一次创建多个文件
  • cp [选项]:拷贝文件到指定目录 (-r递归复制整个文件,cp前加\强制覆盖)
  • 上下键可以找出刚才使用的指令
  • rm [选项] :移除文件或目录(-r 递归删除;-f强制删除)
  • mv [选项]:移动文件或重命名,加原文件名和新文件名重命名;加当前路径和之后路径移动文件,移动路径时也可以用最后一个文件名进行重命名
  • cat [选项]:查看文件内容(只读)(-n 显示行号,一般与|more配合使用进行分页显示)
  • more 用全屏的方式按页显示文件的内容(ctrl+f滚动下一屏;ctrl+b滚动上一屏 space:下一页,enter:下一行,q离开)
  • less [选项]:分屏加载,分屏显示(懒加载,速度较快)
  • :输出重定向(ls -l>文件:将列表内容写入文件,不存在就创建,如果是cat >就是将cat文件的内容全部写道指定的文件中)

  • :追加,不覆盖(echo 文件1 >> 文件2:将文件1的内容追加到文件2中)[cal:日历]

  • echo:输出内容到控制台
  • head -n:显示文件的开头部分(前n行)
  • tail -n m:显示文件的结尾部分(后m行);
  • tail -f:实时监控文件的更新(ctrl+退出)

时间日期类

  • date :当前时间
  • date+"%y":显示当前年份
  • date+"%m":显示当前月份
  • date+"%d":显示当前那一天
  • date+"%H-%M-%S":显示时间,分钟,秒
  • 设置时间:date -s +字符串
  • 改回同步时间:hwclock -s
  • 日历:cal,后面加数字显示年份

搜索查找类

  • find [搜索范围] 选项 (选项说明:查找方式,用户名,文件大小)
  • 用例:find /home -name hello.txt
  • locate 用于快速定位文件路径,需要先创建locate数据库(使用updatedb,centos7无需手动创建)
  • grep指令,过滤查找,grep [选项] 查找内容 源文件(选项:-n匹配行及行号,-i忽略字母大小写)
  • 用例:cat world.txt |grep -n yes

压缩和解压缩

  • gzip:压缩文件
  • gunzip:解压缩指令
  • zip -r <打包名称.zip> 文件路径(需要先下载zip包)
  • tar [选项] XXX.tar.gz 打包的内容(-c 产生tar打包文件,-v显示详细信息,-f指定压缩后的文件名 ,-z打包同时压缩)

权限管理

用ls -l展示文件的详细信息时:
-rwxr–r--. 1 ytm ytm 17 10月 26 10:42 mytask.sh

各个信息依此为:

  • 文件类型:-:普通文件;d:目录;l:软链接;c:字符设备(键盘,鼠标),b:块文件,硬盘;
  • 文件所有者权限
  • 文件所有组的用户拥有的权限
  • 文件其他组用户的权限
  • 数字,如果是文件,表示硬链接数,如果是是目录表示目录个数
  • 文件所有者
  • 所在组
  • 数字,代表文件大小,如果是目录则为4096
  • 文件最后的修改时间
  • 文件名

文件的权限:

  • 数字表示:r=4,w=2,x=1;
修改权限 chmod

通过chomod [文件名]可以修改文件或目录的权限

第一种方式:+,-,=权限变更

  • u:所有者,g:所有组,o:其他人 a:所有人

第二种方式:通过数字变更权限

  • 例如:chmod 744 [文件名]

修改文件所有者: chown

  • chown (-R 递归更改) newowner file 改变文件所有者
  • chown newowner:newgroup file 改变文件所有者和所有组

修改文件的所在组:chgrp

  • chgrp newgroup file 改变文件的所在组

任务调度

  • crond 任务调度
  • 基本语法: crontab [选项]
  • 常用选项: -e:编辑定时任务;-l查询crontab任务;;-f删除当前用户所有crontab任务
特殊符号说明
  • *任何时间
  • ,不连续时间
  • .连续的时间范围
  • */n 代表多久执行一次

分区

  • linux通过mount将硬盘分区和文件系统连接起来
  • Linux无论有多少个分区,归根结底只有一个根目录,一个独立且唯一的目录结构,Linux中每个分区都是组成整个文件系统的一部分
  • Linux采用一种叫“载入” 的处理方法,它的整个文件系统包含了一整套的文件和目录,且将一个分区和目录联系起来,这时载入的一个分区将使它的储存空间在一个目录下获得
  • Linux硬盘分为iDE和SCSI,目前基本是SCSI硬盘
磁盘情况查询
  • df -l/-h:查询系统整体磁盘使用情况
  • du (-h带计量单位,-s指定目录占用大小汇总,-a含文件 -maxdepth:子目录深度) :查询指定目录占用磁盘的情况
  • 统计文件夹下文件的个数:ls -l /home | grep “^-” | wc -l
  • 统计文件夹下文件夹的个数:ls -l /home | grep “^d” | wc -l
  • 统计文件夹下文件及其子目录下文件的个数:ls -lR /home | grep “^-” | wc -l
  • 统计文件夹下文件夹及其子目录的个数:ls -lR /home | grep “^d” | wc -l
  • 以树状显示目录结构 yum install tree tree

网络配置

linux查看IP:ifconfig

windows查看IP:ipconfig

进程管理

  • 在linux中,每个执行的程序都称为一个进程,每个进程都会被分配一个id号
  • 每个进程都会对应一个父进程,这个父进程可以复制多个子进程
  • 进程可能存在两种形式:前台(在屏幕上用户可以看到执行的进程)和后台(实际在操作,但用户无法看到)
  • ps (-a 显示所有进程信息 -u以用户格式显示 -x:显示后台运行的参数):查看当前系统中正字执行的指令以及他们的执行情况
显示的参数:
  • PID:进程id
  • %CPU:CPU占用率
  • %MEM:内存占用率
  • VSZ:使用的虚拟内存
  • RSS:使用物理内存的情况
  • TTY:使用的终端(可能不可见)
  • STAT:进程状态(S休眠。R运行,Z-僵死,D-等待)
  • START:启动时间
  • TIME:占用CPU的总时间
  • COMMAND:进程执行时的命令行
指令:
  • ps -aux |grep 名称 查找某个进程
  • ps -ef:查看父进程,会显示出一个参数PPID,即父进程ID
  • ps -ef | grep ssd :查看ssd(某个进程)的父进程
终止进程

若某一进程需要停止,或者已经消耗了很多进程资源,此时可以通过kill指令停止该进程

  • kill支持通配符,匹配所有符合条件的进程
  • killall 进程名(进程ID):杀死整个进程
  • kill -9 强制终止某个进程
  • pstree -p 树状显示进程的pid
  • pstree -u 树状显示进程的用户id

服务管理

服务本质就是进程,但是运行在后台,通常会监听某个端口号,等待其他程序的请求

service管理指令:
  • service 服务名 |start|stop|restart|reload|status
  • CentOS7.0以后,用systemctl代替了service
  • 用这种指令是临时生效,重启系统后还是会使用之前的配置
查看服务名:
  • 使用setup——》系统服务 就可以看到
  • ls -l/etc/init.d/查看系统有哪些服务
修改服务运行级别
  • vi/etc.inittab
  • 开机流程:开机 BIOS /boot init进程 运行级别 运行级别对应的服务
  • chkconfig:给每个服务的各个运行级别设置自启动/关闭
  • 查看服务:chkconfig --list|grep xxx(新版本是systemctl list-unit-files)
  • chkconfig 服务名 -list
  • chkconfig -level 服务名 on/off
进程的监控
  • top 显示正在执行的进程,可以实时更新
  • 进入top后的选项:[选项 -P 按CPU内存占用排序;-M:按内存使用率 -N:按PID;-q:退出 -u查看指定用户;-k杀死指定进程 -d [秒数]指定更新的空闲时间]
  • netstat [选项:-an:按一定顺序输出 -p:查看哪个进程正在调用]:监控网络服务,可以用grep筛选要监听的sshd

[dos下] telnet ip端口 检测某个端口能否被访问

RPM 包管理

  • rpm -qa|grep xx
  • 参数:[-qa查询所有的包 -q 包名:查询是否安装改包 -qi 包名 查询包信息 -ql 软件包 包中所有的文件以及目录位置,-qf 路径 查找某个文件是属于那个包的]
  • 返回的结果:包名称-版本-软件适用的操作系统和版本(其中noarch表示通用)
  • 例如:pcsc-lite-libs-1.8.8-8.el7.x86_64
  • rpm -e [-nodeps 无视其他包的依赖,强制删除] 包名称 卸载某个包
  • rpm -[参数:i-安装 v-提示 h-进度条]

yum包管理

yum能够从指定的服务器上自动下载并获得软件包,并自动处理依赖关系,下载该包所有的依赖

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第一部分:常用命令 常用命令/文件处理 0:基础功能 1:ls 显示文件目录 语法:ls 选项[-ald][文件或目录] 2:cat 显示文件内容(内容少适合) 语法:cat[文件名] 3:tac 显示文件内容 语法:tac[文件名] 4:more 分页显示文件内容(只能往下翻页,不能往上反) 语法:more[文件名] 5:less 分页显示文件内容(上下翻页) 语法:less[文件名] 6:head 显示文件前面几行 语法:head[文件名] 7:tail 显示文件后面几行 语法:tail[文件名] 8:touch 创建空文件 语法:touch[文件名字] 9:mkdir 创建新目录 语法:mkdir -p 目录 10:cd 切换目录 语法:cd 目录 11:pwd 显示当前目录的绝对路径 语法:pwd 12:rmdir 删除空目录 语法:rmdir 目录名字 13:rm 删除文件或目录 语法:rm -rf[文件或目录] 14:cp 复制文件或目录 语法:cp -rp[源文件或目录][目标目录] 15:scp 远程和本地互传文件 语法:scp [参数] [原路径] [目标路径] 16:mv 剪切文件或该名 语法:mv[源文件或目录][目标目录] 17:ln 生成连接文件 语法:ln -s[原件名][目标文件] 常用命令/文件搜索 1:find 文件搜索 语法:find [搜索范围][比配条件] 2:locate 在文件资料库中查找文件 语法:locate 文件名 3:which 搜索命令所在目录级别名信息 语法:which[命令名称] 4:whereis 搜索命令所在目录级帮助文档路径 语法:whereis[命令名称] 5:grep 在文件中搜索字串匹配的行并输出 语法:grep -iv[指定字串][文件] 6:uname 显示当前操作系统名称 常用命令/压缩解压 1:gzip 压缩文件 语法:gzip [文件] 2:gunzip 解压缩.gz文件 语法:gunzip [压缩文件] 3:tar 打包目录 语法:tar 选项[-zcf][压缩后文件名字][目录] 4:zip 压缩文件或目录 语法:zip 选项[-r][压缩后文件名字][文件或目录] 5:unzip 压缩文件或目录 语法:unzip [压缩文件] 6:bzip2 压缩文件 语法:bzip2 选项[-k][文件] 7:bunzip2 解压缩 语法:bunzip2 选项[-k][解压文件] 常用命令/网络 1:write 给在线用户发消息 语法:write 2:wall 发广播消息 语法:wall [发送的消息] 3:ping 测试网络连通性 语法:ping 选项IP地址 4:ifconfig 查看和设置网卡信息 语法:ifconfig [网卡名称] [IP地址] 5:mail 查看发送电子邮件 语法:mail [用户名] 6:last 列出目前与过去登陆系统的用户信息 语法:last 7:lastlog 检查某用户上次登陆的时间 语法:lastlog 8:traceroute 显示数据包到主机间的路径 语法:traceroute 网址 9:netstat 显示网络相关信息 语法:netstat [-tulrn] 10:setup 配置网络 语法:setup 11:mount 挂载 语法:mount [-t 文件系统] 设备文件名挂载点 12:nmap 端口扫描 13:ifup/ifdown 启动/禁止网卡 常用命令/关机重启 1:shutdown 关机或重启 语法:shutdown [选项] 时间 2:halt 关机 语法:halt 3:poweroff 关机 语法:poweroff 4:init 关机或重启 语法:init [0~6]数字 5:reboot 重启 语法:reboot 6:logout 退出终端 语法:logout 常用命令/帮助 1:man 获得帮助信息 语法:man [命令或配置文件] 2:whatis 获得帮助简短信息 语法:whatis 命令 3:apropos 查看配置文件信息 语法:apropos 配置文件 4:--help 查看命令主要选项 语法:命令 --help 5:info 获取帮助信息 语法:info 命令 6:help 获取Shell内置命令的帮助信息 语法:help 命令 7:apt-get 安装卸载程序 第二部分:文件系统 文件系统/文件系统 0:tree 以树形结构显示文件目录结构 1:分区和文件系统 2:文件系统常用命令 df [选项][挂载点] //统计文件系统占情况 du [选项][目录或文件] //统计目录或文件大小 df和du命令的区别 fsck [选项] 分区设备文件名 //文件系统修复命令 dumpe2fs 分区设备文件名 //显示磁盘状态命令 3:挂载命令 mount [选项] 设备文件名 挂载点 4:挂载光盘与U盘 文件系统/fdisk分区 1:fdisk命令分区过程 2:分区自动挂载与fstab文件修复 文件系统/swap分区 1:free 查看内存与swap分区使用状况 2:创建swap分区或开机自动挂载 第三部分:用户权限 用户权限/用户管理命令 1:useradd 添加新用户 语法:useradd [选项] 用户名 2:passwd 设置用户密码 语法:passwd [选项] 用户名 3:usermod 修改用户信息 语法:usermod [选项] 用户名 4:chage 修改用户密码状态 语法:chage [选项] 用户名 5:userdel 删除用户 语法:userdel [-r] 用户名 6:id 查看用户id 语法:id 用户名 7:su 切换用户身份 语法:su [选项]用户名 8:env 查看用户环境变量 语法:env 9:who 查看登陆用户信息 语法:who 10:w 查看登陆用户详细信息 语法:w 用户权限/用户和用户组管理 1:用户配置文件 1.1:/etc/passwd 用户基本信息文件 1.2:/etc/shadow 影子文件(真正密码,root可以看) 1.3:/etc/group 组信息文件 1.4:/etc/gshadow 密码文件 2:用户管理相关文件 2.1:用户的家目录 2.2:用户的邮箱 /var/spool/mail/用户名/ 2.3:用户模板目录 /etc/skel/ 3:用户管理命令 4:用户组管理命令 第四部分:权限管理 权限管理/权限管理 0:创建用户/添加组 1:chmod 改变文件或目录权限 语法:chmod [{ugoa}{+-=}{rwx}][文件或目录] 2:chown 改变文件或目录所有者 语法:chown [用户][文件或目录] 3:chgrp 改变文件或目录的所属组 语法:chgrp [用户组][文件或目录] 4:umask 显示或设置文件缺省权限 语法:umask[-S] 权限管理/文件特殊权限 1:SetUID 可执行的二进制文件(u:w=s 4) 2:SetGID 可执行的二进制文件或目录(g:r=s 2) 3:Sticky BIT 只对目录有效(o:x=t 1) 权限管理/文件系统属性chattr权限 1:chattr 文件系统属性权限 2:lsattr 查看文件系统属性 权限管理/系统命令sudo权限 1:sudo 权限 权限管理/ACL 权限 1:ACL权限开启 2:查看与设定ACL权限 3:最大有效权限与删除ACL权限 4:默认ACL权限和递归ACL权限 5:删除ACL权限 第五部分:系统管理 系统管理/工作管理 1:把进程放入后台(&,ctrl+z) 2:查看后台的工作 语法:jobs [选项] 3:将后台暂停的工作恢复到前台执行 语法:fg %工作号 4:把后台暂停的工作恢复到后台执行 语法:bg %工作号 系统管理/进程管理 1:进程查看 2:进程管理 2.1:判断服务器健康状态 语法:top [选项] 2.2:查看系统中所有进程 语法:ps [选项] 2.3:查看进程数 语法:pstree [选项] 3:终止进程 3.1:kill [选项] //终止进程 3.1:killall [选项][信号] 进程名 //按照进程名杀死进程 3.1:pkill [选项][信号]进程名 //按照进程名终止进程 系统管理/系统定时任务 1:crond服务管理与访问控制 语法:crontab [选项] 系统管理/系统资源查看 1:vmstat命令监控系统资源 语法: vmstat 刷新延时 刷新次数 2:dmesg开机时内核检测信息 语法: dmesg 3:free查看内存使用状态 语法: free [选项] 4:查看CPU信息 /proc/cpuinfo 5:uptime启动时间和平均负载 语法: uptime 6:uname查看系统与内核相关信息 语法: uname [选项] 7:判断当前系统的位数(32位或64位..) 8:查看当前Linux系统的发行版本 语法: lsb_release -a 9:lsof列出进程打开或使用的文件信息 语法: lsof [选项] 10:date 第六部分:服务管理 1:服务简介与分类 2:RPM包安装服务的管理 2.1:独立服务的管理 2.2:基于xinetd服务的管理 3:源码包安装服务管理 3.1:源码包安装服务的启动 3.2:源码包服务的自启动 3.3:让源码包服务被服务管理器命令识别 第七部分:启动管理 启动管理/CentOS 6.x启动管理 1:系统运行级别 1:运行级别(0~6,7个级别) 2:查看运行级别(runlevel,init) 3:系统默认运行级别(/etc/inittab) 2:系统启动过程 1:initramfs内存文件系统 2:调用/etc/init/rcS.conf配置文件 1:先调用/etc/rc.d/rc.sysinit 2:再调用/etc/inittab确定系统默认运行级别 3:调用/etc/rc.d/rc文件 启动管理/启动引导程序grub 1:grub配置文件 2:grub加密与字符界面分辨率调整 启动管理/系统修复模式 1:单用户模式 2:光盘修复模式 3:Linux的安全性 第八部分:日志管理 日志管理简介 1:日志服务 2:rsyslogd的新特点 3:确定服务启动 4:常见日志的作用(lastb,lastlog,last) 5:其他日志 日志-轮替 1:日志文件的命名规则 2:logrotate配置文件 3:把apache日志加入轮替 4:logrotate日志轮替 语法 logrotate [选项] 配置文件名 rsyslogd-日子服务 1:日志文件格式 2:/etc/rsyslog.comf配置文件 第九部分:软件包管理 软件包管理\软件包管理 1:软件包管理简介 1:源码包(源代码安装包,手动安装) 2:二进制包(RPM包,系统默认包) 2:RPM包管理-rpm命令管理 1:RPM包命名规则 2:RPM包依赖性 3:RPM包管理-yum在线管理 1:IP地址配置和网络yum源 2:光盘yum源搭建 4:源码包管理 1:源码包和RPM包区别 2:源码包安装过程 5:脚本安装包与软件包选择 软件包管理/软件包管理命令 1:RPM包管理 rpm命令管理 命令 1:安装 rpm -ivh 包全名 2:升级 rpm -Uvh 包全名 3:卸载 rpm -e 包名 4:查询 rpm -q.. 5:校验 rpm -V 已安装的包名 6:文件提取 rpm2cpio 包全名 | cpio -idv .文件绝对路径 2:rpm包管理 yum在线管理 命令 1:查询 yum list 2:安装 yum -y install 包名 3:升级 yum -y update 包名 4:卸载 yum -y remove 包名 5:软件组管理 yum grouplist 第十部分:备份与恢复 备份与恢复/备份的概述 1:Linux系统需要备份的数据 2:安装服务的数据 3:备份策略 1:完全备份 2:增量备份 3:差异备份 备份与恢复/dump和restore命令 1:dump备份数据 2:restore恢复命令 第十一部分:shell

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值