星期三, 9月 02, 2015

星期六, 8月 29, 2015

星期四, 8月 27, 2015

星期四, 4月 28, 2011

PowerPoint出現"無法顯示…檔案中…某些文字…

PowerPoint出現"無法顯示…檔案中…某些文字…"

  上週有同仁反應無法開啟ppt檔,經測試,該電腦開啟ppt檔時會出現「PowerPoint無法顯示 "XXX.ppt" 檔案中投影片上的某些文字圖像或物件,因為這些項目發生毀損,簡報中受到影響的投影覑已經以空白投影片取代。遺失的資訊已經沒辦法修復。若要確保檔案可以 使用舊版的PowerPoint開啟,請用[另存指令]([檔案]功能表),以同樣名稱或新的檔案名稱儲存檔案。」的錯誤訊息,好長一串…。




後來在自己的電腦測試,也發生一樣的狀況,再開啟幾年前做的ppt檔,有的ok,有的也會出現錯誤訊息,這狀況倒是特別。上網搜尋了一下,果然也有其他人發難,而問題的原因,竟是微軟釋出的KB2464588更新所導致,詳細的狀況可參考微軟TechNet的討論串

解決的方式有兩種,一是到新增移除程式移除KB2464588(記得把"顯示更新"打勾):


另一方法為使用微軟後來釋出的hotfix來修正。

參考資料:
http://blog.752club.com/powerpoint-kb2464588/

linux 更改 hostname

Linux (Redhat / Fedora / CentOS) 更改 hostname 的方式

發現更改主機的 hostname 的方式都改不太完整. 以下是試出來比較完整的方式:

Step 00:

  • 假設原本 hostname 為 tryboxap2, 現在想要更改為 tryboxap03
  • 使用 root 才可以更改 hostname
su - root

Step 01:

  • 將 /etc/hosts 內出現的 tryboxap2 都改成 tryboxap03
:
127.0.0.1 tryboxap03 localhost.localdomain localhost

Step 02:

  • 將 /etc/sysconfig/network 內的 HOSTNAME 改成 tryboxap03
NETWORKING=yes
HOSTNAME=tryboxap03
GATEWAY=61.67.71.126

Step 03:

  • 再使用 hostname 命令指定一次
hostname tryboxap03
  • 這時就已經設定完成. 可以使用 hostname 命令去確認一次
[root@tryboxap2 etc]# hostname
tryboxap03
[root@tryboxap2 etc]#
只要重新登入, 命令提示字串就會改成 [root@tryboxap03 etc]#


參考:
http://www.ichiayi.com/wiki/tech/linux_hostname

星期四, 4月 07, 2011

Media Manager volume pool aptilo has no more unassigned media in robotic device TLD(0)

問題:


建立了兩個policy,test1和test2。指定的volumn pool都为aptilo。
在aptilo的volumn pool裡有兩卷空白的磁帶A和磁帶B,手動執行test1成功,mount的是磁帶A,然後手動執行test2,它會去mount磁帶B,而磁帶A才寫了一點點資料,為什麼test2不去mount磁帶A,而去mount磁帶B。如果把磁帶B從aptilo裡刪除只剩磁帶A,再次執行test2,就出現下列錯誤,若只執行test1則OK。

2006-7-18 0:54:15 - started process bpbrm (1480)
2006-7-18 0:54:15 - connecting
2006-7-18 0:54:16 - connected; connect time: 00:00:01
2006-7-18 0:54:17 - started process bptm (2656)
2006-7-18 0:54:17 - Error bptm(pid=2656) Media Manager volume pool aptilo has no more unassigned media in robotic device TLD(0)
2006-7-18 0:54:20 - end writing
unable to allocate new media for backup, storage unit has none available(96)
2006-7-18 0:54:20 - Error bpsched(pid=676) suspending further backup attempts for client CLIENTSERVER, policy test2, schedule Full because it has exceeded the configured number of tries
2006-7-18 0:54:20 - Error bpsched(pid=676) backup of client CLIENTSERVER exited with status 96 (unable to allocate new media for backup, storage unit has none available)


答:
NBU會把資料寫在具有相同保存期限的磁帶裡,所以保存週期要設成一樣,或者在properties裡設置允許同一卷磁帶上有不同的保存週期。改更 Netbackup Management --> Host Properties -->Master Server


保存周期要设成一样,或者在properties里设置允许同一盘磁带上有不同的保存周期。
NetBackup Managemnt--->Host Properties--->Master Server 




我把所有用daily vloumn pool里的policy都改成相同的retention试了一下,好像是可以了。
不过现在好像又有这样一个问题,我的磁带机不是有两个drive吗,也就是可以支持同时有两个policy在运行,test1和test2是设置成同时运行的,但结果是test1在运行时候,test2却在等待,而这个daily volumn pool里至少还有两盘磁带可以写。不知何故。



可能是Master的每client的job数没改,现在查看其设置是1。
存储单元的最大同时写驱动器数也没改过,但其默认已经是2了。
应该是跟第一个设置有关了。



參考資料


http://bbs.chinaunix.net/archiver/tid-977575.html

星期四, 3月 24, 2011

Linux 效能分析

iostat 
[root@hqu-mysql ~]# iostat -x 
Linux 2.6.9-89.0.15.ELsmp (hqu-mysql)   2009年11月25日 

avg-cpu:  %user   %nice    %sys %iowait   %idle 
                   7.95       0.00       5.96       1.24      84.85 

Device:    rrqm/s wrqm/s   r/s   w/s  rsec/s  wsec/s    rkB/s    wkB/s avgrq-sz avgqu-sz await  svctm  %util 
ida/c0d0     0.03   7.54  6.29  7.11   94.87  117.22    47.44    58.61    15.84     1.09       81.67   4.51   6.04 
ida/c0d0p1   0.03   7.54  6.29  7.11   94.87  117.22    47.44    58.61    15.84     1.09       81.68   4.51   6.04 
ida/c0d0p2   0.00   0.00  0.00  0.00    0.00    0.00     0.00     0.00        45.66     0.00       12.72  10.03   0.00 
数据库应该是有硬盘io延迟问题的。 

结果详解: 
% user      显示了在用户级(应用程序)执行时产生的 CPU 使用率百分比。 
% sys       显示了在系统级(内核)执行时产生的 CPU 使用率百分比。 
% idle       显示了在 CPU 空闲并且系统没有未完成的磁盘 I/O 请求时的时间百分比。 
% iowait   显示了 CPU 空闲期间系统有未完成的磁盘 I/O 请求时的时间百分比。 

rrqm/s: 每秒进行 merge 的读操作数目。即 delta(rmerge)/s 
wrqm/s: 每秒进行 merge 的写操作数目。即 delta(wmerge)/s 
r/s: 每秒完成的读 I/O 设备次数。即 delta(rio)/s 
w/s: 每秒完成的写 I/O 设备次数。即 delta(wio)/s 
rsec/s: 每秒读扇区数。即 delta(rsect)/s 
wsec/s: 每秒写扇区数。即 delta(wsect)/s 
rkB/s: 每秒读K字节数。是 rsect/s 的一半,因为每扇区大小为512字节。 
wkB/s: 每秒写K字节数。是 wsect/s 的一半。 
avgrq-sz: 平均每次设备I/O操作的数据大小 (扇区)。delta(rsect+wsect)/delta(rio+wio) 
avgqu-sz: 平均I/O队列长度。即 delta(aveq)/s/1000 (因为aveq的单位为毫秒)。 
await: 平均每次设备I/O操作的等待时间 (毫秒)。即 delta(ruse+wuse)/delta(rio+wio) 
svctm: 平均每次设备I/O操作的服务时间 (毫秒)。即 delta(use)/delta(rio+wio) 
%util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒) 

简单分析: 
如果 %util 接近 100%,说明产生的I/O请求太多,I/O系统已经满负荷,该磁盘可能存在瓶颈。 

svctm 一般要小于 await (因为同时等待的请求的等待时间被重复计算了),svctm 的大小一般和磁盘性能有关,CPU/内存的负荷也会对其有影响,请求过多也会间接导致 svctm 的增加。await 的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出模式。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明 I/O 队列太长,应用得到的响应时间变慢,如果响应时间超过了用户可以容许的范围,这时可以考虑更换更快的磁盘,调整内核 elevator 算法,优化应用,或者升级 CPU。 

队列长度(avgqu-sz)也可作为衡量系统 I/O 负荷的指标,但由于 avgqu-sz 是按照单位时间的平均值,所以不能反映瞬间的 I/O 洪水。 

vmstat 
[root@sends ~]# vmstat -a 2 
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu---- 
r  b   swpd   free  inact active   si   so    bi    bo   in    cs us sy id wa 
2  0      0 589428 847744 2391492    0    0     1    21    3     6 23 13 64  0 
2  0      0 585972 848296 2394760    0    0     0    62 1076   754 21 33 46  0 
1  0      0 589108 848796 2390680    0    0     0     0 1077   702 22 33 46  0 
1  0      0 629604 825368 2374436    0    0     0    30 1024   685 20 32 47  0 
1  0      0 631012 825368 2372948    0    0     0    20 1029   682 21 33 46  0 


结果分析: 
Procs 
r:等待执行的任务数 
b:处在非中断睡眠状态的进程数 
展示了正在执行和等待CPU资源的任务个数。当这个值超过了CPU数目,就会出现CPU瓶颈了 

Memory 
swpd:正在使用的swap大小单位K
free:空闲的内存空间
buff:已使用的buff大小,对块设备的读写进行缓冲
cache:已使用的cache大小,文件系统的cache
inact: 
active: 

Swap 
si:交换内存使用,由磁盘调入内存 
so:交换内存使用,由内存调入磁盘 

IO 
bi:从块设备读入的数据总量(读磁盘) (KB/s) 
bo:写入到块设备的数据总理(写磁盘) (KB/s) 

System 
in:每秒产生的中断次数
cs:每秒产生的上下文切换次数 
上面这2个值越大,会看到由内核消耗的CPU时间会越多 

CPU 
us:用户进程消耗的CPU时间百分比 
us 的值比较高时,说明用户进程消耗的CPU时间多,但是如果长期超过50% 的使用,那么我们就该考虑优化程序算法或者进行加速了 
sy:内核进程消耗的CPU时间百分比 
sy 的值高时,说明系统内核消耗的CPU资源多,这并不是良性的表现,我们应该检查原因。 
id:空闲
wa:IO等待消耗的CPU时间百分比 
wa 的值高时,说明IO等待比较严重,这可能是由于磁盘大量作随机访问造成,也有可能是磁盘的带宽出现瓶颈(块操作)。




使用Linux性能分析工具
Linux在具有高穩定性、可靠性的同時,具有很好的可伸縮性和擴展性,
能夠針對不同的應用和硬件環境調整,優化出滿足當前應用需要的最佳性能。
因此企業在維護Linux系統、進行系統調優時,了解系統性能分析工具是至關重要的。

在Linux下有很多系統性能分析工具,
比較常見的有top、free、ps、time、timex、uptime等。
下文將介紹几個較為重要的性能分析工具vmstat、iostat和sar及其使用。

用vmstat監視內存使用情況
vmstat是Virtual Meomory Statistics(虛擬內存統計)的縮寫,可對操作系統的虛擬內存、進程、CPU活動進行監視。
它是對系統的整體情況進行統計,不足之處是無法對某個進程進行深入分析。

vmstat的語法如下:
vmstat [-V] [-n] [delay [count]]

其中,-V表示打印出版本信息;-n表示在周期性循環輸出時,輸出的頭部信息僅顯示一次;
delay是兩次輸出之間的延遲時間;count是指按照這個時間間隔統計的次數。
對于vmstat輸出各字段的含義,可運行man vmstat查看。



用iostat監視I/O子系統情況
iostat是I/O statistics(輸入/輸出統計)的縮寫,iostat工具將對系統的磁盤操作活動進行監視。
它的特點是匯報磁盤活動統計情況,同時也會匯報出 CPU使用情況。
同vmstat一樣,iostat也有一個弱點,就是它不能對某個進程進行深入分析,僅對系統的整體情況進行分析。

iostat的語法如下:
iostat [ -c | -d ] [ -k ] [ -t ] [ -V ] [ -x [ device ] ] [ interval [ count ] ]

其中,-c為匯報CPU的使用情況;-d為匯報磁盤的使用情況;-k表示每秒按kilobytes字節顯示數據;
-t為打印匯報的時間;-v表示打印出版本信息和用法;-x device指定要統計的設備名稱,默認為所有的設備;
interval指每次統計間隔的時間;count指按照這個時間間隔統計的次數。



使用sar進行綜合分析
sar是System Activity Reporter(系統活動情況報告)的縮寫。
顧名思義,sar工具將對系統當前的狀態進行取樣,然后通過計算數據和比例來表達系統的當前運行狀態。
它的特點是可以連續對系統取樣,獲得大量的取樣數據;取樣數據和分析的結果都可以存入文件,所需的負載很小。
sar是目前Linux上最為全面的系統性能分析工具之一,可以從14個大方面對系統的活動進行報告,
包括文件的讀寫情況、系統調用的使用情況、串口、CPU效率、內存使用狀況、進程活動及IPC有關的活動等,使用也是較為複雜。

sar的語法如下:

sar [-option] [-o file] t [n]
它的含義是每隔t秒取樣一次,共取樣n次。其中-o file表示取樣結果將以二進制形式存入文件file中。

sar option參數說明

選項 功能
-A 匯總所有的報告
-a 報告文件讀寫使用情況
-B 報告附加的緩存的使用情況
-b 報告緩存的使用情況
-c 報告系統調用的使用情況
-d 報告磁盤的使用情況
-g 報告串口的使用情況
-h 報告關于buffer使用的統計數據
-m 報告IPC消息隊列和信號量的使用情況
-n 報告命名cache的使用情況
-p 報告調頁活動的使用情況
-q 報告運行隊列和交換隊列的平均長度
-R 報告進程的活動情況
-r 報告沒有使用的內存頁面和硬盤塊
-u 報告CPU的利用率
-v 報告進程、i節點、文件和鎖表狀態
-w 報告系統交換活動狀況
-y 報告TTY設備活動狀況


另一種語法如下:

sar [-option] [-s time] [-e time] [-i sec] [-f file]

含義是表示從file文件中取出數據,如果沒有指定-f file,
則從標准數據文件/var/adm/sa/sadd取數據,其中dd表示當前天。
另外,-s time表示起始時間;-e time表示停止時間;
-i sec表示取樣的時間間隔,如果不指定則表示取文件中所有的數據。

一般它與-q和-u聯合使用,以便對每個CPU的使用情況進行分析,比如運行如下命令:
sar -q -u 5 1

由于sar命令太複雜,只有通過熟練使用才能了解每個選項的含義,
對于sar輸出中每個字段的含義運行man sar命令可以得到詳細的解釋。





參考資料:
http://saplingidea.javaeye.com/blog/526617
http://tw.myblog.yahoo.com/bullock0425/article?mid=-2&prev=534&l=a&fid=25