Bài viết này là repost vì thông tin này quá đỗi quan trọng với tôi, một người đang bị đau lưng và nghỉ việc vì đau lưng. Cảm ơn chân thành đến:
Giáo sư, bác sĩ Mc Kenzie
CN. Nguyễn Thị Sâm
CN. Trần Thị Giai
CN. Phạm Văn Khôi.
I. Lời mở đầu
Các bài tập McKenzie được hình thành khi Robin McKenzie nhận thấy một số bệnh nhân của ông giảm đau rõ rệt khi được đặt
trong tư thế duỗi lưng (Mc Kenzie, 1981).
Mục đích:
Mục đích của bài tập McKenzie là trung tâm hóa (centralization) vị trí đau ở vùng lưng. Nếu bệnh nhân đau từ thắt lưng,
lan đến mông, đùi sau và bắp chân phải, thì mục tiêu là làm cho vị trí đau khu trú đến trung tâm, ban đầu là lưng, mông,
đùi sau… và cuối cùng chỉ còn lại đau khu trú ở vùng thắt lưng.
Đối tượng: Chương trình tập McKenzie chủ yếu dụa trên các tư thế duỗi nhằm mục đích giảm đau cấp tính và điều chỉnh
tình trạng thoát vị đĩa đệm, dự phòng tái phát ở các bệnh nhân thoát vị địa trung tâm hoặc sau-bên.
II. Các bài tập
Bài tập 1: Nằm sấp thư giãn
Người bệnh nằm sấp, hai tay đặt dọc thân mình, đầu quay sang một bên, hít thở sâu vài lần sau đó nằm thư giãn, duy trì
tư thế này trong 5 đến 10 phút.
Hình 1. Nằm sấp thư giãn
Thực hiện 3-6 lần trong ngày, cũng có thể nằm tư thế này khi nghỉ ngơi.
Bài tập 2: Nằm sấp và duỗi thân ở tư thế chống trên hai khuỷu tay
Bắt đầu từ tư thế nằm như bài tập 1, đặt 2 khuỷu tay bên dưới vai, rồi duỗi thân và chống trên 2 khuỷu tay, hít thở sâu
vài lần để cho các cơ vùng thắt lưng thư giãn hoàn toàn. Duy trì tư thế này trong 5 đến 10 phút hoặc lâu hơn nếu cảm
thấy dễ chịu. Mỗi ngày tập 3-6 lần.
Hình 2. Nằm sấp và duỗi thân ở tư thế chống trên hai khuỷu tay
Bài tập 3: Duỗi thân ở tư thế nằm sấp chống trên hai bàn tay
Bắt đầu từ tư thế nằm sấp như bài tập 1, đặt 2 bàn tay dưới vai, dần dần dùng lực 2 tay để nâng thân mình lên trong giới
hạn đau chịu được tạo nên một sự võng thắt lưng, chú ý giữ cho khung chậu và cẳng chân áp sát trên sàn tập, duy trì tư
thế này trong 5 đến 10 phút (có thể dài hơn nếu bệnh nhân thấy dễ chịu, đau giảm, triệu chứng khu trú lại).
Lúc đầu cần thực hiện dần dần, sau đó nâng dần mức độ ưỡn thân mình về phía sau đến mức có thể được.
Mỗi lần tập, thực hiện bài tập này 10 lần, tập 3-6 lần trong ngày.
Hình 3. Duỗi thân ở tư thế nằm sấp chống trên hai bàn tay
Bài tập 4: Duỗi lưng ở tư thế đứng
Đứng thẳng với 2 chân dạng nhẹ, đặt bàn tay chống hông với các ngón tay hướng ra phía sau. Ưỡn thân về phía sau càng
nhiều càng tốt, chú ý giữ hai khớp gối thẳng khi làm động tác, giữ tư thế này trong 3 đến 10 phút trở lại tư thế
ban đầu.
Cứ sau mỗi lần thực hiện thì cố gắng ưỡn người ra sau thêm một ít nữa để đạt dần đến mức tối đa.
Hình 4. Duỗi lưng ở tư thế đứng
Bài tập 5: Gập 2 chân ở tư thế nằm
Bệnh nhân nằm ngửa với hai đầu gối gập, hai bàn chân đặt sát trên sàn nhà hay mặt giường. Tiến hành gập 2 gối về phía
ngực, dùng hai bàn tay ôm hai đầu gối và kéo đầu gối về phía ngực càng nhiều càng tốt. Sau mỗi động tác, cố gắng tăng
dần mức độ gập đến khi gối chạm đến ngực.
Trong khi làm chú ý không nâng đầu và không gập đầu vào thân, đồng thời không duỗi thẳng hai chân khi hạ thấp chân
xuống khi làm động tác. Bài tập này nhằm mục đích điều trị sự co cứng cơ ở vùng thắt lưng và sự giảm khả năng gập
cột sống. Nó nên được thực hiện thận trọng.
Trong một lần tập, thực hiện từ 5 hoặc 6 động tác này, mỗi ngày tập 3 đến 4 lần. Bài tập này làm giảm sự ưỡn cột
sống do đó sau khi làm bài tập này thì phải thực hiện ngay bài tập 3 ( để lấy lại độ ưỡn thắt lưng).
Hình 5. Gập 2 chân ở tư thế nằm
Bài tập 6: Gập lưng ở tư thế ngồi
Ngồi trên ghế với 2 chân dạng, 2 bàn tay đặt trên 2 đầu gối, gập thân về phía trước, 2 tay duỗi thẳng đến khi chạm nền nhà
thì quay về tư thế ban đầu. Thực hiện bài này, cứ sau mỗi lần lặp lại thì cố gắng gập thân thêm chút nữa đến khi đạt được
gập tối đa.
Bài tập này có thể thực hiện hiệu quả hơn bằng cách ngồi gập thân về trước, dùng 2 bàn tay nắm lấy 2 cổ chân, kéo thân
mình gập nhiều hơn.
Bài tập này nên áp dụng sau khi tập bài tập 5 một tuần mà hiệu quả, không gây đau. Lúc khởi đầu, mỗi lần tập chỉ nên tập
5 hoặc 6 lần, mỗi ngày tập 4 lần. Chú ý sau khi tập bài này phải thực hiện ngay bài tập 3.
Hình 6. Gập lưng ở tư thế ngồi
Bài tập 7: Gập thân ở tư thế đứng
Người bệnh đứng thẳng, hai bàn tay để dọc thân, hai chân dạng. Cúi gập thân về trước, các ngón tay càng tiến gần đến 2
bàn chân càng tốt, rồi trở về tư thế ban đầu.
Cứ sau mỗi lần tập bài này, cố gắng để gập thân càng nhiều càng tốt tiến đến mức tối đa.
Bài tập này thực hiện sau khi tập bài tập 6 hai tuần mà hiệu quả, không gây đau. Khởi đầu, mỗi lần tập thực hiện lặp
lại động tác 5 hoặc 6 lần. Mỗi ngày tập 1 đến 2 lần.
Sau khi kết thúc tập bài tập này phải thực hiện ngay bài tập 3. Trong thời gian 3 tháng kể từ khi hết đau, không thực
hiện bài tập này ở thời điểm 4 giờ đầu tiên trong ngày.
Chú ý:
Nguyên lý: Tập trung hóa điểm đau , đau tại lưng không lan
xuống chân.
Trong quá trình tập bệnh nhân tập một động tác hết đau mới
sang động tác tiếp theo, tập đau lan xuống chân thì ngưng tập.
Vào multi-user.target để chạy NVIDIA-Linux-x86_64-580.82.09.run
Ngay sau khi gỡ bỏ nvidia driver cũ, màn hình đen xì. Không thể tương tác với OS.
Giai đoạn này chỉ có 1 cách là giữ nút nguồn và reboot lại OS.
Cầu nguyện cho nó hiện ra được cái terminal để mà còn gõ command được.
II. Tại sao màn hình đen
Cái này là tôi phỏng đoán, lúc này OS mặc dù đang là multi-user.target mode, tuy nhiên nó vẫn đang sử dụng nvidia
driver. Việc gỡ nvidia driver ra khỏi OS làm màn hình đen.
Tuy nhiên, trước đây, tôi hoàn toàn không bao giờ gặp vấn đề này, khi tôi cài nvidia driver mới, cùng lắm là màn hình
chớp một cái thôi, chứ không đến mức màn hình đen xì, không thể tương tác được. Phải đến mức giữ nguồn reboot thì là
mới gặp đầu tiên.
III. Định hướng xử lý
Khi cài mới hay update nvidia driver, nên đưa máy sử dụng nouveau thay vì là nvidia. Sau khi đã cài đặt
xong hoàn toàn, chúng ta sẽ blacklist nouveau và chỉ sử dụng nvidia.
Đi sâu một chút, chúng ta sẽ cần hiểu thứ tự boot của hệ điều hành Fedora:
[Giai đoạn 1] Load initramfs, nó là phiên bản OS tinh gọn load trên ram.
[Giai đoạn 2] switch_root chuyển qua rootfs (root filesystem) thật.
Tôi không biết tại sao nó như vậy, nhưng đây là quá trình xảy ra.
Ở bước load initramfs lên ram, phiên bản tinh gọn này sẽ dùng nouveau, một khi đã load xong rồi, đến giai đoạn
switch_root, lúc này sẽ disable nouveau đi và sử dụng nvidia driver.
Tôi đã nghĩ là hoàn toàn không cần phải vào multi-user.target khi update hoặc install
nvidia driver, ta hoàn toàn có thể mở gnome-terminal và chạy command như bình thường. Tuy nhiên, sau khi tôi test xong,
hoàn toàn không được, buộc phải vào multi-user.target.
IV. Thực sự sẽ phải làm thế nào làm ra sao
Trước tiên đi sâu hơn, tôi muốn nói là để tinh gọn file /boot/initramfs-*.img. Tôi đã cố tình loại bỏ nvidia driver,
kernel object .ko liên quan rồi. Nói cách khác thì trong initramfs hoàn toàn không có nvidia driver.
Bạn có thể tìm $ dracut --omit-drivers, nó liên quan đến quá trình tạo initramfs, Mỗi khi mà OS update kernel,
dracut sẽ chạy để tạo ra initramfs.img mới. Ví dụ khi chạy dracut thủ công
rd.driver.blacklist=nouveau: mặc dù trong initramfs có module nouveau, tuy nhiên sẽ không load nó. (giai đoạn 1)
modprobe.blacklist=nouveau: sau khi switch_root, sẽ không load kernel module có tên là nouveau. Bên cạnh đó, nếu
bất cứ ứng dụng nào tìm cách kích hoạt nouveau, đều sẽ không có hiệu quả.
Lưu ý nhé, đây là giai đoạn 2, kernel module được load từ /usr/lib/modules/${KERNEL_VERSION}/ chứ không phải trong initramfs.img.
nvidia-drm.modeset=1: Còn nvidia-drm thì sẽ mở.
nouveau chưa bao giờ được load kể cả từ initramfs hay là sau khi switch_root. Nvidia driver 100% sẽ được sử dụng.
2. Chế độ dùng nouveau (chỉ dùng khi cần update nvidia)
Khi mà bạn cần vào chế độ nouveau, thì ở màn hình grub, hãy ấn e để edit grub entry.
nvidia-drm.modeset=0: sau khi switch_root không load nvidia-drm
nouveau.modeset=1: còn nouveau thì sẽ load.
3: cái số này ám chỉ là sẽ sử dụng multi-user.target. Đây là chiêu rất hay nếu bạn không muốn dùng command
$ systemctl set-default multi-user.target/graphical.target trước khi reboot để install hay update nvidia driver.
Sau đó ấn F10 để boot vào.
V. Các command hữu dụng
1. Để kiểm tra xem OS đang dùng nvidia hay nouveau hãy dùng command sau:
Trong quá trình tìm hiểu, ChatGPT đã giúp tôi rất nhiều. Việc cài nvidia driver của tôi trước đây rất máy móc, làm
theo hướng dẫn. Nhờ ChatGPT mà tôi hiểu sâu hơn về Linux.
Trước khi đi sâu về mặt kỹ thuật, bạn cần hiểu lý do nào mà tôi cần phải tinh gọn, việc tạo ram file system image (initramfs.img) là mặc định khi update Fedora. Những việc này, người dùng như tôi, thường không phải đụng tay vào. Hoặc rất đen mới phải đụng tay vào.
Tuy nhiên, mọi thứ phát sinh sau khi tôi update lên kernel 6.16.5-200.fc42.x86_64, việc build initramfs tự động tạo ra file initramfs-6.16.5-200.fc42.x86_64.img với dung lượng hơn 300MB, và nó là quá nhiều với /boot vốn khi cài đặt mặc định chỉ có 1GB mà thôi.
Bạn thấy chứ, có gì đó đã xảy ra, initramfs-6.16.5-200.fc42.x86_64.img có dung lượng cao đột biến so với các .img tiền nhiệm. Tôi có sử dụng nvidia driver tôi nghi ngờ rằng, nvidia driver đã được tích hợp vào initramfs theo cách không cần thiết, và thêm nữa, nó quá chiếm dung lượng.
Vốn dĩ, initramfs.img chỉ dùng ban đầu như là một bước mồi trước khi chroot (change root). Nó thực sự không cần:
Hình ảnh (nvidia, amd)
Âm thanh
Bluetooth
Internet
Nhân tiện, việc build initramfs.image sử dụng command dracut.
II. Cách liệt kê những module tích hợp trong initramfs
Cách 1: lsinitrd file.img
Ở cách này, chúng ta đã có file .img rồi, chúng ta muốn khám xem trong .img đang có cái gì.
Một lần nữa, initramfs.img không cần graphic, những module này là không cần thiết.
Cách 2: Vào /lib/modules/KERNEL_VERSION/extra/
Mặc định, những module .ko (kernel object) phụ sẽ nằm ở /lib/modules/KERNEL_VERSION/extra/.
$ ls /lib/modules/6.16.5-200.fc42.x86_64/extra
nvidia-drm.ko.xz
nvidia.ko.xz
nvidia-modeset.ko.xz
nvidia-peermem.ko.xz
nvidia-uvm.ko.xz
Tôi không hiểu hay quan tâm tại sao nvidia-peermem và nvidia-uvm không xuất hiện trong .img. Tuy nhiên, nó là đủ để hiểu dracut lấy các file kernel object nvidia từ đâu.
3. Cách bỏ qua/omit những module không cần thiết khi tạo initramfs
Để build .img mà bỏ qua những driver không cần thiết, ta sử dụng flag --omit-drivers trong dracut. Dưới đây là command build .img có loại trừ các driver sau:
Tất nhiên việc cứ tạo initramfs.img thủ công sau mỗi lần kernel update là rất bất tiện. Để can thiệp vào bước tự động hóa đang có, ta sẽ cần vào thư mục /etc/dracut.conf.d/ và tạo file omit-driver-nvidia.conf với nội dung như sau:
Sau khi tạo xong, việc chạy dracut sẽ không cần đến flag --omit-drivers nữa. Bên cạnh đó, khi Fedora OS update, nó cũng sẽ bỏ qua việc tích hợp nvidia module khi tạo initramfs.img.
Just có mục đích tối thượng là giúp giảm thời gian dev gõ command. Để làm việc đó, nó sẽ cho phép bọc nhiều shell command
lại, và tạo command tương đương, là tôi thì tôi sẽ gọi là alias command. Trong repo, những thiết lập này nằm trong justfile.
[doc('Run mix deps.get for the given project')]
deps project:
#!/usr/bin/env bash
cd apps/
mix deps.get
just command được tạo ra sẽ có tên là deps, nó bọc lại một danh sách các shell command sau:
cd apps/
mix deps.get
Điều này có nghĩa là nếu bạn siêng, bạn sẽ gõ 2 lệnh, còn nếu bạn dùng just, bạn sẽ chỉ cần chạy just deps project.
Cá nhân tôi, lần đầu biết đến just, mix project của tôi thường nằm ngay repo root / thành ra chưa có nhu cầu. Tuy nhiên,
đáng để ghi nhớ.
Trường hợp ở trên, mix project nằm ở trong /apps/, thành ra khá bất tiện.
2. Zig
Zig thì là một ngôn ngữ lập trình luôn! Tôi không hiểu tại sao cái repo 99% là viết bằng elixir, nhưng lại cần đến zig.
Đoạn này tôi mù mịt rồi rồi nên phải nhờ chatGPT.
Zig chỉ đóng vai trò hỗ trợ khi đóng gói/bundling, cụ thể là với burrito(tôi sẽ nói ở ngay sau)
Nếu mà chỉ cần tạo ra release với mix release đơn thuần (cái loại mà tạo ra nhiều thư mục, file, kèm theo runtime), Zig
là hoàn toàn không cần thiết.
3. Burrito
Burrito có mục đích lớn nhất là tạo ra một file executable duy nhất cho mix project. Bạn nhớ cái mix release truyền thống chứ,
nó bao gồm (erlang runtime, nhiều file, thư mục đi kèm), Burrito thì ngược lại, nó sẽ build ra chỉ một file executable duy nhất.
Bạn còn nhớ thằng Zig ở trên chứ, nó giúp Burrito tạo ra executable file phù hợp cho đa nền tảng (linux, mac, window). Zig nó kết nối(link),
đóng gói những header .h và file liên quan vào.
Lời đầu tiên, anh muốn nói lời cảm ơn em Nguyễn Xuân Mai (Bống) đã ghi chép lại câu chuyện của ông ngoại. Bài viết
này chỉ đơn giản là phiên bản số hóa từ ghi chép của em Bống.
Tôi có bốn người cậu, hai cậu đã hi sinh trong cuộc kháng chiến chống Pháp.
Cậu Hoàng Viên đã tốt nghiệp trường Trung học Albert Sarraut,
tham gia Vệ Quốc Đoàn, đóng lại làng Chèm, hi sinh năm 1946.
Cậu Hoàng Tâm,tốt nghiệp trường trung học Chu Văn An, hi sinh tại chiến trường Cao-Bắc-Lạng.
Năm 1946, phát xít Nhật đầu hàng quân đồng minh. Quân đội Tưởng Giới Thạch kéo vào Đông Dương, giải giáp vũ khí Nhật.
Quân Tưởng với khẩu hiệu: "Diệt Cộng Cầm Hồ". Chúng cướp bóc, sát hại phụ nữ, trẻ thơ Việt Nam.
Hành động của chúng đã lọt vào mắt người biệt động thành Hoàng Lan (bí danh)
Bọn Tưởng lừa bà con vào sân đình, lôi ra một người nông dân 35 tuổi và một em bé 14 tuổi, hãm hiếp cho tới chết và vứt
xác xuống ao. Bà Hoàng Lan cùng cậu Hoàng Viên bày kế hoạch bắt chúng trả nợ máu.
Sáng hôm sau, trong vai người bán rượu, bà mời cho bọn Tưởng uống say và trói chúng, thu vũ khí và vứt xác xuống sông.
Có một điều không ngờ đã xảy ra, một tên Tưởng cới trói được về báo cáo với bọn Tưởng. Chính phủ cụ Hồ quyết định tử hình
bảy người tại bến Chèm.
Đêm hôm trước thi hành án, bố tôi, cụ Nguyễn Xuân Tuyết (lão thành cách mạng), cụ Lưu Quyên (trưởng ban tạp chí
Cộng Sản) đã có ý định giải thoát cho cậu tôi, bằng cách thay thế người khác. Cậu Hoàng Viên trả lời: “Em làm em chịu,
cho em hỏi thăm Hoàng Lan”.
Cuộc hành hình diễn ra sáng hôm sau tại bến Chèm, có sự chứng kiến của mợ Lan, cụ Nguyễn Xuân Tuyết, cụ Lưu Quyên.
Sau này, cậu Hoàng Viên được công nhận là liệt sĩ và quy tập về nghĩa trang Mai Dịch, Hà Nội.
Tháng 10 năm 1953, tôi tình cờ gặp được mợ Hoàng Lan tại nhà bà ngoại. Một người phụ nữ mảnh mai, rắn rỏi, đôi mắt sáng
hiền và đượm buồn man mác.
Mợ Hoàng Lan nói với bà ngoại tôi: “Con xin làm con dâu của mẹ”
Bà ngoại trả lời: “Thằng Viên nó chết vì dân, vì nước. Con phải lập gia đình để có người trả thù cho nó”
Mợ Lan khóc trong khói hương, nước mắt chảy trên gò má
Từ ngày đó qua đi, tôi không còn được gặp mợ, thấy mợ
Tôi có trở lại làng Chèm, hỏi thăm vài bà cùng trang lứa với mợ, họ cho biết bà là biệt động thành, sau này không lấy
chồng và đi tu tại chùa Yên Tử.
Câu chuyện này con viết ra đây, nếu mợ còn sống hãy cho con biết được nhé. Con, Hoàng Nhu, giảng viên Vật Lý Đại Học
Quốc Gia, số nhà 28, ngõ 255, Nguyễn Khang, Hà Nội.
Tôi tìm được một người đồng đội với cậu tôi là ông Quý, xóm Tre, làng Cót, Yên Hòa, Cầu Giấy, biết chuyện này.
Tập sau xin đăng tiếp.
Hoàng Nhu
27/7/2019
II. Thơ: Đi tìm cậu
Lên cao ngắm nhìn trời
Mây trôi nước trôi
Cả một dòng đời
Trôi theo thời gian
Trôi mãi
Công sự ngày xưa lô cốt ngày xưa
Tan thành hết
Xa xa phía chân trời
Cậu nằm lại
Cho đất trời giao nhau
Cho đôi lứa chụm đầu
Cho tình yêu dịu ngọt
Cho đất trời đắm say
Mợ đứng đợi
Cây vọng phu - thời đại
Hoàng Nhu
27/7//2019
MPV is my favorite open source media player. On Fedora 42, the default display manager
is Wayland (as a replacement for X11). MPV does not play well with Wayland, playing videos is delay/lagging.
In addition, I am using an NVIDIA graphic card 3080. it could be a reason that my video playing is delay.
This post is all about customize mpv’s flags to work with Wayland and NVIDIA graphic card.
II. How to do?
Go to ~/.local/share/applications and create a new file named mpvfast.desktop.