Linux笔记

发布于 2024-02-16  332 次阅读


Linux 系统目录

  •  /bin [常用] -> usr/bin、/usr/local/bin # 这个目录存放着最经常使用的命令
  • /boot [常用] # 内核及引导系统程序所在的目录,存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件
  • /dev # 所有设备文件的目录(如磁盘、光驱等),类似于windows的设备管理器,把所有的硬件用文件的形式存储
  • /etc [常用] # 配置文件默认路径、服务启动命令存放目录
  • /home [常用] # 用户家目录,存放普通用户的主目录,在Linux中每个用户都有一个自己的目录,一般该目录名是以用户的账号命名 root用户为/root
  • /lib -> usr/lib # 32位库文件存放目录
  • /lib64 -> usr/lib64 # 64位库文件存放目录
  • /media [常用] # 媒体文件存放目录,linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下
  • /mnt [常用] # 临时挂载设备目录
  • /opt # 自定义软件安装存放目录,这是给主机额外安装软件所存放的目录。如安装ORACLE数据库就可放到该目录下。默认为空
  • /usr/local [常用] #这是另一个给主机额外安装软件所安装的目录。一般是通过编译源码方式安装的程序
  • /root [常用] # 该目录为系统管理员,也称作超级权限者的用户主目录
  • /run # 系统运行时产生临时文件,存放目录
  • /sbin -> usr/sbin # 系统管理命令存放目录
  • /proc [不能动] # 进程及内核信息存放目录,这个目录是一个虚拟的目录,它是系统内存的映射,访问这个目录来获取系统信息
  • /srv [不能动] # 该目录存放一些服务启动之后需要提取的数据
  • /sys [不能动] # 系统使用目录
  • /tmp # 临时文件目录,这个目录是用来存放一些临时文件的
  • /usr [常用] # 系统命令和帮助文件目录,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的programfiles目录。
  • /lost+found 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件
  • /var[常用] # 存放内容易变的文件的目录,这个目录中存放着在不断扩充着的东西,习惯将经常被修改的目录放在这个目录下。包括各种日志文件

关机&重启命令

      sync     把内存的数据同步到磁盘
logout 即可注销用户  logout注销指令在图形运行级别无效,在运行级别3下有效
1)shutdown    -h   now  立该进行关机
2)shudown    -h     1             hello,1分钟后会关机了
3)shutdown -r now  现在重新启动计算机
4)halt     关机,作用和上面一样
5)reboot     现在重新启动计算机

运行级别说明:常用运行级别是3和5

0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启

设置默认目标

multi-user.target  =  analogous to runlevel 3
graphical.target     =  analogous to runlevel 5
To view current default target,run:要查看当前默认目标,请运行
systemctl get-default
To set a default target,run:要设置默认目标,请运行:
systemctl set-default TARGET.target

用户管理

1)useradd   用户名     添加用户
2)userdel    用户名     删除用户
3)passwd    用户名     指定/修改密码
4)IP    用户名        查询用户
5)su - 切换用户名       切换用户
6)who am I     查看当前用户/登录用户
7)groupadd  组名    新增组
8)groupdel 组名    删除组
9)usermod   -g    用户组  用户名 修改用户的组

文件目录

1)pwd   显示当前工作目录的绝对路径
2)ls  [选项]  [目录或是文件]
-a:显示当前目录所有的文件和目录,包括隐藏的。
-l:以列表的方式显示信息
-lh :看清楚
3)cd  [参数](功能描述:切换到指定目录)
cd~或者cd:回到自己的家目录,比如你是root,cd~到root
cd..回到当前目录的上一级目录

4)mkdir [选项] 要创建的目录    创建目录
-p 创建多级目录
5)rmdir[选项]要删除的空目录   删除空目录
如果需要删除非空目录,需要使用rm -rf要删除的目录
6)touch 文件名称        创建空文件
7)cp[选项]source dest     指令拷贝文件到指定目录
-r :递归复制整个文件夹
强制覆盖不提示的方法:cp          ,cp   -r /home/bbb/opt
8)rm[选项]要删除的文件或目录   指令删除文件或目录
  -r:  递归删除整个文件夹
   f:强制删除不提示
9)mv        移动文件与目录或重命名
10)cat[选项]要查看的文件   查看文件内容
-n 显示行号
11)|more
more  要查看的文件
   less  要查看的文件
12)echo输出内容到控制台
13)head  (功能描述:查看文件头10行内容)
   head-n5文件    (功能描述:查看文件头5行内容,5可以是任意行数)
14)tail文件    (功能描述:查看文件尾10行内容)
tail-n5文件 (功能描述:查看文件尾5行内容,5可以是任意行数)
tail-f文件   (功能描述:实时追踪该文档的所有更新)
15)>输出重定向和>>追加

组管理和权限管理

groupadd 组名 创建组
ls -ahl 查看文件所有者
chown 用户名 文件名 修改文件所以者
chgrp 组名 文件名  修改文件/目录所在的组

文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消
u:所有者    g:所有组    o :其他人  a:所有人
r=4    w=2    x=1        rwx=4+2+1=7
chmod u-rwx,g-rx,o-x     文件目录名
相当于chmod  751    文件/目录名

ls -lh 显示权限
chmod 修改权限
chown newowner   文件/目录     【改变所有者】
-R 如果是目录则使其下所有子文件或目录递归生效
chgrp newgroup    文件/月录    【改变所在组】

定时任务调度

crond任务调度
crontab[选项]
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务

at定时任务
ps-ef | grep atd 可以检测atd是否在运行

Linux磁盘分区、挂载

命令: Isblk 或者 lsblk -f  查看所有设备挂载情况
fdisk     /dev/sdb   开始对/sdb分区
m 显示命令列表
p 显示磁盘分区同fdisk-l
n 新增分区
d 删除分区
W 写入并退出
mkfs-t ext4  /dev/sdbl   格式化磁盘
其中ext4是分区类型
mount  设备名称  挂载目录  挂载:将一个分区与一个目录联系起来,
例如:mount  /dev/sdb1   /newdisk
umount设备名称  或者  挂载目录       卸载
例如:umount /dev/sdb1 或者 umount   /newdisk
用命令行挂载,重启后会失效
永久挂载:通过修改/etc/fstab实现挂载
添加完成后执行mount-a即刻生效
df -h 查询系统整体磁盘使用情况
du -h 查询指定目录的滋盘占用情况
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
--max-depth=1子目录深度
-c 列出明细的同时,增加汇总值
Is  -l   /opt  grep" ^  - "   |wc    -l    统计/opt文件夹下文件的个数
ls - IR   /opt  | grep "^d"  |  wc  -l  统计/ot文件夹下目录的个数,包括子文件夹里的
tree /home  以树状显示目录结构tree目录   如果没有tree,则使用yum install tree安装

网络配置

查看ip地址
ip a
ip addr
ping网络(测试网络连通)
ping 目标机器的ip
ifconfig 查看linux的网络配置
vi /etc/sysconfig/network-scripts/ifefg-ens33 修改配置文件
IPADDR=
GATEWAY=
DNS1=
hostname 设置主机名    修改文件 /etc/hostname
C:WindowsSystem32driversetchosts   设置hosts映射
linux 在/etc/hosts文件指定
ipconfig /displaydns    DNS域名解析缓存
ipconfig  /flushdns       手动清理dns缓存

进程管理

ps -aux   | grep xxx,比如我看看有没有sshd服务
ps-ef是以全格式显示当前所有的进程
-e显示所有进程。f全格式
kill 「选项]进程号(功能描述:通过进程号杀死/终止进程)
kllall 进程名称(功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
-9:表示强迫进程立即停止
pstree[选项],可以更加直观的来看进程信息
-p:显示进程的PID
-u:显示进程的所属用户

服务管理

service 服务名 [start|stop|restart | reload|status]
service指令管理的服务在/etc/init.d查看
chkconfig  --list [l grep xxx]  查看服务
chkconfig -level      5  服务名     on/off
systemctl管理指令
systemctl[start|stop|restart|status]服务名
systemctl指令管理的服务在usr/lib/systemd/system查看
systemctl设置服务的自启动状态
systemctl list-unit-files [|grep服务名](查看服务开机启动状态
systemctl enable 服务名(设置服务开机启动)
systemctl disable 服务名(关闭服务开机启动)
systemctl is-enabled 服务名(查询某个服务是否是自启动的)
firewall指令
firewall-cmd--permanent--add-port=端口号/协议  打开端口:
firewall-cmd--permanent--remove-port=端口号/协议  关闭端口:
firewall-cmd--reload                                     重新载入,才能生效:
firewall-cmd--query-port=端口/协议    查询端口是否开放

动态监控进程

top[选项]
-d秒数指定top命令每隔几秒更新。默认是3秒
-i使top不显示任何闲置或者僵死进程。
-p 通过指定监控进程ID来仅仅监控某个进程的状态。
P以CPU使用率排序,默认就是此项
M以内存的使用率排序
N以PID排序
q退出top
u:然后输入“u”回车,再输入用户名                        监视特定用户
k:然后输入“k”回车,再输入要结束的进程ID号  终止指定的进程
netstat[选项]  监控网络状态
-an 按一定顺序排列输出
-p 显示哪个进程在调用

压缩和解压类

gzip用于压缩文件,gunzip用于解压的
gzip文件(功能描述:压缩文件,只能将文件压缩为*gz文件)
gunzip文件gz(功能描述:解压缩文件命令)

zip用于压缩文件,unzip心用于解压的,这个在项目打包发布中很有用的
zip[选项]XXX.zip将要压缩的内容(功能描述:压缩文件和目录的命令)
-r:递归压缩,即压缩目录
unzip[选项]XXX.zip(功能描述:解压缩文件)
-d<目录>:指定解压后文件的存放日录

tar指令是打包指令,最后打包后的文件是.tar.gz的文件。
tar[选项]XXX.tar.gz打包的内容(功能描述:打包目录,压缩后的文件格式.tar.gz)
-c产生.tar打包文件
-v显示详细信息
-f指定压缩后的文件名
-z打包同时压缩
-x解包tar文件

RPM与YUM

rpm -qa  |grep xx  :          查询己安装的rpm列表
rpm -q  软件包名:      查询软件包是否安装
rpm -qi  软件包名:     查询软件包信息
rpm -ql  软件包名:     查询软件包中的文件
rpm -qf 文件全路径名:   查询文件所属的软件包
rpm -e RPM包的名称 :     卸载rpm包
--nodeps 就可以强制删除
rpm -ivh RPM包全路径名称  : 安装rpm包
i=install安装
v=verbose提示
h=hash进度条

yum list|grep xx 软件列表    查询yum服务器是否有需要安装的软件
yum install xxx 下载安装   安装指定的yum包
後悔しない
最后更新于 2024-04-14