logo头像

👨‍💻冷锋のIT小屋

linux常见操作整理

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。本文记录了Linux常用的一些命令,并不断完善中,以备查阅。

1. 基本操作

1、删除文件命令:

rm -rf

目录循环删除目录

2、打开/关闭fpt命令:

service sftpd stop/start

3、ftp开启命令:

/etc/rc.d/init.d/xinetd stop
/etc/rc.d/init.d/vsftpd start
/etc/rc.d/init.d/xinetd start

4、svn开启命令:

svnserve -d -r /usr/local/svn/

5、jetty启动:

root@ubuntu-server1:/usr/local/jetty-mvn/jetty9/bin# ./jetty.sh start
Starting Jetty: . . . OK Tue Sep 10 12:30:45 CST 2013

6、解压文件到指定目录:

tar xxx.gz -C /usr/local/

7、查看权限命令 查看目录的相关权限可以采用命令ls -lD,或者直接用ls -la如:

ls -l www.jb51.net

这里表示查看www.jb51.net目录

8、查看linux机器是32位还是64位的方法:

file /sbin/init 或者 file /bin/ls

9、找不到网卡解决:

vi /etc/udev/rules.d/70-persistent-net.rules

将最新的eth2网卡改为eth0,并拷贝其ATTR(即最新的mac地址)值,然后编辑eth0的配置文件,将HWADDR改为该值,重启网络服务,问题解决。

10、查看磁盘空间:

df -hl

11、查看系统用户和组:

groups查看当前登录用户的组内成员 groups gliethttp查看gliethttp用户所在的组,以及组内成员 whoami查看当前登录用户名 /etc/group文件包含所有组 /etc/shadow和/etc/passwd系统存在的所有用户名

12、设置环境变量:

vi /etc/profile

最后添加:

export PATH=/usr/loca/mysql/bin:$PATH

保存退出执行:

source /etc/profile

然后查看:

echo $PATH

13、防火墙: (1)、关闭/开启:

service iptables stop/start

(2)、添加端口过滤:

vi /etc/sysconfig/iptables

2. 修改权限命令

chmod 777 文件名
1.chmod 577 /home/stuser -R
2.umask -p 0200
3.chown XXXX YYYY (XXXX 为用户名 YYYY为文件名)

权限列表

-rw-------   (600) 只有所有者才有读和写的权限
-rw-r--r--   (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx------   (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x   (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx--x--x   (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw-   (666) 每个人都有读写的权限
-rwxrwxrwx   (777) 每个人都有读写和执行的权限

3. 查看系统信息命令

# uname -a # 查看内核/操作系统/CPU信息
# head -n 1 /etc/issue # 查看操作系统版本
# cat /proc/cpuinfo # 查看CPU信息
# hostname # 查看计算机名
# lspci -tv # 列出所有PCI设备
# lsusb -tv # 列出所有USB设备
# lsmod # 列出加载的内核模块
# env # 查看环境变量资源
# free -m # 查看内存使用量和交换区使用量
# df -h # 查看各分区使用情况
# du -sh <目录名> # 查看指定目录的大小
# grep MemTotal /proc/meminfo # 查看内存总量
# grep MemFree /proc/meminfo # 查看空闲内存量
# uptime # 查看系统运行时间、用户数、负载
# cat /proc/loadavg # 查看系统负载磁盘和分区
# mount | column -t # 查看挂接的分区状态
# fdisk -l # 查看所有分区
# swapon -s # 查看所有交换分区
# hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)
# dmesg | grep IDE # 查看启动时IDE设备检测状况网络
# ifconfig # 查看所有网络接口的属性
# iptables -L # 查看防火墙设置
# route -n # 查看路由表
# netstat -lntp # 查看所有监听端口
# netstat -antp # 查看所有已经建立的连接
# netstat -s # 查看网络统计信息进程
# ps -ef # 查看所有进程
# top # 实时显示进程状态用户
# w # 查看活动用户
# id <用户名> # 查看指定用户信息
# last # 查看用户登录日志
# cut -d: -f1 /etc/passwd # 查看系统所有用户
# cut -d: -f1 /etc/group # 查看系统所有组
# crontab -l # 查看当前用户的计划任务服务
# chkconfig –list # 列出所有系统服务
# chkconfig –list | grep on # 列出所有启动的系统服务程序
# rpm -qa # 查看所有安装的软件包

4. svn创建版本库配置

cd /home/svn
mkdir ityizhan
svnadmin create ityizhan
cd ityizhan/conf
vi passwd

[users]
ituser = itpassword
vi svnserve.conf
password-db = passwd
authz-db = authz
vi authz

[groups]
ityizhan = ituser
[ityizhan:/]
* =
@ityizhan = rw

5. perl安装

 

1、在官方网站下载新版本的源码包:

http://www.perl.org/get.html,版本自己选择,我下载的是 perl-5.12.2.tar.gz

2、解压/usr/local/src下的 perl-5.12.2.tar.gz

# tar zxvf perl-5.12.2.tar.gz

3、建立文件目录,以供安装时使用

# mkdir /usr/local/perl

4、设置源码 进入perl-5.12.2.tar.gz的解压目录,执行:

# ./Configure --help

提示如下: 查看过后,使用这个指令来设置源码:

# ./Configure -des -Dprefix=/usr/local/perl -Dusethreads -Uversiononly

5、编译

# make  //这个过程会比较久,因为源码文件有那么大,我的这个有14M。
# make install

等待这个命令完成后,基本安装就完成了。

 

6、替换掉旧的perl命令

# cd /usr/bin
# mv perl perl.old       //把原来的perl更名为perl.old,弃用。
# ln ls /usr/local/perl/bin/perl /usr/bin/perl  //做一个软链接,使用新的perl

7、完成

# perl -version

使用这个命令查看perl的版本,可以看到,已经更新到5.12.2版本了.

6. glibc的安装

有些软件可能要求系统的Glibc高于某个版本才可以正常运行,如果您的Glibc低于要求的版本,为了运行这些软件,您就不得不升级您的Glibc了。比如:

qq: error while loading shared libraries: requires glibc 2.5 or later dynamic linker

您可以寻找已经编译好的rpm包或者使用源代码的方式升级Glibc。

6.1. RPM包方式安装glibc

RPM虽然比较容易安装,但就是依赖问题不好解决。给出一个下载地址: http://mirrors.jtlnet.com/centos/5.5/os/i386/CentOS/

$ rpm –ivh glibc-2.5-49.i386.rpm

不过我用的是CentOS 4.8,貌似不能兼容:

error: Failed dependencies: glibc-common = 2.5-49 is needed by glibc-2.5-49.i386 glibc > 2.3.4 conflicts with glibc-common-2.3.4-2.43.el4_8.3.i386

安装完成后,可以查看是否已升级:

$ ls -l /lib/libc.so.6 lrwxrwxrwx 1 root root 11 10-08 22:08 /lib/libc.so.6 -> libc-2.5.so

6.2. 编译安装glibc

下载glibc

[root@localhost test]# pwd /test
[root@localhost test]# wget http://ftp.gnu.org/gnu/glibc/glibc-2.9.tar.bz2

下载glibc-linuxthreads

[root@localhost test]# wget http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.5.tar.bz2

解压

[root@localhost test]# tar -jvxf glibc-2.9.tar.bz2
[root@localhost test]# cd glibc-2.9
[root@localhost glibc-2.9]# tar -jvxf ../glibc-linuxthreads-2.5.tar.bz2

配置

[root@localhost glibc-2.9]# cd ..
[root@localhost test]# export CFLAGS="-g -O2 -march=i486"
[root@localhost test]# mkdir glibc-build
[root@localhost test]# cd glibc-build
[root@localhost glibc-build]# ../glibc-2.9/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

安装

[root@localhost glibc-build]# make
[root@localhost glibc-build]# make install

安装编译过程中需要注意三点: 1、要将glibc-linuxthreads解压到glibc目录下。 2、不能在glibc当前目录下运行configure。 3、否则如果出现错误:error "glibc cannot be compiled without optimization",需要加上优化开关:

[root@localhost test]# export CFLAGS="-g -O2 -march=i486"

7. CentOS修改DNS

1、CentOS修改DNS

修改对应网卡的DNS的配置文件

# vi /etc/resolv.conf

修改以下内容

nameserver 8.8.8.8 #google域名服务器
nameserver 8.8.4.4 #google域名服务器

2、CentOS修改网关

修改对应网卡的网关的配置文件

[root@centos]# vi /etc/sysconfig/network

修改以下内容

NETWORKING=yes(表示系统是否使用网络,一般设置为yes。如果设为no,则不能使用网络,而且很多系统服务程序将无法启动)
HOSTNAME=centos(设置本机的主机名,这里设置的主机名要和/etc/hosts中设置的主机名对应)
GATEWAY=192.168.1.1(设置本机连接的网关的IP地址。例如,网关为10.0.0.2)

3、CentOS修改IP地址

修改对应网卡的IP地址的配置文件

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改以下内容

DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
BOOTPROTO=static #设置网卡获得ip地址的方式,可能的选项为static,dhcp或bootp,分别对应静态指定的 ip地址,通过dhcp协议获得的ip地址,通过bootp协议获得的ip地址
BROADCAST=192.168.0.255 #对应的子网广播地址
HWADDR=00:07:E9:05:E8:B4 #对应的网卡物理地址
IPADDR=12.168.1.2 #如果设置网卡获得 ip地址的方式为静态指定,此字段就指定了网卡对应的ip地址
IPV6INIT=no
IPV6_AUTOCONF=no
NETMASK=255.255.255.0 #网卡对应的网络掩码
NETWORK=192.168.1.0 #网卡对应的网络地址
ONBOOT=yes #系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备

4、重新启动网络配置

# service network restart
或
# /etc/init.d/network restart

修改 IP 地址,即时生效:

# ifconfig eth0 192.168.0.2 netmask 255.255.255.0

启动生效,修改:

/etc/sysconfig/network-scripts/ifcfg-eth0

修改网关Default Gateway,即时生效:

# route add default gw 192.168.0.1 dev eth0

启动生效,修改:

/etc/sysconfig/network

修改DNS,修改

/etc/resolv.conf

修改后可即时生效,启动同样有效。

修改host name,即时生效:

# hostname centos1

启动生效,修改:

/etc/sysconfig/network

手动更改centos为静态IP

1,先搜索了一下,得到以下解释:

IP IP地址 Netmark 子网掩码 Gateway 默认网关 HostName 主机名称 DomainName 域名 DNS DNS的IP

2,需要修改的文件常有

/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/resolv.conf /etc/hosts

出现’connect:Network is unreachable error’问题,VirtualBox采用的是Bridged Adapter的方式连接。

通过修改

/etc/sysconfig/network-scripts/ifcfg-eth0

修改虚拟机的IP地址、network和netmask。 发现能ping同network和netmask,于是断定应该是虚拟机操作系统的路由配置问题,尝试直接修改系统文件:

/etc/sysconfig /network-scripts/route-eth0

添加

defult via 192.168.0.1

192.168.0.1是我的路由器的IP地址,可以根据自身情况修改

到/etc/sysconfig/network-scripts/目录下发现压根儿没有route-eth0这个文件,于是自己创建了一个,将defult via 192.168.0.1添加到文件中。 运行

/etc/init.d/network restart

重启network,一切ok!

支付宝打赏 微信打赏

赞赏是不耍流氓的鼓励