Linux
飞火流云
这个作者很懒,什么都没留下…
展开
-
Makefile多目标(无依赖)编译
all: testSum listtestSum: gcc -o testSum testSum.clist: gcc -o list list.cclean: rm -f *.otestSum.c和list.c之间无依赖,多目标编译。原创 2020-12-10 15:56:12 · 656 阅读 · 0 评论 -
管道过滤器和批处理方式
有个疑惑,awk命令 参数为何要加引号和大括号?原创 2020-03-04 19:14:42 · 1711 阅读 · 0 评论 -
shell浅谈之三for、while、until循环
一、简介Shell编程中循环命令用于特定条件下决定某些语句重复执行的控制方式,有三种常用的循环语句:for、while和until。while循环和for循环属于“当型循环”,而until属于“直到型循环”。循环控制符:break和continue控制流程转向。二、详解1、for循环(1)for循环有三种结构:一种是列表for循环,第二种是不带列表for循环。第三种是类...转载 2020-01-09 11:12:47 · 293 阅读 · 0 评论 -
WIn10下移动硬盘盘符不能识别
在插入移动硬盘后后桌面右下角能看到外界设备图标,但是我的电脑里面没有盘符读取,右击设备图标选择“打开设备和打印机”,然后对“未指定”的移动硬盘图标删除后重新读取即可。...原创 2019-12-30 10:37:47 · 1145 阅读 · 0 评论 -
C语言字符串数组末尾赋0强制结束
[liuqiang@a2 string]$ cat stringTest.c#include<stdio.h>#include<string.h>int main(){ char s[]="Njupt";// s[2]=0; printf("%lu %s",strlen(s),s); return ...原创 2019-12-28 16:30:46 · 1474 阅读 · 0 评论 -
关于if 命令的返回结果判断
ip.txt#127.0.0.1 localhost192.168.12.10 master192.168.12.101 slaves2 A1-10101192.168.12.17 slaves3 node7192.168.12.18 slaves5 node8#192.168.32.11 slaves6 node1#192.168.12.12 slaves7 node2#...原创 2019-12-25 17:28:58 · 1320 阅读 · 0 评论 -
关于超级权限位SUID
注意超级权限位的设置,一般linux的可执行程序是755,比如cat。passwd的s位设置了之后,相当于root用户对others用户暴露的接口,其他用户可以访问passwd文件,获取root在passwd的u位的权限,进而读写执行所有root的u位拥有的文件,所以这类Suid设置的要求是u+s, o+x, 如果出现SUID和SGID,则以SUID为优先。如下例子所示:#...原创 2019-12-24 22:56:16 · 329 阅读 · 0 评论 -
linux下信号编程问题
#include <signal.h>#include <unistd.h> #include <stdio.h>int main() { sigset_t set; int count=10; sigemptyset(&set) ; //清空所有信号集 sigaddset(&set, SIGINT) ; //加入...原创 2019-12-04 21:28:16 · 215 阅读 · 0 评论 -
C语言中的隐式函数声明、gcc和make
[liuqiang@node4 makeTest]$ cat main.c#include<stdio.h>#include"app.h"int main(void){ int num[10]={1,10,5,7,6,2,16,20,3,8}; int max_1=getMax_1(num,10); int max_2=getMax_2(num,10);...原创 2019-11-05 12:15:09 · 493 阅读 · 0 评论 -
Makefile的编译顺序问题
修改Make编译顺序后,原创 2019-11-22 09:39:19 · 2834 阅读 · 0 评论 -
GCC和GDB调试linux下的cp命令实现
源程序是Linux下 cp命令的一个实现。#include <stdio.h>#include <fcntl.h>#include <stdlib.h>#define PMODE 0644int main(int argc, char *argv[]){ int fdin, fdout,n; char buf[BUFSIZ];...原创 2019-11-12 11:54:16 · 340 阅读 · 0 评论 -
shell正则表达式的几个问题
[liuqiang@mu01 grepTest]$ cat numbers.txt 123214.0987654 456789.678 9 1921234567.222111. 21.[liuqiang@mu01 grepTest]$ grep '[0-9]\{6\}\.' numbers.txt //方法1123214.0987654 456789.678 9 19212...原创 2019-10-21 15:11:59 · 173 阅读 · 0 评论 -
两台交换机形成环路!
一不小心,两台交换机间连了两根线,成了环路....我擦! 原理举例:如果s1,s2 之间有两条线 a b s1a收到广播后向所有的端口(s1a除外)转发,通过s1b发给s2b,s2b收到后又向所有的端口转发(s2b除外),通过s2a又发给s1a,然后有发给sb,又发给sa,形成环路。一会就把带宽占满了。 我擦,我居然能整出这种问题来,我都佩服我自己了!原创 2013-04-08 13:47:52 · 5472 阅读 · 0 评论 -
查看系统版本号(Redhat)
一、查看Linux内核版本命令(两种方法):1、cat /proc/version[root@localhost ~]# cat /proc/versionLinux version 2.6.18-194.8.1.el5.centos.plus (mockbuild@builder17.centos.org) (gcc version 4.1.2 20080704 (Red Hat转载 2013-04-14 16:46:50 · 1661 阅读 · 0 评论 -
date 强制修改时间
date -s 10:18:13 强制修改为10点18分13s原创 2013-04-09 11:51:00 · 912 阅读 · 0 评论 -
LINUX 硬链接与软链接的区别
软链接是另一个文件,作用可以理解为一个指针,作用在这个文件上的操作除了删除都直接转向实际指向文件,由于是一个真实的文件所以占用磁盘空间 硬链接可以认为不是一个文件,它只是实际文件的一个别名,它的作用是防止真实文件被误操作,给一个文件建立硬链接后,他们互为别名,删除其中任意一个,这样用RM命令只会删除该别名,实际文件并不会被删除。只有链接数为0时,才会删除原始文件。原创 2013-03-27 13:46:33 · 661 阅读 · 0 评论 -
挂载文件的目录
1. 查看本机文件系统的挂载情况。 df -h ps: 如果执行后不显示命令行的话,说明有的远程挂载的文件(NFS)没有找到,系统一直在找,所以该命令无法结束. 2. 查看本机启动时的挂载文件。 cat /etc/rc.local 3. 修改rc.local后, 启动执行: source /etc/rc.local原创 2013-04-24 10:12:38 · 804 阅读 · 0 评论 -
mongodb 安装与启动
下载: mongodb-linux-i686-2.4.2.tgz 解压缩后, 将文件夹改为mongodb , mongodb下分别建立data作为数据目录和log作为日志目录 启动服务端: /home/liuqiang/nd/mongodb/bin/mongod -dbpath=/home/liuqiang/nd/mongodb/data -logpath=/home/li原创 2013-04-19 22:15:04 · 944 阅读 · 0 评论 -
yum镜像安装kvm
1. 复制/etc/yum.repos.d/rhel-source.repo文件,改名位a.repo. cat a.repo, 编辑如下: [a] name=a baseurl=file:///mnt/Server enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gp原创 2013-04-25 13:24:22 · 825 阅读 · 0 评论 -
vi定位方法
文本 ESC模式下 输入: / 模式 回车 或者ESC模式下: 输入 : 行数 回车原创 2013-05-02 11:22:40 · 766 阅读 · 0 评论 -
http网络连接错误类型
400一般是服务的问题,比如没开 500一般是内部错误 参考: http://en.wikipedia.org/wiki/List_of_HTTP_status_codes原创 2013-05-02 16:27:31 · 1108 阅读 · 0 评论 -
squid和yum代理的设置
Server端:1. 安装squid yum install squid2. 修改/etc/squid/squid.conf, 添加: cache_dir ufs /var/spool/squid 100 16 256 http_port 192.168.1.100:3128 //server端的监听ip visible_hostname mu0原创 2013-05-02 22:09:25 · 1459 阅读 · 0 评论 -
卸载redhatyum和安装Centosyum
1. 卸载rhel yum : rpm -qa|grep yum|xargs rpm-e --nodeps 2. 下载centos yum : http://mirrors.163.com/centos/5/os/x86_64/CentOS/ 页面 yum-metadata-parser-1.1.2-4.el5.x86_64原创 2013-05-03 11:39:38 · 1315 阅读 · 0 评论 -
重命名
echo alias ll=\'ls -l\' >>.bashrc source .bashrc原创 2013-05-05 15:59:01 · 531 阅读 · 0 评论 -
linux 查询显卡型号
lspci |grep VGA原创 2013-05-10 21:35:57 · 1088 阅读 · 0 评论 -
tar.bz2 解压命令
bzip2 -d gcc-4.1.0.tar.bz2 ---上面解压完之后执行下面的命令。tar -xvf gcc-4.1.0.tar 或 tar -xvf *.tar解完之后会出现多一个文件夹 gcc-4.1.0转载 2013-06-09 12:04:14 · 784 阅读 · 0 评论 -
screen命令
系统管理员经常需要远程登录服务器然后在服务器上跑一些程序有个时候得跑很长时间(超过12小时)这是如果程序没结束就退出远程管理终端远程跑的程序很有可能就此当掉以前常用的解决方式是用命令nohup但是nohup也有很多的问题当有了screen这一切便都迎刃而解了敲入命令screen会创建一个跑着shell的单一窗口在这里面你可以跑你所需要的程序然转载 2013-07-09 17:16:45 · 612 阅读 · 0 评论 -
SSH 连接慢: Get POSSIBLE BREAK-IN ATTEMPT msg when i ssh to s server
核心:服务器端sshd配置文件 /etc/ssh/sshd_config 看是否有如下的两条配置条目GSSAPIAuthentication noUseDNS no如果前面带#,请把#删掉,或者新添加入这样两行。然后重启sshd服务,或者重启服务器也可以。注意是文件 /etc/ssh/sshd_config 而不是/etc/ssh/ssh_configssh转载 2013-06-24 16:42:58 · 1069 阅读 · 0 评论 -
linux下jdk的安装和卸载
查询默认安装的JDKrpm -qa|grep jdk 强制卸载默认jdk rpm -e --nodeps jdk-1.7.0_11-fcs安装jdkchmod +x jdk-6u29-linux-i586-rpm.bin ./jdk-6u29-linux-i586-rpm.bin 即可。 环境变量设置:JAVA_HOME原创 2013-06-25 21:12:02 · 676 阅读 · 0 评论 -
linux 查看系统 32位 or 64位
1.#uname -a如果有x86_64就是64位的,没有就是32位的2.# uname -mx86_643.# archx86_644.#file /bin/cat/bin/cat: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.4.0, dynamically lin转载 2013-06-24 22:59:45 · 518 阅读 · 0 评论 -
检查服务器是否被黑
top 执行后 按i 如果出来的不是top进程,可能就是被黑了~ 听浪潮的家伙说的,原理我也不知道~原创 2013-06-26 16:46:58 · 862 阅读 · 0 评论 -
进程查看
思路: top 大致信息 ps aux|grep 进程号 具体信息原创 2013-06-26 15:35:42 · 505 阅读 · 0 评论 -
Linux进程简介
在一台服务器上面看到有如下这么多类似的进程:2 root 20 0 0 0 0 S 0 0.0 0:00.00 kthreadd 3 root RT 0 0 0 0 S 0 0.0 0:00.00 migration/0 4 root 20 0 0 0 0 S 0 0.0 0:00.09 ksoftirqd/0 5 root RT 0 0 0 0 S 0 0.0 0:00.00 w转载 2013-06-26 16:47:26 · 736 阅读 · 0 评论 -
Linux下赋予用户su权限
首先, 将用户加入wheel组。 usermod -g wheel liuqiang 然后,修改/etc/pam.d/su文件。 两种su权限设置方式: 1. auth required pam_wheel.so use_uid 这行去掉注释的话,那么只有wheel 组的人su后,输入正确的root密码才能使用root 权限,原创 2013-06-27 22:00:15 · 3229 阅读 · 0 评论 -
怎样用命令查找别人用ssh登录自己本地主机
ps -ef|grep sshdroot 1693 1 0 Aug13 ? 00:00:00 /usr/sbin/sshd #父进程号是1的是系统服务进程root 12598 1693 2 14:59 ? 00:00:00 /usr/sbin/sshd #有这个进程说明有SSHD远程客户登录root 12638 1693 0 15:02 ? 00:00:00 /usr/sbin/ssh转载 2013-07-30 16:05:04 · 1597 阅读 · 0 评论 -
pam_access.so模块
转自: http://www.infoq.com/cn/articles/linux-pam-twopam_access.so模块主要的功能和作用是根据主机名(包括普通主机名或者FQDN)、IP地址和用户实现全面的访问控制。pam_access.so模块的具体工作行为根据配置文件/etc/security/access.conf来决定。该配置文件的主体包含了三个字段——权限、用户和访问发起方。转载 2013-09-01 11:46:28 · 2791 阅读 · 0 评论 -
屏幕翻页
有的老集群的适用Shift + PageUp/Down不过比较保险的是使用more命令, 比如 pbsnodes|more ,按回车翻页。原创 2013-09-02 15:44:29 · 582 阅读 · 0 评论 -
Linux 进程状态 说明
转自: http://blog.csdn.net/tianlesoftware/article/details/6457487Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。 在下文将对进程的R、S、D、T、Z、X 六种状态做个说明。 PROCESS STATE CODES He转载 2013-09-12 22:16:21 · 758 阅读 · 0 评论 -
通过pam限制普通用户无密码登陆
1. 修改所有计算节点的 /etc/security/access.conf , 加入这一句 - : ALL EXCEPT root @root : ALL2. 修改所有计算节点的/etc/pam.d/sshd #account required pam_nologin.so 注释掉这句 account re原创 2013-09-01 11:27:05 · 2234 阅读 · 0 评论 -
linux 死机
/var/log/messages —— rp 爆发的时候,也许会记录下很多相关信息。按照时间戳查找。回溯操作 —— 回忆 Kernel Panic 之前所做的所有事,并回滚。(如安装了某个程序,可以在 /var/log/pacman.log 找到安装日志)Dump 信息 —— 屏幕输出信息是系统最后的“遗言”,请使用数码相机或者笔纸记录。(tty only)接下来就应该根据错误发原创 2013-09-22 15:33:33 · 800 阅读 · 0 评论