ls [list]
这个命令就相当于dos下的dir命令一样,这也是Linux控制台命令中最为重要几个命令之一。ls最常用的参数有三个: -a -l -F。
ls -a
Linux上的文件以“.”开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示 一般文件名外,连隐藏文件也会显示出来。
ls -l(这个参数是字母L的小写,不是数字1)
这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令。例如我在某个目录下键入ls -l可能会显示如下信息(最上面两行是我自己加的):
位置1 2 3 4 5 6 7
文件属性 文件数 拥有者 所属者 group 文件大小 建档日期 文件名
drwx------ 2 Guest users 1024 Nov 21 21:05 Mail
-rwx--x--x 1 root root 89080 Nov 7 22:41 tar*
-rwxr-xr-x 1 root bin 5013 Aug 15 9:32 uname*
lrwxrwxrwx 1 root root 4 Nov 24 19:30 zcat->gzip
-rwxr-xr-x 1 root bin 308364 Nov 29 7:43 zsh*
-rwsr-x--- 1 root bin 9853 Aug 15 5:46 su*
下面,我为大家解释一下这些显示内容的意义。
第一个栏位,表示文件的属性。Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。第一个小格是特殊表示格,表示目录或连结文件等等,d表示目录,例如drwx------;l表示连结文件,如lrwxrwxrwx;如果是以一横“-”表示,则表示这是文件。其余剩下的格子就以每3格为一个单位。因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):
rwx(Owner)r-x(Group)r-x(Other)
这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可写,可执行;其它用户可读,不可写,可执行。另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。
第二个栏位,表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。
第三个栏位,表示该文件或目录的拥有者。若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。
第四个栏位,表示所属的组(group)。每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。
第五栏位,表示文件大小。文件大小用byte来表示,而空目录一般都是1024byte,你当然可以用其它参数使文件显示的单位不同,如使用ls –k就是用kb来显示一个文件的大小单位,不过一般我们还是以byte为主。
第六个栏位,表示创建日期。以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。
第七个栏位,表示文件名。我们可以用ls –a显示隐藏的文件名。
ls –F(注意,是大写的F)
使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。
cd
cd [change directory]
这个命令是用来进出目录的,它的使用方法和在dos下没什么两样,所以我觉得没什么可说的,但有两点我补充一下。首先,和dos不同的是Linux的目录对大小写是敏感的,如果大小写没拼对,你的cd操作是成功不了的。其次,cd如果直接输入,cd后面不加任何东西,会回到使用者自己的Home Directory。假设如果是root,那就是回到/root.这个功能同cd ~是一样的。
mkdir、rmdir
mkdir [make directory] rmdir [remove directory]
mkdir命令用来建立新的目录,
rmdir 用来删除已建立的目录,这两个指令的功能不再多加介绍,他们同dos下的md,rd功能和用法都是基本一样的。
名称:rm
使用权限:所有使用者
使用方式:rm [options] name...
说明:删除档案及目录。
参数:
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除。
范例:
删除所有C语言程序档;删除前逐一询问确认 :
rm -i *.c
将 Finished 子目录及子目录中所有档案删除 :
rm -r Finished
cp
cp [copy]
这个命令相当于dos下面的copy命令,具体用法是:cp –r 源文件(source) 目的文件(target)
参数r是指连同源文件中的子目录一同拷贝。熟悉dos的读者用起这个命令来会觉得更方便,毕竟比在dos下面要少敲两下键盘。
楼上的不改了。
../ 和 ./ 代表的 是上级目录 以及当前目录。
这样运用这两个命令来完成两种复制方法。
第一种:处在当前目录复制当前目录下文件到别的目录。
cp_文件名称_别的文件目录路径。"_"是空格
举个例子 在 orz文件夹下有两个子文件夹a和b,a中有文件x.c,b中无文件。
此时我们在a文件夹中命令如下:
cp x.c ../b/
第二种:处在当前文件夹下复制另外文件夹下的文件到当前文件夹下。
cp_路径/文件名称_./
例子条件同上个例子,命令如下:
cp ../a/x.c ./
rm
rm [remove]
这个命令是用来删除文件的,和dos下面的rm(删除一个空目录)是有区别的,大家千万要注意。rm命令常用的参数有三个: -i,-r,-f。
比如我现在要删除一个名字为test的一个文件:rm –i test
系统会询问我们:“rm:remove ‘test’?y”,敲了回车以后,这个文件才会真的被删除。之所以要这样做,是因为linux不象dos那样有undelete的命令,或者是可以用pctool等工具将删除过的文件救回来,linux中删除过的文件是救不回来的,所以使用这个参数在删除前让你再确定一遍,是很有必要的。
rm –r 目录名:这个操作可以连同这个目录下面的子目录都删除,功能上和rmdir相似。
rm –f 文件名(目录名):这个操作可以进行强制删除。
mv
mv [move]
这个命令的功能是移动目录或文件,引申的功能是给目录或文件重命名。它的用法同dos下面的move基本相同,这里不再多讲。当使用该命令来移动目录时,他会连同该目录下面的子目录也一同移走。如果你想给一个文件或目录重命名时可以用以下方法:mv 原文件名(目录) 新的文件名(目录)。
du,df
du [disk usage]
du命令可以显示目前的目录所占的磁盘空间,df命令可以显示目前磁盘剩余的磁盘空间。如果du命令不加任何参数,那么返回的是整个磁盘的使用情况,如果后面加了目录的话,就是这个目录在磁盘上的使用情况(这个功能可是dos没有的呦)。不过我一般不喜欢用du,因为它给出的信息实在是太多了,我看不过来,而df这个命令我是最常用的,因为磁盘上还剩多少空间对我来说是很重要的。
cat
cat[concatenate]
这个命令是linux中非常重要的一个命令,它的功能是显示或连结一般的ascii文本文件。cat是concatenate的简写,类似于dos下面的type命令。它的用法如下:
cat text 显示text这个文件;
cat file1 file2 依顺序显示file1,file2的内容;
cat "file1" "file2">file3 把file1,file2的内容结合起来,再“重定向(>)”到file3文件中。
“〉”是一个非常有趣的符号,是往右重定向的意思,就是把左边的结果当成是输入,然后输入到file3这个文件中。这里要注意一点是file3是在重定向以前还未存在的文件,如果file3是已经存在的文件,那么它本身的内容被覆盖,而变成file1+file2的内容。如果〉左边没有文件的名称,而右边有文件名,例如:
cat >file1:结果是会“空出一行空白行”,等待你输入文字,输入完毕后再按[Ctrl]+[c]或[Ctrl]+[d],就会结束编辑,并产生file1这个文件,而file1的内容就是你刚刚输入的内容。这个过程和dos里面的copy con file1的结果是一样的。
另外,如果你使用如下的指令:
cat file1>>file2:这将变成将file1的文件内容“附加”到file2的文件后面,而file2的内容依然存在,这种重定向符〉〉比〉常用,可以多多利用。
more,less
这是两个显示一般文本文件的指令。如果一个文本文件太长了超过一个屏幕的画面,用cat来看实在是不理想,就可以试试more和less两个指令。More指令可以使超过一页的文件临时停留在屏幕,等你按任何的一个键以后,才继续显示。而less除了有more的功能以外,还可以用方向键往上或往下的滚动文件,所以你随意浏览,阅读文章时,less是个非常好的选择。
pwd
pwd [print working directory]
pwd [--help][--version]
说明:执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称。
clear
这个命令是用来清除屏幕的,它不需要任何参数,和dos下面的cls具有相同的功能,如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息。
ln
ln[link]
这是linux中又一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln 源文件 –s 目标文件。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln /bin/less –s /usr/local/bin/less
-s 是代号(symbolic)的意思。
这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接有软链接和硬链接两种,软链接就是ln –s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls –l命令去察看,就可以看到显示的link的路径了。
grep
用于查找文件中符合字符串的那行。
e.g. grep -nr "network_ssl" ./ [查找当前文件夹下所有文件内容,列出包含有 network_ssl该字串的行,并显示行号]
参数说明: -a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
-r :明确要求搜索子目录:grep -r 或忽略子目录:grep -d skip 如果有很多 输出时,您可以通过管道将其转到’less’上阅读:$ grep magic /usr/src/Linux/Documentation/* | less 这样,您就可以更方便地阅读。
find
find / -name "*.txt" -print 用于查找所有的‘ *.txt’文件在当前目录及子目录中;
find / -name "[A-Z]*" -print 用于当前目录及子目录中查找文件名以一个大写字母开头的文件;
find /etc -name "host*" -print 在/etc目录中查找文件名以host开头的文件;
find / -name "[a-z][a-z][0--9][0--9].txt" -print 在当前目录查找文件名以两个小写字母开头,跟着是两个数字,最后是.txt的文件;
1、find命令的一般形式为;
find pathname -options [-print -exec -ok ...]
2、find命令的参数;
pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print: find命令将匹配的文件输出到标准输出。
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
3、find命令选项
-name
按照文件名查找文件。
-perm
按照文件权限来查找文件。
-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user
按照文件属主来查找文件。
-group
按照文件所属的组来查找文件。
-mtime -n +n
按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。
-nogroup
查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser
查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。
-newer file1 ! file2
查找更改时间比文件file1新但比文件file2旧的文件。
-type
查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。
-mount:在查找文件时不跨越文件系统mount点。
-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。
另外,下面三个的区别:
-amin n
查找系统中最后N分钟访问的文件
-atime n
查找系统中最后n*24小时访问的文件
-cmin n
查找系统中最后N分钟被改变文件状态的文件
-ctime n
查找系统中最后n*24小时被改变文件状态的文件
-mmin n
查找系统中最后N分钟被改变文件数据的文件
-mtime n
查找系统中最后n*24小时被改变文件数据的文件
ar(压缩文件类似)
功能说明:建立或修改备存文件,或是从备存文件中抽取文件。
语 法:ar[-dmpqrtx][cfosSuvV][a<成员文件>][b<成员文件>][i<成员文件>][备存文件][成员文件]
补充说明:ar可让您集合许多文件,成为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限。
参 数:
指令参数
-d 删除备存文件中的成员文件。
-m 变更成员文件在备存文件中的次序。
-p 显示备存文件中的成员文件内容。
-q 将文件附加在备存文件末端。
-r 将文件插入备存文件中。
-t 显示备存文件中所包含的文件。
-x 自备存文件中取出成员文件。
选项参数
a<成员文件> 将文件插入备存文件中指定的成员文件之后。
b<成员文件> 将文件插入备存文件中指定的成员文件之前。
c 建立备存文件。
f 为避免过长的文件名不兼容于其他系统的ar指令指令,因此可利用此参数,截掉要放入备存文件中过长的成员文件名称。
i<成员文件> 将文件插入备存文件中指定的成员文件之前。
o 保留备存文件中文件的日期。
s 若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表。
S 不产生符号表。
u 只将日期较新文件插入备存文件中。
v 程序执行时显示详细的信息。
rpm
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件,与Dpkg类似。
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。
常用rpm命令
查询rpm软件包
#rpm -q 软件包名
#rpm -qa //查询安装的所有软件包
#rpm -qa|grep 软件包字符串
#rpm -qf /bin/命令 //查询命令由哪些软件包安装得到
#rpm -qi 软件包名 //查询软件包的详细信息
#rpm -ql 软件包名 //查询软件包的安装位置
软件包的安装
#rpm -ivh 软件包
软件包的升级
#rpm -Uvh 软件包
软件包的卸载
#rpm -e 软件包名
文件打包
#tar -cvf [文件名.tar] [文件……目录]
查看包文件的内容
#tar -tf 文件名.tar
向已有的包中添加新文件
#tar -rvf [文件名.tar] [新文件……]
释放包文件#tar -xvf 文件名.tar
压缩文件#gzip 文件名
解压缩文件
#gzip -d 文件名.gz 或#gunzip 文件名.gz
创建压缩包
#tar -zcvf [文件名.tar.gz] [文件1 文件2 …]
查看压缩包中的内容
#tar -ztf 文件名.tar.gz
释放压缩包
#tar -zxvf 文件名.tar.gz
mount,umount
mount是Linux下的一个命令,它可以将分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将分区和/mnt这个目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了。目前mount已经不仅仅局限于Linux了,在Windows系统下的应用也越来越广了,多用在虚拟光驱类软件上,比如Clone CD,Daemon tool,WinMount等。
注意事项
1、必须将光盘、U盘等放入驱动器在实施挂载操作
2、不能在挂载目录下实施挂载操作,至少在上一级
3、不能在同一目录下挂载两个以上的文件系统
4、Linux预留挂载目录为/mnt
5、不能在挂载目录下实施卸载操作
6、挂载目录必须事先存在
挂载光盘
#mount -t iso9660 /dev/cdrom /mnt/cdrom
卸载光盘
#umount /mnt/cdrom或#umount /dev/cdrom或#cd;eject
挂载U盘
#mount /dev/sdb1 /mnt/usb
挂载iso镜像
#mount -t iso9660 -o loop iso镜像文件 /mnt/cdrom
用户和组管理
#useradd 用户名 //创建用户和组
#passwd 用户名 //设置用户密码
#groupadd 组名 //创建组
#usermod –d 路径 用户名 //修改用户宿主目录
#usermod –u uid 用户名 //修改用户的UID
#usermod -s /bin/[csh] 用户名 //修改用户启动shell
#usermod -G 组名 用户名 //将用户加入组, 创建私有组
#usermod -g 组名 用户名 //用户加入组但不创建私有组
#gpasswd -a 用户名 组名 //同-G
#gpasswd -d 用户名 组名 //将用户从组中删除
#gpasswd -A 用户名 组名 //指定用户成为组的管理员
#usermod -L 用户名 //锁定用户#passwd -l 用户名 //同上
#usermod -U 用户名 //解锁用户#passwd -u 用户名 //同上
#usermod -l 新名 原名 //重命名用户
#groupmod -n 新名 原名 //重命名组
#userdel 用户名 //删除用户#userdel –r 用户名 //彻底删除,包括用户的宿主目录
#groupdel 组名 //删除组
#passwd -d 用户名 /删除用户密码/
进程及服务管理
查看进程
#ps -aux //查看所有进程(静态)
#top //查看动态变化的进程
#pstree //查看进程树
将进程放在后台运行
#命令 &
查看后台运行的进程
#jobs
将后台运行的进程调入前台
#fg 编号
强制结束进程
#kill -9 PID 或#killall -9 进程名
init进程是所有进程的父进程其级别如下
0 关机
1 单用户
2 多用户字符,但是不支持NFS
3 完全多用户字符
4 用户自定义
5 图形
6 重启
查看服务启动情况(独立启动方式)
#chkconfig --list //查看所有服务的启动状态
#chkconfig --list httpd
设置独立启动服务
#chkconfig --level 35 httpd on或off
设置非独立启动服务
#chkconfig telnet on或off#service xinetd restart
设置服务在开机时自动运行
#ntsysv
网卡设置
1、 设置ip地址(即时生效,重启失效)
#ifconfig eth0 ip地址 netmask 子网掩码
2、 设置ip地址(重启生效,永久生效)
#setup
3、 通过配置文件设置ip地址(重启生效,永久生效)
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #设备名,与文件同名。
ONBOOT=yes #在系统启动时,启动本设备。
BOOTPROTO=static
IPADDR=202.118.75.91 #此网卡的IP地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=202.118.75.1 #网关IP
MACADDR=00:02:2D:2E:8C:A8 #mac地址
4、 重启网络服务
#service network restart //重启所有网卡
5、 禁用网卡,启动网卡
#ifdown eth0
#ifup eth0
6、 屏蔽网卡,显示网卡
#ifconfig eth0 down
#ifconfig eth0 up
7、 配置DNS客户端(最多三个)
#vi /etc/resolv.conf
nameserver 202.99.96.68
8、更改主机名(即时生效)
#hostname 主机名
9、更改主机名(重启计算机生效,永久生效)
#vi /etc/sysconfig/network
HOSTNAME=主机名
FTP服务
1 使用setup命令开启vsftpd服务进程。
2然后修改文件/etc/xinetd.d/vsftpd。(但vsftpd是依附于xinetd.d运行时2、3有效)
(1)把disable=yes改为=no。
(2)配置每个客户机的最大连接数:
在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:
per_source = 数值。例如:per_source = 5 表示每个客户机的最大连接数为5。
(3) 配置服务器总的并发连接数:
在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:
instances = 数值。例如:instances = 200 表示FTP 服务器总共支持的最高连接数为200。
(4)当vsftpd单独运行时:要配置独立运行的vsftpd很简单,只需要在前面的主配置文件的基础上添加如下的配置即可。
设置listen=YES :指明vsftpd 以独立运行方式启动。
设置max_clients=200 :指明服务器总的并发连接数
设置max_per_ip=4 :指明每个客户机的最大连接数。
3. 配置/etc/vsftpd.conf(redhat9 是/etc/vsftpd/vsftpd.conf)文件。
# 允许真实用户(在系统中有账号的用户)访问
local_enable=YES
# 给真实用户写权限
write_enable=YES
# 真实用户上传文件的掩码设为022。这样真实用户上传后的文件权限为755(rwxr-xr-x),即文件所有者可读写执行、同组成员可读可执行、
# 系统中的其它用户可读可执行。
local_umask=022
# 允许匿名用户访问。匿名用户在系统中的账号是ftp
anonymous_enable=YES
# 匿名用户上传文件的掩码设为000。这样文件上传后的权限为777(rwxrwxrwx),即所有人都可以读写执行。
anon_umask=000
# 匿名用户可上传、可创建目录。一下3行只有设置了write_enable=YES才有效。
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_world_readable_only=NO
# 如果想要让匿名用户有删除的权限可以加上如下代码
# anon_other_write_enable=YES
# 进入每个目录都显示特定提示。这些提示放在各个目录下.message文件中。
dirmessage_enable=YES
# 当用户登陆ftp服务器时,不管是否登陆成功都显示如下信息。
ftpd_banner=Welcome to NiHao FTP service.
# 使用日志记录上传和下载。
xferlog_enable=YES
# 日志文件的位置
#xferlog_file=/var/log/vsftpd.log
# 日志使用标准fpd格式
xferlog_std_format=YES
# ftp服务的端口是20
connect_from_port_20=YES
# 用户使用ftp访问服务器时,把他们的登陆目录作为它们在ftp中看到的目录,这称为chroot。
# 这样用户就无法访问他们登陆目录以外的内容,大大增强了安全性。匿名用户的登陆目录是/var/ftp/
chroot_list_enable=YES
# 文件/etc/vsftpd.chroot_list中的用户不chroot。
chroot_list_file=/etc/vsftpd.chroot_list
# 同时最多允许5个用户登陆。
max_clients=5 #有些不支持此选项,注释掉即可。
# ftp服务的密码验证模块。
pam_service_name=vsftpd
# listen=YES #如果是独立运行的则加此项(redhat9)。
#tcp_wrappers=YES #如果是独立运行的则加此项(redhat9)。
4.重新启动xinetd服务,你就可以匿名访问你的ftp服务器了。
下面我们来建立一个ftp管理员账号
在Linux ftp服务中,用户的权限受到双重限制。一是Linux文件系统本身的权限限制。每个文件的访问权限用rwxrwxrwx形势表示。每个用户只能做文件权限允许的操作。二是ftp配置的限制。系统允许的操作,如果在ftp的配置文件中没有被允许,用户还是不能作这个操作。如:某个文件的权限为rwxrwxrwx,即系统认为任何人都有读写执行的权利。如果vsftpd.conf中不允许匿名用户写,匿名用户还是不能修改这个文件。
对于目录文件的读权限,意味着可以读出这个目录中的文件信息。目录文件的写权限,意味着可以在这个目录下建立、删除、重命名文件。
用命令groupadd -r ftpAdmin添加一个ftp管理员组。其中-r表示这是一个系统组。
用命令useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin添加一个管理员用户ftpAdmin。其中
-c "ftp Administrator" 是对这个用户的描述
-d /var/ftp/ 是这个用户的登陆目录
-g ftpAdmin 是这个用户所在的组
-s /sbin/nologin 是这个用户登陆时所用的shell。这个shell命令的功能极其弱,以至于不能用telnet登陆。也就是说这个管理员只能当当垃圾清扫员。(呵呵。好没面子的管理员)
-r 表示这是个系统账号,不用为它建立登陆目录。
建好管理员以后把incoming目录的管理权给他。
chown ftpAdmin /var/ftp/incoming :把此目录所有者设为ftpAdmin。
chmod 755 /var/ftp/incoming :把目录的权限设为所有者可读写执行,同组用户可读、可执行,所有人可读、可执行。
这样,我们的管理员就可以开始管理了。
5 . 配置vsftpd 允许匿名用户上传
//修改vsftpd 的主配置文件/etc/vsftpd.conf
# vi /etc/vsftpd.conf
//将如下两行前的#删除
//① #anon_upload_enable=YES 允许匿名用户上传
//② #anon_mkdir_write_enable=YES 开启匿名用户的写和创建目录的权限
//若要以上两项设置生效,同时还要求:
//(1) write_enable=YES
//(2) 匿名用户对文件系统的上传目录具有写权限
//添加如下的配置语句
// anon_world_readable_only=NO
//上面的配置语句用于放开匿名用户的浏览权限
//修改后存盘退出vi
//
//创建匿名上传目录
# mkdir /var/ftp/incoming
# 修改上传目录的权限
# chmod o+w /var/ftp/incoming/
#
//重新启动xinetd
# service xinetd restart
Web服务(httpd)
同样在setup中选中httpd服务。www服务不需要xinetd作为它的代理进程。httpd这个进程一直在系统中运行。www服务的默认目录是/var/www/html。只要把主页放到这个目录下就可以访问了。
我们可以用建立ftp管理员的办法建立一个www管理员wwwAdmin。只要把它的登陆目录设为/var/www/html即可。
/etc/init.d/httpd start #启动服务
/etc/init.d/httpd restart #重新启动
其配置文件为/etc/httpd/conf/httpd.conf
ssh服务
SSH 是什么呢?他有什么特异功能?简单的来说,SSH 是 Secure SHell protocol 的简写,他可以经由将联机的封包加密的技术,来进行资料的传递,因此,资料当然就比较安全啰!这个 SSH 可以用来取代 Internet 上面较不安全的 finger, R Shell (rcp, rlogin, rsh 等指令), talk 及 telnet 等联机模式。底下我们将先简介一下 SSH 的联机模式,来说明为什么 SSH 会比较安全呢!
特别注意:这个 SSH 协议,在预设的状态中,本身就提供两个服务器功能:
1. 一个就是类似 telnet 的远程联机使用 shell 的服务器,亦即是俗称的 ssh ;
2. 另一个就是类似 FTP 服务的 sftp-server !提供更安全的 FTP 服务
10个快捷键
1.前一个后一个工作区的切换
如果你经常使用工作区,那你就可以用Ctrl Alt 上/下方向键很容易地进行切换.左箭头切换到上一个工作区,右箭头切换到下一个工作区.如果你安装了Compiz,可以用Super E快捷键显示所有的工作区.
2.把当前窗口移到另一个工作区
快捷键Shift Ctrl Alt 左/右方向键让你很容易把当前窗口移到指定的工作区.这个快捷键和上面的快捷键很好配合.如果你工作时常常打开很多窗口,但又不想看到桌面和任务栏挤满程序,你可以用这个快捷键把程序移到另一个工作区,这样你的桌面就整洁多了.
3. 显示桌面
Ctrl Alt D快捷键让你很快地最小化所有窗口,看到桌面.当所有窗口都最小化后,你再按这个快捷键就可以恢复窗口原来的状态.
4.鼠标右击的键盘快捷键
在大多数程序里,你可以右击显示快捷菜单.其实键盘上 Shift F10也能达到一样的效果.
5.重启会话以从崩溃中恢复
ubuntu很少会完全崩溃.但如果它真的崩溃了,你可以按下Ctrl Alt Backspace来重启会话,恢复的可能达90%.
6.快速锁定屏幕
如果你需要离开电脑一会儿,可以按下Ctrl Alt L很快地锁定屏幕,以防有人使用
7.反向切换窗口
Alt Tab是切换窗口的快捷键.如果你再按下SHIft,你就可以反向切换窗口.这个快捷键很有用,当你Alt Tab按得太快,错过了你想要切换的窗口,按一下shift就可以返回之前的窗口了.
8. 用方向键移动窗口
Alt F7会激活移动窗口功能,用方向键(上,下,左,右)就可以移到窗口了.
9.显示隐藏的文件
大多数情况下,你不需要在你的“家“目录中看到那些隐藏文件,但如果你有这个需要,你可以在 Nautilus(ubuntu的文件管理器)下按Ctrl H来显示隐藏文件.
10. 不用右击鼠标就能显示文件属性
想要查看文件/文件夹的一般做法是右击选择属性.现在你可以按下 Alt Enter就能显示属性窗口了.
网卡、ip设置
Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置的方法:
即时生效(重启后失效):
ifconfig eth0 192.168.1.102 netmask 255.255.255.0 //添加IP地址
route add default gw 192.168.1.1 //添加网关
启动生效:
vi /etc/sysconfig/network-scripts/ifcfg-eth0 //(某些版本中可能没有vim这个编辑器比如centos,大家可能用vi替换)
IPADDR=192.168.1.102 //添加IP地址
NETMASK=255.255.255.0 //掩码
GATEWAY=192.168.1.1 //添加网关
最后结果如下:
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.102
NETMASK=255.255.255.0
GETEWAY=192.168.1.1
ONBOOT=yes
TYPE=Ethernet
注:BOOTPROTO只有在static(静态)模式下才可以使用设置的IP信息
修改dns
vim /etc/resolv.conf
修改后可即时生效,启动同样有效
形式
加入nameserver= ***.***.***.***
最多可有三个,作为上一个失败后的候选
修改host name
即时生效:
hostname fc2
启动生效:
vim /etc/sysconfig/network
形式如下:
NETWORKING=yes
HOSTNAME=rh-linux.fc.org
##########################################################
首先,先了解传统的网络配置命令:
1. 使用ifconfig命令配置并查看网络接口情况
示例1: 配置eth0的IP,同时激活设备:
ifconfig eth0 192.168.4.1 netmask 255.255.255.0 up
示例2: 配置eth0别名设备 eth0:1 的IP,并添加路由
ifconfig eth0:1 192.168.4.2
route add –host 192.168.4.2 dev eth0:1
示例3:激活(禁用)设备
ifconfig eth0:1 up(down)
示例4:查看所有(指定)网络接口配置
ifconfig (eth0)
—————————
这个命令就相当于dos下的dir命令一样,这也是Linux控制台命令中最为重要几个命令之一。ls最常用的参数有三个: -a -l -F。
ls -a
Linux上的文件以“.”开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示 一般文件名外,连隐藏文件也会显示出来。
ls -l(这个参数是字母L的小写,不是数字1)
这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到ls -l这个指令。例如我在某个目录下键入ls -l可能会显示如下信息(最上面两行是我自己加的):
位置1 2 3 4 5 6 7
文件属性 文件数 拥有者 所属者 group 文件大小 建档日期 文件名
drwx------ 2 Guest users 1024 Nov 21 21:05 Mail
-rwx--x--x 1 root root 89080 Nov 7 22:41 tar*
-rwxr-xr-x 1 root bin 5013 Aug 15 9:32 uname*
lrwxrwxrwx 1 root root 4 Nov 24 19:30 zcat->gzip
-rwxr-xr-x 1 root bin 308364 Nov 29 7:43 zsh*
-rwsr-x--- 1 root bin 9853 Aug 15 5:46 su*
下面,我为大家解释一下这些显示内容的意义。
第一个栏位,表示文件的属性。Linux的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。但是这里有十个格子可以添(具体程序实现时,实际上是十个bit位)。第一个小格是特殊表示格,表示目录或连结文件等等,d表示目录,例如drwx------;l表示连结文件,如lrwxrwxrwx;如果是以一横“-”表示,则表示这是文件。其余剩下的格子就以每3格为一个单位。因为Linux是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x为例):
rwx(Owner)r-x(Group)r-x(Other)
这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可写,可执行;其它用户可读,不可写,可执行。另外,有一些程序属性的执行部分不是X,而是S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。一般出现在系统管理之类的指令或程序,让使用者执行时,拥有root身份。
第二个栏位,表示文件个数。如果是文件的话,那这个数目自然是1了,如果是目录的话,那它的数目就是该目录中的文件个数了。
第三个栏位,表示该文件或目录的拥有者。若使用者目前处于自己的Home,那这一栏大概都是它的账号名称。
第四个栏位,表示所属的组(group)。每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。
第五栏位,表示文件大小。文件大小用byte来表示,而空目录一般都是1024byte,你当然可以用其它参数使文件显示的单位不同,如使用ls –k就是用kb来显示一个文件的大小单位,不过一般我们还是以byte为主。
第六个栏位,表示创建日期。以“月,日,时间”的格式表示,如Aug 15 5:46表示8月15日早上5:46分。
第七个栏位,表示文件名。我们可以用ls –a显示隐藏的文件名。
ls –F(注意,是大写的F)
使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。
cd
cd [change directory]
这个命令是用来进出目录的,它的使用方法和在dos下没什么两样,所以我觉得没什么可说的,但有两点我补充一下。首先,和dos不同的是Linux的目录对大小写是敏感的,如果大小写没拼对,你的cd操作是成功不了的。其次,cd如果直接输入,cd后面不加任何东西,会回到使用者自己的Home Directory。假设如果是root,那就是回到/root.这个功能同cd ~是一样的。
mkdir、rmdir
mkdir [make directory] rmdir [remove directory]
mkdir命令用来建立新的目录,
rmdir 用来删除已建立的目录,这两个指令的功能不再多加介绍,他们同dos下的md,rd功能和用法都是基本一样的。
名称:rm
使用权限:所有使用者
使用方式:rm [options] name...
说明:删除档案及目录。
参数:
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r 将目录及以下之档案亦逐一删除。
范例:
删除所有C语言程序档;删除前逐一询问确认 :
rm -i *.c
将 Finished 子目录及子目录中所有档案删除 :
rm -r Finished
cp
cp [copy]
这个命令相当于dos下面的copy命令,具体用法是:cp –r 源文件(source) 目的文件(target)
参数r是指连同源文件中的子目录一同拷贝。熟悉dos的读者用起这个命令来会觉得更方便,毕竟比在dos下面要少敲两下键盘。
楼上的不改了。
../ 和 ./ 代表的 是上级目录 以及当前目录。
这样运用这两个命令来完成两种复制方法。
第一种:处在当前目录复制当前目录下文件到别的目录。
cp_文件名称_别的文件目录路径。"_"是空格
举个例子 在 orz文件夹下有两个子文件夹a和b,a中有文件x.c,b中无文件。
此时我们在a文件夹中命令如下:
cp x.c ../b/
第二种:处在当前文件夹下复制另外文件夹下的文件到当前文件夹下。
cp_路径/文件名称_./
例子条件同上个例子,命令如下:
cp ../a/x.c ./
rm
rm [remove]
这个命令是用来删除文件的,和dos下面的rm(删除一个空目录)是有区别的,大家千万要注意。rm命令常用的参数有三个: -i,-r,-f。
比如我现在要删除一个名字为test的一个文件:rm –i test
系统会询问我们:“rm:remove ‘test’?y”,敲了回车以后,这个文件才会真的被删除。之所以要这样做,是因为linux不象dos那样有undelete的命令,或者是可以用pctool等工具将删除过的文件救回来,linux中删除过的文件是救不回来的,所以使用这个参数在删除前让你再确定一遍,是很有必要的。
rm –r 目录名:这个操作可以连同这个目录下面的子目录都删除,功能上和rmdir相似。
rm –f 文件名(目录名):这个操作可以进行强制删除。
mv
mv [move]
这个命令的功能是移动目录或文件,引申的功能是给目录或文件重命名。它的用法同dos下面的move基本相同,这里不再多讲。当使用该命令来移动目录时,他会连同该目录下面的子目录也一同移走。如果你想给一个文件或目录重命名时可以用以下方法:mv 原文件名(目录) 新的文件名(目录)。
du,df
du [disk usage]
du命令可以显示目前的目录所占的磁盘空间,df命令可以显示目前磁盘剩余的磁盘空间。如果du命令不加任何参数,那么返回的是整个磁盘的使用情况,如果后面加了目录的话,就是这个目录在磁盘上的使用情况(这个功能可是dos没有的呦)。不过我一般不喜欢用du,因为它给出的信息实在是太多了,我看不过来,而df这个命令我是最常用的,因为磁盘上还剩多少空间对我来说是很重要的。
cat
cat[concatenate]
这个命令是linux中非常重要的一个命令,它的功能是显示或连结一般的ascii文本文件。cat是concatenate的简写,类似于dos下面的type命令。它的用法如下:
cat text 显示text这个文件;
cat file1 file2 依顺序显示file1,file2的内容;
cat "file1" "file2">file3 把file1,file2的内容结合起来,再“重定向(>)”到file3文件中。
“〉”是一个非常有趣的符号,是往右重定向的意思,就是把左边的结果当成是输入,然后输入到file3这个文件中。这里要注意一点是file3是在重定向以前还未存在的文件,如果file3是已经存在的文件,那么它本身的内容被覆盖,而变成file1+file2的内容。如果〉左边没有文件的名称,而右边有文件名,例如:
cat >file1:结果是会“空出一行空白行”,等待你输入文字,输入完毕后再按[Ctrl]+[c]或[Ctrl]+[d],就会结束编辑,并产生file1这个文件,而file1的内容就是你刚刚输入的内容。这个过程和dos里面的copy con file1的结果是一样的。
另外,如果你使用如下的指令:
cat file1>>file2:这将变成将file1的文件内容“附加”到file2的文件后面,而file2的内容依然存在,这种重定向符〉〉比〉常用,可以多多利用。
more,less
这是两个显示一般文本文件的指令。如果一个文本文件太长了超过一个屏幕的画面,用cat来看实在是不理想,就可以试试more和less两个指令。More指令可以使超过一页的文件临时停留在屏幕,等你按任何的一个键以后,才继续显示。而less除了有more的功能以外,还可以用方向键往上或往下的滚动文件,所以你随意浏览,阅读文章时,less是个非常好的选择。
pwd
pwd [print working directory]
pwd [--help][--version]
说明:执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称。
clear
这个命令是用来清除屏幕的,它不需要任何参数,和dos下面的cls具有相同的功能,如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息。
ln
ln[link]
这是linux中又一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln 源文件 –s 目标文件。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。例如:ln /bin/less –s /usr/local/bin/less
-s 是代号(symbolic)的意思。
这里有两点要注意:第一,ln命令会保持每一处链接文件的同步性,也就是说,不论你改动了哪一处,其它的文件都会发生相同的变化;第二,ln的链接有软链接和硬链接两种,软链接就是ln –s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空间,硬链接ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件,无论是软链接还是硬链接,文件都保持同步变化。
如果你用ls察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用ln命令生成的文件,用ls –l命令去察看,就可以看到显示的link的路径了。
grep
用于查找文件中符合字符串的那行。
e.g. grep -nr "network_ssl" ./ [查找当前文件夹下所有文件内容,列出包含有 network_ssl该字串的行,并显示行号]
参数说明: -a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
-r :明确要求搜索子目录:grep -r 或忽略子目录:grep -d skip 如果有很多 输出时,您可以通过管道将其转到’less’上阅读:$ grep magic /usr/src/Linux/Documentation/* | less 这样,您就可以更方便地阅读。
find
find / -name "*.txt" -print 用于查找所有的‘ *.txt’文件在当前目录及子目录中;
find / -name "[A-Z]*" -print 用于当前目录及子目录中查找文件名以一个大写字母开头的文件;
find /etc -name "host*" -print 在/etc目录中查找文件名以host开头的文件;
find / -name "[a-z][a-z][0--9][0--9].txt" -print 在当前目录查找文件名以两个小写字母开头,跟着是两个数字,最后是.txt的文件;
1、find命令的一般形式为;
find pathname -options [-print -exec -ok ...]
2、find命令的参数;
pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print: find命令将匹配的文件输出到标准输出。
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
3、find命令选项
-name
按照文件名查找文件。
-perm
按照文件权限来查找文件。
-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user
按照文件属主来查找文件。
-group
按照文件所属的组来查找文件。
-mtime -n +n
按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。
-nogroup
查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser
查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。
-newer file1 ! file2
查找更改时间比文件file1新但比文件file2旧的文件。
-type
查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。
-mount:在查找文件时不跨越文件系统mount点。
-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。
另外,下面三个的区别:
-amin n
查找系统中最后N分钟访问的文件
-atime n
查找系统中最后n*24小时访问的文件
-cmin n
查找系统中最后N分钟被改变文件状态的文件
-ctime n
查找系统中最后n*24小时被改变文件状态的文件
-mmin n
查找系统中最后N分钟被改变文件数据的文件
-mtime n
查找系统中最后n*24小时被改变文件数据的文件
ar(压缩文件类似)
功能说明:建立或修改备存文件,或是从备存文件中抽取文件。
语 法:ar[-dmpqrtx][cfosSuvV][a<成员文件>][b<成员文件>][i<成员文件>][备存文件][成员文件]
补充说明:ar可让您集合许多文件,成为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限。
参 数:
指令参数
-d 删除备存文件中的成员文件。
-m 变更成员文件在备存文件中的次序。
-p 显示备存文件中的成员文件内容。
-q 将文件附加在备存文件末端。
-r 将文件插入备存文件中。
-t 显示备存文件中所包含的文件。
-x 自备存文件中取出成员文件。
选项参数
a<成员文件> 将文件插入备存文件中指定的成员文件之后。
b<成员文件> 将文件插入备存文件中指定的成员文件之前。
c 建立备存文件。
f 为避免过长的文件名不兼容于其他系统的ar指令指令,因此可利用此参数,截掉要放入备存文件中过长的成员文件名称。
i<成员文件> 将文件插入备存文件中指定的成员文件之前。
o 保留备存文件中文件的日期。
s 若备存文件中包含了对象模式,可利用此参数建立备存文件的符号表。
S 不产生符号表。
u 只将日期较新文件插入备存文件中。
v 程序执行时显示详细的信息。
rpm
一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件,与Dpkg类似。
RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。
常用rpm命令
查询rpm软件包
#rpm -q 软件包名
#rpm -qa //查询安装的所有软件包
#rpm -qa|grep 软件包字符串
#rpm -qf /bin/命令 //查询命令由哪些软件包安装得到
#rpm -qi 软件包名 //查询软件包的详细信息
#rpm -ql 软件包名 //查询软件包的安装位置
软件包的安装
#rpm -ivh 软件包
软件包的升级
#rpm -Uvh 软件包
软件包的卸载
#rpm -e 软件包名
文件打包
#tar -cvf [文件名.tar] [文件……目录]
查看包文件的内容
#tar -tf 文件名.tar
向已有的包中添加新文件
#tar -rvf [文件名.tar] [新文件……]
释放包文件#tar -xvf 文件名.tar
压缩文件#gzip 文件名
解压缩文件
#gzip -d 文件名.gz 或#gunzip 文件名.gz
创建压缩包
#tar -zcvf [文件名.tar.gz] [文件1 文件2 …]
查看压缩包中的内容
#tar -ztf 文件名.tar.gz
释放压缩包
#tar -zxvf 文件名.tar.gz
mount,umount
mount是Linux下的一个命令,它可以将分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将分区和/mnt这个目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了。目前mount已经不仅仅局限于Linux了,在Windows系统下的应用也越来越广了,多用在虚拟光驱类软件上,比如Clone CD,Daemon tool,WinMount等。
注意事项
1、必须将光盘、U盘等放入驱动器在实施挂载操作
2、不能在挂载目录下实施挂载操作,至少在上一级
3、不能在同一目录下挂载两个以上的文件系统
4、Linux预留挂载目录为/mnt
5、不能在挂载目录下实施卸载操作
6、挂载目录必须事先存在
挂载光盘
#mount -t iso9660 /dev/cdrom /mnt/cdrom
卸载光盘
#umount /mnt/cdrom或#umount /dev/cdrom或#cd;eject
挂载U盘
#mount /dev/sdb1 /mnt/usb
挂载iso镜像
#mount -t iso9660 -o loop iso镜像文件 /mnt/cdrom
用户和组管理
#useradd 用户名 //创建用户和组
#passwd 用户名 //设置用户密码
#groupadd 组名 //创建组
#usermod –d 路径 用户名 //修改用户宿主目录
#usermod –u uid 用户名 //修改用户的UID
#usermod -s /bin/[csh] 用户名 //修改用户启动shell
#usermod -G 组名 用户名 //将用户加入组, 创建私有组
#usermod -g 组名 用户名 //用户加入组但不创建私有组
#gpasswd -a 用户名 组名 //同-G
#gpasswd -d 用户名 组名 //将用户从组中删除
#gpasswd -A 用户名 组名 //指定用户成为组的管理员
#usermod -L 用户名 //锁定用户#passwd -l 用户名 //同上
#usermod -U 用户名 //解锁用户#passwd -u 用户名 //同上
#usermod -l 新名 原名 //重命名用户
#groupmod -n 新名 原名 //重命名组
#userdel 用户名 //删除用户#userdel –r 用户名 //彻底删除,包括用户的宿主目录
#groupdel 组名 //删除组
#passwd -d 用户名 /删除用户密码/
进程及服务管理
查看进程
#ps -aux //查看所有进程(静态)
#top //查看动态变化的进程
#pstree //查看进程树
将进程放在后台运行
#命令 &
查看后台运行的进程
#jobs
将后台运行的进程调入前台
#fg 编号
强制结束进程
#kill -9 PID 或#killall -9 进程名
init进程是所有进程的父进程其级别如下
0 关机
1 单用户
2 多用户字符,但是不支持NFS
3 完全多用户字符
4 用户自定义
5 图形
6 重启
查看服务启动情况(独立启动方式)
#chkconfig --list //查看所有服务的启动状态
#chkconfig --list httpd
设置独立启动服务
#chkconfig --level 35 httpd on或off
设置非独立启动服务
#chkconfig telnet on或off#service xinetd restart
设置服务在开机时自动运行
#ntsysv
网卡设置
1、 设置ip地址(即时生效,重启失效)
#ifconfig eth0 ip地址 netmask 子网掩码
2、 设置ip地址(重启生效,永久生效)
#setup
3、 通过配置文件设置ip地址(重启生效,永久生效)
#vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #设备名,与文件同名。
ONBOOT=yes #在系统启动时,启动本设备。
BOOTPROTO=static
IPADDR=202.118.75.91 #此网卡的IP地址
NETMASK=255.255.255.0 #子网掩码
GATEWAY=202.118.75.1 #网关IP
MACADDR=00:02:2D:2E:8C:A8 #mac地址
4、 重启网络服务
#service network restart //重启所有网卡
5、 禁用网卡,启动网卡
#ifdown eth0
#ifup eth0
6、 屏蔽网卡,显示网卡
#ifconfig eth0 down
#ifconfig eth0 up
7、 配置DNS客户端(最多三个)
#vi /etc/resolv.conf
nameserver 202.99.96.68
8、更改主机名(即时生效)
#hostname 主机名
9、更改主机名(重启计算机生效,永久生效)
#vi /etc/sysconfig/network
HOSTNAME=主机名
FTP服务
1 使用setup命令开启vsftpd服务进程。
2然后修改文件/etc/xinetd.d/vsftpd。(但vsftpd是依附于xinetd.d运行时2、3有效)
(1)把disable=yes改为=no。
(2)配置每个客户机的最大连接数:
在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:
per_source = 数值。例如:per_source = 5 表示每个客户机的最大连接数为5。
(3) 配置服务器总的并发连接数:
在配置文件/etc/xinetd.d/vsftpd 的{}中添加如下的配置语句:
instances = 数值。例如:instances = 200 表示FTP 服务器总共支持的最高连接数为200。
(4)当vsftpd单独运行时:要配置独立运行的vsftpd很简单,只需要在前面的主配置文件的基础上添加如下的配置即可。
设置listen=YES :指明vsftpd 以独立运行方式启动。
设置max_clients=200 :指明服务器总的并发连接数
设置max_per_ip=4 :指明每个客户机的最大连接数。
3. 配置/etc/vsftpd.conf(redhat9 是/etc/vsftpd/vsftpd.conf)文件。
# 允许真实用户(在系统中有账号的用户)访问
local_enable=YES
# 给真实用户写权限
write_enable=YES
# 真实用户上传文件的掩码设为022。这样真实用户上传后的文件权限为755(rwxr-xr-x),即文件所有者可读写执行、同组成员可读可执行、
# 系统中的其它用户可读可执行。
local_umask=022
# 允许匿名用户访问。匿名用户在系统中的账号是ftp
anonymous_enable=YES
# 匿名用户上传文件的掩码设为000。这样文件上传后的权限为777(rwxrwxrwx),即所有人都可以读写执行。
anon_umask=000
# 匿名用户可上传、可创建目录。一下3行只有设置了write_enable=YES才有效。
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_world_readable_only=NO
# 如果想要让匿名用户有删除的权限可以加上如下代码
# anon_other_write_enable=YES
# 进入每个目录都显示特定提示。这些提示放在各个目录下.message文件中。
dirmessage_enable=YES
# 当用户登陆ftp服务器时,不管是否登陆成功都显示如下信息。
ftpd_banner=Welcome to NiHao FTP service.
# 使用日志记录上传和下载。
xferlog_enable=YES
# 日志文件的位置
#xferlog_file=/var/log/vsftpd.log
# 日志使用标准fpd格式
xferlog_std_format=YES
# ftp服务的端口是20
connect_from_port_20=YES
# 用户使用ftp访问服务器时,把他们的登陆目录作为它们在ftp中看到的目录,这称为chroot。
# 这样用户就无法访问他们登陆目录以外的内容,大大增强了安全性。匿名用户的登陆目录是/var/ftp/
chroot_list_enable=YES
# 文件/etc/vsftpd.chroot_list中的用户不chroot。
chroot_list_file=/etc/vsftpd.chroot_list
# 同时最多允许5个用户登陆。
max_clients=5 #有些不支持此选项,注释掉即可。
# ftp服务的密码验证模块。
pam_service_name=vsftpd
# listen=YES #如果是独立运行的则加此项(redhat9)。
#tcp_wrappers=YES #如果是独立运行的则加此项(redhat9)。
4.重新启动xinetd服务,你就可以匿名访问你的ftp服务器了。
下面我们来建立一个ftp管理员账号
在Linux ftp服务中,用户的权限受到双重限制。一是Linux文件系统本身的权限限制。每个文件的访问权限用rwxrwxrwx形势表示。每个用户只能做文件权限允许的操作。二是ftp配置的限制。系统允许的操作,如果在ftp的配置文件中没有被允许,用户还是不能作这个操作。如:某个文件的权限为rwxrwxrwx,即系统认为任何人都有读写执行的权利。如果vsftpd.conf中不允许匿名用户写,匿名用户还是不能修改这个文件。
对于目录文件的读权限,意味着可以读出这个目录中的文件信息。目录文件的写权限,意味着可以在这个目录下建立、删除、重命名文件。
用命令groupadd -r ftpAdmin添加一个ftp管理员组。其中-r表示这是一个系统组。
用命令useradd -c "ftp Administrator" -d /var/ftp/ -G ftpAdmin -s /sbin/nologin -r ftpAdmin添加一个管理员用户ftpAdmin。其中
-c "ftp Administrator" 是对这个用户的描述
-d /var/ftp/ 是这个用户的登陆目录
-g ftpAdmin 是这个用户所在的组
-s /sbin/nologin 是这个用户登陆时所用的shell。这个shell命令的功能极其弱,以至于不能用telnet登陆。也就是说这个管理员只能当当垃圾清扫员。(呵呵。好没面子的管理员)
-r 表示这是个系统账号,不用为它建立登陆目录。
建好管理员以后把incoming目录的管理权给他。
chown ftpAdmin /var/ftp/incoming :把此目录所有者设为ftpAdmin。
chmod 755 /var/ftp/incoming :把目录的权限设为所有者可读写执行,同组用户可读、可执行,所有人可读、可执行。
这样,我们的管理员就可以开始管理了。
5 . 配置vsftpd 允许匿名用户上传
//修改vsftpd 的主配置文件/etc/vsftpd.conf
# vi /etc/vsftpd.conf
//将如下两行前的#删除
//① #anon_upload_enable=YES 允许匿名用户上传
//② #anon_mkdir_write_enable=YES 开启匿名用户的写和创建目录的权限
//若要以上两项设置生效,同时还要求:
//(1) write_enable=YES
//(2) 匿名用户对文件系统的上传目录具有写权限
//添加如下的配置语句
// anon_world_readable_only=NO
//上面的配置语句用于放开匿名用户的浏览权限
//修改后存盘退出vi
//
//创建匿名上传目录
# mkdir /var/ftp/incoming
# 修改上传目录的权限
# chmod o+w /var/ftp/incoming/
#
//重新启动xinetd
# service xinetd restart
Web服务(httpd)
同样在setup中选中httpd服务。www服务不需要xinetd作为它的代理进程。httpd这个进程一直在系统中运行。www服务的默认目录是/var/www/html。只要把主页放到这个目录下就可以访问了。
我们可以用建立ftp管理员的办法建立一个www管理员wwwAdmin。只要把它的登陆目录设为/var/www/html即可。
/etc/init.d/httpd start #启动服务
/etc/init.d/httpd restart #重新启动
其配置文件为/etc/httpd/conf/httpd.conf
ssh服务
SSH 是什么呢?他有什么特异功能?简单的来说,SSH 是 Secure SHell protocol 的简写,他可以经由将联机的封包加密的技术,来进行资料的传递,因此,资料当然就比较安全啰!这个 SSH 可以用来取代 Internet 上面较不安全的 finger, R Shell (rcp, rlogin, rsh 等指令), talk 及 telnet 等联机模式。底下我们将先简介一下 SSH 的联机模式,来说明为什么 SSH 会比较安全呢!
特别注意:这个 SSH 协议,在预设的状态中,本身就提供两个服务器功能:
1. 一个就是类似 telnet 的远程联机使用 shell 的服务器,亦即是俗称的 ssh ;
2. 另一个就是类似 FTP 服务的 sftp-server !提供更安全的 FTP 服务
10个快捷键
1.前一个后一个工作区的切换
如果你经常使用工作区,那你就可以用Ctrl Alt 上/下方向键很容易地进行切换.左箭头切换到上一个工作区,右箭头切换到下一个工作区.如果你安装了Compiz,可以用Super E快捷键显示所有的工作区.
2.把当前窗口移到另一个工作区
快捷键Shift Ctrl Alt 左/右方向键让你很容易把当前窗口移到指定的工作区.这个快捷键和上面的快捷键很好配合.如果你工作时常常打开很多窗口,但又不想看到桌面和任务栏挤满程序,你可以用这个快捷键把程序移到另一个工作区,这样你的桌面就整洁多了.
3. 显示桌面
Ctrl Alt D快捷键让你很快地最小化所有窗口,看到桌面.当所有窗口都最小化后,你再按这个快捷键就可以恢复窗口原来的状态.
4.鼠标右击的键盘快捷键
在大多数程序里,你可以右击显示快捷菜单.其实键盘上 Shift F10也能达到一样的效果.
5.重启会话以从崩溃中恢复
ubuntu很少会完全崩溃.但如果它真的崩溃了,你可以按下Ctrl Alt Backspace来重启会话,恢复的可能达90%.
6.快速锁定屏幕
如果你需要离开电脑一会儿,可以按下Ctrl Alt L很快地锁定屏幕,以防有人使用
7.反向切换窗口
Alt Tab是切换窗口的快捷键.如果你再按下SHIft,你就可以反向切换窗口.这个快捷键很有用,当你Alt Tab按得太快,错过了你想要切换的窗口,按一下shift就可以返回之前的窗口了.
8. 用方向键移动窗口
Alt F7会激活移动窗口功能,用方向键(上,下,左,右)就可以移到窗口了.
9.显示隐藏的文件
大多数情况下,你不需要在你的“家“目录中看到那些隐藏文件,但如果你有这个需要,你可以在 Nautilus(ubuntu的文件管理器)下按Ctrl H来显示隐藏文件.
10. 不用右击鼠标就能显示文件属性
想要查看文件/文件夹的一般做法是右击选择属性.现在你可以按下 Alt Enter就能显示属性窗口了.
网卡、ip设置
Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置的方法:
即时生效(重启后失效):
ifconfig eth0 192.168.1.102 netmask 255.255.255.0 //添加IP地址
route add default gw 192.168.1.1 //添加网关
启动生效:
vi /etc/sysconfig/network-scripts/ifcfg-eth0 //(某些版本中可能没有vim这个编辑器比如centos,大家可能用vi替换)
IPADDR=192.168.1.102 //添加IP地址
NETMASK=255.255.255.0 //掩码
GATEWAY=192.168.1.1 //添加网关
最后结果如下:
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.102
NETMASK=255.255.255.0
GETEWAY=192.168.1.1
ONBOOT=yes
TYPE=Ethernet
注:BOOTPROTO只有在static(静态)模式下才可以使用设置的IP信息
修改dns
vim /etc/resolv.conf
修改后可即时生效,启动同样有效
形式
加入nameserver= ***.***.***.***
最多可有三个,作为上一个失败后的候选
修改host name
即时生效:
hostname fc2
启动生效:
vim /etc/sysconfig/network
形式如下:
NETWORKING=yes
HOSTNAME=rh-linux.fc.org
##########################################################
首先,先了解传统的网络配置命令:
1. 使用ifconfig命令配置并查看网络接口情况
示例1: 配置eth0的IP,同时激活设备:
ifconfig eth0 192.168.4.1 netmask 255.255.255.0 up
示例2: 配置eth0别名设备 eth0:1 的IP,并添加路由
ifconfig eth0:1 192.168.4.2
route add –host 192.168.4.2 dev eth0:1
示例3:激活(禁用)设备
ifconfig eth0:1 up(down)
示例4:查看所有(指定)网络接口配置
ifconfig (eth0)
—————————
相关推荐
linux学习资料,包括linux基本命令,新手入门,高级技巧。
linux基本命令包括安装数据库,jdk,tomcat,等 新手看
以下是一些常见的Linux基本命令: 1. **ls**:列出目录内容,用于查看当前目录下的文件和子目录。 2. **cd**:改变目录,用于切换到不同的目录路径。 3. **pwd**:打印工作目录,显示当前所在的目录。 4. **touch**...
### Linux基本命令操作实验报告知识点总结 #### 一、实验目的 - **了解Linux用户界面**:本实验旨在让学生理解Linux系统中用户交互的方式,包括命令行界面和图形用户界面。 - **掌握常用命令**:重点是让学生熟练...
Linux 基本命令大全 Linux 操作系统提供了许多基本命令来帮助用户管理和维护系统。这些命令可以分为多个类别,包括用户管理、文件管理、进程管理、网络管理等。下面我们将介绍一些常用的基本命令。 一、注销、关机...
LINUX基本命令学习 在 Linux 操作系统中,基本命令是初学者入门的首选。这些命令是 Linux 系统的基础,是用户与系统交互的桥梁。掌握这些基本命令,可以帮助用户快速熟悉 Linux 系统,提高工作效率。 1. 登录和...
Linux 基本命令大全 本文档旨在总结 Linux 系统中常用的基本命令,涵盖用户管理、文件管理、目录管理、权限管理、磁盘管理、进程管理、网络管理等方面。 用户管理 * useradd 创建用户 * usermod 修改用户信息 * ...
【Linux基本命令操作】章节主要介绍了Linux系统的终端概念和常用操作,包括终端的类型、Shell提示符以及Bash的基本用法。以下是对这些知识点的详细解释: 1. **终端(Terminal)**: - **控制台终端(Console)**...
Linux 基本命令和 Vim 编辑器 Linux 操作系统是一种广泛使用的操作系统,具有高效、灵活、免费、开放源代码等特点。 Linux 系统可以安装在各种计算机硬件平台上,如 servers、desktops、laptops、mobile devices 等...
本资料集旨在提供一个全面的Linux基本命令和常用命令的大全,帮助用户更好地进行系统维护、开发工作以及其他日常操作。 首先,我们从最基础的命令开始。`ls`命令用于列出目录内容,通过添加不同的选项(如 `-l` ...
Linux 基本命令全集 本资源总结了 Linux 操作系统的基本命令,包括快捷键、帮助命令、系统信息、基本操作、文件管理、查看和编辑文件、查找文件、X-windows 基础、网络应用程序、文件压缩和解压缩、进程控制、一些...
本资料"Linux基本命令.zip"提供了关于常用Linux命令的详细信息,涵盖了帮助命令、文件操作、压缩与备份、磁盘操作和网络通信等多个方面。下面将对这些关键知识点进行深入阐述。 1. **帮助命令** - `man`: 提供在线...
"Linux 基本命令练习实验报告" 本实验报告旨在让学生通过实践,掌握 Linux 基本命令的使用和操作系统的基本了解。实验内容包括创建文件夹、文件的创建、复制、删除等操作,以及 vi 编辑器的基本使用。 一、实验...
Linux基本命令 Linux基本命令是 Linux 系统中最基本的命令,这些命令是 Linux 系统的基础,掌握这些命令是使用 Linux 系统的前提。下面是 Linux 系统中的一些基本命令和目录结构。 1. Linux 目录结构 Linux ...
【Linux学习:Linux基本命令】 Linux是一个开源操作系统,它的强大在于其命令行界面,通过一系列基本命令进行系统管理和操作。本篇文章将详细讲解Linux的基本命令,包括登录和退出、文件命令、目录和层次命令、查找...
Linux基本命令的使用 Linux基本命令是Linux系统中最基本和最常用的命令,理解和掌握这些命令是Linux新手的必备技能。本文将逐步介绍Linux基本命令的使用,涵盖了命令的基本概念、快捷键、方向键、编辑命令、查找...
"Linux基本命令 - 2.rar"这个压缩包可能包含了有关Linux命令行操作的教程或视频资源,比如"video.swf",可能是一个关于Linux命令的教学视频。 在Linux命令行中,有许多常用且重要的命令,这些命令构成了Linux用户...