Skip to content

Instantly share code, notes, and snippets.

@h2onda
h2onda / sample_daemon.c
Created January 24, 2012 03:34
daemon program sample
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>
int main(void)
{
/* exit session leader */
switch (fork()) {
case -1:
@h2onda
h2onda / sample_getopts.sh
Last active September 30, 2015 14:58
getopts usage sample
#!/bin/bash
usage() {
echo "$(basename $0) [options] args"
}
while getopts 'p:fh' args "$@"
do
case $args in
p)
#!/bin/bash
OUTPUTDIR=.
MAXSIZE=2048
usage(){
echo Usage: $(basename $0) [-s maxsize] [-o outputdir] jpg_file [...]
echo -s: max resolution [default: 2048]
echo -o: output directory [defalut: ./ ]
}
#!/bin/bash
# Original version is written by Chris Kloiber <ckloiber@redhat.com>
# This fork version is modified by HONDA Hirofumi <h2onda@gmail.com>
# A quick hack that will create a bootable DVD iso or non-bootable
# source DVD iso of a Red Hat Linux Distribution. Feed it either a
# directory containing the downloaded iso files of a distribution,
# or point it at a directory containing the "RedHat", "isolinux",
# and "images" directories.
#!/bin/bash
#
# nm-dispatcher.d-rsyslog NetworkManager dispatcher script for Rsyslog
#
# Description:
# This script restart rsyslog when hostname is updated (ex. hostname via dhcp).
# Because new hostname is not applied until rsyslog restarted (ex. via logrotate).
#
# Installation:
# # install nm-dispatcher.d-rsyslog /etc/NetworkManager/dispatcher.d/99-rsyslog
@h2onda
h2onda / mkdriverdisk.sh
Last active August 29, 2015 14:04
create driver disk from specified rpm package
#!/bin/bash
usage() {
echo "Usage: $(basename $0) [ -o filename.iso ] [driver.rpm ...]"
}
create_disk_template() {
rv=1
echo "Driver Update Disk version 3" > $workspace/rhdd3
@h2onda
h2onda / linux-2.6.32-504.el6-cifs_update_inode_cache.patch
Last active August 29, 2015 14:08
cifs: update the inode cache with the results from a FIND_*
Subject: cifs: update the inode cache with the results from a FIND_*
See also: https://github.com/torvalds/linux/commit/cd60042cc1392e79410dc8de9e9c1abb38a29e57
See also: https://github.com/torvalds/linux/commit/2f2591a34db6c9361faa316c91a6e320cb4e6aee
================================
diff -uNrp kernel-2.6.32-504.el6.orig/linux-2.6.32-504.el6.x86_64/fs/cifs/readdir.c kernel-2.6.32-504.el6.new/linux-2.6.32-504.el6.x86_64/fs/cifs/readdir.c
--- linux-2.6.32-504.el6.x86_64/fs/cifs/readdir.c 2014-09-16 14:20:00.000000000 +0900
+++ linux-2.6.32-504.el6.x86_64/fs/cifs/readdir.c 2014-11-07 06:51:30.746015526 +0900
@@ -74,6 +74,7 @@ cifs_readdir_lookup(struct dentry *paren
struct dentry *dentry, *alias;
diff -uNrp kernel.spec.orig kernel.spec.new
--- kernel.spec.orig 2014-11-07 06:55:55.835002982 +0900
+++ kernel.spec.new 2014-11-07 06:58:25.621000048 +0900
@@ -15,6 +15,7 @@ Summary: The Linux kernel
# by setting the define to ".local" or ".bz123456"
#
# % define buildid .local
+%define buildid .cifsinoupd
%define distro_build 504
@h2onda
h2onda / split_crashlog.rb
Last active August 29, 2015 14:26
separate crash log
#!/usr/bin/env ruby
ARGF.read.split(/crash>/).each_with_index{|str,idx|
open("%02g%s.log" % [idx, str.lines[0].gsub(" ","_").chomp], "w"){|file|
file << "crash>" << str
}
}
@h2onda
h2onda / parse_netstat.rb
Created August 12, 2015 06:12
part /proc/net/netstat
#!/bin/env ruby
buf=[]
ARGF.readlines.each_with_index{|line,idx|
buf<<line.split
if (idx%2==1) then
buf.transpose.each{|l|
puts "%s\t%s" % l
}
buf=[]