Linux是一套免费使用和自由传播的类Unix作业系统,是一个基于POSIX和UNIX的多用户、多任务、支持多执行绪和多CPU的作业系统。它能运行主要的UNIX工具软体、应用程式和网路协定。它支持32位和64位硬体。Linux继承了Unix以网路为核心的设计思想,是一个性能稳定的多用户网路作业系统。
Linux作业系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux核心。Linux可安装在各种计算机硬体设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
严格来讲,Linux这个词本身只表示Linux核心,但实际上人们已经习惯了用Linux来形容整个基于Linux核心,并且使用GNU 工程各种工具和资料库的作业系统。
基本介绍
- 外文名Linux
- 类别作业系统
- 发布时间1991年10月5日
- 创始人林纳斯·托瓦兹
- 发行版本Debian、RedHat、Slackware等
- 特点免费、可靠、安全、稳定、多平台
Linux简史
Linux 作业系统的诞生、发展和成长过程始终依赖着五个重要支柱UNIX 作业系统、MINIX 作业系统、GNU计画、POSIX 标準和Internet 网路。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计画已经开发出了许多工具软体,最受期盼的GNU C编译器已经出现,GNU的作业系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU作业系统,GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386sx兼容微机上学习minix作业系统。1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的作业系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell软体了。
1991年7月3日,第一个与Linux有关的讯息是在comp.os.minix上发布的(此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布讯息,正式向外宣布Linux核心的诞生(Freeminix-like kernel sources for 386-AT)。
1993年,大约有100余名程式设计师参与了Linux核心代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有十万行,用户大约有10万左右。
1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协定发布,随后正式採用GPL协定。
1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个原始码开放的程式模组,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。
1996年6月,Linux 2.0核心发布,此核心有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。
1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什幺自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放原始码促进会)"复兴"的大旗,在网际网路世界里展开了一场历史性的Linux产业化运动。
2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,它也集成了很多用于支持桌面系统的特性USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。
2003年12月,Linux 2.6版核心发布,相对于2.4版核心2.6在对系统的支持都有很大的变化。
2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中宣布季度赢利。3月,SGI宣布成功实现了Linux作业系统支持256个Itanium 2处理器。
主要特性
基本思想
Linux的基本思想有两点第一,一切都是档案;第二,每个软体都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个档案,包括命令、硬体和软体设备、作业系统、进程等等对于作业系统核心而言,都被视为拥有各自特性或类型的档案。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。
完全免费
Linux是一款免费的作业系统,用户可以通过网路或其他途径免费获得,并可以任意修改其原始码。这是其他的作业系统所做不到的。正是由于这一点,来自全世界的无数程式设计师参与了Linux的修改、编写工作,程式设计师可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程式设计师的精华,不断壮大。
完全兼容POSIX1.0标準
这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程式。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程式是否能正常运行,这一点就消除了他们的疑虑。
多用户、多任务
Linux支持多用户,各个用户对于自己的档案设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程式并独立地运行。
良好的界面
Linux具有字元界面和图形界面。在字元界面用户可以通过键盘输入相应的指令来进行操作。它也提供了类似Windows图形界面的X-Window系统,用户可以使用滑鼠对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。
支持多种平台
Linux可以运行在多种硬体平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。Linux还是一种嵌入式作业系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版核心已经能够完全支持Intel 64位晶片架构。Linux也支持多处理器技术。多个处理器工作,使系统性能大大提高。
桌面环境
介绍
在图形计算中,一个桌面环境(Desktop environment,有时称为桌面管理器)为计算机提供一个图形用户界面(GUI)。但严格来说视窗管理器和桌面环境是有区别的。桌面环境就是桌面图形环境,它的主要目标是为Linux/Unix作业系统提供一个更加完备 的界面以及大量各类整合工具和使用 程式,其基本 易用性吸引着大量的新用户。桌面环境名称来自桌面比拟,对应于早期的文字命令行界面(CLI)。一个典型的桌面环境提供图示,视窗,工具列,资料夹,壁纸以及像拖放这样的能力。整体而言,桌面环境在设计和功能上的特性,赋予了它与众不同的外观和感觉。
种类
现今主流的桌面环境有KDE,gnome,Xfce,LXDE等,除此之外还有Ambient,EDE,IRIX Interactive Desktop,Mezzo,Sugar,CDE等。
gnome
即GNU网路对象模型环境 (The GNU Network Object Model Environment),GNU计画的一部分,开放源码运动的一个重要组成部分。是一种让使用者容易操作和设定电脑环境的工具。
目标是基于自由软体,为Unix或者类Unix作业系统构造一个功能完善、操作简单以及界面友好的桌面环境,他是GNU计画的正式桌面。
Xfce
即XForms Common Environment,创建于2007年7月,类似于商业图形环境CDE,是一个运行在各类Unix下的轻量级桌面环境。原作者Olivier Fourdan最先设计XFce是基于XForms三维图形库。Xfce设计目的是用来提高系统的效率,在节省系统资源的,能够快速载入和执行应用程式。
Fluxbox
是一个基于GNU/Linux的轻量级图形操作界面,它虽然没有GNOME和KDE那样精緻 ,但由于它的运行对系统资源和配置要求极低,所以它被安装到很多较旧的或是对性能要求较高的机器上,其选单和有关 配置被保存于用户根目录下的.fluxbox目录里,这样使得它的配置极为便利。
Enlightenment
是一个功能强大的视窗管理器,它的目标是运用 户轻而易举地配置所见即所得的桌面图形界面。现在Enlightenment的界面已经相当豪华,它拥有像AfterStep一样的可视化时钟以及其它浮华的界面效果,用户不仅可以任意选择框线和动感的声音效果,最有吸引力的是由于它开放的设计思想,每一个用户可以根据自己的爱好,任意地配置视窗的框线、选单以及萤幕上其它各个部分,而不须要 接触原始码,也不须要 编译任何程式。
档案系统
档案类型
普通档案(regular file)就是一般存取的档案,由ls -al显示出来的属性中,第一个属性为 [-],例如 [-rwxrwxrwx]。,依照档案的内容,又大致可以分为
1、纯文本档案(ASCII)这是Unix系统中最多的一种档案类型,之所以称为纯文本档案,是因为内容可以直接读到的数据,例如数字、字母等等。设 置档案几乎都属于这种档案类型。举例来说,使用命令“cat ~/.bashrc”就可以看到该档案的内容(cat是将档案内容读出来)。
2、二进制档案(binary)系统其实仅认识且可以执行二进制档案(binary file)。Linux中的执行档(脚本,文本方式的批处理档案不算)就是这种格式的。举例来说,命令cat就是一个二进制档案。
3、数据格式的档案(data)有些程式在运行过程中,会读取某些特定格式的档案,那些特定格式的档案可以称为数据档案(data file)。举例来说,Linux在用户登入时,都会将登录数据记录在 /var/log/wtmp档案内,该档案是一个数据档案,它能通过last命令读出来。但使用cat时,会读出乱码。因为它是属于一种特殊格式的档案。
目录档案(directory)就是目录,第一个属性为 [d],例如 [drwxrwxrwx]。
连线档案(link)类似Windows下面的捷径。第一个属性为 [l],例如 [lrwxrwxrwx]。
设备与设备档案(device)与系统外设及存储等相关的一些档案,通常都集中在 /dev目录。通常又分为两种
块设备档案就是存储数据以供系统存取的接口设备,简单而言就是硬碟。例如一号硬碟的代码是 /dev/hda1等档案。第一个属性为 [b]。
字元设备档案即串列连线埠的接口设备,例如键盘、滑鼠等等。第一个属性为 [c]。
套接字(sockets)这类档案通常用在网路数据连线。可以启动一个程式来监听客户端的要求,客户端就可以通过套接字来进行数据通信。第一个属性为 [s],最常在 /var/run目录中看到这种档案类型。
管道(FIFO,pipe)FIFO也是一种特殊的档案类型,它主要的目的是,解决多个程式存取一个档案所造成的错误。FIFO是first-in-first-out(先进先出)的缩写。第一个属性为 [p]。
档案结构
/根目录,所有的目录、档案、设备都在/之下,/就是Linux档案系统的组织者,也是最上级的领导者。
/binbin 就是二进制(binary)英文缩写。在一般的系统当中,都可以在这个目录下找到linux常用的命令。系统所需要的那些命令位于此目录。
/bootLinux的核心及引导系统程式所需要的档案目录,比如 vmlinuz initrd.img 档案都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录。
/cdrom这个目录在刚刚安装系统的时候是空的。可以将光碟机档案系统挂在这个目录下。例如mount /dev/cdrom /cdrom
/devdev 是设备(device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有linux系统中使用的外部设备。这里并不是放的外部设备的驱动程式。这一点和常用的windows,dos作业系统不一样。它实际上是一个访问这些外部设备的连线埠。可以非常方便地去访问这些外部设备,和访问一个档案,一个目录没有任何区别。
/etcetc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置档案和子目录。要用到的网路配置档案,档案系统,x系统配置档案,设备配置信息,设定用户信息等都在这个目录下。
/home如果建立一个用户,用户名是"xx",那幺在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
/liblib是库(library)英文缩写。这个目录是用来存放系统动态连线共享库的。几乎所有的应用程式都会用到这个目录下的共享库。,千万不要轻易对这个目录进行什幺操作,一旦发生问题,系统就不能工作了。
/lost+found在ext2或ext3档案系统中,当系统意外崩溃或机器意外关机,而产生一些档案碎片放在这里。当系统启动的过程中fsck工具会检查这里,并修复已经损坏的档案系统。有时系统发生问题,有很多的档案被移到这个目录中,可能会用手工的方式来修复,或移到档案到原来的位置上。
/mnt这个目录一般是用于存放挂载储存设备的挂载目录的,比如有cdrom等目录。可以参看/etc/fstab的定义。
/media有些linux的发行版使用这个目录来挂载那些usb接口的移动硬碟(包括随身碟)、CD/DVD驱动器等等。
/opt这里主要存放那些可选的程式。
/proc可以在这个目录下获取系统信息。这些信息是在记忆体中,由系统自己产生的。
/rootLinux超级许可权用户root的家目录。
/sbin这个目录是用来存放系统管理员的系统管理程式。大多是涉及系统管理的命令的存放,是超级许可权用户root的可执行命令存放地,普通用户无许可权执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是相似的,凡是目录sbin中包含的都是root许可权才能执行的。
/selinux 对SElinux的一些配置档案目录,SElinux可以让linux更加安全。
/srv 服务启动后,所需访问的数据目录,举个例子来说,www服务启动读取的网页数据就可以放在/srv/www中
/tmp临时档案目录,用来存放不同程式执行时产生的临时档案。有时用户运行程式的时候,会产生临时档案。/tmp就用来存放临时档案的。/var/tmp目录和这个目录相似。
/usr
这是linux系统中占用硬碟空间最大的目录。用户的很多应用程式和档案都存放在这个目录下。在这个目录下,可以找到那些不适合放在/bin或/etc目录下的额外的工具
/usr/local这里主要存放那些手动安装的软体,即不是通过“新立得”或apt-get安装的软体。它和/usr目录具有相类似的目录结构。让软体包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面、。
/usr/share 系统共用的东西存放地,比如 /usr/share/fonts 是字型目录,/usr/share/doc和/usr/share/man帮助档案。
/var这个目录的内容是经常变动的,看名字就知道,可以理解为vary的缩写,/var下有/var/log 这是用来存放系统日誌的目录。/var/ www目录是定义Apache伺服器站点存放目录;/var/lib 用来存放一些库档案,比如MySQL的,以及MySQL资料库的的存放地。
常用命令及技巧
一。 通用命令:
- date print or set the system date and time
2. stty -a: 可以查看或者列印控制字元(Ctrl-C, Ctrl-D, Ctrl-Z等)
3. passwd: print or set the system date and time (用passwd -h查看)
4. logout, login: 登录shell的登录和注销命令
5. pwd: print working directory
6. more, less, head tail: 显示或部分显示档案内容.
7. lp/lpstat/cancel, lpr/lpq/lprm: 列印档案.
8. 更改档案许可权 chmod u+x...
9. 删除非空目录rm -fr dir
10.拷贝目录 cp -R dir
11. fg jobid :可以将一个后台进程放到前台。
Ctrl-z 可以将前台进程挂起(suspend), 然后可以用bg jobid 让其到后台运行。
job & 可以直接让job直接在后台运行。
12. kill 的作用: send a signal to a process. eg: kill -9 传送的是SIG_KILL信号。。。 具体传送什幺信号 可以通过 man kill 查看。
13. ps 的用法, ps -e 或 ps -o pid,ppid,session,tpgid, comm (其中session显示的sessionid, tpgid显示前台进程组id, comm显示命令名称。)
二 .ubuntu常用命令:
1. dpkg: package manager for Debian
安装 dpkg -i package
卸载 dpkg -r package
卸载并删除配置档案: dpkg -P |--purge package
如果安装一个包时。说依赖某些库。 可以先 apt-get install somelib...
查看软体包安装内容 :dpkg -L package
查看档案由哪个软体包提供: dpkg -S filename
dpkg还有 dselect和aptitude 两个frontend.
2. apt
安装: apt-get install packs
apt-get update : 更新源
apt-get upgrade: 升级系统。
apt-get dist-upgrade: 智慧型升级。安装新软体包,删除废弃的软体包
apt-get -f install -f == --fix broken 修复依赖
apt-get autoremove: 自动删除无用的软体
apt-get remove packages :删除软体
apt-get remove package --purge 删除包并清除配置档案
清除所以删除包的残余配置档案: dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P
安装软体时候包的临时存放目录 : /var/cache/apt/archives
清除该目录: apt-get clean
清除该目录的旧版本的软体快取: apt-get autoclean
查询软体some的依赖包 apt-cache depends some
查询软体some被哪些包依赖: apt-get rdepends some
搜寻软体: apt-cache search name|regexp
查看软体包的作用apt-cache show package
查看一个软体的编译依赖库: apt-cache showsrc packagename|grep Build-Depends
下载软体的原始码 : apt-get source packagename (注: sources.list 中应该有 deb-src 源)
安装软体包源码的, 安装其编译环境 :apt-get build-dep packagename (有deb-src源)
如何将本地光碟加入安装源列表: apt-cdrom add
3. 系统命令:
查看核心版本 uname -a
查看ubuntu 版本: cat /etc/issue
查看网卡状态 : ethtool eth0
查看记忆体,cpu的信息 cat /proc/meminfo ; cat /proc/cpuinfo
(/proc下面的有很多系统信息)
列印档案系统空间使用情况: df -h
查看硬碟分区情况: fdisk -l
产看档案大小: du -h filename;
查看目录大小 du -hs dirname ; du -h dirname是查看目录下所有档案的大小
查看记忆体的使用 free -m|-g|-k
查看进程 ps -e 或ps -aux -->显示用户
杀掉进程: kill pid
强制杀掉 killall -9 processname
4. 网路相关
配置 ADSL: sudo pppoeconf
ADSL手工拨号: sudo pon dsl-provider
激活 ADSL : sudo /etc/ppp/pppoe_on_boot
断开 ADSL: sudo poff
根据IP查网卡地址: arping IP位址
产看本地网路信息(包括ip等): ifconfig | ifconfig eth0
查看路由信息: netstat -r
关闭网卡 sudo ifconfig eth0 down
启用网卡 sudo ifconfig eth0 up
添加一个服务: sudo update-rc.d 服务名 defaults 99
删除一个服务: sudo update-rc.d 服务名 remove
临时重启一个服务: /etc/init.d/服务名 restart
临时关闭一个服务: /etc/init.d/服务名 stop
临时启动一个服务: /etc/init.d/服务名 start
控制台下显示中文: sudo apt-get install zhcon
查找某个档案: whereis filename 或 find 目录 -name 档案名称
通过ssh传输档案
scp -rp /path/filename username@remoteIP:/path #将本地档案拷贝到伺服器上
scp -rp username@remoteIP:/path/filename /path #将远程档案从伺服器下载到本地
5. 压缩:
解压缩 a.tar.gz: tar zxvf a.tar.gz
解压缩 a.tar.bz2: tar jxvf a.tar.bz2
压缩aaa bbb目录为xxx.tar.gz: tar zcvf xxx.tar.gz aaa bbb
压缩aaa bbb目录为xxx.tar.bz2: tar jcvf xxx.tar.bz2 aaa bbb
安装 dpkg -i package
卸载 dpkg -r package
卸载并删除配置档案: dpkg -P |--purge package
如果安装一个包时。说依赖某些库。 可以先 apt-get install somelib...
查看软体包安装内容 :dpkg -L package
查看档案由哪个软体包提供: dpkg -S filename
dpkg还有 dselect和aptitude 两个frontend.
2. apt
安装: apt-get install packs
apt-get update : 更新源
apt-get upgrade: 升级系统。
apt-get dist-upgrade: 智慧型升级。安装新软体包,删除废弃的软体包
apt-get -f install -f == --fix broken 修复依赖
apt-get autoremove: 自动删除无用的软体
apt-get remove packages :删除软体
apt-get remove package --purge 删除包并清除配置档案
清除所以删除包的残余配置档案: dpkg -l |grep ^rc|awk '{print $2}' |tr ["/n"] [" "]|sudo xargs dpkg -P
安装软体时候包的临时存放目录 : /var/cache/apt/archives
清除该目录: apt-get clean
清除该目录的旧版本的软体快取: apt-get autoclean
查询软体some的依赖包 apt-cache depends some
查询软体some被哪些包依赖: apt-get rdepends some
搜寻软体: apt-cache search name|regexp
查看软体包的作用apt-cache show package
查看一个软体的编译依赖库: apt-cache showsrc packagename|grep Build-Depends
下载软体的原始码 : apt-get source packagename (注: sources.list 中应该有 deb-src 源)
安装软体包源码的, 安装其编译环境 :apt-get build-dep packagename (有deb-src源)
如何将本地光碟加入安装源列表: apt-cdrom add
3. 系统命令:
查看核心版本 uname -a
查看ubuntu 版本: cat /etc/issue
查看网卡状态 : ethtool eth0
查看记忆体,cpu的信息 cat /proc/meminfo ; cat /proc/cpuinfo
(/proc下面的有很多系统信息)
列印档案系统空间使用情况: df -h
查看硬碟分区情况: fdisk -l
产看档案大小: du -h filename;
查看目录大小 du -hs dirname ; du -h dirname是查看目录下所有档案的大小
查看记忆体的使用 free -m|-g|-k
查看进程 ps -e 或ps -aux -->显示用户
杀掉进程: kill pid
强制杀掉 killall -9 processname
4. 网路相关
配置 ADSL: sudo pppoeconf
ADSL手工拨号: sudo pon dsl-provider
激活 ADSL : sudo /etc/ppp/pppoe_on_boot
断开 ADSL: sudo poff
根据IP查网卡地址: arping IP位址
产看本地网路信息(包括ip等): ifconfig | ifconfig eth0
查看路由信息: netstat -r
关闭网卡 sudo ifconfig eth0 down
启用网卡 sudo ifconfig eth0 up
添加一个服务: sudo update-rc.d 服务名 defaults 99
删除一个服务: sudo update-rc.d 服务名 remove
临时重启一个服务: /etc/init.d/服务名 restart
临时关闭一个服务: /etc/init.d/服务名 stop
临时启动一个服务: /etc/init.d/服务名 start
控制台下显示中文: sudo apt-get install zhcon
查找某个档案: whereis filename 或 find 目录 -name 档案名称
通过ssh传输档案
scp -rp /path/filename username@remoteIP:/path #将本地档案拷贝到伺服器上
scp -rp username@remoteIP:/path/filename /path #将远程档案从伺服器下载到本地
5. 压缩:
解压缩 a.tar.gz: tar zxvf a.tar.gz
解压缩 a.tar.bz2: tar jxvf a.tar.bz2
压缩aaa bbb目录为xxx.tar.gz: tar zcvf xxx.tar.gz aaa bbb
压缩aaa bbb目录为xxx.tar.bz2: tar jcvf xxx.tar.bz2 aaa bbb
6. Nautilus
特殊 URI 地址
computer:/// - 全部挂载的设备和网路
network:/// - 浏览可用的网路
burn:/// - 一个刻录 CDs/DVDs 的数据虚拟目录
smb:/// - 可用的 windows/samba 网路资源
x-nautilus-desktop:/// - 桌面项目和图示
file:/// - 本地档案
trash:/// - 本地资源回收筒目录
ftp:// - FTP 资料夹
ssh:// - SSH 资料夹
fonts:/// - 字型档夹,可将字型档拖到此处以完成安装
themes:/// - 系统主题资料夹
显示隐藏档案: Ctrl+h
显示地址栏: Ctrl+l
查看已安装字型: 在nautilus的地址栏里输入”fonts:///“,就可以查看本机所有的fonts
特殊 URI 地址
computer:/// - 全部挂载的设备和网路
network:/// - 浏览可用的网路
burn:/// - 一个刻录 CDs/DVDs 的数据虚拟目录
smb:/// - 可用的 windows/samba 网路资源
x-nautilus-desktop:/// - 桌面项目和图示
file:/// - 本地档案
trash:/// - 本地资源回收筒目录
ftp:// - FTP 资料夹
ssh:// - SSH 资料夹
fonts:/// - 字型档夹,可将字型档拖到此处以完成安装
themes:/// - 系统主题资料夹
显示隐藏档案: Ctrl+h
显示地址栏: Ctrl+l
查看已安装字型: 在nautilus的地址栏里输入”fonts:///“,就可以查看本机所有的fonts
7.补充部分
查看本地所有的tpc,udp监听连线埠: netstat -tupln (t=tcp, u=udp, p=program, l=listen, n=numric)
通过man搜说相关命令: man -k keyword . eg: man -k user
或者用 apropos
统计档案所占用的实际磁碟空间 du (du - estimate file space usage)
统计档案中的字元,位元组数: wc -c/-l/-w (wc - print the number of newlines, words, and bytes in files)
查看档案的内容 od -x/-c/.... (od - dump files in octal and other formats)
我认为od最有用的就是档案的位元组流了: od -t x1 filename
查看档案的 Ascii 码形式: od -t c filename (其中统计信息最左边的是 位元组数)
查找命令所在档案的位置 which od 输出 /usr/bin/od
查看该档案由哪个包提供 dpkg -S /usr/bin/od 输出: coreutils: /usr/bin/od
再查看coreutils包的全部内容就知道了linux的核心命令: dpkg -L coreutils
然后 info coreutils 哈哈,认真学吧, 满世界都是命令!
可以用man 命令产看某个命令的所有section 的解释: man -a tty
然后用q,和next 转换到下一个section的解释
bash 的好用的快捷键:
ctrl+a:游标移到行首。
ctrl+b:游标左移一个字母
ctrl+c:杀死当前进程。
ctrl+d:退出当前 Shell。
ctrl+e:游标移到行尾。
ctrl+h:删除游标前一个字元,同 backspace 键相同。
ctrl+k:清除游标后至行尾的内容。
ctrl+l:清屏,相当于clear。
ctrl+r:搜寻之前打过的命令。会有一个提示,根据你输入的关键字进行搜寻bash的history
ctrl+u: 清除游标前至行首间的所有内容。
ctrl+w: 移除游标前的一个单词
ctrl+t: 交换游标位置前的两个字元
ctrl+y: 贴上或者恢复上次的删除
ctrl+d: 删除游标所在字母;注意和backspace以及ctrl+h的区别,这2个是删除游标前的字元
ctrl+f: 游标右移
ctrl+z : 把当前进程转到后台运行,使用’ fg ‘命令恢复。比如top -d1 然后ctrl+z ,到后台,然后fg,重新恢复
快速贴上先在一个地方选中文字,在欲贴上的地方按滑鼠 中键 即可。
等效中键a 、按下滑轮等效于中键。b、按下滑鼠 左右键,等效于中键。
快速重启X服务 按下 Alt + Ctrl + Backspace 三个键。
打开"运行"视窗 按下 Alt + F2 键。
截屏 a、全萤幕直接按下 PrtScr 键。
b、当前视窗按下 Alt + PrtScr 键。
c、延时截屏在 终端 或 "运行"视窗中输入命令 gnome-screenshot --delay 3 ,将延时 3 秒后截屏。
直接将 档案管理器 中的档案拖到 GNOME终端 中就可以在终端中得到完整的路径名。8.ulimit
ulimit显示(或设定)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程式在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止。
ulimited 不限制用户可以使用的资源,但本设定对可打开的最大档案数(max open files)
和可运行的最大进程数(max user processes)无效
-a 列出所有当前资源极限
-c 设定core档案的最大值.单位:blocks
-d 设定一个进程的数据段的最大值.单位:kbytes
-f Shell 创建档案的档案大小的最大值,单位blocks
-h 指定设定某个给定资源的硬极限。如果用户拥有 root 用户许可权,可以增大硬极限。任何用户均可减少硬极限
-l 可以锁住的物理记忆体的最大值
-m 可以使用的常驻记忆体的最大值,单位kbytes
-n 每个进程可以打开的最大档案数
-p 设定管道的最大值,单位为block,1block=512bytes
-s 指定堆叠的最大值单位kbytes
-S 指定为给定的资源设定软极限。软极限可增大到硬极限的值。如果 -H 和 -S 标誌均未指定,极限适用于以上二者
-t 指定每个进程所使用的秒数,单位seconds
-u 可以运行的最大并发进程数
-v Shell可使用的最大的虚拟记忆体,单位kbytes
eg: ulimit -c 1000(可以先通过ulimit -c 查看原来的值)
通过man搜说相关命令: man -k keyword . eg: man -k user
或者用 apropos
统计档案所占用的实际磁碟空间 du (du - estimate file space usage)
统计档案中的字元,位元组数: wc -c/-l/-w (wc - print the number of newlines, words, and bytes in files)
查看档案的内容 od -x/-c/.... (od - dump files in octal and other formats)
我认为od最有用的就是档案的位元组流了: od -t x1 filename
查看档案的 Ascii 码形式: od -t c filename (其中统计信息最左边的是 位元组数)
查找命令所在档案的位置 which od 输出 /usr/bin/od
查看该档案由哪个包提供 dpkg -S /usr/bin/od 输出: coreutils: /usr/bin/od
再查看coreutils包的全部内容就知道了linux的核心命令: dpkg -L coreutils
然后 info coreutils 哈哈,认真学吧, 满世界都是命令!
可以用man 命令产看某个命令的所有section 的解释: man -a tty
然后用q,和next 转换到下一个section的解释
bash 的好用的快捷键:
ctrl+a:游标移到行首。
ctrl+b:游标左移一个字母
ctrl+c:杀死当前进程。
ctrl+d:退出当前 Shell。
ctrl+e:游标移到行尾。
ctrl+h:删除游标前一个字元,同 backspace 键相同。
ctrl+k:清除游标后至行尾的内容。
ctrl+l:清屏,相当于clear。
ctrl+r:搜寻之前打过的命令。会有一个提示,根据你输入的关键字进行搜寻bash的history
ctrl+u: 清除游标前至行首间的所有内容。
ctrl+w: 移除游标前的一个单词
ctrl+t: 交换游标位置前的两个字元
ctrl+y: 贴上或者恢复上次的删除
ctrl+d: 删除游标所在字母;注意和backspace以及ctrl+h的区别,这2个是删除游标前的字元
ctrl+f: 游标右移
ctrl+z : 把当前进程转到后台运行,使用’ fg ‘命令恢复。比如top -d1 然后ctrl+z ,到后台,然后fg,重新恢复
快速贴上先在一个地方选中文字,在欲贴上的地方按滑鼠 中键 即可。
等效中键a 、按下滑轮等效于中键。b、按下滑鼠 左右键,等效于中键。
快速重启X服务 按下 Alt + Ctrl + Backspace 三个键。
打开"运行"视窗 按下 Alt + F2 键。
截屏 a、全萤幕直接按下 PrtScr 键。
b、当前视窗按下 Alt + PrtScr 键。
c、延时截屏在 终端 或 "运行"视窗中输入命令 gnome-screenshot --delay 3 ,将延时 3 秒后截屏。
直接将 档案管理器 中的档案拖到 GNOME终端 中就可以在终端中得到完整的路径名。8.ulimit
ulimit显示(或设定)用户可以使用的资源的限制(limit),这限制分为软限制(当前限制)和硬限制(上限),其中硬限制是软限制的上限值,应用程式在运行过程中使用的系统资源不超过相应的软限制,任何的超越都导致进程的终止。
ulimited 不限制用户可以使用的资源,但本设定对可打开的最大档案数(max open files)
和可运行的最大进程数(max user processes)无效
-a 列出所有当前资源极限
-c 设定core档案的最大值.单位:blocks
-d 设定一个进程的数据段的最大值.单位:kbytes
-f Shell 创建档案的档案大小的最大值,单位blocks
-h 指定设定某个给定资源的硬极限。如果用户拥有 root 用户许可权,可以增大硬极限。任何用户均可减少硬极限
-l 可以锁住的物理记忆体的最大值
-m 可以使用的常驻记忆体的最大值,单位kbytes
-n 每个进程可以打开的最大档案数
-p 设定管道的最大值,单位为block,1block=512bytes
-s 指定堆叠的最大值单位kbytes
-S 指定为给定的资源设定软极限。软极限可增大到硬极限的值。如果 -H 和 -S 标誌均未指定,极限适用于以上二者
-t 指定每个进程所使用的秒数,单位seconds
-u 可以运行的最大并发进程数
-v Shell可使用的最大的虚拟记忆体,单位kbytes
eg: ulimit -c 1000(可以先通过ulimit -c 查看原来的值)