版本:fedora17 x64位
CPU:AMD Athlon(tm) II X4 635 Processor × 4
主板:AMD 870 (无板载显卡)
内存:DDR3-1333 8G
显卡:8500GT

0、设置了sudoers、yum源

sudo gedit /etc/sudoers

# User privilege specification
root    ALL=(ALL) ALL
加入   你的账户名   ALL=(ALL) ALL

yum源就加163的就好了

mirrors.163.com
点fedora使用帮助,里面有详细信息

1、安装相关编译包

gcc、make、kernel-devel、kernel-headers、dkms
sudo yum -y install gcc make dkms
kernel-devel和kernel-headers是从DVD安装光盘里找的
#也可以把kernel更新到最新版,再用yum下载kernel源码

2、相关设置

1、阻止nouveau模块的加载

sudo gedit /etc/modprobe.d/blacklist.conf
添加一行:blacklist nouveau

sudo gedit /boot/grub2/grub.cfg
在menuentry ‘Fedora Linux’ 这一段的linux    /boot/vmlinuz 这一行末尾rhgb quiet后面添加 nouveau.modeset=0

2、降低selinux级别

sudo setsebool -P allow_execstack on

3、下载nvidia官方驱动和设置权限

下载最新的就可以:NVIDIA-Linux-x86_64-304.51.run
chmod a+x NVIDIA-Linux-x86_64-304.51.run

3、操作

1、进文本模式

重启进菜单后-按e进编辑模式-找到rhgb quiet,输入 3   然后按F10启动

2、nvidia安装

sh ./NVIDIA-Linux-x86_64-304.51.run

里面就是选accept,然后再要不要生成xorg.conf的时候按ok 就好了

3、设置分辨率

重启后发现分辨率只有640x480
1、查看频率

gtf 1280 1024 60  -x

  # 1280x1024 @ 60.00 Hz (GTF) hsync: 63.60 kHz; pclk: 108.88 MHz
  Modeline “1280x1024_60.00”  108.88  1280 1360 1496 1712  1024 1025 1028 1060  -HSync +Vsync
2、设置频率

sudo gedit /etc/X11/xorg.conf

Section “Monitor”
    Identifier     “Monitor0”
    VendorName     “Unknown”
    ModelName      “Unknown”
    HorizSync       28.0 - 63.60
    VertRefresh     43.0 - 108.88
    Option         “DPMS”
EndSection

4、查看模块

lsmod

nvidia              11262717  40
nouveau               785691  0

modinfo nvidia

filename:       /lib/modules/3.3.4-5.fc17.x86_64/extra/nvidia.ko
alias:          char-major-195-*
version:        304.51
supported:      external
license:        NVIDIA

后记

碰到的问题就是屏幕分辨率的问题,没碰到安装不了驱动的问题,也没有黑屏和蓝进度条的问题

参考:

fedora15安装nvidia官方驱动

解决linux低分辨率
xorg.conf配置详解
linux gtf和cvt命令

效果

fedora17安装nvidia官方驱动 - leaf - ------坚持雅操------

fedora17安装nvidia官方驱动 - leaf - ------坚持雅操------

fedora17安装nvidia官方驱动 - leaf - ------坚持雅操------

视频能听声音,没图像显示为绿色
1、设置mediaplayer

工具-选项-性能-视频加速-选 无

2、设置IE浏览器

一般出现在IE8或者更改一级的IE浏览器里,原因就是“兼容性视图”。只要点一下然后关闭IE再开,就能看了

一直的方向:

电脑的事情尽量让电脑自己解决,就是自动化的解决。编程、写脚本,下软件,反正自己要做的,就是想出让电脑自动解决的办法。如数据备份、轮替等这些电脑都能做,就看你有没有能力让电脑去做。

问题的处理:首先要精通每个步骤和原理,只有这样,才能知道哪个步骤出错了和从那个点入手、用什么知识去解决问题。这些都是基础,基础扎实了就可以处理很多问题。做项目,也是原理和实际结合的东西。

转载:
http://www.linuxfromscratch.org/hints/downloads/files/rpm.txt
http://hi.baidu.com/manbuzhe2009/item/94ba0f2af1bff4c6ee10f139
百度知道

LFS虽然能安装rpm之类的包管理软件,但是由于建LFS是源码建的,所以rpm数据库中就不包含这些源码建的包,
这就导致用软件包管理系统在安装软件包的时候,会因为依赖关系不足而无法安装。

做好临时系统后直接勇rpm或者deb进行制作目标系统不知道是不是可以做出含包管理软件的目标系统

编译核心最重要的目的是为了系统的稳定。

编译核心需要的软件:核心源码src、核心开发套件kernel-devel、gcc、make工具等

cd /usr/src/kernels/2.6.11-1.1369_FC4smp-i686
make menuconfig
对于已经编译过,但是要加新内容,可以使用make oldconfig   #必须要有.config文件

鸟哥基础第二十六章 - leaf - ------坚持雅操------

 
make clean
make bzImage         #制作核心
make modules         #制作模块

#安装模块到/lib/modules
mv /lib/modules/2.6.* /lib/modules/2.6.*.old
make modules_install     

#安装核心
cp /usr/src/…./bzImage           /boot/vmlinuz-….
cp /usr/src/…./System.map     /boot/System.map…

修改grub菜单

查看电脑状态

lspci
iostat

iostat -c 2 3   #2秒检测CPU使用率一次,共检测3次
iostat -d 2 3  ##2秒检测硬盘读写一次,共检测3次

lm_sensors

命令:/usr/local/bin/sensors

 /usr/local/sbin/sensors-detect

配置:/etc/sensors3.conf、/etc/sensors.d

setup功能

相当于系统安装时每个步骤的设置,包含nvsysv

鸟哥基础第二十五章 - leaf - ------坚持雅操------

 

cups架构打印机

通过网页设置的很方便
linux对postscript打印格式支持最好

PPD::用于支持postscript,放在/usr/share/cups/model

联机模式:

socket模式:socket://IP:9100
LPD   模式:打印机名称LPT1/LPT2
IPP    模式:ipp://IP:631/printername
smb   模式:smb://user:passwd@IP/printername

LVM

作用:产生一个大磁盘,并且扩容方便
概念:

前奏:fdisk将磁盘ID改为8e

PV:   physical volume

  主要用于标示磁盘用于LVM

VG:   volume group

  相当于把PV集合起来当作一个硬盘,该硬盘没有分过区、没格式化过

  PE:physcial extend

用于设置VG的块大小,相当于硬盘的块大小
默认:4M

LV:   logical volume

  相当于分区,对LVM磁盘分区

后续:格式化和挂载

操作:

前奏:

fdisk /dev/hdb —> /dev/hdb1,/dev/hdb2 —> 8e

partprobe                      #让分区表立刻生效

PV:

pvcreate /dev/hdb1
pvcreate /dev/hdb2
pvcreate /dev/hdb3
pvscan                         #搜索pv分区并显示出来
pvdisplay                     #显示pv分区详细信息
                                    #pvremove 删除pv分区

VG:

vgcreate vg /dev/hdb1/dev/hdb2
vgscan
vgdisplay
                                    #vgextend vg /dev/hdb3   增加额外的PV
                                    #vgreduce vg /dev/hdb3   删除PV
                                    #vgremove vg                   删除VG
                                    #vgchange -a n vg            设置vg不可用

LV:

lvcreate -L 10G -n lv1 vg                                       #相当于分区

lvcreate -L 15G -n lv2 vg       

lvscan
lvdisplay
                                                                             #lvremove 删除lv分区

格式化

mkfs.ext3 /dev/vg/lv1
mkfs.ext3 /dev/vg/lv2

挂载

mkdir /media/lvm1
mount …..
fstab

加大LVM磁盘

vgexteng vg /dev/hdb3
lvextend -L +10G /dev/vg/lv1                               #lvreduce 减少lv容量

umount /media/lvm1
resize2fs -f /dev/vg/lv1                                         #更新lv磁盘信息,也就是更新超级块信息

mount …..

磁盘阵列

nas:提供存储服务的一台电脑
san:一台存储设备(相当于很大容量的硬盘),通过光纤和电脑主机直接相连
iscsi:IP网络存储,相当于设置了IP地址的san,然后是通过网络设备相连的,

连接方式:san群-路由器|—-交换机—-|电脑

概念:

X客户端,窗口管理器(gnome、KDE)————-X服务器————用户

X服务器:负责驱动硬件:控制显示设备(显卡、显示器),接受鼠标键盘的输入信息等
X客户端:负责产生画面,并告诉X服务器如何显示
窗口管理器:增强Xclient的绘制能力,使之更好的显示窗口、按钮、菜单、鼠标等
#用户和Xserver打交道—–>Xserver把用户的动作告诉Xclient—–>
#—–>Xclient负责告诉Xserver如何显示—–>Xserver调用显卡驱动等把画面显示出来。

startx
实际启动X的程序是xinit
X客户端:                /usr/X11R6/bin/xterm      #X虚拟终端
X客户端脚本:         /etc/X11/xinit/xinitrc
X服务器:                /usr/X11R6/bin/X
X服务器脚本:         /etc/X11/xinit/xserverrc    #默认不存在
X服务器设置文件: /etc/X11/xorg.conf
X服务器监听端口:  6000                               #可以有多个端口监听不同的X客户端的显示命令
                                                                       #如vnc时有本地的和远程的Xclient,都告诉X服务器如何显示
                                                                       #X服务器可启动很多,第二个就是tty8了

xinit   xterm -geometry +1+1 -n login    -display :0                  –         X           :0
         客户端                                        第0号显示界面                       服务器   第0号界面

whereis startx

startx: /usr/X11R6/bin/startx /usr/bin/X11/startx

diff /usr/X11R6/bin/startx /usr/bin/X11/startx

cat startx | egrep -v “^#|^$”

userclientrc=$HOME/.xinitrc
userserverrc=$HOME/.xserverrc
sysclientrc=/etc/X11/xinit/xinitrc
sysserverrc=/etc/X11/xinit/xserverrc
defaultclient=/usr/X11R6/bin/xterm
defaultserver=/usr/X11R6/bin/X
defaultclientargs=””
defaultserverargs=””
clientargs=””
serverargs=””
…………….

/etc/X11/xinit/xinitrc

会打开/etc/X11/xinit/Xclients,该文件会调用/etc/sysconfig/desktop,里面设置开启gnome
如果没有其他窗口管理器,则会打开/usr/X11R6/bin/twm

XFS:字体服务器

作用:为本机或远程Xclient提供字体。

命令:/usr/X11R6/bin/xfs、/usr/bin/X11/xfs

启动程序:/etc/init.d/xfs
设置文件:/etc/X11/fs/config

# 下面是设置字体存放的位置,xfs会搜索这些目录
catalogue = /usr/X11R6/lib/X11/fonts/misc:unscaled,
        /usr/X11R6/lib/X11/fonts/75dpi:unscaled,
        /usr/X11R6/lib/X11/fonts/100dpi:unscaled,
        /usr/X11R6/lib/X11/fonts/Type1,
        /usr/share/fonts/default/Type1,
        ,
        /usr/share/fonts/chinese/TrueType

备份用到的就是脚本+crond

备份用到的服务:crontd
备份的命令:tar、dd、cpio、dump等

远程备份脚本

host=”192.168.1.100”
id=”username”
pw=”passwd”

basedir=”本机目录”
remodir=“远程目录”

filename=“backup.tar”

cd $basedir
tar -cvf $filename *

#ftp到$host,并记录日志,输入EOC时结束连接

ftp -n “$host” > “$basedir”/“$filename”.log 2>&1 <<EOC      
user  $id  $pw
binary
cd $remodir
put $filename
bye
EOC

crontab

30 2 * * * root   /…./ftp-backup.sh

重点是日志的设置和轮换

1、log默认存放位置

/var/log/secure             #访问系统数据的记录
/var/log/wtmp               #登录者的信息
/var/log/messages       #系统错误的信息
/var/log/boot.log          #系统开机和服务启动时的信息
/var/log/mail             
/var/log/maillog
/var/log/cron                 #cron的内容
/var/log/samba             #网络服务的信息
等等

2、syslogd

程序:/sbin/syslogd
程序配置:/etc/syslog.conf
启动脚本:/etc/init.d/syslog
启动脚本配置:/etc/sysconfig/syslog

/etc/syslog.conf
cat /etc/syslog.conf | egrep -v “^#|^$”

*.info;mail.none;authpriv.none;cron.none                /var/log/messages
authpriv.*                                                                 /var/log/secure
mail.*                                                                       -/var/log/maillog
cron.*                                                                       /var/log/cron
*.emerg                                                                      *
uucp,news.crit                                                         /var/log/spooler
local7.*                                                                    /var/log/boot.log

服务名称.信息等级                                                  log存放位置
服务名称

auth、authpriv:认证有关的记录
cron:                例行性有关信息
daemon:             守护程序相关信息
kern:                核心相关信息
syslog:             syslog本身相关信息

分隔符

.                          比后面的信息等级相同的或更高的都记录下来
.=                        等于后面的信息等级的记录下来
.!                      除了后面的信息等级,其他等级都记录下来

信息等级(从低到高)

info                      基本信息
notice
warn/warning     一般都记录这个及以上的信息
error/err
crit
alert
panic/emerg       该等级意味着系统快死机了

log存放位置

@192.168.1.100      存放到远程网络
*                               显示出来给所有在线的人看

3、logrotate

logrotate只是一个程序,它靠cron帮助每日运行。

rpm -ql logrotate

程序:/usr/sbin/logrotate
配置:/etc/logrotate.conf、/etc/logrotate.d
cron:/etc/cron.daily/logrotate

/etc/logrotate.conf
cat /etc/logrotate.conf | egrep -v “^#|^$”

weekly                                    每周一次
rotate 4                                   存4个备份
create                                     建新文件来记录
include /etc/logrotate.d           包含该目录下的轮替设置,自定义的都可以写在这里,数据库轮替也可以用
/var/log/wtmp {                        针对登录时的用户状态进行记录的文件,进行轮替
    monthly                               记录用户ID,登录时间等等
    create 0664 root utmp
    rotate 1
}
/var/log/btmp {
    missingok
    monthly
    create 0600 root utmp
    rotate 1
#蓝色部分是要logrotate的内容,并且做了如何logrotate的设置。

/etc/logrotate.d/admin

/var/log/admin.log {

monthly
size=10M                            #大于10M自动轮替
rotate 5
sharedscripts

prerotate                      #轮替前做的事

/usr/bin/chattr -a /var/log/admin.log

endrotate
sharedscripts      

postrotate                    #轮替后做的事       

/usr/bin/killall -HUP syslogd
/usr/bin/chattr +a /var/log/admin.log

endrotate

logrotate命令

logrotate -v /etc/logrotate.d/admin   查看轮替的运行情况
logrotate -f /etc/logrotate.d/admin    强制进行轮替,立刻进行

其他命令

sudo last /var/log/wtmp 
sudo lastlog

附专题:数据库的轮替

http://islandlinux.org/howto/automated-mysql-backups
http://www.cslog.cn/Content/logrotate-mysql-automated-backu/     #这里有些写错了

系统本身的服务,由ps、top等查看、管理;提供外部的网络服务,由netstat等查看、管理。
十七章是系统服务,而下面的都是网络服务,

独立程序

独立启动,常驻内存
位置:/etc/init.d
启动:service atd start

守护程序

由xinetd负责管理和启动,用到的时候才启动,不触发时不占内存
inetd本身没有访问控制能力,全靠TCP_wrapper控制(/etc/host.allow、/etc/host.deny)
xinetd本身内置了访问控制能力
位置:/etc/xinetd.d
配置:/etc/xinetd.conf            
-————————————————————————————-
service rsync
{
        disable = yes                               #服务失效
        socket_type     = stream              #使用tcp流
        wait            = no                           #由于是tcp,所以只能是nowait
        user            = root
        server          = /usr/bin/rsync
        server_args     = –daemon         #传递给/usr/bin/rsync的参数 :rsync –daemon
        log_on_failure  += USERID         #记录日志时额外再记录:userid。
        #如添加only_from / no_access = 192.168.1.0 /24 即可控制访问来源
}
-—————————————————————————————

端口号文件

/etc/services
相关服务的端口如果services里面没有列出来,则服务不能使用。
先通过netstat -tunlp查看开了哪些端口,
再和/etc/services对照一下就知道开启了什么服务
再通过关闭程序:sudo /etc/init.d/*  stop 关闭程序

服务的启动和关闭(只针对独立启动的服务)

ntsysv :这个是redhat及衍生版本才有的功能

chkconfig

chkconfig –list :查看各项服务的状态
chkconfig –level 345 atd on

level:表示运行等级
atd:该名称必须是/etc/init.d里面包含的
on:on或者off

其他:
/etc/rc.d/rc.local:里面添加删除

TCP_Wrappers

/etc/hosts.allow、/etc/hosts.deny
守护程序管理的服务,由xinetd代理,由TCP_wrapper管理。当然防火墙也对访问进行限制。

以上2个文件都是/usr/sbin/tcpd的设置文件
/usr/sbin/tcpd的用处就是分析进入系统的TCP包,并进行限制

格式:

in.telnetd:ALL:加在allow里表示允许进出,加在deny里表示禁止进出
in.telnetd:ALL:spawn …|| …||….   后面接操作指令