CSDN博客

img jnstone3

学习linxu

发表于2008/10/3 10:31:00  874人阅读

linxu

export

功能明:了将目永久添加到您的 $PATH ,只要将‘export’的那行添加到您的‘.bash_profile’文件中。

不要在‘.bashrc’ PATH ,否 PATH 中目的意外增次打一个新的 shell ,‘.bashrc’都会作用。所以如果在文件中添加目,您次打一个端,目又会被添加。 PATH 量由于目录复制,不断地增

  Eg. PATH=/usr/lib/qt4/bin$PATH

export PATH

 

 

bunzip2

功能明:.bz2文件的解压缩程序。

  法:bunzip2 [-fkLsvV][.bz2压缩文件]

明:bunzip2可解压缩.bz2格式的压缩文件。bunzip2实际上是bzip2的符号接,bunzip2bzip2 -d的效果相同。

 

tar -jxvf arts-1.5.6.tar.bz2

 

ls -a 可以们发现藏的目

 

useradd redhat  redhat

passwd redhat   redhat

whoami 看当前登的用

su 由普通用户专为的命令     su -c "make install"

more /etc/resolv.conf  more命令可以看文件内容

 

fdisk -l 看硬的分区情况

df -h 看分区的使用情况

du -sh /home 一个文件的占用磁

ln -s ~/skyeye/src/skyeye_1_2_2_Rel/binary/skyeye skyeye 建立接指

 

 

ifconfig 看网的情况

netconfig 修改网配置

service network restart 重新启

ping -b 192.168.1.255 可以以广播的方法192.168.1.整个网段,

route -n 看路由信息 来确定网是否正确。

 

locale 看当前系统语 locale -a 看所有系支持的

date 命令来

cal 命令来示月份

 

service kudzu start kudzu是系统检测硬件的程序,它默机自启

chkconfig kudzu --list 命令来kudzu情况 当然我也可以看其他的启动项

netcon tab建就会自动补齐

 

//////////////////////////////////

linux除子目里某通配符文件

//////////////////////////////////

#find -name '*.txt' |xargs rm -v

  find -name '*.txt' 找出后缀为txt的格式

  xargs重定向

 -v除的详细结.

 

//////////////////////////////////

找文件内容

//////////////////////////////////

grep -rc "Zoomer::stop1" /etc/* |grep -v ":0$"

grep -rc "typedef sig_t sighandler_t" . |grep -v ":0$"

grep -rc "ifdef Q_OS_BSD4" /etc/* |grep -v ":0$"

 

grep -ir “chars” #在当前目的所有文件找字串chars并忽略大小写-i

小写-r 下一

 

 

包含alias字符串的*.conf的文件

find / -name "*.conf" | xargs grep "alias"

1. grep -R -l 一些也可以实现,但是通管道 | 单纯grep 复杂的参数更有效率。

2. xargs是用来展find得的果,使其作grep的参数。

 

 

 

 

除文件及子目

rm   -rf   directory  

 

容量看–du

du 算当前目的容量

du -sm /root #/root 的容量并以M 为单

 

ps -aux |grep ftp

ps -ef|grep ftp 察看ftp

pstree -H 6722 察看

 

#kill -9 pid

 

 

sudolinux下允普通用使用超户权限的工具。

配置文件是/etc/sudoersvisudo对该文件行修改。

 

#id 注:看用UIDGID信息,主要是看是否切换过来了;

uid=505(linuxsir) gid=502(linuxsir) groups=0(root),500(beinan),502(linuxsir)

 

 

统总共分了7个等 0123456

 0关闭

 1用来维护

 2,3是字符界面

 5形界面

 6是从启界面

 #reboot #init 6 功能是一的都是从启系

 

 

 

的安装

 

由于光,我使用的如下挂(在光文件所在的目)

#mount ./arm-2006-01-16.iso /mnt/cdrom -t iso9660 -o loop=/dev/loop3,bloksize=1024

更改光驱权限,增加

#chmod a+x /mnt/cdrom

 

 

 #cp filename.tar.gz /root

 #tar xvzf filename.tar.gz

 

压缩与解压缩

.tar

tar xvf FileName.tar

压缩tar cvf FileName.tar DirName

.tar.gz

tar zxvf FileName.tar.gz

压缩tar zcvf FileName.tar.gz DirName

 

 

configure的可行脚本程序。它是用于检查是否有编译时所需的,以及的版本是否编译的需要等安装所需要的系信息。随后的编译工作做准

 #./configure

发现错误configure予提示,并停止检查。你可以跟据提示统进行配置。再重新程序。

#make

#make install

清除编译过程中生的临时文件和配置程中生的文件。入如下命令:

#make clean

 

 

 

rpm安装:

  #rpm -i filename.i386.rpm

另外,有一些Linux平台下的商业软件。在其安装文件中,有Setup安装程序,其安装方法同Windows平台下的一

存在的件包

    #rpm -U filename.i386.rpm

 

查询

#rpm -qa  即可查询到当前系中安装的所有的件包。

          参数q的作用是使rpm查询命令模式。参数a查询模式的子参数,意全部(ALL)。查询到的信息多,可使用less人屏示。

#rpm -q tftp -ls 查询到当前系中是否安装了tftp

#rpm -qf /usr/lib/libacl.la   查询一个已安装的文件属于哪个件包属于(libacl-devel) 注:文件名所在的绝对路径要指出

#rpm -ql lynx #rpmquery -ql lynx    查询已安装件包都安装到何

#rpm -qi lynx       查询一个已安装件包的信息

#rpm -qR rpm-python     看一下已安装件所依件包及文件;

 

看一个件包的用途、版本等信息;

#rpm -qpi file.rpm

 

看一个件包的依赖关

#rpm -qpR file.rpm

 

#locate 件名或文件名    locate 查询一些件安装到哪里了

 

 

 

件的卸

#rpm -e 即可卸载软件。参数e的作用是使rpm入卸模式。

#rpm -e -nodeps  忽略依赖关系的卸

#rpm -e -test   使rpm行一次卸载预

#rpm --force filename.i386.rpm  制安装

#rpm --aid filename.i386.rpm  安装其它的关联

#rpm -ivh  filename.i386.rpm --nodeps 忽略依赖关系的安装

 

 

#which vsftpd vsftpd装到那里了

#more install 可以看看安装帮助,看看应该如何配置,一般安装都要注意看看如何配置文档.首先要把主配置文件copy/etc

 

 

vsftp

 

1 首先我里下最新版本2.05,并把它下在网上居的技文档里ftp://vsftpd.beasts.org/users/cevans/

2 然后我需要把它解

 # tar zxvf vsftpd-2.01   zxvf压缩  tar zcvf 就是压缩

 #./configure    

 #make 

 #make INSTALL

 #which vsftpd                           vsftpd装到那里了

 #cp vsftpd.conf /etc

 #cp /RedHat/vsftpd.pam /etc/pam.d/ftp   cpftp认证用的,即用候是需要通pm.d 认证

 #vi vsftpd.conf                         listen=YES

 #mkdir /var/ftp 

 #finger ftp                             提供登的有信息注解

 #/usr/local/sbin/vsftpd &               这样器启候就在后台运行了。

 #netstat -tnl                           们检查下看有没有一个端口21的地址,

                                         如果有ok,如果没看下是那个程在使用21端口,用kill -9 pid 该进

 

 

外部设备

首先我要明白挂外部设备的目是在/mnt mnt有两个目 cdrom floppy

cdrom是挂的,floppy是挂载软驱的,如果我需要挂其他的设备比如优盘,我就需要从新建立一个目

[root@zy root]#ls /mnt

[root@zy root]#mkdir /mnt/u1 ,然后始挂,另外u一般都是/dev/sda1,如果不清楚可用fdisk -l ,命令[root@zy root]#fdisk -l

[root@zy root]# mount /dev/sda1 /mnt/u1

[root@zy root]# umount  /mnt/u1 u

在我先学着挂[root@zy root]#mount /dev/cdrom /mnt/cdrom

[root@zy root]# ls /mnt/cdrom 在就可以看到光里面的内容了,我可以用df检查情况[root@zy root]#df -h

如果我不想再用光 可以用umount[root@zy root]#umount /mnt/cdrom,大家用完设备一定要着卸

 

 

windows分区[root@zy root]mount -t vfat /dev/sdb /mnt/window

其中/dev/sdb是我的windows分区 linuxvfatwindows分区的格式

 

linuxfdisk分区工具 [root@zy root]#fdisk /dev/sda

我的硬dev/sda格式 然后它会出 commandm for help ):我就在选择m,下面会出常用的命令我解一下,n添加一个新的分区 d除一个分区,w分区表,q退出不保存.

 

linux格式化工具

[root@zy root]mkfs.vfat /dev/sdb1

mkfs就是格式化的命令 vfat是格式化的型,我也可以把vfat换为ext2 或者ext3 dev/sdb1是我硬的一个分区

 

解决linux问题

当我装一个服候,我里以smaba例,我发现smaba是需要装好几个rpm件包的,这样装起来很麻,而且我们还不知道彼此的依赖关系,linux发现问题,它提供了一个工具,rpmdb工具,一般是在第三里面的,我在装服候最好要把它装上,能减去很多麻在就来操作一下吧

首先,我要把第三起来[root@zy root]#mount /dev/cdrom /mnt/cdrom

然后找到rpmdb [root@zy root]# ls /mnt/cdrom ,

[root@zy root]#cd /misc/cd/fedora/RPMS

[root@zy root]#ls |grep rpmdb

然后始安装rpmdb[root@zy root]#rpm -ivh rpmdb-fedora-1.02003.i386.rpm ,住我可以用tab命令补齐的,其中-ivh命令是安装 -uvh就是卸 ,如果你想卸那个程序就可以用rpm -uvh

然后我们开始安装samba了,samba在第一

[root@zy root]#rpm -ivh --aid samba*rpm ,其中--aid就是借助与rpmdb数据的命令 samba*是指所有的sambarpm文件

然后就可以安装成功了

 

 

根据文件名:

find 文件名:   find / -name httpd.conf

找并示文件 find / -name "httpd.conf" -ls

 

根据部分文件名找方法:find /etc -name '*srm*'

根据文件的特征查询方法:

 

  find / -amin -10 # 找在系中最后10钟访问的文件

  find / -atime -2 # 找在系中最后48时访问的文件

  find / -empty # 找在系空的文件或者文件

  find / -group cat # 找在系中属于 groupcat的文件

  find / -mmin -5 # 找在系中最后5里修改的文件

  find / -mtime -1 #找在系中最后24里修改的文件

  find / -nouser #找在系中属于作的文件

  find / -user fred #找在系中属于FRED个用的文件

find . -maxdepth 2 -name fred

 

chmod命令使用

 

指令名称 : chmod

 

使用 : 所有使用者

 

使用方式 : chmod [-cfvR] [--help] [--version] mode file...

 

: Linux/Unix 的档案存取限分 : 档案有者、群、其他。利用 chmod 可以藉

以控制档案如何被他人所存取。

 

 

mode : 定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中u 表示档案的

者,g 表示与档案的有者属于同一个群体(group)者,o 表示其他以外的人,a 表示三者皆是。

 

+ 表示增加限、- 表示取消限、= 表示唯一限。

r 表示可取,w 表示可写入,x 表示可行,X 表示只有当档案是个子目或者档案已

过为行。

-c : 档案限确更改,才示其更改

-f : 档案限无法被更改也不要错误讯

-v : 更的详细资

-R : 目前目下的所有档案与子目录进行相同的(即以回的方式逐个)

--help :

--version : 示版本

 

范例 :

将档案 file1.txt 设为所有人皆可 : chmod ugo+r file1.txt

将档案 file1.txt 设为所有人皆可 : chmod a+r file1.txt

将档案 file1.txt file2.txt 设为该档案有者,与其所属同一个群体者可写入,但其他以外的

不可写入 : chmod ug+w,o-w file1.txt file2.txt

 

ex1.py 只有档案有者可以 : chmod u+x ex1.py

 

将目前目下的所有档案与子目设为任何人可 : chmod -R a+r *

 

此外chmod也可以用数字来表示限如 chmod 777 file

 

chmod abc file

 

其中a,b,c一个数字,分表示UserGroup、及Other限。

 

r=4w=2x=1

 

若要rwx属性4+2+1=7

 

若要rw-属性4+2=6

 

若要r-x属性4+1=7

 

范例:

 

chmod a=rwx file chmod 777 file 效果相同

chmod ug=rwx,o=x file chmod 771 file 效果相同

 

若用chmod 4755 filename可使此程式具有root

 

 

 

指令名称 : chown

 

使用 : root

 

 

使用方式 : chown [-cfhvR] [--help] [--version] user[:group] file...

 

 

: Linux/Unix 是多人多工作,所有的档案皆有有者。利用 chown 可以将档案的有者加以改。一般来个指令只有是由系管理者(root)所使用,一般使用者没有限可以变别人的档案有者,也没有限可以自己的档案有者改设为别人。只有系管理者(root)这样限。

 

user : 新的档案有者的使用者 ID

group : 新的档案有者的使用者群体(group)

-c : 档案有者确更改,才示其更改

-f : 档案有者无法被更改也不要错误讯

-h : 连结(link)更,而非 link 真正指向的档案

-v : 有者更的详细资-R : 目前目下的所有档案与子目录进行相同的有者(即以回的方式逐个)

--help :

--version : 示版本

 

范例 :

将档案 file1.txt 有者设为 users 群体的使用者 jessie : chown jessie:users file1.txt

将目前目下的所有档案与子目有者皆设为 users 群体的使用者 lamport : chmod -R lamport:users *

 

-rw------- (600) -- 只有属主有限。

-rw-r--r-- (644) -- 只有属主有限;而属和其他用只有读权限。

-rwx------ (700) -- 只有属主有、写、限。

-rwxr-xr-x (755) -- 属主有、写、限;而属和其他用只有限。

-rwx--x--x (711) -- 属主有、写、限;而属和其他用只有限。

-rw-rw-rw- (666) -- 所有用都有文件、写限。这种做法不可取。

-rwxrwxrwx (777) -- 所有用都有、写、限。更不可取的做法。

 

以下是的两个普通:

drwx------ (700) - 只有属主可在目、写。

drwxr-xr-x (755) - 所有用读该,但只有属主才能改中的内容

suid的代表数字是4,比如4755果是-rwsr-xr-x

sgid的代表数字是2,比如6755果是-rwsr-sr-x

sticky位代表数字是1,比如7755果是-rwsr-sr-t

(当然7755chmod置没多大意里只是演示一下)

 

chown user:group xxx  用来改变文件的归属用户,也可以改变其归属群组 
chgrp   group  xxx  用来改变文件的归属群组

 

 

录结构的详细

/ bLinux文件系的入口,也是于最高一的目

 

/bin 所需要的那些命令位于此目,比如 lscpmkdir等命令;功能和/usr/bin似,个目中的文件都是可行的、普通用都可以使用的命令。作所需要的最基的命令就是放在里。

 

/boot Linux的内核及引程序所需要的文件目,比如 vmlinuz initrd.img 文件都位于个目中。在一般情况下,GRUBLILO管理器也位于个目

 

/dev 设备文件存,比如声卡、磁... ...

 

/etc 配置文件的所在地,一些服器的配置文件也在里;比如用户帐号及密配置文件;

 

/home 普通用家目存放目

 

/lib 文件存放目

 

/lost+found ext2ext3文件系中,当系意外崩或机器意外机,而生一些文件碎片放在里。当系程中fsck工具会检查这里,并修经损坏的文件系 统发问题,有很多的文件被移到个目中,可能会用手工的方式来修,或移到文件到原来的位置上。

 

/mnt 个目一般是用于存放挂载储设备的挂的,比如有cdrom 等目。可以参看/etc/fstab的定。有可以把统开机自文件系,把挂点放在里也是可以的。主要看/etc/fstab中怎了;比如光可以挂/mnt/cdrom

 

/opt 表示的是可选择的意思,有些件包也会被安装在里,也就是自定义软件包,比如在Fedora Core 5.0中,OpenOffice就是安装在里。有些我自己编译件包,就可以安装在个目中;通包安装的件,可以通 ./configure --prefix=/opt/

 

/proc 操作系运行程信息及内核信息(比如cpu、硬分区、内存信息等)存放在里。/proc录伪装的文件系proc的挂proc并不是真正的文件系,它的定可以参 /etc/fstab

 

/root Linux级权限用root的家目

 

/sbin 大多是及系管理的命令的存放,是超级权限用root的可行命令存放地,普通用个目下的命令,个目/usr/sbin; /usr/X11R6/sbin/usr/local/sbin是相似的;我们记住就行了,凡是目sbin中包含的都是root限才能行的。

 

/tmp 临时文件目,有运行程序的候,会临时文件。/tmp就用来存放临时文件的。/var/tmp个目相似。

 

/usr 个是系存放程序的目,比如命令、帮助文件等。个目下有很多的文件和目。当我安装一个Linux行版官方提供的件包,大多安装在里。如果有及服器配置文件的,会把配置文件安装在/etc中。/usr下包括及字体目/usr/share/fonts ,帮助目 /usr/share/man/usr/share/doc,普通用行文件目/usr/bin /usr/local/bin /usr/X11R6/bin ,超级权限用root的可行命令存放目,比如 /usr/sbin /usr/X11R6/sbin /usr/local/sbin 等;有程序的文件存放目/usr/include

 

/var 个目的内容是变动的,看名字就知道,我可以理解vary写,/var下有/var/log 是用来存放系日志的目/var/www是定Apache器站点存放目/var/lib 用来存放一些文件,比如MySQL的,以及MySQL数据的的存放地;

 

 

一些重要子目的解

 

/etc/init.d 个目是用来存放系或服器以System V模式启的脚本,在以System V模式启或初始化的系中常。比如Fedora/RedHat

 

/etc/xinit.d 如果服器是通xinetd模式运行的,它的脚本要放在个目下。有些系没有个目 比如Slackware,有些老的版本也没有。在Rehat/Fedora中比新的版本中存在。

 

/etc/rc.d Slackware行版有的一个目,是BSD方式启脚本的存放地;比如定网卡,服启脚本等。

 

/etc/X11 X-Windows的配置文件存放地。

 

 

/usr/bin 个目是可行程序的目,普通用就有行;当我从系件包安装一个程序,他的可行文件大多会放在个目。比如安装gaim件包。相似的目/usr/local/bin;有/usr/bin中的文件是/usr/local/bin接文件;

 

/usr/sbin 个目也是可行程序的目,但大多存放及系管理的命令。只有root限才能行;相似目/sbin /usr/local/sbin/usr/X11R6/sbin等;

 

/usr/local 个目一般是用来存放用编译安装件的存放目;一般是通包安装的件,如果没有特指定安装目,一般是安装在个目中。个目下面有子目。自己看看吧。

 

/usr/share 共用的西存放地,比如 /usr/share/fonts 是字体目/usr/share/doc/usr/share/man帮助文件。

 

/usr/src 是内核源存放的目,比如下面有内核源,比如 linux linux-2.xxx.xx 等。有的系也会把源码软件包安装在里。比如Fedora/Redhat,当我安装file.src.rpm候,件包会安装在 /usr/src/redhat的目中。

 

/var/adm 比如件包安装信息、日志、管理信息等,在Slackware操作系中是有个目的。在Fedora中好象没有;自己看看吧。

 

/var/log 日志存放,分析日志要看个目西;

 

/var/spool 打印机、件、代理服器等假脱机目

 

 

:目录结构的查阅手册

 

(1)“/”根目部分有以下子目

 

/usr 包含所有的命令、程序、文档和其它文件。些文件在正常操作中不会被改的。个目也包含你的Linux行版本的主要的用程序,譬如,Netscape

 

/var 包含在正常操作中被改的文件:假脱机文件、记录文件、加文件、临时文件和格式化文件等

 

/home 包含用的文件:参数置文件、个性化文件、文档、数据、EMAIL存数据等。个目在系级时应该保留。

 

/proc 整个包含虚幻的文件。它们实际上并不存在磁上,也不占用任何空。(用ls –l 可以示它的大小)当些文件实际上是在访问存在内存中的信息,些信息用于访问

 

/bin 动时需要的行文件(二制),些文件可以被普通用使用。

 

/sbin 统执行文件(二制),些文件不打算被普通用使用。(普通用仍然可以使用它,但要指定目。)

 

/etc 操作系的配置文件目

 

/root 管理(也叫超或根用)的Home

 

/dev 设备文件目LINUX设备被当成文件,这样一来硬件被抽象化,便于写、网共享以及需要临时到文件系中。正常情况下,设备会有一个独立的子目 设备的内容会出在独立的子目下。LINUX没有所驱动符。

 

/lib 根文件系下程序和核心模的共享

 

/boot 用于自程序(LILOGRUB)的文件。当算机启动时(如果有多个操作系,有可能允选择哪一个操作系),些文件首先被装个目也会包含LINUX核(压缩文件vmlinuz),但LINUX核也可以存在别处,只要配置LILO并且LILO知道LINUX核在哪儿。

 

/opt 用程序,譬如,REDHAT 5.2下的KDE REDHAT 6.0下,KDE放在其它的XWINDOWS用程序中,主行程序在/usr/bin下)

 

/tmp 临时文件。会被自清理干

 

/lost+found 在文件系复时的文件

 

 

(2)“/usr”下比重要的部分有:

 

/usr/X11R6 X-WINDOWSversion 11, release 6)

 

/usr/X11 /usr/X11R6 /usr/X11R6的符号接)

 

/usr/X11R6/bin 大量的小X-WINDOWS用程序(也可能是一些在其它子目下大行文件的符号接)。

 

/usr/doc LINUX的文档料(在更新的系中,个目移到/usr/share/doc)。

 

/usr/share 独立与你算机构的数据,譬如,字典中的

 

/usr/bin/usr/sbin 似与“/”根目对应的目/bin/sbin),但不用于基本的启(譬如,在维护中)。大多数命令在个目下。

 

/usr/local 本地管理安装的用程序(也可能用程序有独的子目)。在“main”安装后,个目可能是空的。个目下的内容在重安装或升操作系应该存在。

 

/usr/local/bin 可能是用安装的小的用程序,和一些在/usr/local下大用程序的符号接。

 

(3)“/proc”的内容:

 

/proc/cpuinfo 理器的信息,如型、厂家、型号和性能等。

 

/proc/devices 当前运行内核所配置的所有设备

 

/proc/dma 当前正在使用的DMA通道。/proc/filesystems 当前运行内核所配置的文件系

 

/proc/interrupts 正在使用的中断,和曾有多少个中断。

 

/proc/ioports 当前正在使用的I/O端口。

 

 

动态链接库的使用

/etc/ld.so.conf

# ldconfig -p 选项指示ldconfig打印出当前存文件所保存的所有共享的名字.

# ldconfig -v 示正在描的目及搜索到的动态链,有它所建的接的名字.

#ldconfig 把/etc/ld.so.conf在信息写进缓存。

 

 

ldd 专门用来检查动态链接程序依哪些共享

ldd -v 选项指示ldd于所依动态链的尽可能详细的信息.

 

 

 

 

要修改所有用PATH,可以以root身份编辑/etc/profile文件,修改其中包含“PATH=”的一行。

只有在用重新注册后,PATH的新才会生效。如果只是要修改某一个用PATH,就应该编辑该主目中的.bash-profile文件。

 

 

 

//////////////////////////////////////////////////////////////////

//

//     gcc的交叉编译环

//

//////////////////////////////////////////////////////////////////

 

.表示当前路径

.a 态库

.so动态库

指定一个文件名,xxx.a xxx.so 共享库优连接。

 

gcc以下默包含目 include要放到C_INCLUDE_PATH量中,lib要放到/etc/ld.so.conf中,ldconfig

/usr/local/include/

/usr/include/

/usr/local/lib/

/usr/lib/

 

 

于包含文件的搜索路径:

C_INCLUDE_PATH=.:/usr/local/include/:/usr/inculde/

export C_INCLUDE_PATH

 

CPLUS_INCLUDE_PATH=

export CPLUS_INCLUDE_PATH

 

文件的搜索路径:

LIBRARY_PATH=.:/usr/local/lib/:/usr/lib/

export LIBRARY_PATH

 

接程序ld使用的文件搜索路径:

 

LD_LIBRARY_PATH=<your ldlib path>;

export LD_LIBRARY_PATH

 

 

gcc编译选项

Warning示格式:fileline-number:message

-o 文件名:直接生可行文件

-c 文件名:编译.o文件

 

 

 

 

 

 

0 0

相关博文

我的热门文章

img
取 消
img