Linux Study
文章平均质量分 67
clumsy_geek
艰难困苦,玉汝于成
展开
-
Ubuntu .deb包安装方法
<br />Ubuntu软件包格式为deb,安装方法如下:<br /> sudo dpkg -i package.deb<br />dpkg的详细使用方法,网上有很多,下面简单列了几个:dpkg -i package.deb安装包dpkg -r package删除包dpkg -P package删除包(包括配置文件)dpkg -L package列出与该包关联的文件dpkg -l package显示该包的版本dpkg –unpack package.deb解开 deb 包的内容dpkg -S k转载 2011-02-09 10:50:00 · 777 阅读 · 0 评论 -
ubuntu12.04使用root登陆的简单设置
平时我们登陆ubuntu时,采用的都是自己原创 2014-05-15 12:46:47 · 606 阅读 · 0 评论 -
/etc/shadow文件介绍
linux的root密码存在于“/etc/shadow”这个文件中,不过要有root权限才能在linux下看到“/etc/shadow”这个文件。我用自己的虚拟机做一个演示,如下图所示: 上面这个图中,我没有设置root的密码,可以看到root那一行最开始有个“!”。接着看下面的图,已经设置了root密码: 在这里,主要是对shadow密码存储结构做一些介绍原创 2015-02-26 11:49:24 · 837 阅读 · 0 评论 -
Ubuntu中apt-get、apt-cache相关命令总结
apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。 apt-get命令的一般语法格式为: apt-cache提供了搜索功能,其命令语法格式如下所示: 说明:下文命令中,尖括号中内容为用户视具体情况而定,如可替换为实际的软件包名 mysql-server等原创 2015-03-11 11:04:28 · 653 阅读 · 0 评论 -
CentOS下安装vsftpd及问题解决
之前有写过一篇ubuntu下源码安装vsftpd的博客,有兴趣的可以看下。最近想在CentOS的VPS上安装个vsftpd,便于来回传东西。网上找了下教程,结合自己的安装过程,再次回顾一下,也算做个笔记,方便后续使用。 安装其实很简单,一条命令即可。如下: yum install vsftpd 这个关键的步骤是配置,打开配置文件的命令为:vi /e原创 2015-03-29 21:44:11 · 634 阅读 · 0 评论 -
Kali配置SSH及开机自启
修改sshd_config文件,命令如下: vi /etc/ssh/sshd_config 我的配置文件如下:# Package generated configuration file# See the sshd_config(5) manpage for details# What ports, IPs and protocols we listen for原创 2015-03-30 11:08:12 · 10374 阅读 · 0 评论 -
Kali下安装Oracle JDK
这不是什么新奇的东西,因为时不时的需要配置一下Kali的虚拟机,干脆做个笔记记录下来,免得每次安装都要百度。 首先,是下载Oracle JDK,这个可以在官网上下载。我下的版本是jdk-8u40-linux-x64.tar.gz。首先是解压,然后移动到指定文件夹中。 tar zxvf jdk-8u40-linux-x64.tar.gzmv jdk1.8.0_40 /opt原创 2015-03-30 10:00:11 · 3616 阅读 · 0 评论 -
某ssh后门试用
在获取linux的root权限之后,虽然可以ssh连进去,但是可否长期进行控制呢?这里就涉及到ssh后门的问题了。在这里,我大致试用了一下一个比较老但是稳定的ssh后门,算是作个记录。后续我会翻译一篇老外用python写的ssh后门。好了,我会在虚拟机中对ssh后门做一个演示,最后我会放出下载到的后门程序。 在这里,我使用安装的Kali1.1.0_32来进行试验。(尝试过ubuntu原创 2015-04-23 10:11:32 · 3746 阅读 · 0 评论 -
ubuntu解决pppoeconf和network-manager冲突时,可能问题的解决方法
装了一台Ubuntu14.04的实体机,首先,肯定是解决上网问题了,毕竟不能上网的机器是不能接受的。因为接入的是电信宽带,需要ADSL拨号上网。最开始没有注意,直接使用pppoeconf来完成ADSL拨号上网。用的还是很happy的,然后想要使用VPN,那么问题就来了。在桌面NetworkManager上设置VPN,连接没有任何反应。疑惑了一会儿,发现这是因为我没有采用NetworkManager原创 2015-05-08 08:34:24 · 3576 阅读 · 0 评论 -
Fedora13下真正能用的源(2015-5-16亲测)
fedora13是很早的一个fedora版本了。最近因为安全测试想要用一下,从官网下的DVD ISO,地址为:http://dl.fedoraproject.org/pub/archive/fedora/linux/releases/13/Fedora/i386/iso/。我遇到一个奇葩的问题,没法更新系统。出现如下错误: “Error: Cannot retrieve repository m原创 2015-05-17 12:24:05 · 1564 阅读 · 0 评论 -
利用Shell脚本进行文件内容去重
最近在处理文件的时候,遇到文件内容存在大量重复项的情况,很显然需要文件内容去重。因为使用的是Python,本来想要找找Python文件内容去重的方法,但是看到的基本利用Set或者List等方法(还没来得及逐一验证)。后来,找到一个利用Shell脚本写的文件内容去重,用了一下觉得很赞,在这里深入的研究一下,也算是对Shell了解和熟悉一下。 shell脚本如下所示: #!/bin/b原创 2015-08-15 10:19:21 · 2892 阅读 · 0 评论 -
Linux日志清理工具:Logclean-ng编译
《黑客大曝光》在攻击Unix章节,有提到linux日志清理工具Logclean-ng,给的评价也挺高的。正好手头上有需要,就下载下来玩一下。 开始以为按照说明编译就可以了,后来发现其实有个小坑的。在这里记录一下,可能有些朋友会用得到。 Logclean-ng的源码下载地址:https://packetstormsecurity.com/files/46742/logcl原创 2015-11-26 21:43:52 · 2168 阅读 · 0 评论 -
Linux下which指令的另类用法
最近在实现一个linux下程序的时候,需要程序可以调用linux系统下面指定的应用程序。如果这是windows程序,那么可以通过RegOpenKey和RegOpenKey读取注册表找到指定程序的安装路径,再利用CreateProcess函数进行调用即可完成前面提到的功能。 因为每个人安装程序的习惯不一样,同一个程序在不同操作系统下的执行路径可能不一样,linux下没有注册表这一说,原创 2014-03-27 00:42:24 · 1104 阅读 · 0 评论 -
ubuntu下vsftpd安装过程中遇到的问题总结
在vSphere上装了好几个ubuntu的虚拟机,因为最近有需求在几个虚拟机之间进行数据的交互,脑袋一拍想着要不试着搭个ubuntu的服务器。在网上查了一下好像vsftpd不错,那就装个vsftpd吧。脑袋被门挤了,直接来个源码编译安装,说真的整个过程还真是痛苦。今天晚上算是初步弄好了,暂时用anonymous用户来进行文件的上传,下载,修改和创建删除文件及文件夹。vsftpd的其他配置在后续进行原创 2014-03-28 20:17:23 · 3023 阅读 · 0 评论 -
ubuntu设置vim语法高亮显示和自动缩进 (windows风格的C/C++自动缩进)
<br /><br />1、安装vim <br /> sudo apt-get install vim-full<br /><br />2、配置文件的位置 <br />在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。<br />(ubuntu9.04的vimrc文件是在/etc/vim目录下 )<br /><br />3、设置语法高亮显示 <br />1) 打开vimrc,添加以下语句来使得语法高亮显示:<br /> sy转载 2011-03-09 14:30:00 · 1073 阅读 · 1 评论 -
errno .h
<br />查看错误代码errno是调试程序的一个重要方法。当linuc C api函数发生异常时,一般会将errno变量(需include errno.h)赋一个整数值,不同的值表示不同的含义,可以通过查看该值推测出错的原因。在实际编程中用这一招解决了不少原本看来莫名其妙的问题。比较麻烦的是每次都要去linux源代码里面查找错误代码的含义,现在把它贴出来,以后需要查时就来这里看了。<br />以下来自linux 2.4.20-18的内核代码中的/usr/include/asm/errno.h<br />#转载 2011-03-09 16:03:00 · 480 阅读 · 0 评论 -
htons
在Linux和Windows网络编程时需要用到htons和htonl函数,用来将主机字节顺序转换为网络字节顺序。在Intel机器下,执行以下程序 #includeint main(){ printf("%d/n",htons(16)); return 0;} 得到的结果是4096,初一看感觉很怪。 解释如下,数字16的16进制表示为0x0010,数字4096的16进制表示为0x1000。 由于Intel机器是小尾端,存储数字16时实际顺序为1000,存储409转载 2011-03-09 16:43:00 · 949 阅读 · 0 评论 -
linux read() 函数
<br /><br />【 read系统调用】 <br /> <br />功能描述: <br />从文件读取数据。 <br /> <br />用法: <br />#include <unistd.h><br /> <br />ssize_t read(int fd, void *buf, size_t count);<br /><br />参数: <br />fd: 将要读取数据的文件描述词。<br />buf: 所读取到的数据的内存缓冲。 <br />count: 需要读取的数据量。转载 2011-03-09 20:04:00 · 1127 阅读 · 0 评论 -
linux进程控制-exit()
#includevoid exit(int status);不像fork那么难理解,从exit的名字就能看出,这个系统调用是用来终止一个进程的。无论在程序中的什么位置,只要执行到exit系统调用,进程就会停止剩下的所有操作,清除包括PCB在内的各种数据结构,并终止本进程的运行。请看下面的程序:/* exit_test1.c */#includemain(){ printf("this process will exit!/n"); exit(0); printf("never be displayed!/n转载 2011-03-11 10:18:00 · 584 阅读 · 0 评论 -
linux进程控制-wait()
<br />#include <sys/types.h> /* 提供类型pid_t的定义 */<br />#include <sys/wait.h><br />pid_t wait(int *status)<br />进程一旦调用了wait,就立即阻塞自己,由wait自动分析是否当前进程的某个子进程已经退出,如果让它找到了这样一个已经变成僵尸的子进程,wait就 会收集这个子进程的信息,并把它彻底销毁后返回;如果没有找到这样一个子进程,wait就会一直阻塞在这里,直到有一个出现为止。<br />参数stat原创 2011-03-11 10:21:00 · 562 阅读 · 0 评论 -
exec函数族的使用
<br /><br />exec用被执行的程序完全替换调用它的程序的影像。fork创建一个新的进程就产生了一个新的PID,exec启动一个新程序,替换原有的进程,因此这个新的被exec执行的进程的PID不会改变,和调用exec函数的进程一样。<br /> 下面来看下exec函数族:<br /> #include <unistd.h><br /> int execl(const char *path, const char *arg, ...);<br />转载 2011-03-11 12:48:00 · 392 阅读 · 0 评论 -
putenv,setenv,unsetenv 的使用
<br />相关函数putenv,setenv,unsetenv表头文件#include<stdlib.h>定义函数char * getenv(const char *name);函数说明getenv()用来取得参数name环境变量的内容。参数name为环境变量的名称,如果该变量存在则会返回指向该内容的指针。环境变量的格式为name=value。返回值执行成功则返回指向该内容的指针,找不到符合的环境变量名称则返回NULL。范例#include<stdlib.h><br />mian()<br />{<br原创 2011-03-11 12:09:00 · 559 阅读 · 0 评论 -
debian6.0安装之旅
<br /> 真TM晦气!debian安装了很多次一直没有安装成功。在vmware下不知道安装了多少次了。开始用的DVD镜像,一直是安装的不合心意。所以安装完后就删掉了。今天上午耐着性子,又重新安装了一遍。总算安装完成。用的是从官网下载的第一张CD。具体安装步骤可以到google搜索图文教程。在此就我遇到的问题,总结一下解决方法。<br /> 第一个问题,安装完成后,中文无法显示。google了一下,大致方法如下。介于自己的电脑源出了问题。首先更新了一下源.<br />原创 2011-05-14 18:21:00 · 2563 阅读 · 0 评论 -
GNU和GPL是什么
<br />1。GNU <br />GNU的全称是GNU's Not Unix <br />这是官方的递归定义,永远找不到本义,是开源软件的幽默。 <br /><br />GNU是一个自由软件工程项目。下面的文字没有具体解释GNU是哪几个单词的所写,但从整体上说明了GNU工程是怎么回事,希望对你有帮助。 <br />GNU工程已经开发了一个被称为“GNU”(GNU是“不是UNIX”的缩写)的、对Unix向上兼容的完整的自由软件系统(free software system)。由Richard Stallma转载 2011-06-01 15:24:00 · 1174 阅读 · 0 评论 -
VMware网络配置详解一:网卡设置模式区别
安装好虚拟机以后,在网络连接里面可以看到多了两块网卡:其中VMnet1是虚拟机Host-only模式的网络接口,VMnet8是NAT模式的网络接口.选择虚拟机网络模式方法如下,单击”Edit virtual machine settings”,如图所示:然后在转载 2011-07-03 16:11:37 · 813 阅读 · 0 评论