squid cache_peer 参数详解

squid cache_peer 参数详解 通过squid.conf配置文件中的cache_peer选项来配置代理服务器阵列,通过其他的选项来控制选择代理伙伴的方法。Cache_peer的使用格式如下: cache_peer hostname type http_port icp_port 共有5个选项可以配置: hostname:指被请求的同级子代理服务器或父代理服务器。可以用主机名或ip地址表示; type: 指明hostname的类型,是同级子代理服务器还是父代理服务器,也即parent (父) 还是 sibling (子) ; http_port: hostname的监听端口; icp_port: hostname上的ICP监听端口,对于不支持ICP协议的可指定7; options: 可以包含一个或多个关键字。 Options可能的关键字有: 1. proxy-only: 指明从peer得到的数据在本地不进行缓存,缺省地,squid是要缓存这部分数据的; 2. weight=n: 用于你有多个peer的情况,这时如果多于一个以上的peer拥有你请求的数据时,squid通过计算每个peer的ICP响应时间来 决定其weight的值,然后squid向其中拥有最大weight的peer发出ICP请求。也即weight值越大,其优先级越高。当然你也可以手工 指定其weight值; 3. no-query: 不向该peer发送ICP请求。如果该peer不可用时,可以使用该选项; 4. Default: 有点象路由表中的缺省路由,该peer将被用作最后的尝试手段。当你只有一个父代理服务器并且其不支持ICP协议时,可以使用default和no-query选项让所有请求都发送到该父代理服务器; 5.login=user:password: 当你的父代理服务器要求用户认证时可以使用该选项来进行认证。

2012-01-18 · 1 min · 41 words · -

linux http proxy

linux http proxy 在Linux的命令行底下,一般的程序都是使用http_proxy和ftp_proxy这两个环境变量来获得代理设置的。 export HTTP_PROXY=[username]:[password]@[proxy-web-or-IP-address]:[port-number] export HTTPS_PROXY=[username]:[password]@[proxy-web-or-IP-address]:[port-number] export FTP_PROXY=[username]:[password]@ [proxy-web-or-IP-address]:[port-number] export NO_PROXY=localhost,127.0.0.1,::1 export http_proxy=http://localhost:8118/ # 需要密码的代理服务器 export http_proxy=http://username:password@proxyserver:port/ export ftp_proxy=http://username:password@proxyserver:port/ unset http_proxy unset https_proxy unset ftp_proxy export no_proxy=“localhost,127.0.0.0/8,*.local” 例如,假设你的代理服务器为192.168.1.1,端口是8080,用户名为cnkker,密码是123456,那么应该这样设置这两个环境变量: export http_proxy=http://cnkker:123456@192.168.1.1:8080 export ftp_proxy=http://cnkker:123456@192.168.1.1:8080 如果要使下次生效,需要把导出配置写入~/.bashrc中,这样配置之后,退出再登录一次,或者直接使用下面的命令source一下.bashrc: source ~/.bashrc 现在,上述程序就可以通过代理服务器访问网络了。

2012-01-18 · 1 min · 38 words · -

go rlimit

go rlimit package main import ( "fmt" "syscall" ) func main() { var rLimit syscall.Rlimit err := syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) if err != nil { fmt.Println("Error Getting Rlimit ", err) } fmt.Println(rLimit) rLimit.Max = 999999 rLimit.Cur = 999999 err = syscall.Setrlimit(syscall.RLIMIT_NOFILE, &rLimit) if err != nil { fmt.Println("Error Setting Rlimit ", err) } err = syscall.Getrlimit(syscall.RLIMIT_NOFILE, &rLimit) if err != nil { fmt.Println("Error Getting Rlimit ", err) } fmt.Println("Rlimit Final", rLimit) }

2012-01-17 · 1 min · 71 words · -

Dsniff

Dsniff Dsniff 是一个著名的网络嗅探工具包。其开发者Dug Song早在1999年12月,以密歇根大学CITI研究室 (Center for Information Technology Integration) 的研究成果为基础,开发了这个后来具有很大影响力的网络安全工具包。Dug Song开发Dsniff的本意是揭示网络通信的不安全性,借助这个工具包,网络管理员可以对自己的网络进行审计,也包括渗透测试。但万事总有其两面 性,Dsniff所带来的负面作用也是"巨大"的,首先它是可以自由获取的,任何拥有这个工具包的人都可能做"非正当"的事,其次,Dsniff里面的某 些工具,充分揭示了一些安全协议的"不安全性",例如针对SSH1和SSL的MITM (Man-In-The-Middle) 攻击工具—SSHmitm和 Webmitm。SSH1和SSL都是建立网络通信加密通道的机制,向来被认为是很安全的,但人们在具体使用时,往往因为方便性上的考虑而忽视了某些环 节,造成实事上的不安全。所以说,最大的不安全性,往往并不在于对安全的一无所知,而在于过于相信自己的安全。 Dub Song在2000年12月发布了Dsniff的v2.3版本,该版本支持OpenBSD、Linux、Solaris系统平台。目前,最新版本是 2001年3月发布的v2.4b1的Beta版 除了针对Unix系统的版本,从网上也可以得到Windows平台上运行的Dsniff早期版 作为一个工具集,dsniff包括的工具分为四类: 纯粹被动地进行网络活动监视的工具,包括: dsniff、filesnarf、mailsnarf 、msgsnarf、urlsnarf、webspy 针对SSH和SSL的MITM (Man-In-The-Middle) “攻击"工具,包括sshmitm和webmitm 发起主动欺骗的工具,包括: arpspoof、dnsspoof、macof 其它工具,包括tcpkill、tcpnice dsniff的安装 sudo pacman -S dsniff 安装完成后,默认 dsniff 的安装目录是 /usr/local/sbin,在这里可以看到 dsniff 所有的工具 dsniff工具介绍 纯粹被动地进行网络活动监视的工具,包括: dsniff、filesnarf、mailsnarf 、msgsnarf、urlsnarf、webspy 针对SSH和SSL的MITM (Man-In-The-Middle) “攻击"工具,包括sshmitm和webmitm 发起主动欺骗的工具,包括: arpspoof、dnsspoof、macof 其它工具,包括tcpkill、tcpnice dsniff dsniff 是一个密码侦测工具,他能够自动分析端口上收到的某些协议的数据包,并获取相应的密码。 dnisff 支持的协议有 FTP, Telnet, SMTP, HTTP, POP, poppass, NNTP, IMAP, SNMP, LDAP, Rlogin, RIP, OSPF, PPTP MS-CHAP, NFS, VRRP, YP/NIS, SOCKS, X11, CVS, IRC, AIM, ICQ, Napster, PostgreSQL, Meeting Maker, Citrix ICA, Symantec pcAnywhere, NAI Sniffer, Microsoft SMB, Oracle SQL*Net, Sybase and Microsoft SQL。 ...

2012-01-08 · 2 min · 344 words · -

deb

deb 安装deb文件 dpkg -i filename.deb deb卸载 打开新立得软件包管理器 sudo synaptic 在左侧的选择框中选择Installed(local or obsolete, 再在右侧的选择框中查找需要卸载的deb包, 如果知道deb包名,直接点击 [搜索]输入包名 选择要删的包,右击,选择[标记以便删除] The difference between “Mark for Removal” and “Mark for Complete Removal” in Synaptic Package Manager: Mark for removal removes the package, but not the configuration files associated with the package. It is equivalent to apt-get remove package_name Mark for Complete Removal purges the package, i.e. removes both the package files and its configuration. It is equivalent to ...

2012-01-08 · 1 min · 84 words · -

linux ftp

linux ftp 安装: apt-get install vsftpd 默认设置: 家目录/srv/ftp ……在/etc/password 中可以查到. 允许匿名访问. /etc/ftpusers 记录着不允许访问FTP服务器的用户名单.默认排除了root 启动服务 /etc/init.d/./vsftpd start 重启服务 /etc/init.d/./vsftpd restart 停止服务 /etc/init.d/./vsftpd stop 修改/etc/vsftpd.conf listen=yes (独立的VSFTPD服务器) anonymous_enable=yes (允许匿名登陆) local_enable=NO (禁止本地系统用户) write_enable=NO (不开放本地用户写权限) anon_upload_enable=NO (匿名用户上传权限) anon_mkdir_write_enable=NO (关闭可上传目录并关闭在此目录上传权限) anon_other_write_enable=NO (关闭匿名帐户的删除权限) anon_world_readable_only=YES (禁止匿名拥护下载具有全局读取权限的文件) hide_ids=YES (目录中用户和组信息列取都显示为ftp) ls_recurse_enable=NO (禁止ls -R 递归查询) dirmessage_enable=yes (切换目录时,显示目录下.message的内容) local_umask=022 (FTP上本地的文件权限,默认是077) connect_form_port_20=yes (启用FTP数据端口的数据连接) * xferlog_enable=yes (激活上传和下传的日志) xferlog_std_format=yes (使用标准的日志格式) ftpd_banner=XXXXX (欢迎信息) pam_service_name=vsftpd (验证方式)

2012-01-07 · 1 min · 60 words · -

hexdump command

hexdump command, 以 16 进制查看文件, 以十六进制查看文件 hexdump -e '16/1 "%02X " "\n"' hexdump -C foo.bin # 大文件可以和 less 配合使用 hexdump -C foo.bin | less echo /etc/passwd | hexdump echo /etc/passwd | xxd echo /etc/passwd | hexdump -C hexdump 命令一般用来查看"二进制"文件的十六进制编码,但实际上它的用途不止如此, 手册页上的说法是"ascii, decimal, hexadecimal, octal dump", 这也就是本文标题为什么要将"十六"给引起来的原因,而且它能查看任何文件,而不只限于二进制文件了。 另外还有xxd和od也可以做类似的事情,但是我从未用过。在程序输出二进制格式的文件时,常用hexdump来检查输出是否正确。 当然也可以使用Windows上的UltraEdit32之类的工具查看文件的十六进制编码,但Linux上有现成的工具,何不拿来用呢。 参数 -C,显示结果分为三列 (文件偏移量、字节的十六进制、ASCII字符) 。 od echo /etc/passwd | od -x 0000000 652f 6374 702f 7361 7773 0a64 0000014 # 规范的十六进制和ASCII码显示 (Canonical hex+ASCII display ) echo /etc/passwd | hexdump -C 00000000 2f 65 74 63 2f 70 61 73 73 77 64 0a |/etc/passwd.| ...

2012-01-02 · 2 min · 325 words · -

dd command

dd command 创建指定大小的文件, 生成文件 文件内容为全 0 (因从/dev/zero中读取,/dev/zero为0源) 。但是这样为实际写入硬盘,文件产生速度取决于硬盘读写速度,如果想要产生超大文件,速度很慢。 # 生成一个大小为 5G 的文件 dd if=/dev/zero of=foo.bin bs=1G count=5 # 100M 的文件 dd if=/dev/zero of=foo.bin bs=1M count=100 # 100KB dd if=/dev/zero of=foo.bin bs=1K count=100 # 6个字节的 dd if=/dev/zero of=./foo.bin bs=6 count=1 创建稀疏文件 在某种场景下,我们只想让文件系统认为存在一个超大文件在此,但是并不实际写入硬盘。则可以使用 seek dd of=foo.bin bs=1k seek=5120 count=0 参数 if=FILE : 指定输入文件,若不指定则从标注输入读取。这里指定为 /dev/zero 是Linux的一个伪文件,它可以产生连续不断的 null 流 (二进制的0) of=FILE : 指定输出文件,若不指定则输出到标准输出 bs=BYTES : 每次读写的字节数,可以使用单位 K、M、G 等等。另外输入输出可以分别用 ibs、obs 指定,若使用 bs,则表示是 ibs 和 obs 都是用该参数 count=BLOCKS : 读取的 block 数,block 的大小由 ibs 指定 (只针对输入参数) dd 的主要选项: 指定数字的地方若以下列字符结尾乘以相应的数字: b=512, c=1, k=1024, w=2, xm=number m if=file 输入文件名,缺省为标准输入。 ...

2012-01-02 · 3 min · 439 words · -

Linux存储设备的两种表示方法

Linux存储设备的两种表示方法 作者: 北南南北 LinuxSir.Org 摘要: 硬盘和硬盘分区在Linux都表示为设备,按我们通俗的说法来说,就是怎么来表示或描述硬盘和或硬盘分区,但这种描述应该是科学和具体的;比如IDE硬 盘,在Linux 可以表示为 /dev/hda、/dev/hdb … ;SCSI 接口的硬盘、SATA接口的硬盘表示为/dev/sda、/dev/sdb … … ;而IDE接口的硬盘/dev/hda,也可以表示为hd0 ,而 SCSI 接口的如果是 /dev/sda ,另一种表示方法是sd0; 理解两种表示方法有何用?至少GRUB引导管理器用到这些知识;另外我们mount (挂载)文件系统 (分区) ,也会用到这些知识; 目录索引 一、对于IDE接口的硬盘的两种表示方法;1、IDE接口硬盘,对于整块硬盘的两种表示方法; 2、IDE接口硬盘分区的两种表示方法;1) 硬盘分区的第一种表示方法/dev/hd[a-z]X; 硬盘分区的第二种表示方法(hd[0-n],y);二、关于SATA和SCSI接口的硬盘的两种表示方法; 三、usb及1394接口的存储设备和软驱设备; 四、关于存储设备的不同的表示方法的应用;1、/dev/hd[a-z] 表示方法的应用;1) 用于mount 挂载文件系统 (分区) 之用; 用于GRUB中指定Linux的根分区的位置;2、hd[0-n] 表示方法的应用;五、关于本文; 六、参考文档; 六、相关文档; 一、对于IDE接口的硬盘的两种表示方法; 1、IDE接口硬盘,对于整块硬盘的两种表示方法; IDE接口中的整块硬盘在Linux系统中表示为/dev/hd[a-z],比如/dev/hda,/dev/hdb … … 以此类推,有时/dev/hdc可能表示的是CDROM ,还是以具体的fdisk -l 输出为准吧; 另一种表示方法是hd[0-n] ,其中n是一个正整数,比如hd0,hd1,hd2 … … hdn ; 如果机器中只有一块硬盘,无论我们通过fdisk -l 列出的是/dev/hda 还是/dev/hdb ,都是hd0;如果机器中存在两个或两个以上的硬盘,第一个硬盘/dev/hda 另一种方法表示为hd0,第二个硬盘/dev/hdb,另一种表法是hd1 ; 感觉大家对hd0,hd1这种表示方法并不寞生,现在新的机器,在BIOS 中,在启动盘设置那块,硬盘是有hd0,hd1之类的,这就是硬盘表示方法的一种; 对于/dev/hda 类似的表示方法,也并不寞生吧;我们在Linux通过fdisk -l 就可以查到硬盘是/dev/hda还是/dev/hdb; [root@localhost ~]# fdisk -l Disk /dev/hda: 80.0 GB, 80026361856 bytes ...

2012-01-02 · 4 min · 822 words · -

Grub磁盘分区表示方法

Grub磁盘分区表示方法 Grub指定分区的方法和Linux、Windows等系统不一样,它的主要特点为: Grub在表示方式上并不区分普通的IDE硬盘、当下流行的SATA硬盘和SCSI硬盘等,在Grub中,硬盘会被识别为hd#,#是从0开始的硬盘编号,而软盘被类似地识别为fd#。 Grub的硬盘编号和分区编号都是从0开始的,这一点linux不同。 按照以上两个特点,假设有一块硬盘(hd0),那么(hd0,0) (hd0,1) (hd0,2) (hd0,3)依次表示它的四个主分区,而随后的(hd0,4)...则是逻辑分区。 通常情况下,装有Windows的硬盘中,通常是按照一个主分区(hd0,0),一个扩展分区(hd0,1)该扩展分区下是若干逻辑分区。这样(hd0,0)对应C盘,(hd0,4)对应D盘,依此类推。 如果您还不能确定你需要的那个分区,可以在输入过程中按下Tab键实现命令补全。比如你在输入一条root语句: root (hd0, 此时按下Tab键,grub将列出可用的分区编号和分区类型 (grub还不能识别ntfs分区,显示为不知道类型的分区) 。你可以依照这个提示来完成命令的输入。 如果不能确定ISO文件的位置,可使用find 文件名.iso(find debian-40r2-i386-CD-1.iso)

2012-01-02 · 1 min · 18 words · -

linux iwconfig

linux iwconfig apt-get install wireless-tools iwconfig wlan0 essid your essid iwconfig wlan0 key s:yourpass iwconfig wlan0 mode managed dhclient wlan0 iwconfig 是linux wireless extensions(lwe)的用户层配置工具之一。 lwe是linux下对无线网络配置的工具,包括内核的支持、用户层配置工具和驱动接口的支持三部 分。目前很多无线网卡都支持lwe,而且主流的linux发布版本,比如redhat linux、ubuntu linux都已经带了这个配置工具。 iwconfig 用法: iwconfig interface [essid {nn|on|off}] [nwid {nn|on|off}] [mode {managed|ad-hoc|…} [freq n.nnnn[k|m|g]] [channel n] [ap {n|off|auto}] [sens n] [nick n] [rate {n|auto|fixed}] [rts {n|auto|fixed|off}] [frag {n|auto|fixed|off}] [enc {nnnn-nnnn|off}] [power {period n|timeout n}] [retry {limit n|lifetime n}] [txpower n {mw|dbm}] [commit] 说明: iwconfig是lwe最主要的工具,可以对无线网卡的大部分参数进行配置。 参数: essid: 设置无线网卡的essid(extension service set id)。 ...

2012-01-01 · 1 min · 155 words · -

debian network command

debian network command restart sudo /etc/init.d/networking restart ****#获取地址 sudo dhclient eth0 wlan iwlist wlan0 scan iwconfig wlan0 essid iwconfig wlan0 key open iwconfig

2012-01-01 · 1 min · 23 words · -

Linux系统日志–syslog

Linux系统日志–syslog 我们可以借助syslog函数将消息写入到/var/log/messages文件或其他配置好的文章。syslogd (系统日志守护进程) 会监控程序提交的消息并对其进行处理。klogd (内核日志守护进程) 负责监控内核提交的消息,并将内核消息记录到/var/log/messages。二者协作记录日志消息。每次启动linux时,这两个守护进程都会由/etc/rc.d/init.d中的初始化脚本启动。 #vi /etc/syslog.conf daemon.info /var/log/messages syslog.conf文件中每一行包括以下内容: l 选择器, 用于表明应该记录哪些消息的一组单词。包括设备 (用于指定选择哪种类型程序的代码,即生成该消息的程序类别) 和优先级 (又能够于指定选择记录的消息类型,更确切的说是表明该消息所代表事件的严重程度) 。 l 动作,用于指定sysogd接收到与选择标准相匹配的消息时应该执行的动作,通常可以使消息要写入的文件名,或应该显示该消息的机器的用户名。 设备 设备描述 设备名 来自login等用户身份验证类程序的消息 auth 特殊目的 (私有) 用户身份验证消息 auth-priv 来自cron程序的消息 (用于控制自动化得,调度后的任务) cron 来自未在此处列出的所有标准守护进程或服务器的消息 deamon 内核消息 (由klogd捕捉) kern 打印服务器消息 lpr 邮件服务器消息 (来自mail transfer agent) mail 新闻服务器消息 news 关于系统登录进程本身的消息 syslog 来自终端用户所启动程序的消息 user 来自uucp程序的消息 uucp 八个特定用途的类别信息,linux销售商和编程人员可能需要使用这些消息来定义通常类别信息之外的特定需求 local0到local7 优先级 优先级描述 优先级名 无优先级 none 调试信息 debug 关于程序当前状态的报告消息 info 程序运行中产生了值得注意的事件 notice 程序中存在潜在问题的警告信息 waring 程序存在错误的通告 err 错误消息,可能会导致程序关闭的事件 crit 严重错误消息,会导致程序关闭并可能影响其他程序 alert 发生严重事件,并有导致系统崩溃的潜在危险 emerg 简单动作大概如下: ...

2011-12-30 · 1 min · 102 words · -

执行 Shell 脚本, fork, exec, source, shell 执行

执行 Shell 脚本, fork, exec, source, shell 执行 cx ./xxx.sh sh xxx.sh 用户可以用任何编辑程序来编写Shell程序。因为Shell程序是解释执行的,所以不需要编译成目的程序。按照Shell编程的惯例,以bash 为例,程序的第一行一般为"#!/bin/bash",其中 # 表示该行是注释,叹号 ! 告诉Shell运行叹号之后的命令并用文档的其余部分作为输入,也就是运行/bin/bash并让/bin/bash去执行Shell程序的内容。 执行Shell程序的方法有3种。 sh Shell 程序文件名 这种方法的命令格式为: sh <foo.sh> 这实际上是调用一个新的bash命令解释程序,而把Shell程序文件名作为参数传递给它。新启动的Shell将去读指定的文件,可执行文件中列出的命令,当所有的命令都执行完后结束。该方法的优点是可以利用Shell调试功能。 bash < foo.sh 格式为: bash< Shell程序名 这种方式就是利用输入重定向,使Shell命令解释程序的输入取自指定的程序文件。 用 chmod 命令使 Shell 程序成为可执行的,"./Shell文件名" 一个文件能否运行取决于该文档的内容本身可执行且该文件具有执行权。对于Shell程序,当用编辑器生成一个文件时,系统赋予的许可权都是644(rw-r-r-),用"chomd 755 Shell文件名"命令将其改为可执行的,因此,当用户需要运行这个文件时,"./Shell文件名"来执行就是行了。 在这3种运行Shell程序的方法中,最好按下面的方式选择: 当刚创建一个Shell程序,对它的正确性还没有把握时,应当使用第一种方式进行调试。当一个Shell程序已经调试好时,应使用第三种方式把它固定下来,以后只要键入相应的文件名即可,并可被另一个程序所调用。 source (.) 使用 source 命令和点号(.)是等价的, 类似于 C/C++ 中的 #include 预处理指令,都是将指定的脚本内容拷贝至当前的脚本中,由同一个 Shell 进程来执行。 source (source /directory/script.sh) 与fork的区别是不新开一个 sub-shell 来执行被调用的脚本,而是在同一个 shell 中执行。所以被调用的脚本中声明的变量和环境变量。 都可以在主脚本中得到和使用。 使用 source 执行命令时, 脚本文件可以没有执行权限, source 命令是 bash 的内置命令,不需要 (也没有) 绝对路径. source 命令也称为"点命令",也就是一个点符号 “. “。 source 命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。 ...

2011-12-26 · 2 min · 241 words · -

Linux命令之exit – 退出当前shell

Linux命令之exit – 退出当前shell 本文链接: http://codingstandards.iteye.com/blog/836625 (转载请注明出处) 用途说明 exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行。 常用参数 格式: exit n 退出。设置退出码为n。 (Cause the shell to exit with a status of n.) 格式: exit 退出。退出码不变,即为最后一个命令的退出码。 (If n is omitted, the exit status is that of the last command executed. ) 格式: $? 上一个命令的退出码。 格式: trap “commands” EXIT 退出时执行commands指定的命令。 ( A trap on EXIT is executed before the shell terminates.) 退出码 (exit status,或exit code) 的约定: 0表示成功 (Zero - Success) 非0表示失败 (Non-Zero - Failure) ...

2011-12-26 · 2 min · 359 words · -

ELF

ELF ELF (Executable and Linkable Format)是一种为可执行文件,目标文件,共享链接库和内核转储(core dumps)准备的标准文件格式。 Linux和很多类Unix操作系统都使用这个格式。 目前常见的Linux、 Android可执行文件、共享库 (.so)、目标文件 ( .o)以及Core 文件 (吐核)均为此格式。 64位ELF文件格式的结构 一个ELF文件由以下三部分组成: ELF头(ELF header) - 描述文件的主要特性:类型,CPU架构,入口地址,现有部分的大小和偏移等等; 程序头表(Program header table) - 列举了所有有效的段(segments)和他们的属性。 程序头表需要加载器将文件中的节加载到虚拟内存段中; 节头表(Section header table) - 包含对节(sections)的描述。 ELF头(ELF header) ELF头(ELF header)位于文件的开始位置。 它的主要目的是定位文件的其他部分。 文件头主要包含以下字段: ELF文件鉴定 - 一个字节数组用来确认文件是否是一个ELF文件,并且提供普通文件特征的信息; 文件类型 - 确定文件类型。 这个字段描述文件是一个重定位文件,或可执行文件,或…; 目标结构; ELF文件格式的版本; 程序入口地址; 程序头表的文件偏移; 节头表的文件偏移; ELF头(ELF header)的大小; 程序头表的表项大小; 其他字段… 节(sections) 所有的数据都存储在ELF文件的节(sections)中。 我们通过节头表中的索引(index)来确认节(sections)。 节头表表项包含以下字段: 节的名字; 节的类型; 节的属性; 内存地址; 文件中的偏移; 节的大小; 到其他节的链接; 各种各样的信息; 地址对齐; 这个表项的大小,如果有的话; 程序头表(Program header table) ...

2011-12-24 · 1 min · 101 words · -

du command

du command disk usage ### 查看文件占用的磁盘空间 du --block-size=1 sparse-file-0 # Show top 10 biggest subdirs in the current dir. du -sk * | sort -nr | head -10 查看各子目录大小 -d, –max-depth du -hd 1 du -hd1 du -h --max-depth=1 du -hd1 --exclude=proc 参数 # 排除文件或目录 --exclude=foo 排序 du -d1 |sort -rn du -sh du -s ./* | sort -rn # 这是按字节排序 du -sh ./* | sort -rn # 这是按兆 (M) 来排序 4.选出排在前面的10个 du -s ./* | sort -rn | head 5.选出排在后面的10个 du -s ./* | sort -rn | tail 说明: ./*也可以改成你想到达的任何目录 如/usr/local/ 这个目录就可以写成 /usr/local/* -s, –summarize display only a total for each argument ...

2011-12-24 · 1 min · 194 words · -

kate

kate kate 是一个文本编辑器,也是一个IDE,集成了Git, 文件浏览器,shell。

2011-12-18 · 1 min · 4 words · -

ext4 的"打洞"功能 (punch hole) , 稀疏文件

ext4 的"打洞"功能 (punch hole) , 稀疏文件 Linux 中有一种文件叫做 sparse file,它可以延迟分配磁盘空间,类似于我们用的虚拟机,在创建虚拟机的时候,可以分配20G的磁盘空间,但是你创建完后,去查看宿主机磁盘占用,确实际没有占用那么多。 稀疏文件 (Sparse File) Sparse files are common in Linux/Unix and are also supported by Windows (e.g. NTFS) and macOSes (e.g. HFS+). Sparse files uses storage efficiently when the files have a lot of holes (contiguous ranges of bytes having the value of zero) by storing only metadata for the holes instead of using real disk blocks. They are especially in case like allocating VM images. 稀疏文件 (Sparse File) 是一种计算机文件,是UNIX类和NTFS等文件系统的一个特性。它的原理是当用户需要申请一块很大的存储空间时,此时文件系统为了节省存储资源,提高资源利用率,不会分配实际存储空间,只有真正写入数据时,操作系统才一点一点地分配空间,以64KB为单位增量增长 (不同文件系统不同) 。它最经典的应用就是为虚拟机创建虚拟硬盘 (thin provision) 和数据库快照,以及日志文件和科学应用中 ...

2011-12-18 · 5 min · 940 words · -

Fedora

Fedora 配置方法 备份 mv /etc/yum.repos.d/fedora.repo /etc/yum.repos.d/fedora.repo.backup mv /etc/yum.repos.d/fedora-updates.repo /etc/yum.repos.d/fedora-updates.repo.backup 下载新的 fedora.repo 和 fedora-updates.repo 到 /etc/yum.repos.d/ fedora wget -O /etc/yum.repos.d/fedora.repo http://mirrors.aliyun.com/repo/fedora.repo 或者 curl -o /etc/yum.repos.d/fedora.repo http://mirrors.aliyun.com/repo/fedora.repo

2011-12-14 · 1 min · 25 words · -