Linux
文章平均质量分 64
昙花逐月
沉迷coding,无法自拔
展开
-
解决linux系统挂载NTFS格式磁盘的问题
NTFS-3G是一个开源项目,NTFS-3G是为Linux, Android, Mac OS X, FreeBSD, NetBSD, OpenSolaris, QNX, Haiku,和其他操作系统提供的一个稳定的,功能齐全,读写NTFS的驱动程序的。NTFS-3g是一个开源软件,它支持在Linux下面读写NTFS格式的分区。ntfs-3g的目的是为了持续的发展,各硬件平台和操作系统的用户需要可靠的互通与支持ntfs的驱动,ntfs-3g可以提供可信任的、功能丰富的高性能解决方案。原创 2023-03-03 10:44:13 · 4177 阅读 · 1 评论 -
Linux 磁盘空间莫名被吃掉,该怎么查?
登录服务器,通过df -Hl查看和告警信息一致,接着我们就是要找到导致磁盘空间满的目录或文件。原创 2022-11-10 23:37:23 · 666 阅读 · 0 评论 -
使用vim对比两个文件
3.3:文档合并:dp将差异点的当前文档内容合并到另外一个文档(diff put)do 将差异点的另一文档的内容拷贝到当前文档(diff get)dp 将差异点的当前文档内容应用到另一文档(diff put)2:直接对比两个文件的不同:使用diffthis分别在两个窗口输入;3.4:打开文件折叠:(文本默认将部分内容折叠,扩大视野)方式打开了两个文件file1,file2,又想比较两文件的不同。3.2:窗口跳转:ctrl-w w 跳到下一个窗口。原创 2022-09-05 09:58:27 · 5508 阅读 · 0 评论 -
vim中快速产生列项递增数列,vim生成序号
注意:默认是从文件最后一行往下递增!例如:在vim普通模式下,当我们输入。命令行模式下(普通模式下按。进入),输入下面这条命令。原创 2022-08-30 01:02:13 · 1769 阅读 · 0 评论 -
vim 插入一列序号
(f) s/{pattern}/{text}/{flags} 即substitude命令。s//\=i/ 的 {pattern} 为空,即默认当前模式,即 global 所给的模式“^”。(2) 对当前选中的文字行使用 global 命令,针对每处符合模式 “^” 的地方执行了指令: s//\=i/ | let i+=1 ,即把每处匹配到的当前模式依次替换成了 i 的值,同时把 i 的值增加 1。(d) g/{pattern}/{command} 即global命令,一段为模式,一段为命令。......原创 2022-08-30 01:05:04 · 1248 阅读 · 0 评论 -
使用ntpdate更新系统时间
ntp服务,默认只会同步系统时间。如果想要让ntp同时同步硬件时间,可以设置/etc/sysconfig/ntpd文件,在/etc/sysconfig/ntpd文件中,添加 SYNC_HWCLOCK=yes 这样,就可以让硬件时间与系统时间一起同步。转载 2022-08-20 07:30:39 · 2844 阅读 · 0 评论 -
linux如何后台运行进程,而且不随终端关闭而关闭
参考:http://www.cnblogs.com/kaituorensheng/p/3980334.html使用命令nohup:no hang up,表示关闭终端后,进程并不随着终端关闭而关闭fg、bg、jobs、&、nohup、ctrl+z命令一、&加在一个命令的最后,可以把这个命令放到后台执行,如watch -n 10 sh test.sh & #每10s在后台执行一次test.sh脚本二、ctrl + z可以将一个正在前台执行的命令放到后台,并且处于暂原创 2022-05-27 12:30:12 · 2710 阅读 · 0 评论 -
关闭linux终端还让程序继续执行的方法
一、前言我们在使用linux时,会经常要把一个程序放到后台运行,这时候就需要在程序的最后使用【&】符号,但是当直接关闭这个终端时,程序就会退出,下面我介绍5种方法,在关闭终端后程序还继续运行。二、思考首先要考虑一个问题,直接关闭终端为什么后台程序就退出了?那是因为直接关闭,终端会向当前环境启动的后台任务发送SIGHUP信号,让运行的程序挂起,那么忽略SIGHUP信号就行啦。三、nohup最常用的命令就是【nohup】,从名字就看出是否挂起运行命令,关闭终端或者退出某个账号,进程也继续保持运原创 2022-05-27 12:25:05 · 7849 阅读 · 0 评论 -
vmstat命令和iostat命令
vmstat命令和iostat命令在做数据库维护的时候,经常会查看操作系统的状态,今天我们说下常见的命令iostat和vmstat。iostat命令这个命令一般会搭配iotop命令来看,从命名中不难看出,它主要反馈的是操作系统的io信息。如果你的操作系统没有安装这个工具,可以使用下面的方法来进行安装:yum install sysstat -yiostat工具执行完毕之后,一般会对我们返回一个报告,这个报告反馈的是自从系统启动以来的很多计数器的平均值,看起来没有什么意义,我们通常更关注IO指标的持原创 2022-05-18 11:10:17 · 690 阅读 · 0 评论 -
NTP服务器搭建
NTP服务器搭建当本机时间不准确时,我们需要对时间进行校准,那么我们就需要在互联网上找到一个可以提供我们准确时间的服务器然后通过一种协议来同步我们的系统时间,那么这个协议就是NTP了因为不论我们的计算机配置多好运行时间久了都会产生误差,所以不足以给互联网上的其他服务器做NTP Server. 真正能够精确地测算时间的还是原子钟. 但由于原子钟十分的昂贵,只有少部分组织拥有, 他们连接到计算机之后就成了一台真正的NTP Server. 而我们所要做的就是连接到这些服务器上同步我们系统的时间,然后把我们自原创 2022-05-18 09:18:53 · 5897 阅读 · 0 评论 -
VMware虚拟机Host-Only(仅主机模式)
VMware虚拟机Host-Only(仅主机模式)转载于:https://www.linuxidc.com/Linux/2016-09/135521p3.htmVMware虚拟机Host-Only(仅主机模式) - happy_codes - 博客园 (cnblogs.com)三、Host-Only(仅主机模式)Host-Only模式其实就是NAT模式去除了虚拟NAT设备,然后使用VMware Network Adapter VMnet1虚拟网卡连接VMnet1虚拟交换机来与虚拟机通信的,Host-原创 2022-03-21 10:51:41 · 7083 阅读 · 0 评论 -
VMware虚拟机三种网络模式:桥接模式,NAT模式,仅主机模式
虚拟系统:CentOS 6.8在VMware虚拟网网络编辑器中我们可以看到有三个虚拟交换机分别对应不同的网络模式:VMnet0:用于桥接模式下的虚拟交换机VMnet1:用于仅主机模式下的虚拟交换机VMnet8:用于NAT模式下的虚拟交换机对应地,在Windows主机上对应虚拟了VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,至于为什么没有VMnot0的虚拟网卡,且看下文。可见物理机其实有3个IP地址:192原创 2022-03-21 10:46:27 · 13686 阅读 · 6 评论 -
Linux NFS服务器的安装与配置
一、NFS服务简介 NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法。 NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。 NFS在转载 2022-03-19 22:32:09 · 5303 阅读 · 0 评论 -
linux中的jobs管理方法
fg、bg、jobs、&、nohup、ctrl+z、ctrl+c 命令一、&加在一个命令的最后,可以把这个命令放到后台执行,如watch -n 10 sh test.sh & #每10s在后台执行一次test.sh脚本二、ctrl + z可以将一个正在前台执行的命令放到后台,并且处于暂停状态。三、jobs查看当前有多少在后台运行的命令jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated。但是如果原创 2022-03-17 16:13:24 · 634 阅读 · 0 评论 -
CentOS 7 修改时区
Linux 系统(我特指发行版, 没说内核) 下大部分软件的风格就是不会仔细去考虑向后 的兼容性, 比如你上个版本能用这种程序配置, 没准到了下一个版本, 该程序已经不见了. 比如 sysvinit 这种东西.设置时区同样, 在 CentOS 7 中, 引入了一个叫 timedatectl 的设置设置程序.用法很简单:# timedatectl # 查看系统时间方面的各种状态 Local time: 四 2014-12-25 10:52:10 CST Universal time: 四原创 2022-01-30 16:29:27 · 1159 阅读 · 0 评论 -
linux ss命令详解
ss 是 Socket Statistics 的缩写。ss 命令可以用来获取 socket 统计信息,它显示的内容和 netstat 类似。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快。当服务器的 socket 连接数量变得非常大时,无论是使用 netstat 命令还是直接 cat /proc/net/tcp,执行速度都会很慢。ss 命令利用到了 TCP 协议栈中 tcp_diag。tcp_diag 是一个用于分析统计的模块,可以获得 Linux 内原创 2022-01-05 20:06:08 · 4840 阅读 · 0 评论 -
设计shell脚本选项:getopt
设计shell脚本选项:getoptman 1 getopt翻译:https://www.cnblogs.com/f-ck-need-u/p/9757959.html写shell脚本的时候,通过while、case、shift来设计脚本的命令行选项是一件比较麻烦的事,因为Unix命令行的选项和参数自由度很高,支持短选项和长选项,参数可能是可选的,选项顺序可能是无所谓的,等等。bash下的getopt命令可以解析命令行的选项和参数,将散乱、自由的命令行选项和参数进行改造,得到一个完整的、规范化的参数列转载 2022-01-03 15:58:26 · 1788 阅读 · 0 评论 -
linux大盘格式化分区
Fdisk最大只能创建2T分区的盘,超过2T使用partedLinux 实例的磁盘管理对于 Linux 系统上的大磁盘,可以采用 GPT 分区格式, 也可以不分区, 把磁盘当成一个整体设备使用。在 Linux 上一般采用 XFS 或者 EXT4 来做大盘的文件系统。磁盘的分区管理在 Linux 上可以采用 parted 来对磁盘进行分区。通过 fdisk -l 可以查看磁盘是否存在, 由于使用的是大磁盘,fdisk 不能用来作为分区工具了,而应该使用 parted。使用 parted原创 2021-12-18 15:10:38 · 434 阅读 · 0 评论 -
使用shell脚本或命令行添加crontab定时任务
crontab 是运维过程中常用的定时任务执行工具一般情况下在有新的定时任务要执行时,使用crontab -e ,将打开一个vi编辑界面,配置好后保存退出,但是在自动化运维的过程中往往需要使用shell脚本或命令自动添加定时任务。接下来结束三种(Centos)自动添加的crontab 任务的方法:方法一:编辑 /var/spool/cron/用户名 文件,如:echo "* * * * * hostname >> /tmp/tmp.txt" >> /var/spool/cro原创 2021-12-10 19:52:59 · 5014 阅读 · 0 评论 -
shell输入内容时不显示内容
简介大家都知道当我们ssh登录linux服务器的时候输入密码密码是不显示在屏幕上的,同样在我们写shell脚本的时候在获取用户密码的时候,有时候也希望不显示密码,这个是怎么做的呢实例脚本#!/bin/bashecho "请输入密码:"stty -echoread passwordecho "密码输入完毕"echo "你的密码是" $passwordstty echo执行效果[root[@localhost](https://my.oschina.net/u/570656) home]原创 2021-12-10 15:40:43 · 1340 阅读 · 0 评论 -
linux之秘钥登录
两台主机(服务器)秘钥登录流程图我们从A主机(左边)秘钥登录到B服务器(右边)A主机生成公钥生成公钥私钥,一般不需要特殊设置一路回车默认下一步即可> ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same pass原创 2021-12-09 19:57:33 · 509 阅读 · 0 评论 -
有进程的文件被删恢复过程
手动测试一个有进程占用的文件被删除后的整个恢复过程。写个测试脚本cat > test.sh <<EOF#!/bin/bashwhile truedo echo `date "+%F %T"` "hello world,I am running..." echo `date "+%F %T"` "hello world,I am running..." echo `date "+%F %T"` "hello world,I am r原创 2021-12-09 19:55:19 · 375 阅读 · 0 评论 -
Shell $*和$@的区别
$* 和 $@ 都表示传递给函数或脚本的所有参数。当 $* 和 $@不被双引号" "包围时,它们之间没有任何区别,都是将接收到的每个参数看做一份数据,彼此之间以空格来分隔。但是当它们被双引号" "包含时,就会有区别了:"$*"会将所有的参数从整体上看做一份数据,而不是把每个参数都看做一份数据。 "$@"仍然将每个参数都看作一份数据,彼此之间是独立的。比如传递了 5 个参数,那么对于"$*"来说,这 5 个参数会合并到一起形成一份数据,它们之间是无法分割的;而对于"$@"来说,这 5 个参.原创 2021-12-07 20:17:36 · 162 阅读 · 0 评论 -
Shell脚本调试技术
前言shell编程在unix/linux世界中使用得非常广泛,熟练掌握shell编程也是成为一名优秀的unix/linux开发者和系统管理员的必经之路。脚本调试的主要工作就是发现引发脚本错误的原因以及在脚本源代码中定位发生错误的行,常用的手段包括分析输出的错误信息,通过在脚本中加入调试语句,输出调试信息来辅助诊断错误,利用调试工具等。但与其它高级语言相比,shell解释器缺乏相应的调试机制和调试工具的支持,其输出的错误信息又往往很不明确,初学者在调试脚本时,除了知道用echo语句输出一些信息外,别无它法,原创 2021-12-07 20:13:22 · 4578 阅读 · 0 评论 -
shell 脚本中日期运算
平常写shell脚本的过程中,经常要用到日期的运算,比如:日期的加减、与UTC时间换算,比较大小等等,下面就来聊一聊这些常用的日期运算日期加减秒增减[root@ecs-centos-7 ~]# date +'%Y-%m-%d %H:%M:%S' -d "70 second 2020-10-20 12:00:00"2020-10-20 12:01:10[root@ecs-centos-7 ~]# date +'%Y-%m-%d %H:%M:%S' -d "-70 second 2020-10-2原创 2021-12-07 16:31:42 · 427 阅读 · 0 评论 -
shell变量操作${}详细用法
${}基本功能一般情况下var与var与var与{var}是没有区别的,但是用${ }会比较精确的界定变量名称的范围[root@localhost ~]# A=Linux[root@localhost ~]# echo $AB #表示变量AB[root@localhost ~]# echo ${A}B #表示变量A后连接着BLinuxB除此之外${}还有很多其他功能如下:先声明测试变量:file``=``/dir1/dir2/dir3/my``.``file``.txt取原创 2021-12-06 17:22:03 · 10372 阅读 · 0 评论 -
Linux常用的软件包管理命令
RPM(红帽软件包管理器)常用的 RPM 软件包命令命令作用安装软件的命令格式rpm -ivh filename.rpm升级软件的命令格式rpm -Uvh filename.rpm卸载软件的命令格式rpm -e filename.rpm查询软件描述信息的命令格式rpm -qpi filename.rpm列出软件文件信息的命令格式rpm -qpl filename.rpm查询文件属于哪个 RPM 的命令格式rpm -qf filename原创 2021-12-02 17:11:26 · 384 阅读 · 0 评论 -
Linux重置 root 管理员密码
平日里让运维人员头疼的事情已经很多了,因此偶尔把 Linux 系统的密码忘记了(忘记密码)并不用 慌,只需简单几步就可以完成密码的重置工作。但是,如果您是第一次阅读本书,或者之前 没有 Linux 系统的使用经验,请一定先跳过本节,等学习完 Linux 系统的命令后再来学习本 节内容。如果您刚刚接手了一台 Linux 系统,要先确定是否为 RHEL 7 系统。如果是,然后再 进行下面的操作。 [root@linuxprobe ~]# cat /etc/redhat-release Red Hat Ent原创 2021-12-02 16:21:30 · 2062 阅读 · 0 评论 -
Linux 命令 su 和 sudo 的区别
su命令介绍及主要用法su 的一般使用方法是:su <user_name>或者su - <user_name>两种方法只差了一个字符 -,会有比较大的差异:如果加入了 - 参数,那么是一种 login-shell 的方式,意思是说切换到另一个用户 <user_name> 之后,当前的 shell 会加载 <user_name> 对应的环境变量和各种设置;如果没有加入 - 参数,那么是一种 non-login-shell 的方式,意思是说我原创 2021-12-01 20:16:53 · 370 阅读 · 0 评论 -
wget下载目录内的所有文件
需要下载某个目录下面的所有文件。命令如下wget -c -r -np -k -L -p http://docs.openstack.org/liberty/install-guide-rdo/在下载时。有用到外部域名的图片或连接。如果需要同时下载就要用-H参数。wget -np -nH -r –span-hosts www.xianren.org/pub/path/-c 断点续传-r 递归下载,下载指定网页某一目录下(包括子目录)的所有文件-nd 递归下载时不创建一层一层的目录,把所有的文件下原创 2021-11-22 11:20:08 · 6471 阅读 · 0 评论 -
Tcpdump 简单用法
不指定任何参数监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。tcpdump监听特定网卡tcpdump -i en0监听特定主机例子:监听本机跟主机182.254.38.55之间往来的通信包。备注:出、入的包都会被监听。tcpdump host 182.254.38.55特定来源、目标地址的通信特定来源tcpdump src host hostname特定目标地址tcpdump dst host hostname如果不指定 src 跟原创 2021-11-16 22:33:39 · 216 阅读 · 0 评论 -
OSI七层网络模型
OSI七层网络模型什么是OSI参考模型OSI(Open System Interconnect),即开放式互联,是ISO(国际标准化组织)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。具体可以见下图解密OSI参考模型下面来和大家一起细细品味着7层协议,看看这7层协议到底是啥物理层在OSI参考模型中,物理层是参考模型的最低层,也是OSI模型的第一层。物理层的主要功能是:利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。物理层的作用是实现相邻计算机原创 2021-11-16 17:14:15 · 1079 阅读 · 0 评论 -
Centos7 lvm磁盘管理详解
Centos7 lvm磁盘管理详解前言LVM 逻辑卷管理,是对磁盘分区进行管理的一种机制,建立在硬盘和分区之上,文件系统之下的一个逻辑层,可以提高磁盘分区管理的灵活性,基于lvm可以实现分区的扩容许多Linux使用者安装操作系统时都会遇到这样的困境:如何精确评估和分配各个硬盘分区的容量,如果当初评估不准确,一旦系统分区不够用时可能不得不备份、删除相关数据,甚至被迫重新规划分区并重装操作系统,以满足应用系统的需要。LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之原创 2021-11-03 17:04:35 · 4284 阅读 · 0 评论 -
Linux_逻辑卷管理实战
管理逻辑卷管理LVM的概念我们在对普通的硬盘分区,格式化和挂载对磁盘分区时,如果发现磁盘空间不够了,或者发现磁盘分配的空间太⼤ 了。如果需要重新规划硬盘的话,就需要对硬盘进⾏重新格式化,当然这样硬盘的数据也就都没有了,⽽逻辑卷就 可以完美的这个问题。逻辑卷可以很轻松的对磁盘进⾏管理,⽐如可以很轻松的增加和减少硬盘的⼤⼩。从物理层⾯考虑,使⽤逻辑卷可以针对物理磁盘,RAID阵列或者SAN磁盘等逻辑卷管理中⼏个重要的内容1、物理卷(PV):对物理设备进⾏注册,以便可以划分到卷组2、卷组(VG):由⼀原创 2021-11-03 01:08:29 · 178 阅读 · 0 评论 -
expect的安装和使用
expect的安装expect是在tcl的基础上发展起来的,所以在安装expect之前要先安装tcl。tcl安装wget http://nchc.dl.sourceforge.net/sourceforge/tcl/tcl8.4.11-src.tar.gztar -zxf tcl8.4.11-src.tar.gzcd tcl8.4.11/unix./configure --prefix=/usr/tcl --enable-sharedmakemake installcp tclUnixPo原创 2021-10-31 06:58:18 · 4582 阅读 · 1 评论 -
linux_lvm-磁盘扩容
首先:centos7系统中添加磁盘到服务器或者虚拟机流程:磁盘->创建pv->扩容vg->扩容lv->刷新挂载目录->查看结果–查看磁盘lsblk #查看扩容的磁盘为sdb–扩容lv虚拟机不重启进行磁盘识别-重新扫描scsi总线,添加scsi设备echo “- - -” > /sys/class/scsi_host/host0/scan#注 "- - -"中间有空格–建pv[root@localhost ~]``# pvcreate /dev/sdb`原创 2021-10-28 16:00:27 · 336 阅读 · 0 评论 -
vim删除重复行
vim删除重复行,网上有很多的教程,但是其实vim有一个强大的sort:删除重复行,只要输入:sort u整个世界就不重复了。就是这么简单。原创 2021-10-27 17:15:45 · 2344 阅读 · 0 评论 -
Shell 基础 -- 总结几种括号、引号的用法
Shell 基础 – 总结几种括号、引号的用法Shell 脚本中经常需要用到一些括号、引号表达式,功能各不相同,本文详细介绍一下。1、双引号 " "双引号常用于包含一组字符串,在双引号中,除了 “$”、""、" ` (反引号)"有特殊含义外,其余字符(如IFS、换行符、回车符等)没有特殊含义。$ a=3$ echo "$a"输出结果为 3,在双引号中 $ 符仍有特殊含义。2、单引号 ’ '单引号的功能与双引号类似,不过单引号中的所有字符都没有特殊含义:$ a=3$ echo '$a'原创 2021-10-27 16:46:44 · 503 阅读 · 1 评论 -
关于shell启动时调用的几个配置文件/etc/profile .profile .bash_profile .bashrc等
Linux下以.开头的文件为隐藏文件,当用户输入帐号密码登录一个用户终端的时候,那么,首先,系统会读取文件/etc/profile,加载其中的配置,/etc/profile这个文件又会调用几个文件,包括/etc/sysconfig/i18n这个文件用来设置终端的语言信息,/etc/inputrc这个文件主要设置终端的输入方式,比如Ctrl+C之类的情况,还有一个比较重要的就是/etc/profile.d/目录下的脚本文件,那么如果真的需要修改一些全局的bash环境的话,最好是将环境写成一个shell脚本,放原创 2021-10-27 16:41:33 · 775 阅读 · 0 评论 -
Linux_关闭swap分区
第一步关闭swap分区:swapoff /mnt/swap第二步修改配置文件 - /etc/fstab删除 /mnt/swap swap swap defaults 0 0 这一行或者注释掉这一行第三步确认swap已经关闭free -m若都显示 0 则表示关闭成功第四步调整 swappiness 参数echo 0 > /proc/sys/vm/swappiness # 临时生效vim /etc/sysctl.conf # 永原创 2021-10-26 11:40:14 · 19513 阅读 · 0 评论