※ ChatGPTを利用し、要約された質問です(原文:Linux パッチの適用方法。)
Linuxパッチの適用方法を教えてください
2018/06/02 11:20
このQ&Aのポイント
Linux Debian 9環境下でのパッチの適用方法について教えてください。
パッチを当てる手順やファイルの作成方法についてお教え願いします。
Linux環境におけるパッチの反映方法について詳しく教えてください。
Linux Debian 9 の環境下において、パッチの適用方法を教えください。
あるサイトに下記の構文を、パッチしてくださいとあります。
diff --git a/init.d/sysfs.in b/init.d/sysfs.in
index 9f39fb57..23e8821c 100644
--- a/init.d/sysfs.in
+++ b/init.d/sysfs.in
@@ -150,6 +150,16 @@ cgroup1_controllers()
return 0
}
+cgroup2_base()
+{
+ local base
+ base="$(cgroup2_find_path)"
+ mkdir -p "${base}"
+ mount -t cgroup2 none -o "${sysfs_opts},nsdelegate" "${base}" 2> /dev/null ||
+ mount -t cgroup2 none -o "${sysfs_opts}" "${base}"
+ return 0
+}
+
cgroup2_controllers()
{
local active cgroup_path x y
@@ -169,13 +179,12 @@ cgroup2_controllers()
cgroups_hybrid()
{
- grep -qw cgroup /proc/filesystems &&
- grep -qw cgroup2 /proc/filesystems ||
- return 0
+ grep -qw cgroup /proc/filesystems || return 0
cgroup1_base
- mkdir /sys/fs/cgroup/unified
- mount -t cgroup2 none -o "${sysfs_opts},nsdelegate" /sys/fs/cgroup/unified
- cgroup2_controllers
+ if grep -qw cgroup2 /proc/filesystems; then
+ cgroup2_base
+ cgroup2_controllers
+ fi
cgroup1_controllers
return 0
}
@@ -190,8 +199,8 @@ cgroups_legacy()
cgroups_unified()
{
- grep -qw cgroup2 /proc/filesystems || return 0
- mount -t cgroup2 none -o "${sysfs_opts},nsdelegate" /sys/fs/cgroup
+ cgroup2_base
+ cgroup2_controllers
return 0
}
diff --git a/sh/rc-cgroup.sh.in b/sh/rc-cgroup.sh.in
index 930eeefc..9e93d841 100644
--- a/sh/rc-cgroup.sh.in
+++ b/sh/rc-cgroup.sh.in
@@ -146,10 +146,12 @@ cgroup_set_limits()
cgroup2_find_path()
{
- case "${rc_cgroup_mode:-hybrid}" in
- hybrid) printf "/sys/fs/cgroup/unified" ;;
- unified) printf "/sys/fs/cgroup" ;;
+ if grep -qw cgroup2 /proc/filesystems; then
+ case "${rc_cgroup_mode:-hybrid}" in
+ hybrid) printf "/sys/fs/cgroup/unified" ;;
+ unified) printf "/sys/fs/cgroup" ;;
esac
+ fi
return 0
}
@@ -180,7 +182,7 @@ cgroup2_set_limits()
{
local cgroup_path
cgroup_path="$(cgroup2_find_path)"
- [ -z "${cgroup_path}" ] && return 0
+ [ -d "${cgroup_path}" ] || return 0
rc_cgroup_path="${cgroup_path}/${RC_SVCNAME}"
local OIFS="$IFS"
IFS="
上記のテキストを、パッチを当てるとはどのような手順になるでしょうか?
どのようなファイルを作成し、反映させるのでしょうか?
よろしくお願いします。
*
質問の原文を閉じる
質問の原文を表示する
補足
t_ohta様 ご回答有り難うございます。 質問内にある構文を0.txtとして保存し、root権限で、 # patch -u < 0.txt と入力してみました。 root@G2:# patch -u < 0.txt can't find file to patch at input line 5 Perhaps you should have used the -p or --strip option? The text leading up to this was: -------------------------- |diff --git a/init.d/sysfs.in b/init.d/sysfs.in |index 9f39fb57..23e8821c 100644 |--- a/init.d/sysfs.in |+++ b/init.d/sysfs.in -------------------------- File to patch: 上記の結果となります。 入力コマンドなど、誤っている点をお教えいただけますでしょうか。 *