linux点滴yan

递归删除node_modules
find ./ -type d -name ‘node_modules’ -exec rm -rf {} +

运维学习
进程被杀死的几种命令

https://blog.csdn.net/whdxjbw/article/details/80681191

lsof -i:{端口号}
netstat -tunlp|grep {port}
----------------------------------------------
ps -ef | grep {programName}
kill -9 {PID}
# 查看详细内存占用
ps aux -u root | grep {programName}
----------------------------------------------
pgrep命令的p表明了这个命令是专门用于进程查询的grep。
pgrep {programName}
kill -9 {PID}
Linux的五个查找命令

https://blog.csdn.net/jays_/article/details/90172942

mv命令 mv -f websocktt/* ./websock/

mv命令是不能带有-r的。

rsync和scp cp -u 也有类似效果
rsync和scp在文件夹均不存在时,执行时间相差不大,但是文件夹存在的情况下差异很大。原因是scp是复制:若目的地文件不存在则新建,若存在则覆盖。而rsync是同步,比较两边文件是否相同,相同的话,就什么都不做,若存在差异就直接更新。
起到同步的作用时用rsync会快一些,起到复制作用时两者均可(目的地无文件)。视情况来选择rsync或scp。
树明聊运维

http://118.190.209.153:4000/
ps -ef | grep node
kill -9 12312

运维相关的

apt-get install nginx

du -h 文件名字 或者 文件夹的名字

4.0K yantest.md

head -n 3
tail -n 10
***** tail  -f   等于--follow=descriptor,根据文件描述进行追踪,当文件改名或删除后,停止追踪。
***** tail -F 等于 --follow=name ==retry,根据文件名字进行追踪,当文件改名或删除后,保持重试,当有新的文件和他同名时,继续追踪
***** tailf 等于tail -f -n 10(tail -f或-F默认也是打印最后10行,然后追踪文件),与tail -f不同的是,如果文件不增长,它不会去访问磁盘文件,所以tailf特别适合那些便携机上跟踪日志文件,因为它减少了磁盘访问,可以省电
文件书写

cat tt.js > tt2.js
echo fff > aa.js
dd if=./tt2.js of=./tt.js

linux目录
boot    存放启动文件
dev     存放设备文件
etc     存放配置文件
home    普通用户家目录,以/home/$username的方式存放
media   移动存储自动挂载目录,/media/$device_name的方式来存放
mnt     手动挂载目录
opt     三方软件安装目录
proc    内存系统文件
root    管理员家目录
run     里面的东西是系统运行时需要的, 不能随便删除. 但是重启的时候应该抛弃. 下次系统运行时重新生成
srv     服务相关数据
sys     系统文件
tmp     临时文件夹
usr     存放库文件、文档、命令、用户数据等
var     日志存放
lib     库文件
linux/unix设计思想:

1) 程序应该小而专一,程序应该尽量的小,且只专注于一件事上,不要开发那些看起来有用但是90%的情况都用不到的特性;
2) 程序不只要考虑性能, 程序的可移植性更重要,shell和perl,python等脚本相比c有更好的移植性;
3) 一切皆文件,尽量使用文本文件来存储数据,避免使用二进制文件,因为文本文件可读性强,且已经有跟多的工具来处理,例如awk,sed,grep等;
4) 让每个程序都成为过滤器,程序需要与其他的工具一起配合使用,管道的支持是非常的重要的;
5) 任何的程序都需要考虑被批处理执行,尽量避免强制的用户交互或界面;

linux命令
type 区分是linux内核命令还是外部命令
linux命令存放路径 echo $PATH
linux基本命令
1)清屏命令:clear      快捷键  ctrl+l
2)帮助命令:man
3)进入文件夹命令: cd
4)列出当前目录内容命令:ls   [-a -l -d ]
5)显示主机名:hostname
6)显示日期时间:date [-s %F]
7)显示日历:cal 
8)计算器:bc
9)重启命令:reboot     shutdown -r      init 6
10)注销命令:logout
11)关机命令:halt      shutdown -h         init 0
12) 显示当前操作系统和机器的信息: uname
13) 显示当前路径: pwd
man帮助命令

数字"1"表示用户命令
数字"2"表示系统调用
数字"3"表示C语言库函数
数字"4"表示设备或特殊文件
数字"5"表示文件格式和规则
数字"6"表示游戏及其他
数字"7"表示宏、包及其他杂项
数字"8"表示系统管理员相关的命令

ls列出当前目录内容命令
uname显示当前操作系统和机器的信息
#uname  -a   显示所有信息
#uname  -p   显示处理器类型
#uname  -m   显示机器硬件信息
#uname  -r    显示内核版本
文件的操作
文件的新建:touch filename
文件的改名:mv
文件的查看:ls
文件内容的查看:cat
文件的删除:rm     [-r -f]
文件的拷贝:cp     [-r -f -p]
文件的移动:mv

文件类型
-  普通文件
d 目录
l 链接文件
b 设备文件
c 字符设备
s 套接字文件
p 管道文件
用户和组
linux用户分类

超级管理员: UID0 root用户拥有至高无上的命令,root用户不能改名

系统用户:UID小于1000,用于管理服务,一般不允许登陆

普通用户:UID大于或等于1000,权限较小,允许登陆,只能使用bin下命令
hostname 和 hostnamectl set-hostname manage01

不会及时更新,只要就会及时更新
在这里插入图片描述

pwd -P

在这里插入图片描述

ls -t 根据更改时间进行输出
ls -d

在这里插入图片描述

ls -F 显示文件的类型

在这里插入图片描述

ls -L 可以看到链接指向的真实大小,而不是链接的大小

在这里插入图片描述

账号分类

在这里插入图片描述

useradd

在这里插入图片描述
在这里插入图片描述

usermod 和 userdel

在这里插入图片描述

groupadd

在这里插入图片描述

groupmod groupdel

在这里插入图片描述

passwd gpasswd

在这里插入图片描述
在这里插入图片描述

密码管理的shadow

在这里插入图片描述

ansible
chmod

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

chmod 命令详解
umask

在这里插入图片描述

特殊权限位

除了普通的rwx权限外,Linux中还有另外三种特殊权限:SUID,SGID以及SBIT
特定权限 chattr +a chattr +i
https://blog.51cto.com/13570215/2063084

dnf (yum的取代工具)

https://ipcmen.com/dnf

https://blog.csdn.net/sinat_34241861/article/details/109453437

ubuntu中安装 yum, 在安装epel
在这里插入图片描述
https://medium.com/today-i-solved/how-to-deploy-next-js-on-aws-ec2-with-ssl-https-7980ec6fe8d3

epel
curl elinks 文字浏览器 wget下载

打印打印打印打印打印打印打印打印打印打印
linux目录介绍
boot    存放启动文件
dev     存放设备文件
etc     存放配置文件
home    普通用户家目录,以/home/$username的方式存放
media   移动存储自动挂载目录,/media/$device_name的方式来存放
mnt     手动挂载目录
opt     三方软件安装目录
proc    内存系统文件
root    管理员家目录
run     里面的东西是系统运行时需要的, 不能随便删除. 但是重启的时候应该抛弃. 下次系统运行时重新生成
srv     服务相关数据
sys     系统文件
tmp     临时文件夹
usr     存放库文件、文档、命令、用户数据等
var     日志存放
lib     库文件
使用type命令来区分命令是内部还是外部命令
linux命令存放路径 echo $PATH

bin的命令任何人都可以使用,sbin的命令称为特权命令,只能管理用使用

linux基本命令
1)清屏命令:clear      快捷键  ctrl+l
2)帮助命令:man
3)进入文件夹命令: cd
4)列出当前目录内容命令:ls   [-a -l -d ]
5)显示主机名:hostname
6)显示日期时间:date [-s %F]
7)显示日历:cal 
8)计算器:bc
9)重启命令:reboot     shutdown -r      init 6
10)注销命令:logout
11)关机命令:halt      shutdown -h         init 0
12) 显示当前操作系统和机器的信息: uname
13) 显示当前路径: pwd
man帮助命
ls列出当前目录内容命令
ls –F    文件夹后加/显示
ls –x    按水平对齐方式列出档案
ls –m    以”,”隔开档案
ls –t    按时间排序档案
ls –a    显示隐含档案
ls –l    显示详细信息,此命令等同于ll。
ls –d    显示目录而不是其内容
ls  -h    以KMB的形式进行显示
ls -R
uname显示当前操作系统和机器的信息
head命令 head - 输出文件的开始部分
tail命令 tail -f 输出文件的末尾部分
rmdir命令 -p 递归删除目录
linux用户

a =====用户账号
超级用户 , 普通用户(系统用户,真实用户)
b =====群组账号
超级群组用户,系统群组,用户自定义群组

useradd

useradd -u 1500 -g hello -d /home/hello -s /bin/bash -c “this is a test user” hello天易IT学院

usermod (-L锁定 -U解除锁定)
usedel

组账号管理

groupadd 建立群主
groupmod 修改群主名称
groupdel 删除
passwd gpasswd
权限

chmod命令
chown命令
chgrp命令

linux特殊权限

之前我们提到了特殊权限有三个,这三个特殊权限是在可执行程序运行时影响操作权限的,它们分别是SUID,SGID,sticky-bit位
SUID当一个设置了SUID 位的可执行文件被执行时,该文件将以所有者的身份运行,也就是说无论谁来执行这个文件,他都有文件所有者的特权。任意存取该文件拥有者能使用的全部系统资源。如果所有者是 root 的话,那么执行人就有超级用户的特权了。> > SGID当一个设置了SGID 位的可执行文件运行时,该文件将具有所属组的特权,任意存取整个组所能使用的系统资源;若一个目录设置了SGID,则所有被复制到这个目录下的文件,其所属的组都会被重设为和这个目录一样,除非在复制文件时保留文件属性,才能保留原来所属的群组设置。
stickybit对一个文件设置了sticky-bit之后,尽管其他用户有写权限,也必须由属主执行删除、移动等操作;对一个目录设置了sticky-bit之后,存放在该目录的文件仅准许其属主执行删除、移动等操作。
chmod u+s file1
chmod g+s file1
chmod o+t file1
chmod 7755 file1

linux隐藏权限

chattr +AaiSd file1
lsattr

acl权限

setfacl -m u:oracle :rw file1
ll 查看的时候多了一个+
getfacl

压缩包和软件包管理

gzip,bzip2,xz
文件夹压缩tar
压缩 tar -czf etc.tar.gz etc
解压 tar -tf etc.tar.gz

rpm => yum => dnf
服务管理

一致运行在后端的,等待其他软件调用,这种程序称为服务。
systemV与init
service servername start/stop/status
指定某一个服务在某一界别运行
查看某一个 服务在哪个级别运行

服务分类

功能分:系统服务,网络服务
启动方法分:独立系统服务,临时服务
httpd atd netstat

手动解决服务的依赖关系
运行级别分类

关机,单用户,无网络的用户,字符模式,保留,图形模式,重启

systemd与unit

从CentOS7开始SystemV,也就是init服务,被效率更高的systemd所替代,而这个systemd对应的管理命令就是systemctl,并且systemctl命令也兼容了service(service命令做为systemd的入口,是systemctl命令的封装)。
systemctl -t help
systemctl start servername

start               启动服务
stop                停止服务
restart             重启服务(没启动的服务会启动)
try-restart             只重启正在运行的服务(没有运行则不启动)
reload              重载配置文件(修改完服务的配置文件后使用)
status              检查服务状态
is-active           检查服务是否已经启动
enable              设置服务开机时启动
disable             设置服务开机时不启动
is-enabled          查看服务是否开机自动启动
mask                            屏蔽一个服务
unmask  取消屏蔽
systemctl command --type=xxx --all

list-units 查看所有加载到内存中的单元
list-unit-files 查看系统中所有安装的单元文件(存放在/usr/lib/systemd/system)的启用状态
–type=xxx 单元类型
–all 列出系统中所有加载的,不管状态为何
切换运行级别
systemctl get-default
systemctl set-default multi-user.target 设置默认的
systemctl isolate multi-user.target 切换
systemctl 还提供了几个简单命令
systemctl poweroff 关机
systemctl reboot 重启
systemctl suspend 挂起
systemctl hibernate 休眠
systemctl rescue 进入到救援模式
systemctl emergency 进入到紧急模式
查看服务间的依赖关系
systemctl list-dependencies multi-user.target

服务与端口

cat /etc/services | more
服务名称 端口号/协议 描述
netstat -antulp

进程管理

& 或者ctrl + z都能放到后台
fg bg
jobs

Linux笔记:后台运行, fg, bg, jobs

管理后端工作

kill 工作序号
需要注意的是,kill后面如果加的是%num代表杀死后台指定序号的工作,如果不加%代表的是杀死指定进程号的进程,这两个是有区别的
kill -9 序号
killman

进程的查看与管理

ps
ps aux 查看系统后台的所有进程
top
top -d -2 -p 3562
pstree

top详情
进程的优先级

之前我们在查看进程的时候看到两个东西,一个是PRI一个是NI,这两个东西是用来控制进程的优先级,而优先级又决定了CPU先处理谁的数据,后处理谁的数据。

nice -n 10 vim 2&
renice -10 115098

网络管理

nmcli
nmcli -h
nmcli connection -h
nmtui

日志管理

配置文件: /etc/rsyslog.conf
日志文件存放位置: /var/log/
执行文件: /usr/sbin/rsyslogd
日志分析工具 logwatch
web浏览器端分析页面 rsyslog + mariadb + loganalyzer

磁盘管理

术语 磁盘,磁头,磁道,磁柱
衡量磁盘的性能指标
IOPS(每秒的读写次数)
throughput (吞吐量单位时间内成功传输的数据数量)
文件系统(数据存储的方式和读写的方式)
page cache
文件系统 ext4,xfs windows的是ntfs
磁盘的初始化方法 MBR 和 GPT(> 2TB)

挂载

linux中设备不能直接使用,需要挂载到文件夹才可以。

lsblk 查看块设备

df -h 查看正在挂载的设备情况

fdisk /dev/sdb 开始分区的命令
mount /dev/sdb1 /home/newdisk

挂载的详细方式
启动流程

CentOS8启动流程解析
1、接通电源(系统固件(UEFI或BIOS初始化)运行开机自检,并初始化部分硬件)
2、系统固件搜索可启动设备(启动设备可能是UEFI启动固件中配置的,也可能是按照BIOS中配置的顺序搜索所有磁盘上的主启动记录(MBR),使用grub2-install)
3. 读取启动加载器(boot loader)(系统固件会从MBR中读取启动加载器,然后将控制权交给启动加载器,在CentOS8中启动加载器为GRUB2)
4. grub.cfg(GRUB2将从/boot/grub2/grub.cfg文件中加载配置并显示一个菜单,在这个菜单中可以选择要启动的内核,我们可以使用grub2-mkconfig命令配合/etc/grub.d/目录和/etc/default/grub文件生成grub.cfg文件。)
5 initramfs(在选择内核或到达超时时间后,启动加载器会从磁盘加载内核(vmlinuz)和initramfs,并将它们放入内存中,initramfs中包含启动时所有必要硬件的内核模块(驱动)和初始化脚本等,使用lsinitrd和dracut命令配合/etc/dracut.conf.d/目录可以查看和配置initramfs文件)
6 启动加载器放权(启动加载器将控制权交给内核)
7 内核初始化内核会在initramfs中寻找硬件的相关驱动并初始化相关硬件,然后启动/usr/sbin/init(PID=1),在CentOS8中/sbin/init是systemd的链接
8 启动initrd.target并挂载 systemd会执行initrd.target包含的所有单元,并将根文件系统挂载到/sysroot/目录,在initrd.target启动时的依赖单元,会按照/etc/fstab设置对硬盘进行挂载
9 切换根文件系统内核将根文件系统从initramfs切换为/sysroot(硬盘上的根文件系统),systemd会找到磁盘上安装的systemd并自动重新执行

有计划的任务

atq的任务
batch:系统有空时才进行后台任务
周期性的任务 crontab anacron

局域网配置ip服务的dhcp服务
上传文件的 FTP
rsync
rsync -avzP --delete --password-file=/etc/rsync.pw hello@192.168.11.16::www /cache

rsync
参数-a  归档模式传输,相当于
-rlptgoD一起使用
-v  详细模式输出
-z  传输时进行压缩以提高效率
-r  递归传输目录及子目录,即目录下得所有目录都同样传输
-t  保持文件时间信息
-o  保持文件属主信息
-p  保持文件权限
-g  保持文件属组信息
-l  保留软连接
-P  显示同步的过程及传输时的进度等信息
-D  保持设备文件信息
-L  保留软连接指向的目标文件
--exclude=PATTERN   指定排除不需要传输的文件模式
--bwlimit=1m    限速传输
--delete    让目标目录和源目录数据保持一致
--password-file 指定密码文件位置step8   
替换某个文件下的geoJson为.json文件
#!/bin/bash
find ./100000/* -name '*.geoJson'  | while read fname
do
  echo "$fname";
  mv $fname ${fname%.geoJson}.json
done
net-tools
httpd服务

启动apach的方式 systemctl start httpd

httpd是一个开源软件,且一般用作web服务器来使用。目前最流行的web服务器软件叫做httpd,
在早期的http server就叫做apache,到了http server 2.0以后就改名为httpd了。
所以有时候听到apache服务器和httpd服务器其实都是指得是一个意思。

Linux之Httpd(Apache)服务详解
Apache(httpd)的简介、安装以及如何使用

htpasswd
lsof没有找到的时候
df -h

inux安装软件程序(Debian【aptitude】、Red Hat系统【yum】、源代码安装)————附带详细方法

centos如何安装apt?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值