上一篇简单介绍了Linux的一些特点,其中提到Linux的文件系统是“树”结构,所有的目录都能与根目录直接或者间接的相连。Linux没有C,D盘的区分,那么在安装好,系统已经创建的目录和功能有哪些呢?这就需要知道Linux的文件结构,这样才方便以后文件系统的管理。
在上一篇文章中,已经介绍了文件的类型,分为:普通文件,目录文件,链接文件等。下面就讲Linux的文件结构。
Linux文件结构:
/:根目录,所有的目录、文件、设备都在/之下。
/bin:可执行文件或程序,用户名令。bin 就是二进制(
binary)英文缩写。在一般的系统当中,都可以在这个目录下找到linux常用的命令。
/boot:系统启动需要的相关文件(如内核),Linux的内核及引导系统程序所需要的文件目录。
/cdrom:这个目录在刚刚安装系统的时候是空的。可以将光驱文件系统挂在这个目录下。例如:mount /dev/cdrom /cdrom
/dev:dev 是设备(
device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。这一点和常用的windows,dos操作系统不一样。它实际上是一个访问这些外部设备的端口。可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。
/etc:etc这个目录是linux系统中最重要的目录之一。在这个目录下存放了系统管理时要用到的各种配置文件和子目录。要用到的网络配置文件,文件系统,x系统配置文件,设备配置信息,设置用户信息等都在这个目录下。
/home:如果建立一个用户,用户名是"xx",那么在/home目录下就有一个对应的/home/xx路径,用来存放用户的主目录。
/lib:lib是库(library)英文缩写。这个目录是用来存放系统动态连接共享库的。几乎所有的应用程序都会用到这个目录下的共享库。因此,千万不要轻易对这个目录进行什么操作,一旦发生问题,系统就不能工作了。
/mnt:这个目录一般是用于存放挂载储存设备的挂载目录的,比如有
cdrom等目录。可以参看/etc/fstab的定义。
/opt:可选目录,常用于存放第三方程序。这里主要存放那些可选的程序。
/proc:伪文件系统,内核映射文件。可以在这个目录下获取系统信息。这些信息是在内存中,由系统自己产生的。
/root:Linux超级权限用户
root的家目录。
/sbin:这个目录是用来存放系统管理员的系统管理程序。大多是涉及系统管理的命令的存放,是超级权限用户root的可执行命令存放地,普通用户无权限执行这个目录下的命令,这个目录和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目录是相似的,凡是目录sbin中包含的都是root权限才能执行的。
/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数据库的的存放地。
Linux的常用技巧:
一。 通用命令: [7] 1. date :print or set the system date and time
特殊 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
Linux的常用技巧:
一。 通用命令: [7] 1. 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 or set the system date and time
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常用命令: [7]
3. passwd: print or set the system date and time (用passwd -h查看)
4. logout, login: 登录shell的登录和注销命令
5. pwd: print or set the system date and time
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常用命令: [7]
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 [7]
6. Nautilus:
* 安装: 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 [7]
特殊 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