系统结构:倒置树状结构,所有文件和文件夹都在根目录"/"中。
Linux系统严格区分大小写。
路径间使用"/"分割(与windows使用"\"相反)
每个shell或进程都有一个当前工作目录,查看当前工作目录使用:pwd命令(print work directory缩写)。
文件名称:
Touch命令可以创建一个空白文件或更新现有文件的时间;
以"."开头的文件为隐藏文件。
列出目录内容:
Ls命令列出目录的内容,相关参数:
–a:显示所有文件(包括隐藏的)
-l: 显示详细信息
-R: 递归显示子目录结构(注意是大写R)
-ld: 显示目录的链接信息
查看文件的类型:file
绝对路径:以"/"开头,递归每级目录到目标路么,不受当前所在工作目录限制;
相对路径:以当前目录为起点,到达目标的路径,受当前所在目录限制。
Cd命令可以切换目录:
上一级目录:..
上一个工作目录:-
当前目录:.
家目录:~ (或者直接cd回车也可以回到家目录)
根目录:/
本文链接
Kernel:Linux内核。
Shell:接受用户输入的指令,并将这些指令转换为Kernel可处理的信息。它是用户与Kernel之间联系的桥梁。
Shell分为CLI(Command Line Interface)和GUI(Graphic User Interface)两种。
Linux的Shell:
Cli名称为BASH,GUI名称为GNOME。
Bash能完成Linux的所有命令,GNOME则不一定。
BASH提示符:
#:代表root用户;$代表普通用户
Linux命令行提示符:
[root@linux ~]#
Root代表当前的登录用户为root用户
Linux 代表当前的主机名,名为linux。
~ 代表当前的目录为home目录。
命令一般由三部分组成:
命令 选项 参数
uname:返回当前系统信息
参数:-r 返回当前系统版本号
-a 或 -all返回当前系统的所有详细信息
任何命令后面加&,可以将命令在后台运行。
例如:firefox & 在后台打开火狐浏览器。
Tab键简化命令使用:
BASH的历史记录:
通过Ctrl+r:可以输入任一字符快速搜索之前使用的命令。
通过Esc+.:可以利用上一次命令使用的参数。
通配符:
通配符的使用与正则表达式类似。
切换用户:su命令
su - :切换到root用户(加-破折号代表启用全新的终端)
su – 指定用户名:切换到指定用户
使用管理员用户权限执行命令:sudo
id:显示当前用户信息
passwd:修改当前用户密码
clear: 清屏
BASH后台作业管理:
本文链接
关键词:vsftpd、Centos、nat、pasv、vmware
标题有点拗口。在服务器中安装了一个vmware虚拟机,然后搭建了一个Centos5.4的Linux系统。准备在上面配置一台ftp服务器,采用的是vsftpd。
网络环境是这样的:服务器拥有一个固定IP,所以要连接到虚拟机下的Centos,采用的是nat方式。
vsftpd采用被动模式(pasv),监听端口采用默认的21,数据通讯高端口使用9010 - 9015
在linux的防火墙上开放了这些端口。
命令如下:
/sbin/iptables -I INPUT -p tcp --dport 9010 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 9011 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 9012 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 9013 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 9014 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 9015 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables status
配置文件:
/etc/vsftpd/vsftpd.conf
相关pasv部分:
pasv_min_port=9010
pasv_max_port=9015
然后在虚拟机上做了nat端口映射。
服务器 9010 -> 虚拟机 9010
服务器 9011 -> 虚拟机 9011
服务器 9012 -> 虚拟机 9012
服务器 9013 -> 虚拟机 9013
服务器 9014 -> 虚拟机 9014
服务器 9015 -> 虚拟机 9015
添加好ftp用户,过程略。
然后在服务器上用flashfxp登录虚拟机(使用内部IP,192.168.17.128)的vsftpd,没有问题,数据连接端口也在9010到9015之间。
然后在笔记本上面使用flashfxp连接vsftpd,IP填写服务器真实IP,端口填写nat映射成的9021,开始连接,能够登录进用户,但是列表的时候打开的数据端口,不是设定的9010 - 9015,而是随机的,比如10534什么的,导致无法列表和传输数据。
后来Google了一把,在/etc/vsftpd/vsftpd.conf配置文件中添加了2个参数
pasv_addr_resolve=YES
重启vsftpd,问题照旧。
后来把ftp的21端口也改掉,改成9011,数据端口改成9012 - 9015,ftp客户的端口改成9011,连接一切正常。
最后的配置如下:
pasv_enable=YES
pasv_min_port=9012
pasv_max_port=9015
pasv_addr_resolve=YES
pasv_address=example.hostname.com
pasv_address 是真实的服务器地址,可以是域名。
猜测这中间出现的问题是在端口映射 服务器 9021 -> 虚拟机 21 之上。
如果是 服务器 21 -> 虚拟机 21,有可能不会出现问题,但是21端口已经被服务器占用,没有测试。
而9010到9015端口,都是用的直接映射,中间不存在端口转化,所以可以正常使用。
这其中道理,不是很清楚,欢迎大侠们来评评。
本文链接